Dự án Blockchain Aleo: Thực hiện bảo vệ quyền riêng tư và khả năng mở rộng thông qua công nghệ zk-SNARK.
Aleo là một dự án blockchain chú trọng đến việc bảo vệ quyền riêng tư, sử dụng công nghệ zk-SNARK (ZKP) để tăng cường tính riêng tư và khả năng mở rộng. Triết lý cốt lõi của Aleo là cho phép người dùng xác thực danh tính và xử lý dữ liệu mà không tiết lộ thông tin cá nhân.
Bài viết này giới thiệu tổng quan về dự án Aleo và những tiến triển mới nhất, đồng thời phân tích chi tiết về việc cập nhật thuật toán puzzle được thị trường đặc biệt quan tâm.
Giới thiệu về thuật toán mới nhất
Mạng Aleo ngẫu nhiên tạo ra một mạch ZK mỗi giờ. Thợ mỏ cần thử nghiệm các nonce khác nhau làm đầu vào cho mạch trong một giờ này, tính toán witness( tức là tất cả các biến trong mạch, quá trình này còn được gọi là synthesize), tính toán Merkle root cho witness, sau đó kiểm tra xem có đáp ứng yêu cầu độ khó khai thác hay không. Do tính ngẫu nhiên của mạch, thuật toán khai thác này không thân thiện với GPU, có nhiều thách thức trong việc tăng tốc tính toán.
Tình hình tài chính
Aleo đã hoàn thành vòng gọi vốn Series A trị giá 28 triệu USD do a16z dẫn đầu vào năm 2021, và hoàn thành vòng gọi vốn Series B trị giá 200 triệu USD vào năm 2024. Các nhà đầu tư trong vòng B bao gồm Kora Management, SoftBank Vision Fund 2, Tiger Global, Sea Capital, Slow Ventures và Samsung Next. Vòng gọi vốn này đã đưa giá trị của Aleo lên tới 1,45 tỷ USD.
Tóm tắt dự án
tính riêng tư
Cốt lõi của Aleo là công nghệ zk-SNARK (ZKPs), cho phép thực hiện giao dịch và hợp đồng thông minh trong khi bảo vệ quyền riêng tư. Chi tiết giao dịch của người dùng, chẳng hạn như người gửi và số tiền giao dịch, mặc định là ẩn. Thiết kế này không chỉ bảo vệ quyền riêng tư của người dùng mà còn cho phép tiết lộ có chọn lọc khi cần thiết, rất phù hợp cho sự phát triển của các ứng dụng DeFi. Các thành phần chính bao gồm:
Ngôn ngữ biên dịch Leo: được phát triển dựa trên ngôn ngữ Rust, chuyên dùng để phát triển các ứng dụng zero-knowledge (ZKApps), giảm yêu cầu kiến thức mật mã của các nhà phát triển.
snarkVM và snarkOS: snarkVM cho phép thực hiện tính toán ngoài chuỗi, chỉ xác minh kết quả tính toán trên chuỗi, từ đó nâng cao hiệu quả. snarkOS đảm bảo an toàn cho dữ liệu và tính toán, và cho phép thực hiện chức năng không cần cấp phép.
zkCloud: Cung cấp môi trường tính toán ngoại tuyến an toàn, riêng tư, hỗ trợ tương tác lập trình giữa người dùng, tổ chức và DAO.
Aleo còn cung cấp môi trường phát triển tích hợp (IDE) và bộ công cụ phát triển phần mềm (SDK), hỗ trợ các nhà phát triển nhanh chóng viết và phát hành ứng dụng. Các nhà phát triển có thể triển khai ứng dụng trong sổ đăng ký chương trình của Aleo mà không cần phụ thuộc vào bên thứ ba, từ đó giảm thiểu rủi ro nền tảng.
Khả năng mở rộng
Aleo đã áp dụng phương pháp xử lý ngoài chuỗi, giao dịch trước tiên được tính toán chứng minh trên thiết bị của người dùng, sau đó chỉ tải kết quả xác minh lên Blockchain. Cách này đã cải thiện đáng kể tốc độ xử lý giao dịch và khả năng mở rộng của hệ thống, tránh được các vấn đề tắc nghẽn mạng và chi phí cao tương tự như Ethereum.
cơ chế đồng thuận
Aleo đã giới thiệu AleoBFT, đây là một cơ chế đồng thuận kiến trúc hỗn hợp, kết hợp tính cuối cùng ngay lập tức của các xác thực viên và khả năng tính toán của các chứng nhân. AleoBFT không chỉ nâng cao mức độ phi tập trung của mạng mà còn tăng cường hiệu suất và độ an toàn.
Khối nhanh chóng tính cuối: AleoBFT đảm bảo mỗi khối được xác nhận ngay sau khi được tạo ra, nâng cao tính ổn định của nút và trải nghiệm người dùng.
Bảo đảm phi tập trung: Bằng cách tách biệt việc sản xuất khối và việc tạo ra coinbase, người xác thực chịu trách nhiệm tạo ra khối, người chứng minh thực hiện tính toán chứng minh, ngăn chặn một số thực thể chiếm đoạt mạng.
Cơ chế khuyến khích: Người xác thực và người chứng minh chia sẻ phần thưởng khối; Khuyến khích người chứng minh trở thành người xác thực thông qua việc đặt cược token, từ đó nâng cao mức độ phi tập trung và khả năng tính toán của mạng.
Aleo cho phép các nhà phát triển tạo ra các ứng dụng không bị giới hạn bởi gas, do đó đặc biệt phù hợp cho các ứng dụng cần chạy lâu như học máy.
Tiến trình hiện tại
Aleo sẽ khởi động mạng thử nghiệm khuyến khích vào ngày 1 tháng 7, dưới đây là một số thông tin mới quan trọng:
Bỏ phiếu ARC-100 đã được thông qua: Đề xuất ARC-100( "Những thực tiễn tốt nhất về tuân thủ cho các nhà phát triển và nhà điều hành Aleo", liên quan đến các vấn đề tuân thủ, việc khóa tiền trên mạng Aleo và các biện pháp an ninh như việc trì hoãn chuyển khoản đã kết thúc bỏ phiếu ) và đã được thông qua. Đội ngũ đang thực hiện những điều chỉnh cuối cùng.
Chương trình khuyến khích người xác thực: Chương trình này sẽ bắt đầu vào ngày 1 tháng 7, nhằm xác thực cơ chế puzzle mới. Chương trình sẽ kéo dài đến ngày 15 tháng 7, trong thời gian đó sẽ phân phối 1 triệu điểm Aleo làm phần thưởng. Tỷ lệ phần trăm điểm được tạo ra bởi các nút sẽ quyết định phần thưởng của họ, mỗi người xác thực ít nhất cần kiếm được 100 token để nhận phần thưởng. Chi tiết cụ thể vẫn chưa được xác định.
Nguồn cung ban đầu và nguồn cung lưu thông: Nguồn cung ban đầu là 1,5 tỷ token, nguồn cung lưu thông ban đầu khoảng 10%( chưa được xác định cuối cùng). Những token này chủ yếu đến từ nhiệm vụ Coinbase(7500 triệu), sẽ được phân phối trong sáu tháng đầu tiên, đồng thời bao gồm phần thưởng cho việc staking, chạy xác thực viên và xác thực nút.
Testnet Beta đặt lại: Đây là lần đặt lại mạng cuối cùng, sau khi hoàn thành sẽ không thêm tính năng mới, mạng sẽ giống như mạng chính. Việc đặt lại nhằm thêm ARC-41 và chức năng puzzle mới.
Đóng băng mã: Đóng băng mã đã hoàn thành cách đây một tuần.
Kế hoạch mở rộng nút xác minh: Số lượng nút xác minh ban đầu là 15, mục tiêu là tăng lên 50 trong năm nay và cuối cùng đạt 500. Để trở thành người ủy thác cần 10.000 đồng token, để trở thành nút xác minh cần 10 triệu đồng token, các số lượng này sẽ giảm dần theo thời gian.
Giải thích cập nhật thuật toán
Gần đây, Aleo đã công bố thông tin mới nhất về mạng thử nghiệm đồng thời cập nhật phiên bản mới của thuật toán puzzle. Thuật toán mới không còn tập trung vào việc tạo ra kết quả zk proof, đã loại bỏ MSM và NTT(, hai mô-đun tính toán được sử dụng nhiều trong việc tạo proof trong zk, trước đó những người tham gia mạng thử nghiệm đã tối ưu hóa hiệu suất của thuật toán này để tăng lợi nhuận khai thác ), tập trung vào việc tạo ra dữ liệu trung gian witness trước khi sản xuất proof. Dưới đây là một giới thiệu đơn giản về thuật toán mới nhất.
Quy trình đồng thuận
Về mặt giao thức đồng thuận, trong quy trình, prover và validator lần lượt chịu trách nhiệm tạo ra kết quả tính toán solution và tạo khối cũng như tổng hợp đóng gói solution. Quy trình như sau:
Prover tính toán puzzle xây dựng ra solutions và phát sóng đến mạng.
Giao dịch Validator và giải pháp cho khối mới tiếp theo, đảm bảo số lượng giải pháp không vượt quá giới hạn đồng thuận (MAX_SOLUTIONS)
Tính hợp pháp của Solution cần kiểm tra epoch_hash của nó phù hợp với latest_epoch_hash do validator duy trì, proof_target được tính toán của nó phù hợp với latest_proof_target do validator trong mạng duy trì, đồng thời số lượng solution trong block đó nhỏ hơn giới hạn đồng thuận.
Giải pháp hiệu quả có thể nhận được phần thưởng đồng thuận
Câu đố Tổng hợp
Phiên bản mới nhất của lõi thuật toán được gọi là Synthesis Puzzle, lõi của nó là tạo ra một EpochProgram chung cố định cho mỗi epoch, thông qua việc xây dựng mạch chứng R1CS cho đầu vào và EpochProgram, tạo ra R1CS assignment tương ứng ( tức là bằng chứng mà mọi người đề cập đến ) và được sử dụng làm nút lá của cây Merkle, sau khi tính toán tất cả các nút lá sẽ tạo ra Merkle root và chuyển đổi thành proof_target của solution. Quy trình và tiêu chuẩn chi tiết để xây dựng Synthesis Puzzle như sau:
Mỗi lần tính toán puzzle được gọi là nonce, nó được xây dựng từ địa chỉ nhận thưởng khai thác, epoch_hash và một số ngẫu nhiên counter, mỗi lần cần tính toán giải pháp mới có thể nhận được nonce mới bằng cách cập nhật counter.
Trong mỗi epoch, EpochProgram mà tất cả các prover trong mạng cần tính toán là giống nhau, nó được lấy mẫu từ tập lệnh bằng số ngẫu nhiên được tạo ra từ epoch_hash hiện tại, logic lấy mẫu là:
Tập lệnh là cố định, mỗi lệnh (instruction) chứa một hoặc nhiều phép toán tính toán, mỗi lệnh có một trọng số và số lượng thao tác đã được thiết lập.
Trong quá trình lấy mẫu, dựa vào epoch_hash hiện tại để tạo ra số ngẫu nhiên, sau đó sử dụng số ngẫu nhiên đó để lấy lệnh từ tập lệnh kết hợp với trọng số và sắp xếp theo thứ tự, tích lũy số lần hoạt động cho đến khi đạt 97 thì dừng việc lấy mẫu.
Gộp tất cả các lệnh thành EpochProgram
Sử dụng nonce làm hạt giống số ngẫu nhiên để tạo đầu vào cho EpochProgram
Tập hợp R1CS và input tương ứng với EpochProgram, thực hiện tính toán assignment R1CS witness()
Tính toán tất cả các witness, các witness này sẽ được chuyển đổi thành chuỗi các nút lá tương ứng của merkle tree, merkle tree là một cây Merkle K-ary bậc 8 với độ sâu 8.
Tính toán merkle root và chuyển đổi nó thành proof_target của solution, xác định xem nó có đáp ứng latest_proof_target của epoch hiện tại hay không, nếu có thì tính toán thành công, gửi reward address, epoch_hash và counter cần thiết cho input được xây dựng ở trên làm solution và phát sóng.
Trong cùng một epoch, có thể cập nhật đầu vào của EpochProgram bằng cách lặp lại counter để thực hiện nhiều phép tính solution.
Sự thay đổi và ảnh hưởng của việc khai thác
Sau bản cập nhật này, puzzle đã chuyển từ việc tạo proof sang tạo witness, tất cả logic tính toán solution trong mỗi epoch là nhất quán nhưng logic tính toán giữa các epoch khác nhau có sự khác biệt lớn.
Từ mạng thử nghiệm trước đó, chúng ta có thể thấy rằng nhiều biện pháp tối ưu tập trung vào việc sử dụng GPU để tối ưu hóa tính toán MSM và NTT trong giai đoạn tạo proof nhằm cải thiện hiệu suất khai thác, bản cập nhật lần này hoàn toàn loại bỏ phần tính toán này; đồng thời, do quá trình tạo witness phát sinh từ việc thực hiện một chương trình thay đổi theo epoch, các lệnh trong đó sẽ có một số phụ thuộc thực hiện tuần tự, vì vậy việc thực hiện song song gặp phải không ít thách thức.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
8 thích
Phần thưởng
8
11
Chia sẻ
Bình luận
0/400
GateUser-3ae5cfe8
· 12giờ trước
Ngồi vững và giữ chặt, To da moon 🛫
Xem bản gốcTrả lời0
LuoGeMade1MillionDo
· 13giờ trước
Thật tuyệt, mùa xuân của zk塞道 sắp đến.
Xem bản gốcTrả lời0
ZeJun888
· 13giờ trước
vẽ BTC và tuyệt vời đứng đầu
Xem bản gốcTrả lời0
GateUser-b199200a
· 14giờ trước
Vậy máy khai thác của tôi còn có thể đào được không?
Xem bản gốcTrả lời0
StakeTillRetire
· 14giờ trước
Không thể đào nữa, trực tiếp bôi trơn.
Xem bản gốcTrả lời0
Rekt_Recovery
· 14giờ trước
bị thua lỗ trong việc khai thác aleo... nhưng vẫn tăng giá af ngl
Xem bản gốcTrả lời0
SandwichDetector
· 14giờ trước
Không thể điều chỉnh thuật toán nào thì ban hết cho tôi.
Xem bản gốcTrả lời0
RugPullProphet
· 14giờ trước
Thuật toán khai thác mới có hơi phức tạp, ai hiểu không?
Xem bản gốcTrả lời0
GweiObserver
· 14giờ trước
A này zk thơm quá
Xem bản gốcTrả lời0
DYORMaster
· 14giờ trước
Mua sớm, lợi nhuận sớm. Thị trường về quyền riêng tư sắp bắt đầu.
Aleo cập nhật thuật toán khai thác tập trung vào việc tạo witness nâng cao quyền riêng tư và khả năng mở rộng
Dự án Blockchain Aleo: Thực hiện bảo vệ quyền riêng tư và khả năng mở rộng thông qua công nghệ zk-SNARK.
Aleo là một dự án blockchain chú trọng đến việc bảo vệ quyền riêng tư, sử dụng công nghệ zk-SNARK (ZKP) để tăng cường tính riêng tư và khả năng mở rộng. Triết lý cốt lõi của Aleo là cho phép người dùng xác thực danh tính và xử lý dữ liệu mà không tiết lộ thông tin cá nhân.
Bài viết này giới thiệu tổng quan về dự án Aleo và những tiến triển mới nhất, đồng thời phân tích chi tiết về việc cập nhật thuật toán puzzle được thị trường đặc biệt quan tâm.
Giới thiệu về thuật toán mới nhất
Mạng Aleo ngẫu nhiên tạo ra một mạch ZK mỗi giờ. Thợ mỏ cần thử nghiệm các nonce khác nhau làm đầu vào cho mạch trong một giờ này, tính toán witness( tức là tất cả các biến trong mạch, quá trình này còn được gọi là synthesize), tính toán Merkle root cho witness, sau đó kiểm tra xem có đáp ứng yêu cầu độ khó khai thác hay không. Do tính ngẫu nhiên của mạch, thuật toán khai thác này không thân thiện với GPU, có nhiều thách thức trong việc tăng tốc tính toán.
Tình hình tài chính
Aleo đã hoàn thành vòng gọi vốn Series A trị giá 28 triệu USD do a16z dẫn đầu vào năm 2021, và hoàn thành vòng gọi vốn Series B trị giá 200 triệu USD vào năm 2024. Các nhà đầu tư trong vòng B bao gồm Kora Management, SoftBank Vision Fund 2, Tiger Global, Sea Capital, Slow Ventures và Samsung Next. Vòng gọi vốn này đã đưa giá trị của Aleo lên tới 1,45 tỷ USD.
Tóm tắt dự án
tính riêng tư
Cốt lõi của Aleo là công nghệ zk-SNARK (ZKPs), cho phép thực hiện giao dịch và hợp đồng thông minh trong khi bảo vệ quyền riêng tư. Chi tiết giao dịch của người dùng, chẳng hạn như người gửi và số tiền giao dịch, mặc định là ẩn. Thiết kế này không chỉ bảo vệ quyền riêng tư của người dùng mà còn cho phép tiết lộ có chọn lọc khi cần thiết, rất phù hợp cho sự phát triển của các ứng dụng DeFi. Các thành phần chính bao gồm:
Ngôn ngữ biên dịch Leo: được phát triển dựa trên ngôn ngữ Rust, chuyên dùng để phát triển các ứng dụng zero-knowledge (ZKApps), giảm yêu cầu kiến thức mật mã của các nhà phát triển.
snarkVM và snarkOS: snarkVM cho phép thực hiện tính toán ngoài chuỗi, chỉ xác minh kết quả tính toán trên chuỗi, từ đó nâng cao hiệu quả. snarkOS đảm bảo an toàn cho dữ liệu và tính toán, và cho phép thực hiện chức năng không cần cấp phép.
zkCloud: Cung cấp môi trường tính toán ngoại tuyến an toàn, riêng tư, hỗ trợ tương tác lập trình giữa người dùng, tổ chức và DAO.
Aleo còn cung cấp môi trường phát triển tích hợp (IDE) và bộ công cụ phát triển phần mềm (SDK), hỗ trợ các nhà phát triển nhanh chóng viết và phát hành ứng dụng. Các nhà phát triển có thể triển khai ứng dụng trong sổ đăng ký chương trình của Aleo mà không cần phụ thuộc vào bên thứ ba, từ đó giảm thiểu rủi ro nền tảng.
Khả năng mở rộng
Aleo đã áp dụng phương pháp xử lý ngoài chuỗi, giao dịch trước tiên được tính toán chứng minh trên thiết bị của người dùng, sau đó chỉ tải kết quả xác minh lên Blockchain. Cách này đã cải thiện đáng kể tốc độ xử lý giao dịch và khả năng mở rộng của hệ thống, tránh được các vấn đề tắc nghẽn mạng và chi phí cao tương tự như Ethereum.
cơ chế đồng thuận
Aleo đã giới thiệu AleoBFT, đây là một cơ chế đồng thuận kiến trúc hỗn hợp, kết hợp tính cuối cùng ngay lập tức của các xác thực viên và khả năng tính toán của các chứng nhân. AleoBFT không chỉ nâng cao mức độ phi tập trung của mạng mà còn tăng cường hiệu suất và độ an toàn.
Khối nhanh chóng tính cuối: AleoBFT đảm bảo mỗi khối được xác nhận ngay sau khi được tạo ra, nâng cao tính ổn định của nút và trải nghiệm người dùng.
Bảo đảm phi tập trung: Bằng cách tách biệt việc sản xuất khối và việc tạo ra coinbase, người xác thực chịu trách nhiệm tạo ra khối, người chứng minh thực hiện tính toán chứng minh, ngăn chặn một số thực thể chiếm đoạt mạng.
Cơ chế khuyến khích: Người xác thực và người chứng minh chia sẻ phần thưởng khối; Khuyến khích người chứng minh trở thành người xác thực thông qua việc đặt cược token, từ đó nâng cao mức độ phi tập trung và khả năng tính toán của mạng.
Aleo cho phép các nhà phát triển tạo ra các ứng dụng không bị giới hạn bởi gas, do đó đặc biệt phù hợp cho các ứng dụng cần chạy lâu như học máy.
Tiến trình hiện tại
Aleo sẽ khởi động mạng thử nghiệm khuyến khích vào ngày 1 tháng 7, dưới đây là một số thông tin mới quan trọng:
Bỏ phiếu ARC-100 đã được thông qua: Đề xuất ARC-100( "Những thực tiễn tốt nhất về tuân thủ cho các nhà phát triển và nhà điều hành Aleo", liên quan đến các vấn đề tuân thủ, việc khóa tiền trên mạng Aleo và các biện pháp an ninh như việc trì hoãn chuyển khoản đã kết thúc bỏ phiếu ) và đã được thông qua. Đội ngũ đang thực hiện những điều chỉnh cuối cùng.
Chương trình khuyến khích người xác thực: Chương trình này sẽ bắt đầu vào ngày 1 tháng 7, nhằm xác thực cơ chế puzzle mới. Chương trình sẽ kéo dài đến ngày 15 tháng 7, trong thời gian đó sẽ phân phối 1 triệu điểm Aleo làm phần thưởng. Tỷ lệ phần trăm điểm được tạo ra bởi các nút sẽ quyết định phần thưởng của họ, mỗi người xác thực ít nhất cần kiếm được 100 token để nhận phần thưởng. Chi tiết cụ thể vẫn chưa được xác định.
Nguồn cung ban đầu và nguồn cung lưu thông: Nguồn cung ban đầu là 1,5 tỷ token, nguồn cung lưu thông ban đầu khoảng 10%( chưa được xác định cuối cùng). Những token này chủ yếu đến từ nhiệm vụ Coinbase(7500 triệu), sẽ được phân phối trong sáu tháng đầu tiên, đồng thời bao gồm phần thưởng cho việc staking, chạy xác thực viên và xác thực nút.
Testnet Beta đặt lại: Đây là lần đặt lại mạng cuối cùng, sau khi hoàn thành sẽ không thêm tính năng mới, mạng sẽ giống như mạng chính. Việc đặt lại nhằm thêm ARC-41 và chức năng puzzle mới.
Đóng băng mã: Đóng băng mã đã hoàn thành cách đây một tuần.
Kế hoạch mở rộng nút xác minh: Số lượng nút xác minh ban đầu là 15, mục tiêu là tăng lên 50 trong năm nay và cuối cùng đạt 500. Để trở thành người ủy thác cần 10.000 đồng token, để trở thành nút xác minh cần 10 triệu đồng token, các số lượng này sẽ giảm dần theo thời gian.
Giải thích cập nhật thuật toán
Gần đây, Aleo đã công bố thông tin mới nhất về mạng thử nghiệm đồng thời cập nhật phiên bản mới của thuật toán puzzle. Thuật toán mới không còn tập trung vào việc tạo ra kết quả zk proof, đã loại bỏ MSM và NTT(, hai mô-đun tính toán được sử dụng nhiều trong việc tạo proof trong zk, trước đó những người tham gia mạng thử nghiệm đã tối ưu hóa hiệu suất của thuật toán này để tăng lợi nhuận khai thác ), tập trung vào việc tạo ra dữ liệu trung gian witness trước khi sản xuất proof. Dưới đây là một giới thiệu đơn giản về thuật toán mới nhất.
Quy trình đồng thuận
Về mặt giao thức đồng thuận, trong quy trình, prover và validator lần lượt chịu trách nhiệm tạo ra kết quả tính toán solution và tạo khối cũng như tổng hợp đóng gói solution. Quy trình như sau:
Prover tính toán puzzle xây dựng ra solutions và phát sóng đến mạng.
Giao dịch Validator và giải pháp cho khối mới tiếp theo, đảm bảo số lượng giải pháp không vượt quá giới hạn đồng thuận (MAX_SOLUTIONS)
Tính hợp pháp của Solution cần kiểm tra epoch_hash của nó phù hợp với latest_epoch_hash do validator duy trì, proof_target được tính toán của nó phù hợp với latest_proof_target do validator trong mạng duy trì, đồng thời số lượng solution trong block đó nhỏ hơn giới hạn đồng thuận.
Giải pháp hiệu quả có thể nhận được phần thưởng đồng thuận
Câu đố Tổng hợp
Phiên bản mới nhất của lõi thuật toán được gọi là Synthesis Puzzle, lõi của nó là tạo ra một EpochProgram chung cố định cho mỗi epoch, thông qua việc xây dựng mạch chứng R1CS cho đầu vào và EpochProgram, tạo ra R1CS assignment tương ứng ( tức là bằng chứng mà mọi người đề cập đến ) và được sử dụng làm nút lá của cây Merkle, sau khi tính toán tất cả các nút lá sẽ tạo ra Merkle root và chuyển đổi thành proof_target của solution. Quy trình và tiêu chuẩn chi tiết để xây dựng Synthesis Puzzle như sau:
Mỗi lần tính toán puzzle được gọi là nonce, nó được xây dựng từ địa chỉ nhận thưởng khai thác, epoch_hash và một số ngẫu nhiên counter, mỗi lần cần tính toán giải pháp mới có thể nhận được nonce mới bằng cách cập nhật counter.
Trong mỗi epoch, EpochProgram mà tất cả các prover trong mạng cần tính toán là giống nhau, nó được lấy mẫu từ tập lệnh bằng số ngẫu nhiên được tạo ra từ epoch_hash hiện tại, logic lấy mẫu là:
Sử dụng nonce làm hạt giống số ngẫu nhiên để tạo đầu vào cho EpochProgram
Tập hợp R1CS và input tương ứng với EpochProgram, thực hiện tính toán assignment R1CS witness()
Tính toán tất cả các witness, các witness này sẽ được chuyển đổi thành chuỗi các nút lá tương ứng của merkle tree, merkle tree là một cây Merkle K-ary bậc 8 với độ sâu 8.
Tính toán merkle root và chuyển đổi nó thành proof_target của solution, xác định xem nó có đáp ứng latest_proof_target của epoch hiện tại hay không, nếu có thì tính toán thành công, gửi reward address, epoch_hash và counter cần thiết cho input được xây dựng ở trên làm solution và phát sóng.
Trong cùng một epoch, có thể cập nhật đầu vào của EpochProgram bằng cách lặp lại counter để thực hiện nhiều phép tính solution.
Sự thay đổi và ảnh hưởng của việc khai thác
Sau bản cập nhật này, puzzle đã chuyển từ việc tạo proof sang tạo witness, tất cả logic tính toán solution trong mỗi epoch là nhất quán nhưng logic tính toán giữa các epoch khác nhau có sự khác biệt lớn.
Từ mạng thử nghiệm trước đó, chúng ta có thể thấy rằng nhiều biện pháp tối ưu tập trung vào việc sử dụng GPU để tối ưu hóa tính toán MSM và NTT trong giai đoạn tạo proof nhằm cải thiện hiệu suất khai thác, bản cập nhật lần này hoàn toàn loại bỏ phần tính toán này; đồng thời, do quá trình tạo witness phát sinh từ việc thực hiện một chương trình thay đổi theo epoch, các lệnh trong đó sẽ có một số phụ thuộc thực hiện tuần tự, vì vậy việc thực hiện song song gặp phải không ít thách thức.