Tài sản mã hóaiCapital5 phút đọc

Khóa riêng, khóa công khai và địa chỉ khác nhau thế nào?

Nội dung giáo dục và nghiên cứu, không phải tư vấn đầu tư cá nhân.

Private key (khóa riêng tư), public key (khóa công khai) và địa chỉ là ba thành phần cơ bản khi nhận và chi bitcoin: khóa riêng dùng để ký, khóa công khai để kiểm tra chữ ký, còn địa chỉ là thông tin đưa cho người gửi để nhận tiền. Trang này giải thích quan hệ giữa ba thành phần và vì sao địa chỉ không phải chiếc ví.

Một người có thể đưa địa chỉ nhận bitcoin cho đối tác mà vẫn giữ bí mật cần thiết để chi tiêu. Điều này có vẻ nghịch lý nếu hình dung địa chỉ như tên đăng nhập và khóa riêng như mật khẩu của cùng một tài khoản. Trong Bitcoin, ba thành phần ấy thực hiện những công việc khác nhau.

Câu trả lời ngắn: ba vai trò

Khóa riêng tư — private key — là dữ liệu bí mật dùng trong quá trình tạo chữ ký. Khóa công khai — public key — là dữ liệu tương ứng để kiểm tra chữ ký. Địa chỉ là cách biểu diễn thông tin giúp bên gửi tạo đầu ra với điều kiện chi tiêu phù hợp; địa chỉ không phải bản thân phần mềm ví. Tùy loại đầu ra, quan hệ giữa địa chỉ, public key và dữ liệu điều kiện có thể khác nhau. Nguồn: Bitcoin Developer Guide — Wallets; Bitcoin Core — Output Descriptors.

Để nối ba vai trò này với khái niệm ví và quyền kiểm soát, xem Ví crypto, khóa và quyền kiểm soát.

Từ khóa đến điều kiện nhận và chi

Trong mô hình mật mã khóa công khai, phần mềm có thể tính public key từ private key theo quy tắc toán học. BIP32 mô tả phép tính này trong hệ khóa Bitcoin; người đọc không cần thực hiện phép tính để hiểu sự phân vai. Nguồn: BIP32, mục Conventions.

Khi nhận tiền, bên nhận cung cấp thông tin để bên gửi tạo một đầu ra giao dịch. Khi chi tiêu đầu ra ấy, giao dịch mới phải cung cấp dữ liệu đáp ứng điều kiện đã đặt ra. Trường hợp yêu cầu chữ ký cần có chữ ký được tạo bằng khóa phù hợp; node kiểm tra dữ liệu chứng minh thay vì hỏi người gửi mật khẩu của ứng dụng ví. Cơ chế chi tiết nằm ở UTXO và điều kiện chi tiêu và Chữ ký số.

Diễn giải tài chính hữu ích ở đây là phân biệt “thông tin để nhận một khoản chuyển” với “năng lực cho phép chi khoản đã nhận”. Hai chức năng không cần nằm trong cùng một dữ liệu. Tuy nhiên, không nên kéo phép so sánh xa tới mức coi địa chỉ là một tài khoản do tổ chức trung tâm quản lý.

Vì sao địa chỉ không phải chiếc ví?

Một ví có thể quản lý nhiều khóa, theo dõi nhiều đầu ra và cung cấp nhiều địa chỉ. BIP32 cho phép tổ chức các khóa dẫn xuất theo cấu trúc cây từ một gốc chung. Bởi vậy, thấy hai địa chỉ khác nhau không đủ để kết luận chúng thuộc hai người khác nhau. Nguồn: BIP32, Abstract và Motivation.

Ngược lại, biết một địa chỉ cũng không cho người quan sát toàn bộ thông tin của phần mềm ví hoặc mọi khóa mà người dùng quản lý. Đây là giới hạn của suy luận: dữ liệu xuất hiện trên chuỗi không tự cung cấp toàn bộ bối cảnh vận hành ngoài chuỗi.

Ví dụ mô hình: hai địa chỉ trong một ví

Giả định một ví dẫn xuất hai nhánh nhận, được gọi đơn giản là A và B. Một đối tác gửi tới A, đối tác khác gửi tới B. Phần mềm ví có thể nhận diện cả hai khoản trong cùng một giao diện vì nó biết cấu hình dẫn xuất tương ứng.

Ví dụ này không phải giao dịch thực và không dùng địa chỉ hoặc khóa mẫu. Nó chỉ kiểm tra một kết luận logic của cấu trúc HD: “nhiều địa chỉ” không đồng nghĩa “nhiều ví độc lập”. Cách phục hồi cây khóa được giải thích ở Seed phrase và ví HD.

Ba vai trò của khóa và địa chỉ. Khóa công khai được dẫn xuất từ khóa riêng; quan hệ giữa địa chỉ và khóa phụ thuộc loại đầu ra.

Ba ngộ nhận thường gặp

Public key là khóa riêng đã che bớt ký tự. Đây là hai đối tượng có quan hệ toán học, không phải bản hiển thị đầy đủ và bản rút gọn của cùng một mật khẩu.

Mỗi địa chỉ là một chiếc ví. Địa chỉ không mô tả toàn bộ tập khóa và cấu hình mà phần mềm đang quản lý.

Chữ ký hợp lệ chứng minh người ký có mọi quyền với tài sản. Khả năng đáp ứng điều kiện kỹ thuật không tự giải quyết nguồn gốc khóa, sự cho phép của các bên hay tranh chấp pháp lý. Đó là giới hạn diễn giải, không phải kết luận pháp lý cho một trường hợp cụ thể.

Kết luận

Khóa riêng để ký, khóa công khai để kiểm tra chữ ký, địa chỉ để nhận — ba thành phần liên quan nhưng làm ba việc khác nhau. Vì vậy, có thể đưa địa chỉ cho người khác mà không lộ khả năng chi tiêu, và một ví có thể quản lý nhiều khóa, nhiều địa chỉ. Giữ được khóa chỉ cho biết khả năng ký, chưa giải quyết quyền sở hữu pháp lý.

Đọc tiếp

Lưu ýBài viết nhằm mục đích cung cấp thông tin và giáo dục, không phải tư vấn đầu tư, pháp lý hay thuế và không phải khuyến nghị mua, bán hoặc nắm giữ bất kỳ tài sản mã hóa nào. Tài sản mã hóa có rủi ro cao, gồm biến động giá, mất quyền kiểm soát khóa và thay đổi pháp lý. Thông tin đúng tại ngày cập nhật ghi trên bài và có thể thay đổi sau đó.Cập nhật lần cuối: