hArk: Làm mới không đồng bộ thân thiện với thiết bị di động

Bài viết này được dịch máy
Xem bản gốc

Tác giả: Erik De Smedt

Nguồn: https://blog.second.tech/hark-explained/

hArk giải thích: việc hủy bỏ không đồng bộ và làm mới thân thiện với thiết bị di động

Thuật ngữ "hArk (Ark sử dụng khóa băm)" lần đầu tiên xuất hiện trong một bài đăng trên diễn đàn Delving Bitcoin và đã được phát hành trong phiên bản v0.1.0-beta.6 của triển khai Ark của chúng tôi . hArk là bản cập nhật cho triển khai giao thức Ark của chúng tôi, về cơ bản thay đổi cách thức xây dựng các vòng. Sau bản cập nhật, việc người dùng bị mất quyền sử dụng dựa trên khóa băm thay vì đầu ra của trình kết nối và được ký sau khi giao dịch cấp vốn của vòng được phát sóng (thay vì ký trước).

hArk giúp việc phát triển ứng dụng di động trên Bark dễ dàng hơn nhiều, vì nó hỗ trợ "làm mới được ủy quyền", một cơ chế cần thiết do các thiết bị di động không thể được đánh thức một cách đáng tin cậy để tham gia vào quá trình ký vòng. Mặc dù làm mới được ủy quyền có một số hạn chế về bảo mật so với làm mới tự ký tiêu chuẩn, nhưng hãy yên tâm rằng làm mới tự ký vẫn là mô hình tin cậy mặc định và cốt lõi của giao thức vẫn không thay đổi.

Thành thật mà nói, chúng tôi đã do dự khi triển khai hArk, vì biết rằng nó sẽ làm chậm quá trình ra mắt mainnet. Nhưng điều đó là cần thiết — việc cải tiến một mô hình hiện có sau khi người dùng và tích hợp đã quen với nó sẽ khó khăn hơn nhiều so với việc bắt đầu với một mô hình hoàn toàn mới. Giờ đây khi mọi thứ đã sẵn sàng, chúng tôi rất vui — và chúng tôi muốn Bark thân thiện với thiết bị di động ngay từ đầu.

Cơ chế (trước đây) theo vòng: trước tiên ký tên đồng ý không tham gia giao dịch, sau đó công bố giao dịch đầu tư.

Trong giao thức Ark, người dùng phải định kì làm mới số dư Ark của mình, vô hiệu hóa các VTXO cũ và nhận các VTXO mới bằng một thao tác nguyên tử duy nhất.

Trong Ark cổ điển, các vòng đấu diễn ra theo thứ tự sau:

  1. Gửi yêu cầu : Người dùng cho nhà cung cấp dịch vụ biết họ muốn làm mới những VTXO nào.
  2. Xây dựng cây giao dịch và ký kết chung : Nhà cung cấp dịch vụ xây dựng một giao dịch cấp vốn và một cây giao dịch chứa tất cả các VTXO mới; người dùng của cây giao dịch này cùng ký kết tất cả các giao dịch liên quan.
  3. Ký giao dịch từ chối nhận tiền : Người dùng ký giao dịch từ chối nhận tiền đối với VTXO cũ của họ.
  4. Phát sóng : Các nhà cung cấp dịch vụ phát sóng các giao dịch đầu tư.

Vì đầu ra của bộ kết nối đã được sử dụng, giao dịch không tham gia trở nên có hiệu lực có điều kiện: bộ kết nối là một đầu ra cấp độ bụi (mệnh giá cực nhỏ) trong giao dịch cấp vốn, và giao dịch không tham gia sử dụng nó làm đầu vào. Nếu giao dịch cấp vốn không được thực hiện trên Chuỗi, bộ kết nối không tồn tại và giao dịch không tham gia không thể được sử dụng. Tuy nhiên, điều kiện này chỉ có một chiều: giao dịch không tham gia phụ thuộc vào giao dịch cấp vốn, nhưng VTXO mới không phụ thuộc vào giao dịch không tham gia. Do đó, nhà cung cấp dịch vụ phải thu thập chữ ký của mỗi giao dịch không tham gia trước khi phát sóng.

Sơ đồ quá trình làm mới dựa trên đầu nối Ark cổ điển: VTXO cũ và đầu ra đầu nối bụi từ giao dịch cấp vốn đều đóng vai trò là đầu vào cho giao dịch tịch thu, giao dịch này sẽ trả tiền cho máy chủ.

Mô hình này hoạt động tốt với máy trạm máy tính để bàn luôn bật, nhưng các hệ điều hành di động (đặc biệt là iOS) thường không thể đánh thức thiết bị một cách đáng tin cậy để tham gia vào các vòng chơi tương tác. Để làm cho các ứng dụng di động có thể sử dụng được, chúng ta cần một cách để cho phép chúng làm mới mà không cần sự can thiệp của người dùng trong các vòng chơi tương tác.

Cách duy nhất để tránh sử dụng "giao ước" là có một nhóm người đồng ký phân tán ký vào thao tác làm mới thay mặt người dùng, cho phép người dùng lĩnh nhận VTXO mới của họ sau đó (tức là "làm mới được ủy quyền", mà chúng ta sẽ thảo luận chi tiết hơn sau). Tuy nhiên, vì thao tác không ký được nhúng trong cơ chế luân phiên tương tác, chúng ta không thể thực hiện làm mới được ủy quyền — việc ký giao dịch không ký yêu cầu private key của người dùng, và việc cung cấp private key cho người đồng ký thứ ba là không thể chấp nhận được. Chúng ta cần hoàn toàn chuyển bước không ký ra khỏi cơ chế luân phiên và thực hiện nó bất đồng bộ.

Hệ thống theo lượt hiện tại: phát biểu trước, sau đó bỏ phiếu trắng.

Các bộ kết nối không đáp ứng được nhu cầu của chúng tôi, vì vậy chúng tôi đã quay lại bảng thiết kế và cuối cùng đã áp dụng khóa băm và ảnh ngược—một cơ chế mã hóa đã được xác thực trong Mạng Lightning. Khóa băm cung cấp điều kiện hai chiều mà chúng tôi cần: VTXO mới phụ thuộc vào giao dịch không tham gia, và giao dịch không tham gia cũng phụ thuộc vào VTXO mới, cho phép chúng tôi loại bỏ hoàn toàn bước không tham gia khỏi vòng tương tác.

Trong hArk, bước 3 và bước 4 được hoán đổi vị trí, và bước 4 có thể được hoàn thành bên ngoài khung thời gian tròn:

  1. Gửi yêu cầu : Người dùng cho nhà cung cấp dịch vụ biết họ muốn làm mới những VTXO nào.
  2. Xây dựng cây giao dịch và ký kết chung : Nhà cung cấp dịch vụ xây dựng một cây giao dịch đầu tư và tất cả các VTXO mới; người dùng của cây này cùng ký kết tất cả các giao dịch liên quan.
  3. Phát sóng : Các nhà cung cấp dịch vụ phát sóng các giao dịch đầu tư.
  4. Ký xác nhận giao dịch không tham gia : Người dùng ký xác nhận giao dịch không tham gia trên các VTXO cũ của họ vào thời điểm thuận tiện. Nhà cung cấp dịch vụ sẽ hiển thị ảnh dự kiến ​​sau khi nhận được chữ ký xác nhận giao dịch không tham gia của mỗi người dùng.

Bằng cách tách bước không tham gia giao dịch khỏi vòng giao dịch, việc làm mới ủy quyền trở nên khả thi. Các bên đồng ký giờ đây có thể ký trước các nhánh tương ứng của họ trên cây giao dịch dành cho người dùng di động trong suốt vòng giao dịch, và các giao dịch đã ký này sau đó sẽ được thu thập khi ví của người dùng ra mắt— mà không cần đánh thức thiết bị trong suốt vòng giao dịch. Cơ chế làm mới ủy quyền được giải thích chi tiết bên dưới.

Một lợi ích phụ đáng giá khác là khả năng giảm thiểu các cuộc tấn công từ chối dịch vụ (DoS) vào giao diện Round: nếu người dùng không ký giao dịch miễn trừ trách nhiệm, hệ thống sẽ không còn chặn những người dùng khác nữa, do đó làm cho Round đáng tin cậy hơn đối với các nhà phát triển ví và người dùng.

