Skip to main content

Tìm hiểu chứng chỉ Cardano (Cardano Certificates)

Ngày 19 tháng 08 năm 2023 - Chia sẻ bài viết này trên Twitter | FacebookTelegram

Stake dựa trên các chứng chỉ (Certificates) được lưu trữ trong blockchain. Người vận hành pool (SPO) phải đăng ký pool của họ thông qua các chứng chỉ. Người stake phải tạo chứng chỉ để ủy quyền stake cho các pool đã chọn. Đằng sau tất cả những điều này là các khóa mật mã. Hãy đến và khám phá thế giới chứng chỉ Cardano.

Sản xuất khối

Trong mạng Cardano, chỉ thực thể sở hữu tiền ADA mới có thể tạo khối. ADA là một nguồn tài nguyên khan hiếm làm cơ sở cho việc Phi tập trung và bảo mật mạng. Mọi thực thể muốn tạo khối trong mạng Cardano phải vận hành node Cardano và đăng ký nó dưới dạng pool thông qua chứng chỉ. Tất cả chủ sở hữu ADA, bao gồm cả người vận hành pool, có thể ủy quyền tiền ADA (quyền stake) cho pool đã chọn, họ cũng cần tạo chứng chỉ và gửi chứng chỉ đó tới blockchain.

Không có thực thể trung tâm nào kiểm soát các quy trình này. Bất kỳ ai cũng có thể trở thành chủ sở hữu token ADA hoặc đăng ký làm vận hành pool mà không cần sự cho phép của bên thứ ba. Bất kỳ ai cũng có thể ủy quyền ADA cho một pool đã chọn.

Để hiểu đúng về chứng chỉ và cách hoạt động của quá trình sản xuất khối, trước tiên bạn phải biết về cấu trúc của địa chỉ.

Cardano sử dụng cấu trúc địa chỉ duy nhất cho phép tách quyền chi tiêu token khỏi ủy quyền quyền stake. Địa chỉ thanh toán Shelley bao gồm hai phần: thông tin xác thực thanh toán (xác định cách chi tiêu tiền từ một địa chỉ nhất định) và tham chiếu đến địa chỉ stake.

Địa chỉ stake xác định xem ADA trên địa chỉ thanh toán có được sử dụng để stake hay không và theo cách nào. Địa chỉ stake cho phép thực hiện quyền stake thông qua thông tin đăng nhập (khóa stake hoặc hàm băm của tập lệnh).

Có các cặp khóa dành riêng cho cả hai, tức là một cặp khóa dành cho địa chỉ chi tiêu và một cặp khóa dành cho địa chỉ stake.

Trong hình bên dưới, bạn có thể thấy địa chỉ thanh toán Shelley. UTxO và thông tin đăng nhập được lưu trữ ở phần bên trái có tên là Quỹ. Thông tin xác thực xác định khả năng chi tiêu tiền thông qua khóa ký hoặc tập lệnh. Trong phần bên phải có tên là Stake Address Reference, có một tham chiếu đến Stake Address. Xem thêm bài viết Hiểu về địa chỉ ví của Cardano

Địa chỉ stake được sử dụng làm đầu vào để tạo chứng chỉ ủy quyền. Lưu ý liên kết giữa địa chỉ thanh toán và tham chiếu đến địa chỉ stake. Số lượng ADA trên các địa chỉ có thể thay đổi (người dùng địa chỉ có thể mua thêm tiền ADA hoặc chi tiêu chúng) hoặc người dùng có thể tạo nhiều địa chỉ mới tham chiếu cùng một địa chỉ stake.

Tham chiếu trỏ đến thông tin đăng nhập, tức là đến khóa stake (hoặc hàm băm của tập lệnh) có thể được sử dụng để ủy quyền tiền ADA từ phần tiền. Ngoài ra, nó có thể đề cập đến chứng chỉ chứa thông tin xác thực hoặc Null. Giá trị Null có nghĩa là tiền không thể được ủy quyền (tức là được sử dụng để stake).

Lưu ý rằng địa chỉ stake chứa tài khoản không dựa trên UTxO trong đó hệ thống tích lũy phần thưởng cho việc stake. Chủ sở hữu của khóa stake (hoặc tập lệnh) có quyền kiểm soát phần thưởng stake và có thể rút lại. Cả người stake và người vận hành pool đều sử dụng một cơ chế tương tự để ủy quyền ADA cho một pool.

