Tác giả: Janos Nick, Blockstream
Biên soạn: Bai Ding& tệ hỗ trợ chức năng xác minh ZK và các chủ đề cụ thể được đề cập bao gồm các lỗi chức năng của UTXO và tập lệnh Bitcoin, nội dung chung của các khái niệm như Taproot và OP_CAT cũng như BitVM và Chain State Proof. Bài viết đưa ra quan điểm tương đối rõ ràng:
Việc đưa ZK vào giao thức Bitcoin là một xu hướng tất yếu và có hai lộ trình để điều này:Đầu tiên là cho phép các tập lệnh Bitcoin hỗ trợ trực tiếp xác minh SNARK, yêu cầu sử dụng mã hoạt động OP_CAT và xác suất OP_CAT cuối cùng vượt qua là rất cao; tuyến đường thứ hai dựa trên BitVM và yêu cầu; việc giới thiệu các phương pháp chống gian lận và nhóm ZeroSync cũng đề xuất Bằng chứng trạng thái chuỗi mục tiêu được sử dụng để giảm chi phí xác minh dữ liệu lịch sử của ứng dụng khách nút.
Văn bản:Để hiểu Bitcoin sâu hơn, tốt nhất nên coi nó như một hệ thống xã hội. Khi Bitcoin ra mắt vào những ngày đầu, các nhà phát triển đã xác định các chương trình phần mềm mà các nút Bitcoin cần chạy, giống như xác định một bộ quy tắc để hệ thống xã hội tuân theo. Sở dĩ hệ thống xã hội Bitcoin có thể hoạt động ổn định là vì mọi người đều có sự đồng thuận nhất định về các vấn đề then chốt như “bản chất của Bitcoin là gì” và “nó nên như thế nào”. Tất nhiên, việc đạt được sự đồng thuận không phải là điều dễ dàng và con người vẫn có những khác biệt lan rộng và ngày càng gia tăng khi đối mặt với những vấn đề trên.
Điều này quay trở lại nguồn gốc lịch sử của Bitcoin. Khi Satoshi Nakamoto phát hành sách trắng Bitcoin, ông từng nói: “Tôi đang làm việc trên một hệ thống thanh toán điện tử hoàn toàn mới. Hệ thống này hoàn toàn là P2P và không cần dựa vào bất kỳ bên thứ ba nào”. Đoạn văn này đã được xuất bản trên danh sách gửi thư của Cypherpunks (một nhóm thảo luận qua email được thành lập vào năm 1992, bao gồm một nhóm các nhà mật mã học và những người đam mê công nghệ quan tâm đến việc bảo vệ quyền riêng tư và công nghệ mật mã).
Tuy nhiên, Bitcoin hạn chế thông lượng dữ liệu ở cấp thiết kế sản phẩm. Số lượng giao dịch có thể xử lý trên mỗi đơn vị thời gian bị hạn chế. Nếu số lượng giao dịch cần xử lý tăng nhanh, người dùng sẽ bắt đầu cuộc chiến về giá để hoàn thành giao dịch một cách nhanh chóng, nhanh chóng tăng phí xử lý phải trả. Giao dịch duy nhất có phí xử lý cao nhất trong mạng Bitcoin xảy ra sau khi phần thưởng khối giảm một nửa vào năm 2024 và phí xử lý cho giao dịch có mức độ ưu tiên trung bình trên chuỗi đạt 150 USD. Có thể nói, phí giao dịch đắt đỏ của mạng Bitcoin đã trở thành một vấn đề.
Để giải quyết vấn đề phí giao dịch, người ta đã đầu tư rất nhiều nguồn lực vào việc phát triển Lightning Network. Nhưng theo một bài báo xuất bản năm 2016, Lightning Network chỉ có thể hỗ trợ hàng chục triệu người dùng trong thực tế và không thể hiện thực hóa tầm nhìn của mình về một hệ thống thanh toán toàn cầu.
Ngoài việc phí giao dịch quá đắt, còn có một vấn đề khác, đó làBitcoin chưa bao giờ đạt được tính ẩn danh như nó đã hình dung. Satoshi Nakamoto đã chỉ ra trong một nhóm thảo luận email cypherpunk rằng Bitcoin có chức năng bảo vệ quyền riêng tư và người khởi tạo giao dịch có thể hoàn toàn ẩn danh. Tuy nhiên, mặc dù người khởi tạo giao dịch không yêu cầu KYC nhưng dữ liệu giao dịch trên chuỗi Bitcoin bị rò rỉ rất nhiều thông tin, làm lộ phần lớn quyền riêng tư của người dùng.
Mặc dù có một số ứng dụng ví có chức năng bảo mật có thể giải quyết các vấn đề trên ở một mức độ nhất định, nhưng các nhà phát triển của các ứng dụng ví này phải đối mặt với các mối đe dọa ở nhiều quy mô khác nhau. Ví dụ: nhà phát triển ví Samourai CoinJoin đã bị FBI bắt giữ vào tháng 4 năm 2024 và một tuần sau, nhà phát triển ví Wasabi đã đóng cửa thành phần phối hợp CoinJoin của họ. Rõ ràng, những cái gọi là ví riêng tư này không hoàn toàn xứng đáng với sự tin tưởng của người dùng.
Tóm lại, cho đến ngày nay, nhiều khái niệm về Bitcoin vẫn chưa được hiện thực hóa và các công nghệ liên quan vẫn đang được phát triển liên tục. Mặc dù vậy, nhiều người trong cộng đồng Bitcoin tin rằng thiết kế giao thức của Bitcoin sẽ không thay đổi, nhưng cũng có nhiều người, như tôi, rất đam mê cải tiến Bitcoin. Vậy, Bitcoin nên cải thiện theo hướng nào?
Để giải quyết các vấn đề trên, có rất nhiều đề xuất trong cộng đồng Bitcoin và những đề xuất có hiệu quả lý thuyết tốt nhất nên liên quan đến ZK và SNARK. Với sự trợ giúp của ZK và SNARK,bạn có thể đạt được các tính năng sau:
1. Cải thiện đáng kể quyền riêng tư: sử dụng cam kết đồng hình của Peterson có tác động đáng kể về số lượng giao dịch và Bằng chứng Phạm vi Cải thiện quyền riêng tư của người dùng (như được thực hiện trong chuỗi bên Element của Blockstream); ẩn dấu vết giao dịch thông qua các chữ ký có thể liên kết (như trong Monero);
2. Cải thiện thông lượng giao dịch
Trên thực tế, có rất nhiều phương tiện kỹ thuật để giải quyết các vấn đề tồn tại trong Bitcoin, nhưng tại sao cho đến ngày nay những công nghệ này vẫn chưa được thêm vào giao thức Bitcoin? Điều này là do giao thức Bitcoin khó sửa đổi. Không có tổ chức nào tương tự như Ethereum Foundation trong hệ sinh thái Bitcoin. Bất kỳ sửa đổi nào đối với giao thức đều đòi hỏi sự đồng thuận cao của cộng đồng. Điều này liên quan đến rất nhiều trò chơi và việc kiểm tra và cân bằng quyền lực. Vì vậy, nó khác với Ethereum hàng năm. đã được cập nhật cho opcode EVM và giao thức Bitcoin đã thay đổi rất ít kể từ khi ra đời.
Trên thực tế, điều tốt là giao thức khó sửa đổi ở một mức độ nào đó. Nếu việc sửa đổi giao thức Bitcoin dễ dàng thì nó cũng sẽ như vậy. dễ dàng thực hiện các thay đổi độc hại và tấn công dễ dàng. Điều này đặt ra câu hỏi:Có cách nào để cải thiện hiệu suất của Bitcoin mà không thay đổi thiết kế của giao thức Bitcoin không?
Để trả lời câu hỏi này, trước tiên chúng ta cần ôn lại kiến thức về Bitcoin. Nếu chúng ta muốn chuyển Bitcoin cho người khác, chúng ta cần tạo một giao dịch và phát nó lên mạng Bitcoin. Dữ liệu đầu ra của giao dịch sẽ cho biết số lượng BTC được chuyển và người nhận BTC có thể tạo giao dịch mới để chi tiêu số BTC nhận được. Sau đó, giao dịch mới này sẽ tạo ra dữ liệu đầu ra mới và gửi BTC cho người khác.
Điều cần lưu ý ở đây là Bitcoin không có trạng thái toàn cầu như Ethereum, đặc biệt là trạng thái không có tài khoản, chỉ có dữ liệu đầu ra giao dịch. Đầu ra của mỗi giao dịch có hai trạng thái: người nhận đã chi tiêu hoặc chưa chi tiêu. Đầu ra giao dịch chưa chi tiêu là UTXO quen thuộc.
Tất nhiên, ngoài số BTC liên quan, mỗi đầu ra giao dịch còn có một chương trình bổ sung, sử dụng thứ gọi là ngôn ngữ Bitcoin Script để viết. Bất cứ ai có thể cung cấp bằng chứng chính xác Nhân chứng cho chương trình này đều có thể chi tiêu đầu ra giao dịch (UTXO). Bản thân tập lệnh Bitcoin là một ngôn ngữ lập trình dựa trên ngăn xếp chứa một loạt các opcode. Các chương trình bổ sung UTXO nói trên thường bao gồm nhiều opcode. Chúng hoàn thành các phép tính dựa trên ngăn xếp và đưa kết quả trở lại ngăn xếp.
Có nhiều loại tập lệnh Bitcoin phổ biến, đã tồn tại từ thời kỳ đầu của Bitcoin. Ví dụ: tập lệnh phổ biến nhất trong Bitcoin bao gồm khóa chung + mã opcode để kiểm tra chữ ký số. Mã opcode này quy định rằng để sử dụng/mở khóa UTXO, chữ ký số của khóa chung tương ứng phải được xuất trình.
Đề xuất đọc: "Tiếp cận BTC: Cần có kiến thức nền tảng để hiểu BitVM (1)"
Ở đây chúng tôi tóm tắt chức năng tập lệnh Bitcoin. Đầu tiên Bitcoin Script có thể làm gì?
Ngăn xếp có thể được sắp xếp lại, kiểm tra sự bằng nhau ( Sử dụng kiểm tra sự bằng nhau để xác minh xem các điều kiện cụ thể có được đáp ứng hay không, do đó đảm bảo tính bảo mật và hiệu lực của giao dịch), các hoạt động phân nhánh tương tự như if-else có thể được thực hiện.
Các phép tính số học có giới hạn có thể được thực hiện trên các số 32 bit, cụ thể là phép cộng và phép trừ.
Dữ liệu có thể được băm và có thể kiểm tra chữ ký ECDSA và Schnorr.
Bitcoin Script không thể làm được những gì?
Không có vòng lặp, nhảy, đệ quy, nghĩa là Nó không phải là Turing hoàn chỉnh và có khả năng lập trình rất hạn chế.
Không thể thực hiện các thao tác theo bit.
Thiếu mã lệnh nhân và chia.
Không thể kết nối các phần tử trên ngăn xếp.
Hầu như không có khả năng đọc và kiểm tra dữ liệu giao dịch trên chuỗi. Các tập lệnh bitcoin không thể truy cập trực tiếp vào số lượng của mỗi giao dịch và không có cách nào để chuyển trạng thái (UTXO là sử dụng một lần và các tập lệnh cũ sẽ bị hủy và các tập lệnh mới được tạo sau mỗi lần chuyển).
Trong các phiên bản đầu tiên của Bitcoin, đoạn script trên "không thể thực hiện được" Có một số thứ thực sự có thể thực hiện được, nhưng một số trong số chúng sau đó đã bị Satoshi Nakamoto vô hiệu hóa vì Satoshi tìm thấy lỗ hổng trong các opcode này. Ví dụ: opcode OP_CAT, có thể hợp nhất hai phần tử trong ngăn xếp, có thể được sử dụng để tấn công từ xa một nút Bitcoin nhằm khiến nó sụp đổ. Satoshi Nakamoto đã vô hiệu hóa OP_CAT một cách thận trọng và một số opcode khác cũng đã bị vô hiệu hóa. bị tấn công.
Vậy Bitcoin Script có thể xác minh SNARK không? Mặc dù về mặt lý thuyết, tập lệnh Bitcoin không phải là Turing-complete nhưng các hoạt động cơ bản của nó đủ để xác minh bất kỳ phép tính nào. Tuy nhiên, trên thực tế, việc xác minh SNARK vẫn không thể thực hiện được vì kích thước chương trình cần thiết cho bước xác minh vượt quá giới hạn tối đa của Bitcoin - 4 MB. .
Có lẽ chúng ta có thể thử thực hiện các phép tính số học trong các trường hữu hạn lớn, nhưng chi phí rất cao, chẳng hạn như phép nhân hai số nguyên 254 bit do BitVM triển khai , liên quan Kích thước tập lệnh Bitcoin đạt gần 8KB.
Ngoài ra, việc xác minh bằng chứng Merkle mà không có OP_CAT cũng rất tốn kém, vì nó yêu cầu các thao tác tương tự như vòng lặp for .
Vậyquay lại câu hỏi trước: Tại sao chúng ta không thể đơn giản thay đổi giao thức Bitcoin và thêm các opcode mạnh hơn?
Như đã đề cập trước đó, rất khó đạt được sự đồng thuận đa số về các quy tắc giao thức mới vì không có người ra quyết định tập trung trong hệ sinh thái Bitcoin . Bất kỳ đề xuất nào nhằm cải thiện Bitcoin Script đều có nhiều sự phản đối. Mỗi người đều có quan điểm và quan điểm khác nhau. Trong mạng Bitcoin, không có cách nào tốt để đo lường liệu cộng đồng có đạt được sự đồng thuận đa số hay không và việc buộc phải cập nhật trong trường hợp này sẽ dẫn đến một chuỗi fork.
Tất nhiên,Bitcoin không hoàn toàn tĩnh. Các bản cập nhật gần đây nhất là SegWit vào năm 2017 và Taproot vào năm 2021.
Nâng cấp Taproot đã thay đổi nhiều quy tắc và phải mất ba năm rưỡi từ khi phát hành trên lý thuyết đến khi kích hoạt thực tế. Yếu tố chính trong việc kích hoạt Taproot là nó không thay đổi các giả định bảo mật hiện có và tạo ra sự cải thiện rõ ràng đối với giao thức Bitcoin. Ví dụ: nó cho phép sử dụng chữ ký Schnorr thay vì ECDSA. Cả hai đều dựa trên giả định logarit rời rạc và sử dụng cùng các đường cong elip, nhưng cái trước hiệu quả hơn và ít tính toán hơn so với cái sau.
Hơn nữa, những cải tiến của Taproot đối với Bitcoin chủ yếu được chia thành ba phần sau:
Đầu tiên , Taproot giảm chi phí xác minh các tập lệnh với số lượng lớn các nhánh chọn lọc, cho phép Bitcoin hỗ trợ các chương trình phức tạp hơn;
Thứ hai, Taproot giảm đối với dữ liệu tập lệnh cần để được tiết lộ trên chuỗi, bạn có thể tập hợp nhiều chương trình tập lệnh thành một cây Merkle. Mỗi tập lệnh nằm trên một lá khác nhau. Nếu bạn muốn kích hoạt một tập lệnh nhất định, bạn chỉ cần tiết lộ vị trí của lá đó và Merkle. proof. ;
Thứ ba, Taproot cũng đã bổ sung thêm các thiết kế cơ chế khác.
Nói như vậy, vì Bitcoin có tiền lệ bổ sung các chức năng mạnh mẽ hơn như Tarpoot, tại sao không thêm một opcode chuyên dụng để xác minh SNARK? Điều này là do việc thêm cái gọi là opcode OP_SNARK rất khác với bản nâng cấp Taproot.
Trước hết, có rất nhiều ý tưởng thiết kế cho OP_SNARK và hầu hết mọi người khó có thể ủng hộ một giải pháp duy nhất, thứ hai, nếu đề xuất đó được thông qua; , tất cả các bit Tất cả các nút tiền tệ phải hỗ trợ sơ đồ OP_SNARK cụ thể này, điều này sẽ tạo thêm gánh nặng kỹ thuật rất lớn.
Ngoài ra, bản thân sự phức tạp của OP_SNARK cũng là một thách thức lớn. Nếu không bao gồm các bài kiểm tra, Taproot chỉ thêm khoảng 1600 dòng mã, mức này có thể chấp nhận được, trong khi OP_SNARK chứa mã phức tạp hơn nhiều.
Hơn nữa, ai sẽ xem xét liệu mã hoạt động OP_SNARK có nên được kích hoạt hay không? Làm cách nào để đạt được sự đồng thuận trong hệ sinh thái Bitcoin mà không có một số người hiểu chi tiết về nó? Đây là tất cả các câu hỏi. Do đóTổng hợp lại, quá trình nâng cấp OP_SNARK sẽ không diễn ra trong thời gian ngắn.
Tuy nhiên, có nhiều cách khác để xác minh SNARK trong Bitcoin Script. Chúng tôi có thể làm cho các tập lệnh Bitcoin hoạt động hiệu quả hơn bằng cách thêm các mã hoạt động đơn giản hơn, cho phép mọi người triển khai các chương trình xác thực SNARK trong tập lệnh. Nhưng trên thực tế, rất khó để viết chương trình xác minh SNARK bằng ngôn ngữ tập lệnh Bitcoin.
Do đó, nhóm nghiên cứu Blockstream đang phát triển Simplicity, một ngôn ngữ lập trình được thiết kế để thay thế Bitcoin Script. Tính đơn giản được thiết kế đặc biệt cho các hệ thống đồng thuận blockchain và không cố ý hoàn thành Turing, giúp dễ dàng phân tích tĩnh và xác minh chính thức.
Bây giờ chúng ta sẽ nói về một đề xuất rất đơn giản nhưng nặng nề có thể làm cho Bitcoin Script trở nên mạnh mẽ hơn, mã op_CAT. Chúng tôi đã đề cập trước đó rằng OP_CAT đã tồn tại trong phiên bản đầu tiên của Bitcoin, nhưng opcode này có thể cho phép các nút Bitcoin bị tấn công DOS trong một số điều kiện nhất định, vì vậy nó đã bị Satoshi Nakamoto cấm. Hiện tại có một số trong cộng đồng Bitcoin mà mọi người muốn. để kích hoạt lại nó.
Chức năng của OP_CAT là bật hai phần tử ở đầu ngăn xếp, kết nối chúng rồi đặt chúng trở lại ngăn xếp. Điều này nghe có vẻ rất đơn giản nhưng nó có thể mang lại những cải tiến chức năng to lớn cho các tập lệnh Bitcoin.
Ví dụ: các tập lệnh Bitcoin ban đầu không thể truy cập thông tin trạng thái như số lượng giao dịch trên chuỗi, nhưng với OP_CAT, điều này cũng có thể thực hiện được; được sử dụng để xác minh Merkle chứng minh. Nói tóm lại, OP_CAT là một bản nâng cấp ở cấp độ opcode cơ bản, sẽ mang lại nhiều chức năng mới. Nhiều người đã đề xuất những tác động có thể đạt được khi sử dụng OP_CAT.
Và OP_CAT có giúp xác minh SNARK trong tập lệnh không? Câu trả lời rất hữu ích vì việc hỗ trợ xác minh bằng chứng Merkle giúp xác minh SNARK dựa trên FRI và OP_CAT có thể hỗ trợ điều này. Trước đây, các tập lệnh liên quan đến xác minh SNARK có thể quá lớn để vừa với khối Bitcoin. Với OP_CAT, kích thước của chương trình có thể được giảm xuống.
OP_CAT đã được thảo luận trong nhiều năm trước và ngày càng có nhiều người nhận ra vai trò của nó trong việc kiểm tra giao dịch (xem xét nội tâm). Ưu điểm của OP_CAT so với các đề xuất khác là nó đã tồn tại trong Bitcoin Script trước đó nên dễ dàng đạt được sự đồng thuận trong cộng đồng hơn. Tuy nhiên, việc kích hoạt OP_CAT cũng có thể khiến thu nhập MEV của một số người bị ảnh hưởng nên cộng đồng Bitcoin vẫn chưa đạt được sự đồng thuận về vấn đề này.
Tóm lại,Bitcoin có thể có một con đường tiềm năng, bằng cách kích hoạt các mã hoạt động đơn giản như OP_CAT, để mọi người có thể sử dụng tập lệnh Bitcoin Xác minh SNARK. Điều đáng nói là gần đây có một đề xuất tên là "Khôi phục tập lệnh tuyệt vời" cho phép các mã nhân, cho phép tất cả các mã số học hoạt động với độ chính xác tùy ý.
Ngoài ra, khi xem xét tác động của OP_CAT đối với mạng Bitcoin, chúng tôi có thể kiểm tra tác động đối với các nhà khai thác nút Bitcoin sau khi nó đi qua. Để làm cho Bitcoin có khả năng chống kiểm duyệt và phi tập trung, cộng đồng Bitcoin muốn càng nhiều người chạy các nút để xác minh dữ liệu càng tốt. Nếu Bitcoin hỗ trợ hoạt động xác minh SNARK, chi phí chạy nút Bitcoin sẽ vẫn không tăng đáng kể, điều này sẽ không gây hại nhiều đến tính bảo mật và khả năng chống kiểm duyệt của Bitcoin.
Hiện tại, một khối Bitcoin có thể chứa tới 4MB dữ liệu và dự kiến cứ 10 phút lại có một khối được khai thác, gần như tất cả khối Cả hai đều có thể chứa đầy các tập lệnh Bitcoin và nhân chứng Nhân chứng (tương tự như chữ ký số). Tính toán, mỗi khối hiện có thể chứa tới 80K xác minh chữ ký. Trung bình, mỗi khối hỗ trợ xác minh chữ ký từ 7K đến 10K. CPU Intel 2020 của tôi mất trung bình 3,2 giây để xác minh một khối Bitcoin. Tất nhiên, không chỉ việc xác minh chữ ký tốn thời gian mới ảnh hưởng đến tốc độ xác minh khối.
Ngoài ra, nếu các giao dịch Bitcoin hỗ trợ ZKization trong tương lai, điều đó dường như vô hại ngay cả khi thời gian tạo giao dịch được kéo dài. Đối với ví phần cứng được sử dụng để lưu trữ tài sản lâu dài, chúng có xu hướng có màn hình và không lớn. Chức năng của chúng là lưu trữ khóa và tạo chữ ký. CPU của ví phần cứng nhìn chung tương đối yếu, chẳng hạn như CPU lõi kép 240 MHz với dung lượng bộ nhớ nhất định, phản hồi rất nhanh khi ký giao dịch Bitcoin.
Tôi đã thực hiện một cuộc khảo sát nhỏ hỏi người dùng xem độ trễ tối đa để thiết bị chữ ký tạo bằng chứng có thể chấp nhận được là bao nhiêu và nhiều người đồng ý chờ đợi lâu hơn, đặc biệt nếu có thể thu được lợi ích đáng kể. Vì vậy, nếu chúng tôi đưa ZK vào các giao dịch Bitcoin, dường như sẽ không có nhiều rắc rối.
Chúng tôi đã dành nhiều thời gian để thảo luận về cách thay đổi thiết kế cơ bản của Bitcoin, nhưng trên thực tế, có nhiều kịch bản ứng dụng có thể được triển khai mà không cần thay đổi Bitcoin. . Ở đây tôi muốn nêu bật một ứng dụng liên quan đến BitVM - Bằng chứng trạng thái chuỗi, kết hợp ZK để chứng minh tính hợp lệ của hàm băm khối.
Công nghệ này đã mang lại những thay đổi gì cho Bitcoin? Trước hết,Với Bằng chứng trạng thái chuỗi, khối lượng công việc đồng bộ hóa và xác minh dữ liệu lịch Bitcoin có thể được nén lại, giảm đáng kể chi phí chạy các nút. Hiện tại, phải mất 5 giờ 30 phút để đồng bộ hóa và xác minh từ khối gốc đến khối Bitcoin mới nhất trên thiết bị có phần cứng tốt, trong khi sẽ mất vài ngày trên thiết bị cấp Raspberry Pi. có thể giảm đáng kể mức tiêu thụ thời gian này. Thứ hai,bằng chứng trạng thái chuỗi là một phần quan trọng có thể được sử dụng với BitVM và sẽ thúc đẩy việc triển khai BitVM.
Nhóm ZeroSync đã tiến hành nghiên cứu chuyên sâu về Bằng chứng trạng thái chuỗi và tạo ra một "Bằng chứng chuỗi tiêu đề" nhẹ hơn. Giải pháp này kết hợp với ZK, nó chỉ chứng minh tính hợp lệ của tiêu đề khối Bitcoin, do đó tạo thành một "chuỗi tiêu đề" chứa tất cả 850.000 tiêu đề khối trong lịch sử của Bitcoin và tạo ra hàm băm 80 byte cho mỗi tiêu đề khối.
Giải pháp này yêu cầu tính toán SHA-256 gấp đôi cho mỗi tiêu đề khối Bitcoin để xác minh bằng chứng PoW tương ứng. ZeroSync sử dụng STARK để tạo Bằng chứng chuỗi tiêu đề của Bitcoin. Chi phí để tạo bằng chứng là khoảng 4.000 USD và chỉ mất 3 giây để xác minh bằng chứng bằng trình duyệt của tôi.
Tuy nhiên, vì nó không bao gồm quy trình xác minh nội dung giao dịch trong khối nên bằng chứng chuỗi tiêu đề chỉ có thể giả định rằng chuỗi khối có nhiều bằng chứng POW nhất là hợp lệ và theo mặc định cho phép ứng dụng khách Bitcoin đồng bộ hóa thông tin mới nhất chặn trên chuỗi này. Trong kịch bản này, mặc dù kẻ tấn công có thể tạo một khối chứa các giao dịch không hợp lệ, hãy thêm nhiều khối hơn sau khối này và tạo bằng chứng chuỗi tiêu đề để làm mù ứng dụng khách Bitcoin đồng bộ hóa dữ liệu lịch sử, nhưng việc thực hiện cuộc tấn công sẽ cực kỳ tốn kém và sẽ sẽ được gỡ lỗi trực tiếp bởi các máy khách nút đầy đủ Bitcoin hiện có.
Tuy nhiên, mặc dù tỷ lệ thành công của kịch bản tấn công này thấp, bằng chứng chuỗi tiêu đề không thể được coi là giải pháp hoàn hảo nếu nó cho phép kẻ tấn công đánh cắp một lượng BTC khổng lồ. Nếu muốn chứng minh trạng thái chuỗi hoàn chỉnh, chúng ta cần chứng minh trực tiếp rằng mọi thứ trong khối Bitcoin đều hợp lệ, bao gồm xác minh chữ ký ECDSA và Schnorr dựa trên đường cong elip secp256k1.
Các khối lịch sử hàng tháng của Bitcoin có thể chứa 30 triệu chữ ký và lịch sử chứa tổng cộng 2,5 tỷ hoạt động chữ ký, cũng như một số lượng lớn hoạt động SHA-256 . Bằng cách này, mạng Bitcoin tạo ra khoảng 7GB dữ liệu khối mỗi tháng và tất cả dữ liệu lịch sử có tổng dung lượng hơn 650GB. Trên thực tế con số này có thể gấp 2 đến 3 lần.
Bây giờ hãy xem BitVM. BitVM cho phép Bitcoin xác minh mọi tác vụ điện toán và là con đường tốt nhất để đạt được xác minh SNARK mà không cần thay đổi giao thức. BitVM sử dụng hai kỹ thuật để vượt qua giới hạn kích thước tập lệnh khối Bitcoin. Đầu tiên, nó sử dụng cấu trúc tập lệnh của Taproot MerkleTree;
Thứ hai, nó kích hoạt sơ đồ lưu trữ KV có thể được truy cập qua một tập lệnh duy nhất, cho phép kết nối với số lượng siêu lớn của chương trình kịch bản. Tuy nhiên, giao thức Bitcoin không thực thi tính toàn vẹn của sơ đồ lưu trữ KV ở trên. BitVM cần kiểm tra Prover độc hại thông qua bằng chứng gian lận. Nếu Prover đưa ra tuyên bố không hợp lệ hoặc bộ lưu trữ KV có vấn đề, những người khác có thể bắt đầu giao dịch đó trên chuỗi Bitcoin. điều đó cho thấy Prover đã hành động không đúng mực và lấy đi tài sản được đặt cọc trước của mình.
Tóm lại, Bitcoin đang đối mặt với những thách thức lớn và mọi người đã đề xuất nhiều giải pháp khác nhau để giải quyết những vấn đề này. Tuy nhiên, những đề xuất này sẽ không sớm được cộng đồng Bitcoin chấp nhận và những thay đổi đối với giao thức sẽ không thể thực hiện được trong ngắn hạn Đây vừa là điều tốt vừa là điều xấu. Nó cũng có nghĩa là Bitcoin được phân cấp và an toàn hơn.
Nhiều người trong cộng đồng Bitcoin rất hào hứng với tiềm năng của SNARK/STARK. Phương pháp khả thi nhất để đạt được xác minh SNARK trong trung và dài hạn rất có thể là BitVM, nhưng nó đòi hỏi đầu tư nhiều hơn cho R&D để có hiệu quả trên thực tế;
Re- Kích hoạt opcode OP_CAT cũng là một ý tưởng, nhưng cần phải chứng minh rằng lợi ích của việc khởi động lại opcode vượt xa rủi ro và điều tra xem các opcode đơn giản nào có thể cho phép xác minh SNARK trong tập lệnh Bitcoin hoặc khám phá những kịch bản tương tự như OP_CAT có thể đạt được . Bất kể giải pháp nào được chọn, mục tiêu cuối cùng của cộng đồng Bitcoin phải là làm cho sản phẩm trở nên thiết thực và hỗ trợ các kịch bản khả thi hơn.
Link gốc: https://www.youtube.com/watch?v=GrSCZmFuy7U< /p>