Hợp đồng ghi chú rời (DLC) được đề xuất vào năm 2018 bởi các nhà nghiên cứu tại Viện Công Nghệ Massachusetts như một khung thực hiện hợp đồng dựa trên oracle. Nó cho phép hai bên thực hiện thanh toán có điều kiện dựa trên các điều kiện đã định trước, thông qua việc xác định trước các kết quả có thể và thực hiện ký trước, khi oracle ký kết quả thì thực hiện thanh toán. Điều này cho phép DLC đảm bảo an toàn cho tiền gửi Bitcoin trong khi thực hiện các ứng dụng tài chính phi tập trung mới.
Bài viết trước đã tóm tắt những lợi thế của DLC trong việc bảo vệ quyền riêng tư, hợp đồng phức tạp, và rủi ro tài sản thấp, đồng thời cũng phân tích các vấn đề mà nó đang phải đối mặt như rủi ro khóa, rủi ro tin cậy phi tập trung, và rủi ro thông đồng. Bài viết đề xuất việc giới thiệu các oracle phi tập trung, chữ ký ngưỡng, và cơ chế thách thức lạc quan để đối phó với những vấn đề này. Do DLC liên quan đến oracle, Alice và Bob, tình huống tấn công thông đồng giữa các bên tham gia khác nhau là phức tạp, dẫn đến các chiến lược phòng thủ cũng tương đối phức tạp. Chiến lược phòng thủ phức tạp này không hoàn hảo, không phù hợp với triết lý "Đạo lớn thì giản", và thiếu vẻ đẹp giản dị.
Trong Bitcoin, hành động của bất kỳ bên tham gia nào đều phải được thực hiện thông qua UTXO. Do đó, việc đảm bảo UTXO đúng thông qua cơ chế đồng thuận có thể chống lại mọi cuộc tấn công. Tương tự, trong DLC, mọi hành động đều phải được thực hiện thông qua CET(Contract Execution Transaction). Sử dụng cơ chế thách thức lạc quan để đảm bảo CET đúng có thể chống lại mọi cuộc tấn công. Cụ thể, oracle cần đặt cọc 2BTC trước khi ký CET. Thêm cơ chế thách thức lạc quan vào CET. Nếu CET không bị thách thức hoặc đã phản ứng thành công với thách thức, thì được coi là đúng và hoàn tất thanh toán, oracle sẽ giải phóng tiền đặt cọc và nhận phí giao dịch. Nếu oracle cố gắng làm điều xấu, bất kỳ ai cũng có thể thách thức thành công, CET đó sẽ không thể thanh toán, oracle sẽ mất tiền đặt cọc và không thể ký cho cùng một CET nữa. Cách làm này tuân theo "Đại đạo chí giản", có sự giản dị đẹp đẽ.
Nguyên lý DLC
Alice và Bob ký kết một thỏa thuận cược: cược rằng giá trị băm của khối thứ ξ là số lẻ hay số chẵn. Nếu là số lẻ, Alice thắng trò chơi và có thể rút tài sản; nếu là số chẵn, Bob thắng trò chơi và có thể rút tài sản. Thông qua DLC, oracle truyền tải thông tin của khối thứ ξ để xây dựng chữ ký điều kiện, khiến cho bên thắng cuộc đúng nhận được toàn bộ tài sản.
Điểm sinh của đường cong elip là G, bậc là q. Bộ khóa của oracle, Alice và Bob lần lượt là (z, Z), (x, X), (y, Y).
Giao dịch đầu tư ( trên chuỗi ): Alice và Bob cùng nhau tạo ra một giao dịch đầu tư, mỗi người khóa 10BTC vào một đầu ra chữ ký đa 2-of-2 ( một khóa công khai X thuộc về Alice, một khóa công khai Y thuộc về Bob ).
Xây dựng CET( chuỗi ngoại tuyến ): Alice và Bob tạo ra CET1 và CET2, được sử dụng để chi tiêu giao dịch đầu tư.
Máy tính tiên tri tính toán cam kết R = k · G, sau đó tính toán S và S'
S := R - hash(SốLẻ, R) · Z
S' := R - hash(SốChẵn, R) · Z
Khóa công khai mới tương ứng của Alice và Bob như sau:
PK^Alice := X + S
PK^Bob := Y + S'.
trực tuyến (: Khi khối thứ ξ được tạo ra, oracle sẽ ký CET1 hoặc CET2 tương ứng dựa trên giá trị băm của khối đó.
Nếu băm là số lẻ, oracle ký s
s := k - hash)SốLẻ, R( z
Phát sóng CET1.
Nếu băm là số chẵn, oracle ký s'
s' := k - hash)SốChẵn, R( z
Phát sóng CET2.
Rút tiền ) trên chuỗi (: Nếu oracle phát sóng CET1, Alice có thể tính toán ra khóa riêng mới và chi tiêu 20 BTC đã bị khóa.
sk^Alice = x + s
Nếu oracle phát sóng CET2, Bob có thể tính toán ra khóa riêng mới và chi tiêu 20 BTC đã bị khóa.
sk^Bob = y + s'
Nghiên cứu cho thấy: Trong quá trình trên, bất kỳ hành động nào cũng cần phải được thực hiện thông qua CET. Do đó, chỉ cần sử dụng cơ chế thách thức lạc quan để đảm bảo CET là chính xác, có thể chống lại bất kỳ cuộc tấn công nào. CET sai sẽ bị thách thức và không được thực hiện, trong khi CET đúng sẽ được thực hiện. Ngoài ra, oracle cần phải chịu chi phí cho các hành động ác ý.
Chương trình thách thức là f)t(, nên được xây dựng CET như sau
s = k - hash)f(t(, R) z.
Giả sử, tình huống thực tế là giá trị băm của khối thứ ξ là số lẻ odd, tức là f)ξ( = OddNumber, oracle nên ký CET1
s := k - hash)SốLẻ, R( z.
Nhưng nếu oracle làm điều ác, thay đổi giá trị hàm thành Even, đã ký CET2:
s' := k - hash)SốChẵn, R( z.
Vậy, bất kỳ người dùng nào cũng có thể chống lại hành vi độc hại này dựa trên f)ξ( ≠ OddNumber.
OP-DLC 2
OP-DLC bao gồm 5 quy định sau:
Oracle được cấu thành từ một liên minh, trong đó có n bên tham gia, bất kỳ thành viên nào cũng có thể ký CET. Sau khi đặt cọc 2BTC, oracle mới có thể phát hành chữ ký để kiếm phí giao dịch. Nếu một thành viên làm điều ác, sẽ mất đi số tiền đặt cọc. Các thành viên khác có thể tiếp tục ký CET, đảm bảo người dùng có thể rút tiền. Alice và Bob cũng có thể trở thành oracle, thực sự tin vào chính mình, đạt được sự tối thiểu hóa lòng tin.
Nếu oracle làm điều ác, sửa đổi kết quả, chắc chắn sẽ dẫn đến f1)ξ( ≠ z1, f2)z1( ≠ z2. Do đó, bất kỳ bên tham gia nào cũng có thể khởi xướng thách thức, tức là thực hiện giao dịch Disprove-CET1.
Nếu oracle ký CET một cách trung thực, không bên nào có thể khởi xướng giao dịch Disprove hợp lệ. Sau 1 tuần, CET có thể được thanh toán chính xác. Hơn nữa, oracle nhận được 0.05BTC tiền thưởng, như là phí sử dụng vốn cho việc đặt cọc 2BTC trong 1 tuần và phí giao dịch để ký CET một cách trung thực.
Bất kỳ bên tham gia nào cũng có thể thách thức Oracle_sign:
Nếu Oracle_sign trung thực, thì không thể khởi xướng giao dịch Disprove-CET1, sau 1 tuần sẽ thực hiện thanh toán CET. Khóa staking của oracle được mở và nhận phí giao dịch;
Nếu Oracle_sign không trung thực, tức là có người thành công khởi xướng giao dịch Disprove-CET1, thành công chi tiêu đầu ra của connector A, thì chữ ký của oracle đó sẽ không hợp lệ, mất 2BTC tiền ký quỹ, và trong tương lai oracle đó sẽ không thể khởi xướng chữ ký với kết quả tương tự cho hợp đồng DLC này, vì việc Settle-CET1 phụ thuộc vào đầu ra của connector A sẽ vĩnh viễn không còn hiệu lực.
Thách thức trong OP-DLC là không cần sự cho phép, bất kỳ bên tham gia nào cũng có thể giám sát hợp đồng trong OP-DLC có được thực hiện đúng hay không. Điều này đạt được sự tối thiểu hóa sự tin tưởng vào các oracle. So với mạng lưới Lightning, Alice và Bob cũng có thể hoạt động ngoại tuyến. Bởi vì chỉ có chữ ký trung thực từ oracle mới có thể thanh toán CET, trong khi các oracle xấu sẽ bị bất kỳ ai thách thức và trừng phạt.
Ưu điểm:
Kiểm soát tài sản cao, chỉ tin tưởng vào bản thân: Alice và Bob đều có thể trở thành oracle, ký CET. Cơ chế thách thức lạc quan sẽ đánh bại CET sai, vì vậy không thể làm điều xấu. Do đó, OP-DLC có thể đảm bảo người dùng chỉ tin tưởng vào bản thân. So với đó, trong BitVM, người dùng cần đóng vai trò là Operator và tham gia vào tất cả các khoản tiền gửi tiếp theo, mới có thể chỉ tin tưởng vào bản thân.
Tỷ lệ sử dụng vốn cao: Nếu người dùng chỉ tin tưởng vào bản thân, trong OP-DLC người dùng phụ thuộc vào việc tự mình rút tiền, không cần phải có vốn ứng trước; trong khi đó, trong BitVM, người dùng cần có vốn ứng trước tương đương, sau đó mới được hoàn tiền, điều này tạo ra áp lực tài chính lớn hơn.
Oracle có thể ký cần được xác định khi nạp tiền OP-DLC, nhưng người dùng cũng có thể trở thành oracle, có thể tự ký tên cho chính mình.
Nhược điểm:
Thời gian rút tiền cần 1 tuần: Về bản chất, cả OP-DLC và BitVM đều có chi phí thời gian vốn bằng nhau. Rút tiền OP-DLC cần phải trải qua thời gian thách thức; nếu BitVM phụ thuộc vào người dùng tự chi trả, thì số vốn chi trả bằng nhau cũng phải trải qua thời gian thách thức để có thể hoàn trả thành công.
Số lượng chữ ký cần ký trước đang tăng nhanh, có mối quan hệ tuyến tính với số lượng CET. Cần càng nhiều CET càng tốt để có thể liệt kê tất cả các kết quả rút tiền.
Kết luận
OP-DLC đã đưa cơ chế thách thức lạc quan vào CET, đảm bảo rằng CET sai không bị thanh toán, và các tổn thất từ oracle độc hại sẽ bị tạm giữ; đảm bảo rằng CET đúng được thực hiện, và khoản đặt cược oracle sẽ được mở khóa và nhận phí giao dịch. Cách này có thể chống lại bất kỳ cuộc tấn công nào, mang đến vẻ đẹp đơn giản.
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
10 thích
Phần thưởng
10
8
Chia sẻ
Bình luận
0/400
OvertimeSquid
· 07-15 22:01
Phi tập trung Điều này thực sự có thể.
Xem bản gốcTrả lời0
ponzi_poet
· 07-15 09:51
Lại đang thổi Máy Oracle à
Xem bản gốcTrả lời0
ApeWithNoFear
· 07-14 06:45
Nhận thức chung chính là vàng啊?...
Xem bản gốcTrả lời0
SchrodingerPrivateKey
· 07-14 06:45
Đại đạo chí giản, diệu á~
Xem bản gốcTrả lời0
SleepTrader
· 07-14 06:43
Chuỗi vẫn cần phải làm những điều sáng tạo.
Xem bản gốcTrả lời0
BuyHighSellLow
· 07-14 06:41
thế chấp thử thách tuyệt vời的思路
Xem bản gốcTrả lời0
NotFinancialAdvice
· 07-14 06:39
Lại là những khái niệm mới phức tạp như vậy...
Xem bản gốcTrả lời0
ValidatorViking
· 07-14 06:21
các nút đã được kiểm tra trong trận chiến không bị ấn tượng bởi một sự hưng phấn đồng thuận khác. hiển thị cho tôi các số liệu thời gian hoạt động trước đã
OP-DLC 2: Đơn giản hóa cơ chế đồng thuận DLC, đạt được tối thiểu hóa niềm tin
OP-DLC 2: Đạo lớn đến đơn giản
Hợp đồng ghi chú rời (DLC) được đề xuất vào năm 2018 bởi các nhà nghiên cứu tại Viện Công Nghệ Massachusetts như một khung thực hiện hợp đồng dựa trên oracle. Nó cho phép hai bên thực hiện thanh toán có điều kiện dựa trên các điều kiện đã định trước, thông qua việc xác định trước các kết quả có thể và thực hiện ký trước, khi oracle ký kết quả thì thực hiện thanh toán. Điều này cho phép DLC đảm bảo an toàn cho tiền gửi Bitcoin trong khi thực hiện các ứng dụng tài chính phi tập trung mới.
Bài viết trước đã tóm tắt những lợi thế của DLC trong việc bảo vệ quyền riêng tư, hợp đồng phức tạp, và rủi ro tài sản thấp, đồng thời cũng phân tích các vấn đề mà nó đang phải đối mặt như rủi ro khóa, rủi ro tin cậy phi tập trung, và rủi ro thông đồng. Bài viết đề xuất việc giới thiệu các oracle phi tập trung, chữ ký ngưỡng, và cơ chế thách thức lạc quan để đối phó với những vấn đề này. Do DLC liên quan đến oracle, Alice và Bob, tình huống tấn công thông đồng giữa các bên tham gia khác nhau là phức tạp, dẫn đến các chiến lược phòng thủ cũng tương đối phức tạp. Chiến lược phòng thủ phức tạp này không hoàn hảo, không phù hợp với triết lý "Đạo lớn thì giản", và thiếu vẻ đẹp giản dị.
Trong Bitcoin, hành động của bất kỳ bên tham gia nào đều phải được thực hiện thông qua UTXO. Do đó, việc đảm bảo UTXO đúng thông qua cơ chế đồng thuận có thể chống lại mọi cuộc tấn công. Tương tự, trong DLC, mọi hành động đều phải được thực hiện thông qua CET(Contract Execution Transaction). Sử dụng cơ chế thách thức lạc quan để đảm bảo CET đúng có thể chống lại mọi cuộc tấn công. Cụ thể, oracle cần đặt cọc 2BTC trước khi ký CET. Thêm cơ chế thách thức lạc quan vào CET. Nếu CET không bị thách thức hoặc đã phản ứng thành công với thách thức, thì được coi là đúng và hoàn tất thanh toán, oracle sẽ giải phóng tiền đặt cọc và nhận phí giao dịch. Nếu oracle cố gắng làm điều xấu, bất kỳ ai cũng có thể thách thức thành công, CET đó sẽ không thể thanh toán, oracle sẽ mất tiền đặt cọc và không thể ký cho cùng một CET nữa. Cách làm này tuân theo "Đại đạo chí giản", có sự giản dị đẹp đẽ.
Nguyên lý DLC
Alice và Bob ký kết một thỏa thuận cược: cược rằng giá trị băm của khối thứ ξ là số lẻ hay số chẵn. Nếu là số lẻ, Alice thắng trò chơi và có thể rút tài sản; nếu là số chẵn, Bob thắng trò chơi và có thể rút tài sản. Thông qua DLC, oracle truyền tải thông tin của khối thứ ξ để xây dựng chữ ký điều kiện, khiến cho bên thắng cuộc đúng nhận được toàn bộ tài sản.
Điểm sinh của đường cong elip là G, bậc là q. Bộ khóa của oracle, Alice và Bob lần lượt là (z, Z), (x, X), (y, Y).
Giao dịch đầu tư ( trên chuỗi ): Alice và Bob cùng nhau tạo ra một giao dịch đầu tư, mỗi người khóa 10BTC vào một đầu ra chữ ký đa 2-of-2 ( một khóa công khai X thuộc về Alice, một khóa công khai Y thuộc về Bob ).
Xây dựng CET( chuỗi ngoại tuyến ): Alice và Bob tạo ra CET1 và CET2, được sử dụng để chi tiêu giao dịch đầu tư.
Máy tính tiên tri tính toán cam kết R = k · G, sau đó tính toán S và S'
S := R - hash(SốLẻ, R) · Z
S' := R - hash(SốChẵn, R) · Z
Khóa công khai mới tương ứng của Alice và Bob như sau:
PK^Alice := X + S
PK^Bob := Y + S'.
trực tuyến (: Khi khối thứ ξ được tạo ra, oracle sẽ ký CET1 hoặc CET2 tương ứng dựa trên giá trị băm của khối đó.
Nếu băm là số lẻ, oracle ký s
s := k - hash)SốLẻ, R( z
Phát sóng CET1.
Nếu băm là số chẵn, oracle ký s'
s' := k - hash)SốChẵn, R( z
Phát sóng CET2.
Rút tiền ) trên chuỗi (: Nếu oracle phát sóng CET1, Alice có thể tính toán ra khóa riêng mới và chi tiêu 20 BTC đã bị khóa.
sk^Alice = x + s
Nếu oracle phát sóng CET2, Bob có thể tính toán ra khóa riêng mới và chi tiêu 20 BTC đã bị khóa.
sk^Bob = y + s'
Nghiên cứu cho thấy: Trong quá trình trên, bất kỳ hành động nào cũng cần phải được thực hiện thông qua CET. Do đó, chỉ cần sử dụng cơ chế thách thức lạc quan để đảm bảo CET là chính xác, có thể chống lại bất kỳ cuộc tấn công nào. CET sai sẽ bị thách thức và không được thực hiện, trong khi CET đúng sẽ được thực hiện. Ngoài ra, oracle cần phải chịu chi phí cho các hành động ác ý.
Chương trình thách thức là f)t(, nên được xây dựng CET như sau
s = k - hash)f(t(, R) z.
Giả sử, tình huống thực tế là giá trị băm của khối thứ ξ là số lẻ odd, tức là f)ξ( = OddNumber, oracle nên ký CET1
s := k - hash)SốLẻ, R( z.
Nhưng nếu oracle làm điều ác, thay đổi giá trị hàm thành Even, đã ký CET2:
s' := k - hash)SốChẵn, R( z.
Vậy, bất kỳ người dùng nào cũng có thể chống lại hành vi độc hại này dựa trên f)ξ( ≠ OddNumber.
OP-DLC 2
OP-DLC bao gồm 5 quy định sau:
Oracle được cấu thành từ một liên minh, trong đó có n bên tham gia, bất kỳ thành viên nào cũng có thể ký CET. Sau khi đặt cọc 2BTC, oracle mới có thể phát hành chữ ký để kiếm phí giao dịch. Nếu một thành viên làm điều ác, sẽ mất đi số tiền đặt cọc. Các thành viên khác có thể tiếp tục ký CET, đảm bảo người dùng có thể rút tiền. Alice và Bob cũng có thể trở thành oracle, thực sự tin vào chính mình, đạt được sự tối thiểu hóa lòng tin.
Nếu oracle làm điều ác, sửa đổi kết quả, chắc chắn sẽ dẫn đến f1)ξ( ≠ z1, f2)z1( ≠ z2. Do đó, bất kỳ bên tham gia nào cũng có thể khởi xướng thách thức, tức là thực hiện giao dịch Disprove-CET1.
Nếu oracle ký CET một cách trung thực, không bên nào có thể khởi xướng giao dịch Disprove hợp lệ. Sau 1 tuần, CET có thể được thanh toán chính xác. Hơn nữa, oracle nhận được 0.05BTC tiền thưởng, như là phí sử dụng vốn cho việc đặt cọc 2BTC trong 1 tuần và phí giao dịch để ký CET một cách trung thực.
Bất kỳ bên tham gia nào cũng có thể thách thức Oracle_sign:
Nếu Oracle_sign trung thực, thì không thể khởi xướng giao dịch Disprove-CET1, sau 1 tuần sẽ thực hiện thanh toán CET. Khóa staking của oracle được mở và nhận phí giao dịch;
Nếu Oracle_sign không trung thực, tức là có người thành công khởi xướng giao dịch Disprove-CET1, thành công chi tiêu đầu ra của connector A, thì chữ ký của oracle đó sẽ không hợp lệ, mất 2BTC tiền ký quỹ, và trong tương lai oracle đó sẽ không thể khởi xướng chữ ký với kết quả tương tự cho hợp đồng DLC này, vì việc Settle-CET1 phụ thuộc vào đầu ra của connector A sẽ vĩnh viễn không còn hiệu lực.
Thách thức trong OP-DLC là không cần sự cho phép, bất kỳ bên tham gia nào cũng có thể giám sát hợp đồng trong OP-DLC có được thực hiện đúng hay không. Điều này đạt được sự tối thiểu hóa sự tin tưởng vào các oracle. So với mạng lưới Lightning, Alice và Bob cũng có thể hoạt động ngoại tuyến. Bởi vì chỉ có chữ ký trung thực từ oracle mới có thể thanh toán CET, trong khi các oracle xấu sẽ bị bất kỳ ai thách thức và trừng phạt.
Ưu điểm:
Kiểm soát tài sản cao, chỉ tin tưởng vào bản thân: Alice và Bob đều có thể trở thành oracle, ký CET. Cơ chế thách thức lạc quan sẽ đánh bại CET sai, vì vậy không thể làm điều xấu. Do đó, OP-DLC có thể đảm bảo người dùng chỉ tin tưởng vào bản thân. So với đó, trong BitVM, người dùng cần đóng vai trò là Operator và tham gia vào tất cả các khoản tiền gửi tiếp theo, mới có thể chỉ tin tưởng vào bản thân.
Tỷ lệ sử dụng vốn cao: Nếu người dùng chỉ tin tưởng vào bản thân, trong OP-DLC người dùng phụ thuộc vào việc tự mình rút tiền, không cần phải có vốn ứng trước; trong khi đó, trong BitVM, người dùng cần có vốn ứng trước tương đương, sau đó mới được hoàn tiền, điều này tạo ra áp lực tài chính lớn hơn.
Oracle có thể ký cần được xác định khi nạp tiền OP-DLC, nhưng người dùng cũng có thể trở thành oracle, có thể tự ký tên cho chính mình.
Nhược điểm:
Thời gian rút tiền cần 1 tuần: Về bản chất, cả OP-DLC và BitVM đều có chi phí thời gian vốn bằng nhau. Rút tiền OP-DLC cần phải trải qua thời gian thách thức; nếu BitVM phụ thuộc vào người dùng tự chi trả, thì số vốn chi trả bằng nhau cũng phải trải qua thời gian thách thức để có thể hoàn trả thành công.
Số lượng chữ ký cần ký trước đang tăng nhanh, có mối quan hệ tuyến tính với số lượng CET. Cần càng nhiều CET càng tốt để có thể liệt kê tất cả các kết quả rút tiền.
Kết luận
OP-DLC đã đưa cơ chế thách thức lạc quan vào CET, đảm bảo rằng CET sai không bị thanh toán, và các tổn thất từ oracle độc hại sẽ bị tạm giữ; đảm bảo rằng CET đúng được thực hiện, và khoản đặt cược oracle sẽ được mở khóa và nhận phí giao dịch. Cách này có thể chống lại bất kỳ cuộc tấn công nào, mang đến vẻ đẹp đơn giản.