Tất cả các token ADA (địa chỉ stake tương ứng) đã được ủy quyền cho một pool được bao gồm trong tổng số stake của pool đó trong cuộc bầu chọn người dẫn đầu vị trí. Số lượng khối mà pool có thể đúc mỗi kỷ nguyên (số lần họ được bầu làm người dẫn đầu vị trí) phụ thuộc vào quy mô của tổng stake. Số lượng phần thưởng phụ thuộc vào số lượng khối mà pool tạo ra (người đứng đầu vị trí có thể bỏ lỡ một vị trí và không tạo khối vì một số lý do). Nếu tổng số stake thấp, có thể xảy ra trường hợp pool không đúc một khối nào. Trong trường hợp này, anh ấy sẽ không nhận được bất kỳ phần thưởng nào.

Khi người vận hành pool (SPO) tạo chứng chỉ đăng ký, ngoài các tham số khác (mà chúng ta sẽ nói bên dưới), SPO xác định phần thưởng cho chính mình (phần thưởng và ký quỹ cố định). Điều này sẽ ảnh hưởng đến số tiền thưởng cho người được ủy quyền (người stake). Phần thưởng được phân phối tự động bởi giao thức Cardano. Các SPO không có quyền kiểm soát việc phân phối phần thưởng stake cho các tài khoản thưởng. Như đã đề cập, chỉ người nắm giữ khóa của ví được ủy thác mới có thể rút phần thưởng từ tài khoản phần thưởng.

Chứng chỉ (Certificates)

Trong phần này, chúng ta sẽ tập trung vào các chứng chỉ. Để đơn giản, chúng tôi sẽ không giải thích khả năng ủy quyền quyền stake thông qua các tập lệnh. Trong quá trình giải thích, chúng tôi sẽ chỉ xem xét một cặp khóa. Khóa ký (khóa riêng tư mà chủ sở hữu phải giữ bí mật) và Khóa xác minh (khóa chung có thể được công bố). Trong hình ảnh, khóa ký sẽ được hiển thị bằng màu đỏ và khóa xác minh có màu xanh lá cây. Các khóa xác minh chủ yếu được sử dụng ở dạng băm. Chúng tôi sẽ không mô tả nó trong hình ảnh. Bạn có thể coi dạng băm như một biểu diễn khác có cùng giá trị (một chuỗi trở thành một chuỗi khác, luôn giống nhau khi được lặp lại).

Hình ảnh bên dưới cho thấy quyền kiểm soát của người dùng đối với việc chi tiêu tiền và ủy quyền quyền stake thông qua các khóa ký. Khóa chi tiêu xác minh được sử dụng để tạo địa chỉ chi tiêu. Để chi tiêu tiền từ địa chỉ, cần có khóa chi tiêu ký tương ứng. Khóa stake xác minh được sử dụng để tạo địa chỉ stake. Cần có khóa stake ký để ủy quyền quyền stake (tiền ADA). Người dùng giữ bí mật các khóa ký. Địa chỉ blockchain là công khai.

Để sử dụng tiền ADA để sản xuất khối, cần phải đăng ký địa chỉ stake và ủy quyền cho các pool. Điều này diễn ra thông qua việc tạo các chứng chỉ sau đó được gửi tới mạng thông qua các giao dịch. Tất cả các chứng chỉ được lưu trữ trong blockchain, nghĩa là có sẵn công khai cho tất cả những người tham gia.

Chứng chỉ có giá trị cho đến khi chúng bị ghi đè bởi chủ sở hữu của khóa stake ký tên hoặc cho đến khi chúng hết hạn. Trong trường hợp hết hạn, chứng chỉ có thể được gia hạn. Điều này chỉ liên quan đến một loại chứng chỉ phải được gia hạn bởi các nhà vận hành pool. Chứng chỉ được sử dụng bởi những người stake thông thường có hiệu lực mãi mãi cho đến khi bị ghi đè (hủy đăng ký).

