This article has been translated from English to Vietnamese.
Mã hóa bất đối xứng là gì?
Mã hóa bất đối xứng là một loại mã hóa sử dụng hai “khóa” riêng biệt nhưng được kết nối toán học để mã hóa và giải mã dữ liệu và bảo vệ nó khỏi truy cập hoặc sử dụng trái phép.
Các khóa này được biết đến như là:
- Khóa riêng
- Khóa công khai
Cùng nhau, chúng được gọi là “cặp khóa công khai và khóa riêng” hoặc chỉ đơn giản là “cặp khóa“.
Một trong các khóa, khóa công khai, có sẵn cho bất kỳ ai sử dụng. Khóa còn lại được gọi là khóa riêng.
Dữ liệu được mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa riêng. Đây là lý do tại sao mã hóa bất đối xứng còn được gọi là “mật mã khóa công khai”.
Cách hoạt động của mã hóa bất đối xứng
Khi lần đầu tìm hiểu về mã hóa bất đối xứng, ví dụ kinh điển sau được sử dụng:
Để gửi dữ liệu được mã hóa cho ai đó, bạn phải mã hóa dữ liệu bằng khóa công khai của người đó, và người nhận dữ liệu sẽ giải mã nó bằng khóa riêng tương ứng.
Tất cả dữ liệu bạn gửi qua internet đều ở dạng văn bản gốc. Điều này có nghĩa là bất kỳ ai truy cập được nó đều có thể nhìn thấy và đọc nó.
Nếu bạn không muốn ai đó có thể đọc dữ liệu của mình, bạn có thể mã hóa dữ liệu bằng khóa công khai của người nhận hoặc người bạn đang gửi tin nhắn. (Người này sẽ gửi cho bạn khóa công khai của họ trước đó.)
Một khi dữ liệu đã được chuyển đổi thành văn bản mã hóa, bạn không thể giải mã nó bằng cùng một khóa.
Văn bản mã hóa chỉ có thể được giải mã bằng khóa riêng tương ứng, mà chỉ người nhận mới có.
Hình minh họa trên cho thấy cách bạn có thể tự do phân phối khóa công khai để chỉ bạn, chủ sở hữu của khóa riêng, có thể đọc dữ liệu đã được mã hóa bằng khóa công khai.
Vì bạn đang mã hóa dữ liệu bằng khóa công khai, đây là lý do loại mã hóa bất đối xứng này còn được gọi là “mã hóa khóa công khai“.Rõ ràng, việc sử dụng phổ biến nhất của mã hóa bất đối xứng là để gửi tin nhắn bảo mật.
Nếu tôi đang gửi một lá thư tình cho mẹ bạn qua internet và tôi không muốn bạn có thể đọc nó, tôi có thể sử dụng mã hóa bất đối xứng.
Tôi sẽ mã hóa tin nhắn bằng khóa công khai của mẹ bạn, sau đó gửi tin nhắn cho bà ấy.
Để có thể giải mã văn bản trở lại thành định dạng có thể đọc được sẽ cần khóa riêng, mà chỉ có mẹ bạn mới sở hữu. Vì vậy chỉ CÔ ẤY sẽ có thể đọc tin nhắn (không phải bạn!) và biết được tình cảm thực sự của tôi dành cho bà.

Cách Mã hóa Bất đối xứng Hoạt động trong Tiền mã hóa
Mã hóa bất đối xứng ban đầu được sử dụng để mã hóa và giải mã tin nhắn. Nhưng tiền mã hóa hiện nay sử dụng công nghệ này theo cách hơi khác một chút.
Trong ví dụ kinh điển về mã hóa bất đối xứng, tôi đã giải thích cách bạn sử dụng khóa công khai để mã hóa dữ liệu và sau đó cần khóa riêng để giải mã dữ liệu.
Nhưng điều ngược lại cũng hoạt động được!
Bạn cũng có thể sử dụng khóa riêng để mã hóa dữ liệu và sau đó sử dụng khóa công khai để giải mã dữ liệu.
Và đây là cách mã hóa bất đối xứng được sử dụng trong tiền mã hóa!
Trong tiền mã hóa, người gửi sử dụng khóa riêng của mình để mã hóa một thông điệp đặc biệt và người nhận sử dụng khóa công khai của người gửi để giải mã nó.
Nó là sự NGƯỢC LẠI so với ví dụ kinh điển trước đó! Thay vì sử dụng các khóa của NGƯỜI NHẬN, nó là các khóa của NGƯỜI GỬI đang được sử dụng.
Nếu bạn muốn gửi tin nhắn bảo mật theo cách này, đó sẽ là một ý tưởng tồi bởi vì bất kỳ ai có khóa công khai của bạn, vốn dĩ là công khai, có thể giải mã tin nhắn của bạn và đọc nó.
Nhưng trong Bitcoin (và các loại tiền mã hóa khác), tất cả các giao dịch đều được công khai nên nó không cần giữ dữ liệu ở chế độ riêng tư hay bảo mật.
Nó sử dụng mã hóa bất đối xứng cho một mục đích hoàn toàn khác. Và nó khá thông minh.
Nó sử dụng mã hóa bất đối xứng cho xác thực... để chứng minh bạn là người bạn nói bạn là.
Cụ thể hơn, khi bạn muốn gửi một số bitcoins cho người khác, nó được sử dụng để chứng minh rằng BẠN là chủ sở hữu thực sự của số bitcoins mà bạn muốn gửi.
Xác thực là việc chứng minh một tuyên bố, như danh tính của một người dùng. Điều này khác với định danh, là hành động chỉ ra danh tính của một người. Xác thực là quá trình kiểm tra danh tính.
Nếu bạn mã hóa (“khóa”) thứ gì đó với khóa riêng của mình, bất kỳ ai cũng có thể giải mã nó (“mở khóa”) với khóa công khai của bạn.
Điều này đóng vai trò như bằng chứng rằng bạn là người gửi gốc của tin nhắn bởi vì bạn là NGƯỜI DUY NHẤT có thể mã hóa tin nhắn (bởi vì bạn có khóa riêng tương ứng).
Và vì bây giờ danh tính của bạn (như là chủ sở hữu thực sự của số bitcoins bạn muốn gửi) đã được xác thực, bạn bây giờ được ủy quyền để gửi số bitcoins đó.
Định danh có nghĩa là tuyên bố là ai đó. Xác thực có nghĩa là chứng minh rằng bạn thực sự là người bạn đã tuyên bố. Ủy quyền có nghĩa là nhận được quyền truy cập vào một thứ gì đó nhờ vào danh tính đã được xác thực trước đó.
Bây giờ chúng ta đã biết mã hóa bất đối xứng là gì và nó hoạt động như thế nào, hãy cùng kết hợp tất cả lại và xem cách nó được sử dụng trong chữ ký số.

