Tin nóng ⇢

Ngẫu nhiên là 1 phần không thể thiếu của thế giới Web3

Do tính minh bạch của hệ thống blockchain, tất cả các thuật toán, input và output được tạo ra on-chain đều được hiển thị cho những người tham gia hệ thống. Vì vậy, các chuỗi ngẫu nhiên được tạo trực tiếp trên chuỗi thực sự có thể dự đoán được.

Ngẫu nhiên và vận mệnh

Chúng ta đang sống trong một thế giới đầy ngẫu nhiên.

Như Feynman đã nói:

Tất cả những gì tự nhiên cho phép chúng ta tính toán là xác suất. Một khi ta có siêu năng lực để tính toán "biên độ xác suất", ta có thể trở thành nhà tiên tri, dự đoán và thậm chí thay đổi tương lai. Nói cách khác, bất cứ ai làm chủ được sự ngẫu nhiên sẽ có thể trở thành người nắm quyền quyết định. 

Ngẫu nhiên và an toàn

Do tính minh bạch của hệ thống blockchain, tất cả các thuật toán, input và output được tạo ra on-chain đều được hiển thị cho những người tham gia hệ thống. Vì vậy, các chuỗi ngẫu nhiên được tạo trực tiếp trên chuỗi thực sự có thể dự đoán được.

Tuy nhiên, một số phương pháp tạo số ngẫu nhiên on-chain điển hình, chẳng hạn như hashing khối, có rất nhiều lỗ hổng bảo mật và gian lận. Vậy làm thế nào để xác dịnh được số ngẫu nhiên nào là an toàn?

Trước hết, có 2 loại số ngẫu nhiên là True Random Number (TRN) và Pseudo-Random Number (PRN)

Trong số đó, PRN có thể được chia nhỏ thành PRN yếu và PRN mạnh.

Từ "Pseudo" ngụ ý rằng các số giả mà chúng ta tưởng chừng như ngẫu nhiên thực chất là không phải như vậy. Tất cả các số ngẫu nhiên được tạo trên blockchain cũng là "Pseudo". Về bản chất, PRN là một chuỗi số gần như ngẫu nhiên được phần mềm máy tính xuất ra theo các công thức toán học và hướng dẫn thuật toán đã thiết lập. Trái với nhận thức tự nhiên của nhiều người, máy tính thực sự rất khó sử dụng để tạo ra một số điều kiện ngẫu nhiên hoàn toàn, bởi vì bản thân nó là một thiết bị có thể dự đoán được. 

Về bản chất, TRN cần phải có đồng thời ba đặc điểm là ngẫu nhiên, không thể đoán trước và không tái lập:

  • Tính ngẫu nhiên: Chuỗi hoàn toàn lộn xộn và không có sai lệch thống kê.
  • Khả năng dự đoán: Không thể dựa vào trình tự trước để dự đoán trình tự tiếp theo. 
  • Không thể tái lập: Không thể tái tạo cùng một trình tự chính xác trừ khi trình tự ban đầu được giữ nguyên

PRN mạnh có hai yếu tố đầu tiên, trong khi PRN yếu chỉ có tính ngẫu nhiên.

Cả TRN không thể đoán trước và PRN mạnh đều có thể được sử dụng làm số ngẫu nhiên đáng tin cậy để giới thiệu các smart contract. PRN yếu không thể được áp dụng cho các tình huống liên quan đến mật mã như tạo khóa, tạo mật khẩu, v.v.

Đối với cách tạo số ngẫu nhiên đáng tin cậy và an toàn, phương pháp trực tiếp và hiệu quả nhất hiện nay là liên kết các API bên ngoài thông qua oracle và tạo xác thực được mã hóa. Ví dụ: dịch vụ Verifiable Random Function (VRF) của Chainlink là truy cập API bên ngoài trong mạng thử nghiệm, sau đó sử dụng khóa công khai và seed của smart contract để xác minh PRN mạnh đã tạo và chuyển nó sang smart contract. Dịch vụ VRF của Chainlink chủ yếu áp dụng phương thức tính phí cho tài khoản đăng ký. Sau khi người dùng nạp đủ token LINK vào tài khoản, người dùng có thể lấy số ngẫu nhiên do nó cung cấp bằng cách gửi yêu cầu đăng ký.

Ngẫu nhiên và Web3

Trên thực tế, số ngẫu nhiên là không thể thiếu trong Web3.

GameFi

Có rất nhiều tình huống cần sử dụng phân phối xác suất trong game, và game RPG là một ví dụ điển hình. Bên cạnh những nhân vật phổ biến, có một số nhân vật rất hiếm và có thuộc tính hiếm. Thông thường, càng hiếm thì giá trị càng cao và càng giúp người dùng thu về lợi nhuận lớn. Giống như Axie, mỗi nhân vật Axie có sáu bộ phận cơ thể, mỗi bộ phận sẽ có các thuộc tính và khả năng khác nhau. Nếu các nhà sản xuất trò chơi muốn tạo ra trải nghiệm trò chơi được cá nhân hóa cho người dùng, họ phải làm tốt cơ chế phân bổ vai trò và đặt xác suất phân phối công bằng nhất có thể.