Dưới đây là danh sách tất cả các chứng chỉ có thể được tạo và lưu trữ trong blockchain Cardano.

  • Chứng chỉ đăng ký địa chỉ stake
  • Chứng chỉ hủy đăng ký địa chỉ stake
  • Giấy ủy quyền
  • Chứng chỉ đăng ký stake pool
  • Chứng chỉ hưu trí stake pool
  • Chứng chỉ khóa hoạt động

Người stake (và cả người vận hành pool) chỉ sử dụng các chứng chỉ liên quan đến việc đăng ký địa chỉ stake và ủy quyền. Người vận hành pool phải đăng ký pool thông qua chứng chỉ và thường xuyên gia hạn khả năng đúc khối, cũng thông qua chứng chỉ.

Chứng chỉ stake

Để ủy quyền tiền ADA cho một pool, phải sử dụng hai chứng chỉ: Chứng chỉ đăng ký địa chỉ stake và chứng chỉ ủy quyền. Có thể hủy đăng ký địa chỉ stake thông qua chứng nhận hủy đăng ký địa chỉ stake.

Trong hình bên dưới, bạn có thể thấy cách người dùng tạo chứng chỉ địa chỉ stake cho nhiều địa chỉ thanh toán (tất cả chúng đều được liên kết với cùng một địa chỉ stake). Để đăng ký, cần phải có khóa stake ký. Quá trình này tương tự đối với cả người stake và người vận hành pool.

Chứng chỉ Đăng ký và Hủy đăng ký phải chứa địa chỉ stake và thông tin đăng nhập (khóa xác minh). Khi đăng ký địa chỉ stake, một tài khoản phần thưởng sẽ được tạo. Tài khoản phần thưởng sẽ bị xóa khi địa chỉ stake bị hủy đăng ký. Một nhân chứng không bắt buộc phải đăng ký địa chỉ stake, không giống như hủy đăng ký.

Sau khi địa chỉ stake được đăng ký, chúng có thể được ủy quyền cho một pool.

Người dùng (trong hình là Alice) có thể chuyển quyền stake của một địa chỉ stake nhất định sang stake pool bằng cách tạo chứng chỉ ủy quyền và gửi nó tới blockchain Cardano. Chứng chỉ ủy quyền chứa địa chỉ stake được liên kết với địa chỉ thanh toán và khóa xác minh stake pool (ID), là định danh của pool mà tiền ADA sẽ được ủy quyền.

Trong ảnh, bạn có thể thấy người vận hành pool (Bob) sở hữu khóa ký đại diện cho quyền sở hữu pool. Alice đã tìm thấy ID pool theo tên trong ví. Tức là, theo tên mà Alice đã chọn, chiếc ví đã chèn ID tương ứng vào chứng chỉ.

Chứng chỉ đăng ký địa chỉ stake chỉ cần thiết khi người stake muốn đăng ký địa chỉ stake mới trên blockchain, đây là hoạt động một lần. Chứng chỉ ủy quyền luôn cần thiết khi người stake muốn ủy quyền hoặc chuyển nhượng lại stake của họ cho stake pool mà họ chọn.

Hãy nói thêm rằng người dùng không phải tạo chứng chỉ theo cách thủ công và ví giúp họ làm việc này. Họ chỉ cần chọn một trong các pool do ví cung cấp và ký giao dịch. Giao dịch chứa chứng chỉ và sau khi được đưa vào khối, chứng chỉ sẽ là một phần của blockchain.

Chứng chỉ điều hành pool

Người vận hành pool phải tạo một số cặp khóa cần thiết để đăng ký pool.

  • Cặp khóa stake pool (khóa lạnh)
  • Cặp khóa Key-Evolving Signature (KES) (khóa nóng)
  • Cặp phím chức năng ngẫu nhiên xác minh (VRF) (khóa nóng)
  • Cặp khóa địa chỉ stake (khóa lạnh)

Cặp khóa stake pool được sử dụng để nhận dạng pool (khóa xác minh), ký chứng chỉ đăng ký pool (và rút lui) và ủy quyền (chuyển giao) quyền cho khóa KES trong chứng chỉ khóa hoạt động. Chúng ta sẽ nói thêm về nó sau.

Khóa KES ký được sử dụng để ký các khối đúc bởi node. Khóa KES xác minh được sử dụng để xác thực các khối bởi các node khác.

Khóa VRF ký được sử dụng bởi một node để tìm hiểu xem nó có trở thành người dẫn đầu vị trí trong một vị trí nhất định hay không. Trên tất cả các node pool, xổ số riêng diễn ra ở mỗi vị trí, trong đó một hoặc nhiều node có quyền đúc một khối. Khóa VRF xác minh được các node khác sử dụng để xác minh bằng chứng VRF được chèn vào các khối mới được đúc. Bất kỳ node nào cũng có thể xác minh rằng người đề xuất khối mới thực sự đã trúng xổ số VRF trong vị trí nhất định.

Vận hành pool cũng sở hữu các khóa stake từ địa chỉ stake của mình, được sử dụng làm địa chỉ phần thưởng cho pool đã đăng ký.

Cặp khóa quan trọng nhất là khóa stake pool vì nó xác định pool và chứng chỉ đăng ký pool (tạm dừng) và chứng chỉ khóa hoạt động phải được ký thông qua khóa ký.

Nếu các khóa ký được lưu trữ bởi node trong bộ lưu trữ nóng bị xâm phạm, khóa pool ký có thể được sử dụng để tạo chứng chỉ mới làm mất hiệu lực của các chứng chỉ trước đó. Người vận hành pool có toàn quyền kiểm soát pool nếu anh ấy là chủ sở hữu duy nhất của khóa stake pool.

Bạn có thể thấy đăng ký pool trong hình ảnh dưới đây. Người vận hành pool (Bob) đã tạo 4 cặp khóa: Khóa stake pool, khóa KES, khóa VRF và khóa địa chỉ stake. Khóa stake pool xác minh được sử dụng để xác định pool và cũng là một trong những đầu vào để tạo chứng chỉ đăng ký pool. Ngoài ra, khóa VRF xác minh, khóa địa chỉ stake xác minh (địa chỉ phần thưởng), danh sách các địa chỉ stake khác của nhà điều hành, các tham số xác định phần thưởng cho nhà điều hành (phí cố định và ký quỹ) và địa chỉ IP hoặc DNS của tất cả các node chuyển tiếp được đưa vào chứng chỉ.

Theo tùy chọn, có thể chèn một URL và hàm băm của nội dung URL cho siêu dữ liệu bổ sung về pool vào chứng chỉ. Dữ liệu này được hiển thị trong ví cho những người dùng đang tìm kiếm pool để ủy quyền ADA. Nếu không cung cấp URL và hàm băm nội dung, stake pool sẽ không được liệt kê trong ví (có thể là pool riêng tư).

Chứng chỉ phải được ký bởi khóa stake pool ký. Đây là bước quan trọng nhất trong việc tạo chứng chỉ, vì không ai ngoài chủ sở hữu khóa có thể làm được.

Lưu ý rằng có các khóa KES và VRF trong bộ lưu trữ nóng trên node. Node cần các khóa để có thể tạo khối (xổ số VRF và ký khối).

Một danh sách các địa chỉ stake do vận hành pool kiểm soát có thể được chèn vào chứng chỉ. Nếu các địa chỉ này được ủy quyền cho cùng một pool được đăng ký thông qua chứng chỉ, ADA sẽ được coi là cam kết của nhà điều hành (giao diện trong game của nhà điều hành). Chèn địa chỉ stake vào chứng chỉ là không đủ để ủy thác tiền ADA. Người vận hành pool phải tạo chứng chỉ ủy quyền và gửi chứng chỉ đó tới mạng, tương tự như những gì người stake làm. Trong quá trình phân phối phần thưởng, phần thưởng sẽ không được trả vào tài khoản của các địa chỉ stake này, mà vào tài khoản địa chỉ stake (địa chỉ phần thưởng) của vận hành pool. Trong hình là Stake Address Key.

Lưu ý rằng khóa KES không được chèn vào chứng chỉ này.

Chứng chỉ ngừng hoạt động của stake pool chỉ chứa khóa stake pool xác minh (ID) và số kỷ nguyên mà pool sẽ ngừng sản xuất các khối và do đó bị ngừng hoạt động.

Khi vận hành pool gửi chứng chỉ đăng ký stake pool cho mạng, pool đã được đăng ký nhưng chưa thể bắt đầu tạo khối. Nhà điều hành phải gửi thêm một chứng chỉ, cụ thể là chứng chỉ khóa vận hành.

Để đạt được độ bảo mật tối đa cho khóa, người vận hành cần tuân theo cách sắp xếp khóa nóng và phím lạnh. Điều này làm giảm đáng kể rủi ro liên quan đến việc lộ các khóa trên node (các khóa KES và VRF trong bộ lưu trữ nóng).

Người điều hành luôn giữ khóa stake pool ký kết trong kho lưu trữ lạnh (không kết nối internet) và sử dụng nó theo định kỳ để ký chứng chỉ khóa hoạt động mới. Khóa stake pool ký kết được sử dụng để chuyển quyền ký sang khóa KES (còn được gọi là khóa vận hành), được lưu trữ trong bộ lưu trữ nóng trên node và được sử dụng để ký các khối mới. Nếu khóa KES nóng bị xâm phạm, người vận hành có thể ngay lập tức tạo chứng chỉ khóa hoạt động mới (với số bộ đếm cao hơn) và do đó làm mất hiệu lực chứng chỉ trước đó.

Khóa KES ký hết hạn theo định kỳ, cụ thể là sau 90 ngày. Người vận hành pool phải luôn tạo chứng chỉ khóa vận hành mới, ký tên vào chứng chỉ đó bằng khóa stake pool ký kết và gửi chứng chỉ đó tới mạng.

Khóa KES ký cũ sẽ được sử dụng để tạo khóa KES mới. Khóa KES cũ sau đó sẽ bị xóa. Điều này bảo vệ tính bất biến của lịch sử blockchain. Khóa KES chỉ có thể được sử dụng để ký các khối trong một khoảng thời gian nhất định. Khóa KES xác minh đã được chèn vào chứng chỉ stake pool đăng ký vẫn giữ nguyên (không cần thay đổi khóa này khi tạo khóa KES ký mới).

Chứng chỉ khóa vận hành chứa một vị trí mà từ đó nó sẽ có hiệu lực trong 90 ngày (thời gian KES), khóa KES xác minh, khóa stake pool xác minh (ID) và số quầy. Số bộ đếm là một giá trị cho biết chứng chỉ khóa hoạt động đã được gia hạn bao nhiêu lần. Giá trị này được tăng lên mỗi khi chứng chỉ khóa hoạt động mới được tạo. Điều này ngay lập tức làm mất hiệu lực chứng chỉ cũ (với số truy cập thấp hơn).

Trong hình bên dưới, bạn có thể thấy cách vận hành pool tạo chứng chỉ khóa hoạt động, chứng chỉ này cho phép node đúc các khối mới trong 90 ngày thông qua khóa KES ký mới.

Sau khi mạng đạt đến vị trí được chỉ định trong chứng chỉ khóa hoạt động, pool có thể được bầu làm người dẫn đầu vị trí và đúc một khối mới. Khối sẽ được ký bằng khóa KES hợp lệ. Tất cả các node khác trong mạng có thể dễ dàng xác minh chữ ký thông qua khóa KES xác minh, được bao gồm trong chứng chỉ đăng ký stake pool.

Lời kết

Tất cả những người tham gia đều có thể tìm thấy tất cả thông tin về việc phân phối ADA trên địa chỉ thanh toán, địa chỉ stake, ủy quyền cho pool và pool từ dữ liệu on-chain. Nhờ các chứng chỉ và bằng chứng mật mã có trong tiêu đề khối, mọi người có thể xác thực các khối và xác minh rằng chúng đã được đúc và ký chính xác bởi các node thực sự trở thành người dẫn đầu vị trí trong các vị trí nhất định.

Bảo mật và Phi tập trung của Cardano dựa trên quyền sở hữu các khóa và chứng chỉ ký được cung cấp công khai cho mọi người thông qua blockchain. Bất kỳ ai sở hữu tiền ADA về cơ bản đều có thể Phi tập trung Cardano, vì họ có quyền kiểm soát trực tiếp ai sẽ tạo ra các khối. Chủ sở hữu ADA có thể sử dụng chứng chỉ để đăng ký pool và ủy thác tiền ADA cho họ mà không cần phải xin phép bên thứ ba.

Nguồn bài viết tại đây


Picture


Đọc thêm các bài viết liên quan tại thẻ Tags bên dưới