Series: Tech cho người non-tech (Số 3)
Nghệ thuật Khắc (inscription) trên blockchain, sự hình thành, ý nghĩa và những biến thể cần biết.
Hôm nay mình sẽ viết kỹ về cơ chế của một hệ sinh thái mới nổi lên trong 2023, đó là Inscription. Chúng ta có thể thấy rất nhiều bài báo viết về trào lưu này, xuất phát từ Bitcoin (BTC), sau đó lan ra các alt coin khác, luôn luôn tốn rất nhiều giấy mực do làm nghẽn mạng hay là đẩy mức phí giao dịch lên cực điểm. Vậy inscription có nguồn gốc từ đâu, nó dùng để làm gì, tại sao nó lại được chú ý và hiện tại có những cái gì nên chú ý về nó. Bài này sẽ tóm tắt những điểm đó và tất nhiên, nếu bạn thấy nó bổ ích, cho mình xin một trái tim và một lượt repost để kiến thức này đến được với nhiều người hơn nữa nhé.
Lưu ý: bài này rất ... dài (mình viết mất 3 tuần) và giải thích cặn kẽ từ cội nguồn cho đến sự hình thành của inscription. Nếu mục nào bạn biết rồi thì skip đến đoạn tiếp nhé. Format bài viết như thế này:
BTC --> UTXO --> Script --> Colored Coin --> OP_RETURN --> Segwit --> Taproot --> Ordinals --> BRC-20 --> RUNE --> ARC-20, DRC-20
1️⃣BTC và mô hình Unspent Transaction Output (UTXO) - 2009
Tất cả chúng ta đều biết đến BTC là đồng tiền ảo đầu tiên được sinh ra vào năm 2009 bởi người cha giấu mặt Satoshi Nakamoto. Nhưng để hiểu hơn về bài viết ngày hôm nay chúng ta cần biết thêm 1 chút về cấu trúc các giao dịch của BTC. Mỗi giao dịch BTC sẽ có 2 phần, INPUT và OUTPUT. Trong đó, OUTPUT là một đoạn mã để thực hiện logic của giao dịch và INPUT sẽ chỉ đến các giao dịch trước đó có liên quan đến các đồng BTC được sử dụng trong OUTPUT.
Chúng ta hãy tưởng tượng mỗi đồng BTC là 1 tờ tiền giấy, có số series, có mệnh giá. M��i người sử dụng BTC được thể hiện thông qua địa chỉ ví, và địa chỉ này được sinh ra dựa trên private key mà người đó giữ. Giả sử có các giao dịch sau:
Tx1: Miner A mine 1 BTC
Tx2: A transfer 1 BTC to Long
Tx3: Long transfer 0.5 BTC to Giang
Tx1 khá là dễ hiểu vì như chúng ta đã đọc trong series 2 về consensus, khi miner tham gia POW tìm ra block, họ sẽ được thưởng 1 lượng BTC tương ứng gọi là BlockRewards. Trong trường hợp này INPUT(Tx1) = NULL và OUTPUT(Tx1) = A receive 1 BTC from BlockRewards.
Khi A cần chuyển BTC cho người khác, A cần chỉ định rõ sẽ chuyển BTC nào, giống như hành động mở ví lấy 1 tờ tiền đưa cho người khác vậy. INPUT của giao dịch, trong trường hợp này, sẽ được trỏ tới OUTPUT của giao dịch trước đó sinh ra tờ tiền trong ví. Như vậy INPUT(Tx2) = OUTPUT(Tx1). Và OUTPUT(Tx2) = Long receive 1 BTC from A.
Ở trường hợp thứ 3, tương tự chúng ta có INPUT(Tx3) = OUTPUT(Tx2) và OUTPUT(Tx3) = Giang receive 0.5 BTC from Long, vậy còn 0.5 BTC thừa thì sao ? Tất nhiên sẽ phải trả lại thông qua OUTPUT(Tx3)' = Long receive 0.5 BTC back. Như vậy nếu Long muốn xài tiếp thì sẽ sử dụng OUTPUT(Tx3)' để cho các giao dịch kế tiếp. Việc chia nh�� trả lại tiền thừa như vậy có thể diễn ra nhiều lần tiếp cho đến khi không thể chia nhỏ được nữa, Bitcoin quy định đơn vị nhỏ nhất có thể chia được là Satoshi, trong đó 1 BTC = 100M Satoshi, tương tự như VND thì đơn vị nhỏ nhất là 1 ĐỒNG.
Việc nối các giao dịch với nhau lại như vậy còn được gọi là mô hình Unspent Transaction Output (UTXO). Cứ miễn là OUTPUT chưa được sử dụng (unspent) thì chúng ta có thể xài để tạo ra giao dịch kế tiếp. Lúc này để biết 1 ví có bao nhiêu BTC chúng ta sẽ phải tìm tất cả các OUTPUT chưa được sử dụng của ví đó và ... đếm như tiền giấy vậy. Mô hình này khác hoàn toàn với mô hình "Tài khoản" (Account base) của Ethereum khi mà chỉ đơn giản là cộng trừ vào 1 tài khoản gốc, tương tự như digital banking vậy.
Mô hình UTXO thực sự thì không ưu việt hơn Account Base, chỉ là với cách này chúng ta có thể mô phỏng chính xác cách mà tiền giấy hoạt động, từng "đồng" BTC có thể được tracking on-chain từ lúc được sinh ra cho đến lúc đến ví người dùng. Đây là một yếu tố quan trọng làm nền cho những phát kiến tiếp theo sau đó.
2️⃣ Transaction Script - 2009
Như vậy chúng ta có thể hiểu tất cả logic của giao dịch sẽ nằm ở phần OUTPUT. Phần này được định nghĩa là các mã lệnh máy tính (Script) chứa logic mà các BTC client sẽ xử lý để xác nhận xem giao dịch có hợp lệ hay không. Chúng ta đã biết là ban đầu BTC sinh ra có một mục đích duy nhất là để làm hệ thống tiền điện tử, không có mục đich khác nên các script này cũng được thiết kế đơn giản hết mức có thể để tránh bị lợi dụng để phá hoại các miner. Hầu hết chỉ dùng để kiểm tra chữ ký điện tử để xác thực giao dịch.
3️⃣ Colored Coin, bước đầu mang những use case mới lên Bitcoin - 2013
Có rất nhiều người muốn sử dụng Bitcoin vào những use case khác ngoài việc chỉ là tiền tệ vì Bitcoin có tính chất không thể sửa xóa được. Một trong số đó là dùng để phát hành token cho các tài sản thế giới thực (RWA). Cơ bản là làm sao để vẫn dựa vào cấu trúc hiện tại (UTXO, script) mà có thể tạo được token khác ngoài BTC. Một khái niệm ra đời vào năm 2013 để làm việc này gọi là giao thức Colored Coin (Giao thức đồng tiền màu). Bạn biết ai là người tạo ra giao thức này không :) một trong số đó chính là @VitalikButerin. Có thể hiểu nôm nay thế này, chúng ta tìm cách nhét thêm thông tin vào 1 giao dịch BTC với nội dung:
Tx1: "LONG phát hành 1000 token màu hồng"
Tx2: "LONG chuyển 100 token hồng cho Giang"
Để phát hành 1 token thì chúng ta cần 2 loại giao dich. 1 là giao dịch đầu tiên khi token đó được sinh ra (tương tự mine ra BTC), 2 là giao dịch chuyển token từ ví này sang ví khác. Vì Bitcoin script khá hạn chế, không thể lập trình việc này được, người ta cần nghĩ ra các phương pháp khác để đánh dấu các giao dịch BTC đặc biệt ứng với các loại giao dịch token trên. Cái này cũng như đang "tô màu" cho các giao dịch Bitcoin, nên còn gọi là Colored Coin. Kỹ thuật để đánh dấu giao dịch phổ biến nhất là lợi dụnng trường thông tin không hay được sử dụng của Bitcoin (trường thông tin thứ tự của giao dịch), và nhét các thông tin được nén vào trong ��ó.
Colored Coin cũng đã từng khá thịnh hành với nhiều OG crypto tham gia như Yoni (CEO eToro), Vitalik. Nhưng do sau đó với sự hạn chế về lập trình của BTC và sự ra đời của Ethereum với khả năng tạo token không giới hạn, kỹ thuật này không còn được sử dụng nữa. Có thể đọc thêm về spec của Colored Coin ở đây.
https://t.co/lcVi7zORgA
4️⃣ OP_RETURN - 2014
Sự ra đời của Colored Coin và việc lợi dụng các trường thông tin của giao dịch BTC để lưu trữ những dữ liệu không liên quan tất nhiên là không được sự đồng ý của những Bitcoin core dev do nó không đúng mục đích và cũng làm cho Bitcoin trở nên nặng nề hơn, ảnh hưởng đến use case chính là tiền tệ phi tập trung. Nhưng dưới áp lực của cộng đồng, năm 2014, một giải pháp trung lập đã được triển khai, đó là thêm 1 trường thông tin gọi là OP_RETURN vào trong các giao dịch. Nghĩa là khi tạo giao dịch BTC, ta có thể ghi thêm 1 dữ liệu bất kỳ vào vào chỗ OP_RETURN này, tương tự trường memo mà chúng ta hay sử dụng ở hệ Ethereum. Trường thông tin này rất nhỏ, chỉ 40 bytes (tương đương tầm 10-40 ký tự chữ in), tuy nhiên vậy là khá đủ cho mục đích của nó rồi.
Điểm khác biệt của OP_RETURN với phương pháp cũ là khi nhận giao dịch, Bitcoin node có thể quẳng luôn trư��ng này đi không cần quan tâm do nó ko dính gì đến logic chuyển BTC. Các node thực sự quan tâm sẽ ghi lại riêng. Điều này giảm tải cho các node Bitcoin nhiều hơn.
Tuy tiện lợi là vậy, OP_RETURN cũng vẫn khá hạn chế và cũng chỉ xài được để ghi note riêng chứ cũng không có nhiều ứng dụng rộng rãi.
5️⃣ Segwit, từ bản vá lỗi cơ bản đến khả năng mở rộng Bitcoin thần kỳ. - 2015
Tuy Bitcoin chạy rất ổn định trong vòng nhiều năm, thực tế là vẫn có nhiều lỗi, thậm chí là nghiêm trọng đối với giao thức này. Vào năm 2015, một lập trình viên huyền thoại Pieter Wuille đã đề cập đến một lỗi nghiêm trọng của Bitcoin đó là lỗi sửa giao dịch "Transaction Malleability". Hiểu nôm na như thế này, ta quay lại ví dụ ban đầu
Tx3: Long transfer 0.5 BTC to Giang
Bitcoin có một lỗi đó là khi Tx3 chưa được network công nhận, người ta có thể thay đổi ID của giao dịch thành Tx3.1 mà không ảnh hưởng đến nội dung chuyển tiền. Như vậy Giang trong trường hợp này sẽ lợi dụng đổi ID này và lừa Long rằng Tx3 không được mạng Bitcoin công nhận, mà thực tế là Tx3.1 đã được thực hiện, Long đã mất 0.5 BTC. Nếu không cẩn thận kiểm tra mà gửi tiếp giao dịch ngay thì Long đã bị ông sếp lừa.
Như ta đã biết, OUTPUT của giao dịch Bitcoin sẽ có nội dung giao dịch và chữ ký của người gửi. Phần chữ ký này còn goi là Witness ( Chứng kiến) .Việc thay đổi ID xảy ra là do người ta có thể sửa được chữ ký này mà ko thay đổi nội dung giao dịch. Để tránh tình trạng này xảy ra, Petier đề nghị tách luôn phần Witness ra ngoài để không ai sửa được nữa. Kỹ thuật này gọi là Segregated Witness (Phân tách chữ ký), viết tắt là SegWit.
SegWit là phương pháp tách toàn bộ phần chữ ký của các giao dịch trong Bitcoin ra ngoài, chỉ giữ lại bản rút gọn (Root Hash) của phần chữ ký này trong Bitcoin block. Phần tách này sẽ được lưu trữ ở các client khác hỗ trợ SegWit. Còn các client Bitcoin thường (Legacy) sẽ không thấy các giao dịch này. Segwit không chỉ chia tách chữ ký khỏi giao dịch mà còn chia luôn cả các giao dịch và các client Bitcoin thành 2 loại cùng tồn tại song song. Legacy client chỉ chạy các giao dịch BTC thường, Segwit client chạy cả giao dịch Legacy lẫn Segwit. Chính vì tính chất này nên mạng Bitcoin không cần nâng cấp toàn bộ mà chỉ cần ai chấp nhận Segwit thì chạy client mới. Điều này là một bước tiến phi thường vì Bitcoin đã trở nên quá lớn, quá nhiều người lao vào làm các máy đào chuyên dụng nên bất kỳ thay đ���i nào trong mạng cũng cực kỳ khó thực hiện. Phương pháp này còn gọi là "Soft Fork" vì không ép tất cả mọi người thưc thi (soft).
Tuy vậy, vẫn có những người phản đối SegWit do việc nó tách 1 phần network ra xử lý bên ngoài và không giải quyết triệt để lỗi sửa giao dịch. Những người này quyết định tách Bitcoin thành một nhánh khác, gọi là Bitcoin Cash (BCH), giữ nguyên kiến trúc cũ của Bitcoin.
Việc tách chữ ký ra khỏi block làm cho Bitcoin có nhiều chỗ hơn cho giao dịch, khiến cho mạng trở nên nhẹ hơn nhiều, và mở ra cánh cửa cho Bitcoin xử lý được nhiều giao dịch hơn gấp nhiều lần. Điều này vô cùng quan trọng với tài sản điện tử phi tập trung này. Chúng ta hãy ngả mũ cám ơn Petier vì sáng kiến vô tiền khoáng hậu này nhé.
6️⃣ Bản nâng cấp Taproot và sự cải tổ được toàn bộ cộng đồng ủng hộ. - 2021
Thành công của Segwit đã thôi thúc cộng đồng Bitcoin phát triển nhiều hơn vượt ra khỏi giới hạn của kiến trúc ban đầu Satoshi tạo ra. Sau hơn 3 năm phát triển, bản nâng cấp Taproot (Rễ cọc) được công bố năm 2021 là một trong những bản update lớn nhất trong lịch sử Bitcoin. Như cái tên của mình, Taproot biến Bitcoin thành cội rễ cho các phát triển mới như những rễ con toả ra từ nhánh chính. Taproot đưa ra 3 thay đổi chính:
Đưa vào sử dụng thuật toán chữ ký điện tử ưu việt hơn, cho phép gộp nhiều chữ ký lại giúp tiết kiệm chi phí và dung lượng, khiến giao dịch nhẹ hơn, rẻ hơn, và tăng tính riêng tư cho các giao dịch sử dụng đa chữ ký. Vì ưu việt hơn nên chữ ký này nặng hơn một chút, nhưng chúng ta không lo đến vấn đề này nữa nhờ SegWit rồi.
Hệ thống Taproot, cho phép chia nhỏ script ra thành nhiều phần (các rễ nhỏ) và chỉ đưa 1 phần nhỏ vào trong Bitcoin để kiểm chứng về sau. Cải tiến này cho phép chúng ta đưa vào nhiều logic script hơn trước kia mà không phải lo gánh nặng lên mạng lưới.
Đưa vào sử dụng ngôn ngữ script mới gọi là Tapscript, ưu việt hơn script cũ của Bitcoin. Tapscript đơn giản hơn, dễ hiểu và được thiết kế cũng linh hoạt hơn để dễ dàng nâng cấp và viết các logic mới trên Bitcoin. Việc lập trình trên Bitcoin trở nên dễ dàng hơn rất rất nhiều. Script này có thể dùng để viết các smart contract dễ dàng hơn, khiến Bitcoin có khả năng mở rộng vô tận, cạnh tranh trực tiếp với Ethereum.
Taproot cũng đi theo hướng Soft Fork như Segwit, nhưng lại có một kết cục tốt hơn nhiều đó là toàn bộ mạng lưới đều ủng hộ, không bị tách thành BCH như bản trước. Tuy không phải 100% c��c node Bitcoin hiện tại chạy Taproot nhưng bản nâng cấp này đã được đại đa số miner ủng hộ và nâng cấp theo. Bitcoin đã chính thức bước sang một trang mới, có khả năng lập trình dễ dàng, khả năng mở rộng mạnh mẽ, và có một cộng đồng cùng chung một tiếng nói.
7️⃣ Ordinal, đế chế NFT khắc trên Bitcoin - 2023
Sau rất nhiều dẫn dắt, cuối cùng chúng ta cũng đến chủ đề chính. Vào ngày 20-1-2023, lập trình viên Bitcoin Core, Casey @rodarmor giới thiệu giao thức Ordinals, NFT trực tiếp trên Bitcoin. Chúng ta có thể thấy từ đầu Bitcoin đã trải qua rất nhiều nâng cấp, ban đầu là thêm trường dữ liệu nhỏ, cho phép phát hành tài sản khác, cho đến nhưng thay đổi vượt bậc gần đây để scale tốt hơn để xử lý nhiều giao dịch và giao dịch phức tạp hơn. Tất nhiên khái niệm NFT trên Bitcoin không phải là mới. Có nhiều giao thức Layer-2 trên Bitcoin như Stack, Rootstock cho phép viết smart contract nên có thể viết NFT từ trước, nhưng mãi cho đến Ordinal xuất hiện chúng ta mới có thể thấy văn hóa NFT thực sự được hình thành trên Bitcoin. Vậy ordinal làm việc như thế nào ?
Đầu tiên, Ordinal (thứ tự) là một phương pháp sắp xếp các Satoshi theo một thứ tự nhất định để mang tính chất non-fungible đến, làm tiền đề cho NFT. Giao thức ordinal quy định rằng m��i Satoshi sẽ được đánh dấu dựa theo số thứ tự khi mà Satoshi đó được tạo ra. Tương tự như chúng ta đánh số series cho từng đồng của VND vậy. Satoshi đầu tiên chính là đồng Bitcoin đầu tiên được tạo ra từ block số 0 và cứ như thế đánh đến tận ngày hôm nay. Số thứ tự này được giữ nguyên khi có các giao dịch phân tách Bitcoin thành các OUTPUT khác nhau. Chính số thứ tự này tượng trưng cho ID của các NFT.
Đối với bản thân Bitcoin, các số thứ tự của Satoshi không có nghĩa gì cả, vì đơn giản là Bitcoin không quan tâm. Nhưng những người chơi Ordinal thì lại khác, họ làm ra các hệ thống để theo dõi các Satoshi (gọi tắt là Sats) này, tự đặt ra độ hiếm (theo số thứ tự trong block, theo các sự kiện như halving, upgrade, etc.) và tự quy định với nhau các quy tắc để diễn giải các số thứ tự này. Tất cả để thỏa mãn cơn khát NFT trên Bitcoin.
Còn nội dung của NFT thì sao, đây là lúc các nâng cấp trước đây phát huy tác dụng. Nếu như dân chơi NFT trên ETH thường quen với khái niệm URI, nơi mà art thực sự của NFT được đưa lên hệ thống lưu trữ như IPFS thì Ordinal NFT lại "khắc" thẳng nội dung của NFT đó vào trong Witness của giao dịch Bitcoin. Vì là witness nên nó được đẩy sang Segwit. Nội dung này cũng được viết sử dụng Tapscript để các node chạy Taproot hiểu dược. Đây chính là sự khác biệt lớn nhất của Ordinal với tất cả các loại khác khi mà từng NFT được "khắc" trực tiếp vào từng Sats trên Bitcoin, một thứ nghệ thuật cầu toàn kỳ quái đến mức ám ảnh khiến cho một bộ phận người chơi phát cuồng vì nó. Nghệ thuật khắc dựa vào witness này chính vì thế có tên là "Inscription".
Ordinal đúng là đã mang nghệ thuật lên Bitcoin một cách tự nhiên. Tuy nhiên nó cũng tạo nên rất nhiều sóng gió trong cộng đồng vì nó khiến người ta bỏ công đi đào Bitcoin kiếm các Sats có ID đặc biệt, làm cho mạng Bitcoin bị nghẽn, không thể giao dịch bình thường được. Nhiều lập trình viên Bitcoin đã lên tiếng phản đối, nhưng thực sự thì cơn sốt này mang lại cho những thợ đào Bitcoin nguồn thu nhập khổng lồ, họ không dại gì mà từ chối cả.
Đọc thêm về kiến trúc Ordinal tại đây: https://t.co/NZHd2NyE3q
8️⃣ BRC-20, RUNES và những mở rộng đáng chú ý khác - 2023
Sau sự ra đời của Ordinal, người ta lại quay lại thử nghiệm ngày xưa của Colored Coin, đó là việc phát hành các token fungible trên Bitcoin. Nhưng tất nhiên lần này là bỏ qua sự cồng kềnh của Colored Coin. Đó là lúc BRC-20 ra đời.
Chúng ta đã quá quen với ERC-20, tiêu chuẩn token bên Ethreum cho phép định nghĩa các loại fungible token và chuyển qua lại. Khái niệm tương tự được mang lên Bitcoin, cũng thông qua phương pháp inscription của Ordinals. Thay vì metadata như NFT của ordinals, dữ liệu của BRC-20 là các chuỗi ký tự định nghĩa về token và cách tương tác với nó được khắc lên các Sats. Cách làm thì hết sức đơn giản vì bây giờ chúng ta có thể lưu trữ nhiều dữ liệu hơn lên Bitcoin thông qua inscription rồi. Tương tự Colored Coin, chúng ta có 2 loại giao dịch.
Mint BRC-20 mới, đơn giản là tự khắc cho mình 1 đoạn ký tự miêu tả về đồng coin, tên và số lượng tương ứng. Để chuyển BRC-20 cho người khác, đơn giản là khắc các ký tự mô tả chuyển cho ai bao nhiêu vào Sats. Như vậy các client như explorer hay ví chỉ cần theo dõi tất cả các giao dịch Sats để lọc ra các BRC-20 này và hiển thị là xong.
Ưu điểm của BRC-20 thì giống như là Colored Coin đã nói ở trên, còn nhược điểm so với ERC-20 thì vì nó không có hệ thống smart contract đằng sau như Ethereum, nó không thể sử dụng trực tiếp trong DEFI được. Điều này rất hạn chế và hy vọng sẽ có những cải tiến trong tương lai. BRC-20 đầu tiên, rất buồn cười, được đặt tên là ORDI, tượng trưng cho giao thức Ordinals. Nhưng thực tế thì đồng ORDI này chả có liên hệ nào với Casey cả, mà chỉ vì nó viết bằng inscription nên tác giả ... tự đặt là ORDI. Nó được trade rộng rãi và lên cả Binance thì các b��n biết đột hot thế nào rồi đấy.
Tuy BRC-20 lấy ý tưởng tương tự ERC-20, nhưng thực tế là có rất nhiều hạn chế. Nhưng tất cả không dừng ở đó, chủ nhân của Ordinal Casey Rodarmor lại vỗ gối đẻ ra một giao thức mới, tất nhiên đúng với phong cách của mình là tất cả phải Bitcoin native, giao thức này gọi là RUNES.
Các bạn nhớ Bitcoin là UTXO chứ ? như vậy để fungible token trên Bitcoin hoạt động ... như Bitcoin thì token này cũng phải hoạt động trên nguyên tắc UTXO. Đây là điểm khác biệt cực lớn giữa RUNES và phần còn lại. Rune hoàn toàn không sử dụng Ordinal, mà dùng đúng cái chúng ta đã viết ở trên để làm: OP_RETURN. Như vây Rune không phải inscription, cũng không phải ordinal, mà đơn giản là viết thẳng luôn vào trường dữ liệu của OUTPUT của 1 giao dịch Bitcoin. Cách tạo ra RUNE thì cũng như ở trên thôi, cũng chọn tên và số lượng để mint. Nhưng lúc chuyển Rune qua lại thì lại dùng chính UTXO của Bitcoin để chuyển, đơn giản là tạo 1 giao dịch khác và ghi vào muốn chuyển bao nhiêu Runes cho người nhận. Điều này làm cho Rune trở thành một phần của chính cách Bitcoin hoạt động.
Các bạn ở Việt Nam có một team làm về Runes có số má không ? Đó là @runealpha_btc do team của anh @sondotpin làm ra. Sản phẩm cạnh tranh sòng phẳng với những ông lớn đang dò dẫm bước vào thị trường Runes và BRC-20 như OKX, Binance. Đọc về Runes tại đây nhé: https://t.co/TH1L8zjATo
Đi kèm với BRC-20, Runes, thì một loạt các hệ ăn theo trend như DRC-20 trên Doge, ARC-20 dính luôn token vào từng Satoshi, và một vài hệ mới nổi khác. Sẽ còn rất nhiều điều để nói về những hệ này trong tương lai.
Phew, bài này thực sự là rất dài, cũng như có quá nhiều kiến thức mới cho mình nên mất 3 tuần để c��y. Hy vọng tất cả những kiến thức này sẽ đến được với các bạn. Đọc kỹ nhé, mình chưa tìm được bài nào chi tiết như vậy, và hy vọng nhận được nhiều gạch đá để viết tốt hơn về sau.
Chúc mừng năm Giáp Thìn nhiều điều hứa hẹn,
Gửi từ @AuraNetworkHQ
💠@ProtonSale_apt announced start of the next Testnet of #ProtonSale Launchpad.
💠Details:
🔹@FewchaWallet to participate in the event
🔹Whitelist duration: 12h, FCFS Sale duration: 2 days
🔹Contributing in both #Fewcha and @Martian_Wallet
🔽INFO
https://t.co/uZBb89IOh9
We firmly believe that the future of carbon will be multi-chain and this partnership will be integral in helping web3 reach mass adoption with a planet-positive blockchain.
Is this the start of #ReFiSummer?
https://t.co/7g8VcT48t7
Kylian Mbappé deal. PSG director Leonardo answers to La Sexta: “The only thing I can say is that nothing has changed compared to the last two days. It's the same situation”, he said to @sebaquadrelli. ⚪️🇫🇷 #PSG#Mbappé
Real Madrid are working on it. Talks ongoing.
Juventus have just received an OFFICIAL bid from Manchester United for Cristiano Ronaldo. They’re ready to find an agreement to complete the deal. 🚨🇵🇹 #MUFC
Paul Pogba is not included in any negotiation. Manchester City only had verbal talks and are now OUT of Ronaldo race.
Wow! It's an honor to be recognized among these luminaries on @CoinTelegraph's Top 100 Notable People in Blockchain. Great thanks to cooperation and vision of #cryptoart artists, collectors, & platforms that an artist can rise to these ranks today.🙏🎨
https://t.co/j3iAzSzrxz