Cơ chế hoạt động của khóa băm đối với giao dịch không tham gia giao dịch

Sự phụ thuộc hai chiều này đạt được thông qua một giá trị bí mật: "giao dịch thoát" của mỗi VTXO trong cây giao dịch được khóa bởi một ảnh ngược p mà chỉ nhà cung cấp dịch vụ mới biết, và nhà cung cấp dịch vụ chỉ tiết lộ p sau khi nhận được giao dịch không tham gia đã ký. Nhà cung cấp dịch vụ có thể phát sóng giao dịch cấp vốn trước, điều này an toàn vì nếu không có p , người dùng không thể truy cập vào VTXO mới của họ. Khi người dùng ký vào giao dịch không tham gia của họ, nhà cung cấp dịch vụ sẽ tiết lộ p , điều này đồng thời kích hoạt VTXO mới của người dùng và cho phép nhà cung cấp dịch vụ yêu cầu VTXO cũ.

Sơ đồ quá trình làm mới dựa trên hArk mới: VTXO cũ được sử dụng cho một đầu ra miễn trừ bị khóa bởi một tiền ảnh, sau đó máy chủ sẽ yêu cầu quyền sở hữu bằng cách tiết lộ tiền ảnh đó.

Việc không tham gia giao dịch là một quy trình gồm hai bước:

  1. Người dùng ký vào giao dịch từ chối, chuyển VTXO cũ của mình vào đầu ra giao dịch từ chối. Một trong đó các đường dẫn chi tiêu của đầu ra này có khóa băm với p là ảnh ngược, trong khi đường dẫn chi tiêu khác có khóa thời gian (như được hiển thị ở giữa sơ đồ trên Forfeit ).
  2. Nhà cung cấp dịch vụ hiện đang nắm giữ giao dịch không tham gia đã được ký. Nếu người dùng cố gắng đơn phương trả lại một VTXO cũ cho Chuỗi, nhà cung cấp dịch vụ có thể phát sóng giao dịch không tham gia và thu hồi tiền bằng cách tiết lộ ảnh gốc.

Nếu nhà cung cấp dịch vụ từ chối tiết lộ p , Bitcoin của người dùng vẫn an toàn. Họ có thể khởi tạo một thao tác rút tiền trên Chuỗi cho VTXO cũ, điều này sẽ dẫn đến một trong hai kết quả sau:

  • Nhà cung cấp dịch vụ không có hành động gì, và người dùng đã lấy lại được Bitcoin của họ sau khi thời gian khóa được mở.
  • Nhà cung cấp dịch vụ phát sóng "giao dịch yêu cầu tịch thu" (tức là giao dịch Forfeit claim ở giữa sơ đồ trên), từ đó tiết lộ p Chuỗi. Sau đó, người dùng sử dụng p để kích hoạt VTXO mới của họ.

Trong cả hai trường hợp, người dùng sẽ không bị mất Bitcoin.

Làm mới ủy quyền: Một chế độ mới dành cho thiết bị di động

Theo mặc định, quá trình làm mới trong hArk vẫn được tự ký: bạn tự mình ký mọi giao dịch liên quan trên cây giao dịch. Các giao dịch nhánh được ký trước này tạo thành đường thoát một chiều của bạn—nếu bạn cần đưa VTXO của mình lên Chuỗi mà không cần sự hợp tác của nhà cung cấp dịch vụ, bạn có thể phát sóng chuỗi giao dịch từ gốc của cây giao dịch đến lá hiện tại của mình. Đây là mô hình bảo mật mạnh nhất—hoàn toàn không tin tưởng ai—nhưng nó yêu cầu phải trực tuyến và tham gia ký trong suốt vòng giao dịch. Đối với các hệ điều hành di động không thể được đánh thức một cách đáng tin cậy trong suốt vòng giao dịch, hArk giới thiệu tính năng làm mới được ủy quyền.

Ở chế độ ủy quyền, một nhóm người đồng ký sẽ ký trước các giao dịch chi nhánh của người dùng trong mỗi vòng. Khi ví của người dùng hoạt động trở lại, các giao dịch chi nhánh đã được ký đầy đủ này sẽ được thu thập từ nhà cung cấp dịch vụ—mang lại cho người dùng cùng một đường thoát một chiều (phù hợp với chế độ tự ký)—và các VTXO cũ của họ sẽ bị mất. Sau đó, nhà cung cấp dịch vụ sẽ tiết lộ ảnh gốc, từ đó kích hoạt các VTXO mới trong cây giao dịch.

