Blockchain - Mật mã khóa công khai
Mật mã khóa công khai hay nói ngắn gọn là PKI còn được gọi là mật mã không đối xứng. Nó sử dụng hai cặp khóa - công khai và riêng tư. Khóa là một số nhị phân dài. Khóa công khai được phân phối trên toàn thế giới và thực sự công khai như tên gọi của nó. Khóa riêng tư phải được giữ riêng tư một cách nghiêm ngặt và không bao giờ được làm mất nó.
Trong trường hợp của Bitcoin, nếu bạn mất khóa cá nhân trong ví Bitcoin của mình, toàn bộ nội dung trong ví của bạn sẽ ngay lập tức dễ bị trộm và trước khi bạn biết điều đó, tất cả tiền của bạn (nội dung trong ví của bạn) sẽ biến mất. cơ chế trong hệ thống để tìm ra ai đã đánh cắp nó - đó là tính ẩn danh trong hệ thống mà tôi đã đề cập trước đó.
PKI thực hiện hai chức năng - xác thực và bảo mật tin nhắn thông qua cơ chế mã hóa / giải mã. Bây giờ tôi sẽ giải thích cả hai chức năng này -
Xác thực
Khi hai bên trao đổi thông điệp, điều quan trọng là phải thiết lập sự tin cậy giữa người gửi và người nhận. Đặc biệt, người nhận phải tin tưởng vào nguồn tin nhắn. Đến với kịch bản trước đó của chúng ta (được mô tả trong Hình 1) về việc Bob gửi một số tiền cho Lisa để mua một số hàng hóa từ cô ấy, chúng ta hãy xem PKI xây dựng lòng tin giữa Bob và Lisa như thế nào. Nhìn vào hình ảnh dưới đây -
Trước hết, nếu Bob muốn gửi một số tiền cho Lisa, anh ta phải tạo một khóa cá nhân / công khai của riêng mình. Lưu ý rằng cả hai khóa luôn được ghép nối với nhau và bạn không thể kết hợp khóa cá nhân và khóa công khai của các cá nhân khác nhau hoặc các trường hợp khác nhau.
Bây giờ, Bob nói rằng anh ấy đang gửi 10 đô la cho Lisa. Vì vậy, anh ta tạo một tin nhắn (một tin nhắn văn bản thuần túy) chứa khóa công khai của Bob (người gửi), khóa công khai của Lisa (người nhận) và số tiền (10 đô la).
Mục đích của việc chuyển tiền này như "Tôi muốn mua bí ngô từ bạn" cũng được thêm vào tin nhắn. Toàn bộ thư hiện đã được ký bằng khóa riêng của Bob. Khi Lisa nhận được tin nhắn này, cô ấy sẽ sử dụng thuật toán xác minh chữ ký của PKI và khóa công khai của Bob để đảm bảo rằng tin nhắn thực sự đến từ Bob. Cách hoạt động của PKI nằm ngoài phạm vi của hướng dẫn này. Bạn đọc quan tâm có thể tham khảo trang web này để thảo luận chi tiết hơn về PKI. Điều này thiết lập tính xác thực của người khởi tạo thông báo. Bây giờ, chúng ta hãy xem xét quyền riêng tư của tin nhắn.
Bảo mật tin nhắn
Bây giờ, khi Lisa đã nhận được khoản thanh toán của mình, cô ấy muốn gửi liên kết đến cuốn sách điện tử của mình mà Bob muốn mua. Vì vậy, Lisa sẽ tạo một tin nhắn và gửi cho Bob như thể hiện trong hình ảnh -
Lisa tạo một thông báo chẳng hạn như “Đây là liên kết đến ebook của tôi mà bạn đã yêu cầu”, ký nó bằng khóa công khai của Bob mà cô ấy đã nhận được trong tin nhắn yêu cầu của Bob và cũng mã hóa tin nhắn bằng một số khóa bí mật được chia sẻ giữa hai người trong quá trình bắt tay HTTPS.
Bây giờ, Lisa chắc chắn rằng chỉ Bob mới có thể giải mã tin nhắn bằng khóa riêng tư do một mình Bob nắm giữ. Ngoài ra, ai đó chặn tin nhắn sẽ không thể khôi phục nội dung của nó vì nội dung được mã hóa bằng khóa bí mật chỉ do Bob và Alice nắm giữ. Điều này đảm bảo với Lisa rằng quyền truy cập vào sách điện tử của cô ấy chỉ được cấp cho Bob.
Sau khi thấy cả hai tính năng, Xác thực và Bảo mật tin nhắn, được ngụ ý bởi PKI, chúng ta hãy tiếp tục xem cách Bitcoin sử dụng PKI để bảo mật sổ cái công khai mà tôi đã đề cập trong chương “Bitcoin là gì?”.
Theo hiểu biết của bạn - Các thuật toán PKI phổ biến nhất là RSA và ECDSA , Bitcoin sử dụng thuật toán thứ hai.