Trong các trận chiến PVP, tỷ lệ chiến thắng của người chơi và số tiền họ sẽ thắng tùy thuộc vào đối thủ mà họ được chỉ định trong trận đấu. Nếu cơ chế đối sánh trò chơi không công bằng, rất có thể sẽ trực tiếp dẫn đến việc mất người chơi. Trong các game khám phá thế giới, xác suất người chơi lấy được các vật phẩm và trang bị quý hiếm trong quá trình khám phá bản đồ cũng cần có mô hình xác suất đảm bảo tính công bằng và các thể loại game khác như bắn súng, đánh bài, v.v. cũng vậy. 

Tóm lại, việc đưa vào một mức độ không thể đoán trước nhất định sẽ làm tăng cường khả năng chơi của trò chơi. Tuy nhiên, tạo ra sự không thể đoán trước này đòi hỏi sự ra đời của các số ngẫu nhiên đáng tin cậy.

NFT

Cũng giống nhân vật trong GameFi, các chi tiết của NFT cũng bao gồm các thuộc tính khác nhau. Chẳng hạn như NFT của BAYC bao gồm 7 thuộc tính khác nhau về lý lịch, quần áo, hoa tai, mắt, tóc, mũ, miệng, và độ hiếm của các thuộc tính sẽ xác định giá trị của NFT. Việc phân bổ độ hiếm và xây dựng giới hạn trên của tổng số thuộc tính có thể được giải quyết bằng cách sử dụng các số ngẫu nhiên đáng tin cậy.

Ngoài ra, với sự thành lập và phát triển của ngày càng nhiều cộng đồng NFT, các nhà phát triển dự án thường khuyến khích thành viên trong cộng đồng bằng cách phát hành phần thưởng airdrop NFT ngẫu nhiên trong các lễ hội đặc biệt hoặc khi đạt được các mốc nhất định. Còn về địa chỉ nhận airdrop, và đảm bảo tính công bằng của airdrop như thế nào thì bên dự án cần thực hiện cẩn thận theo một cơ chế phân phối nhất định. Các số ngẫu nhiên đáng tin cậy có thể được coi là một giải pháp tốt trong các tình huống như vậy. Trên thực tế, hầu hết các hoạt động airdrop NFT cũng được thực hiện bằng cách tích hợp các dịch vụ như Chainlink VRF.

DeFi

Trong các protocol DeFi và các protocol stablecoin theo thuật toán như Olympus, cơ chế staking thường có quy trình rebase để giải quyết vấn đề pha loãng cổ phiếu (share dilution) hoặc để khuyến khích các hành vi thị trường cụ thể, chẳng hạn như duy trì mức giá ổn định. Một biến có khả năng "nhạy" mạnh của cơ chế rebase là thời gian chu kỳ của nó.

Nếu thời gian chu kỳ rebase đã đặt không thay đổi trong một thời gian dài, khả năng cao là các arbitrageur (nhà đầu tư chênh lệch giá) sẽ khai thác nó. Do đó, thiết kế của cơ chế rebase áp dụng các số ngẫu nhiên đáng tin cậy để xác định khoảng thời gian gần đúng của một điều chỉnh thay đổi.

Cơ chế phần thưởng của một số protocol Yield Farming cũng sẽ giới thiệu một lượng biến động nhất định để tăng độ sử dụng của người dùng. Tỷ lệ hoàn vốn hàng năm của người dùng có mức độ tham gia và mức đóng góp cao sẽ khác so với người dùng có mức độ tham gia bình thường hoặc tương tác thấp. Do đó, việc phân phối quy mô phần thưởng trong pool vốn và việc tăng hoặc giảm tỷ suất lợi nhuận sẽ yêu cầu sử dụng các số ngẫu nhiên để điều chỉnh và thiết lập mô hình.

DAO

Trong quản trị của các DAO, các thành viên thường được yêu cầu đưa ra một số quyết định quan trọng cho tổ chức và cộng đồng lớn của DAO có thể thực hiện các quyết định hàng ngày hiệu quả hơn bằng cách thiết lập ban quản lý cốt lõi như hội đồng quản trị. Việc lựa chọn và bổ sung hội đồng quản trị và các nhà quản lý này đòi hỏi một cơ chế công bằng và minh bạch. Và một trong những lựa chọn tối ưu và thuận tiện nhất cho việc thiết lập các cơ chế đó là đưa ra các số ngẫu nhiên đáng tin cậy.

Ngoài ra, trong một số DAO có liên quan đến quản lý quỹ hoặc đầu tư, các số ngẫu nhiên cũng có thể được sử dụng để cải thiện tính bảo mật của hệ thống xác thực thành viên, ngăn chặn hacker và đảm bảo an ninh của kho bạc trong DAO.

 

Ứng dụng VRF trong Cơ chế đồng thuận L1

Một vấn đề lớn mà public chain mới cần phải đối mặt là việc giảm bảo mật sau khi sharding. Trước khi sharding, tất cả các validator trong mạng cùng xác minh tất cả các giao dịch. Tuy nhiên, sau khi sharding, các validator này được phân bổ đồng đều cho từng shard để xác minh, điều này làm tăng đáng kể xác xuất mỗi shard được fork (tỉ lệ tấn công là 51%). Một giải pháp tốt cho vấn đề bảo mật này là làm cho hacker không thể dự đoán trước validator của từng shard, điều này đòi hỏi phải đưa vào một lượng ngẫu nhiên và không thể đoán trước nhất định.

NEAR phân phối verifier (người xác minh) một cách ngẫu nhiên thông qua dịch vụ VRF, do đó ẩn thông tin shard được xác minh cụ thể bởi verifier. 

Có thể bạn quan tâm

Mục lục