Sơ đồ VTXO từ quá trình làm mới được ủy quyền: các đồng ký K₁..Kₙ ký tất cả các nhánh, thay thế chữ ký của A trên nhánh của cô ấy rồi xóa khóa của họ. Ví của A sẽ thu thập các giao dịch đã ký sau đó.

Tất cả người ký phải thông đồng để chiếm đoạt VTXO của người dùng; càng nhiều người ký, việc này càng khó khăn. Hơn nữa, người ký tự động xóa khóa ký của họ sau mỗi vòng, cung cấp tính bảo mật chuyển tiếp: ngay cả khi người ký hoạt động chính xác trong một vòng nhưng sau đó bị xâm phạm, việc xóa khóa đảm bảo VTXO được tạo ra trong vòng đó vẫn an toàn. Miễn là phần mềm của ít nhất một người ký hoạt động chính xác trong một vòng, việc thông đồng là không thể.

Hai chế độ làm mới này không loại trừ lẫn nhau. Bất kỳ ứng dụng ví nào cũng có thể cung cấp cả hai chế độ cùng lúc, sử dụng chế độ phù hợp dựa trên kết nối. Ngoài ra, một ví được cài đặt trên nhiều thiết bị có thể có một ứng dụng trên máy tính để bàn xử lý tất cả các thao tác làm mới, trong khi việc ủy ​​quyền làm mới trên thiết bị di động đóng vai trò là cơ chế dự phòng. Hơn nữa, người dùng đã ủy quyền làm mới luôn có thể ký thủ công thao tác làm mới sau đó, về cơ bản quay trở lại chế độ hoàn toàn không cần tin tưởng.

Tuy nhiên, xin lưu ý rằng hiện tại chỉ có nhà cung cấp dịch vụ là bên đồng ký. Việc phát hành phần mềm đồng ký cho phép các thực thể khác tham gia là một trong những ưu tiên hàng đầu của chúng tôi sau khi ra mắt mainnet.

Bước đệm dẫn đến các điều khoản hạn chế

Hầu hết các đề xuất ràng buộc Bitcoin hiện có sẽ cho phép chúng ta thực thi cấu trúc cây của Ark mà không cần các giao dịch được ký trước. Người dùng sẽ có được những lợi ích trải nghiệm của cả hai: tính không cần tin tưởng của mô hình tự ký làm mới hiện tại và sự tiện lợi không đồng bộ của mô hình chữ ký ủy quyền hiện tại. Người dùng vẫn cần định kì kết nối lại để hoàn tất các giao dịch không tham gia, nhưng không cần phải duy trì kết nối trong quá trình xây dựng các giao dịch cấp vốn theo vòng.

Vẻ đẹp trong thiết kế của hArk nằm ở chỗ nó có thể được ánh xạ gần như trực tiếp sang phiên bản Ark có điều khoản hạn chế. Cơ chế giao dịch không sử dụng khóa băm, cấu trúc cây và luồng dựa trên vòng đều có thể được giữ nguyên. Do đó, nếu Bitcoin hỗ trợ các điều khoản hạn chế trong tương lai (một giấc mơ thành hiện thực), việc chuyển đổi từ hArk sang phiên bản có điều khoản hạn chế sẽ diễn ra liền mạch, gây ra sự gián đoạn tối thiểu cho tích hợp và người dùng hiện tại.

Ứng dụng này hiện đã có trên Bark.

hArk đã được tích hợp trong Bark — hãy thử nghiệm trên Signet . Ngoài ra, hãy đăng ký nhận bản tin của chúng tôi để nhận thêm thông tin cập nhật từ Second ngay khi có.

(qua)

Nguồn
Tuyên bố từ chối trách nhiệm: Nội dung trên chỉ là ý kiến của tác giả, không đại diện cho bất kỳ lập trường nào của Followin, không nhằm mục đích và sẽ không được hiểu hay hiểu là lời khuyên đầu tư từ Followin.
Thích
Thêm vào Yêu thích
Bình luận