Trong blockchain, có hai thuật toán mật mã chính được ứng dụng: một là thuật toán băm (hash), và hai là mã hóa bất đối xứng. Hôm nay, chúng ta sẽ tìm hiểu xem "mã hóa bất đối xứng" trong mật mã học blockchain là gì?
Nói một cách đơn giản, mã hóa bất đối xứng là một phương pháp đặc biệt dùng để mã hóa nội dung. Tuy nhiên, trước khi giải thích chi tiết về mã hóa bất đối xứng, cần phải đề cập đến một số kiến thức khác trong mật mã học.
Hiện tại, phương thức mã hóa và giải mã trong mật mã học có thể chia thành hai loại: mã hóa đối xứng và mã hóa bất đối xứng. Cả hai hệ thống mã hóa này đều có cấu trúc giống nhau, bao gồm: thuật toán mã hóa/giải mã, khóa mã hóa và khóa giải mã.
Ví dụ như trong cuộc sống hàng ngày, chúng ta thường dùng chìa khóa và ổ khóa. Chiếc chìa khóa dùng để mở cửa, trong mật mã học, chính là "khóa bí mật", còn ổ khóa đóng cửa đại diện cho thuật toán mã hóa/giải mã.
Trong hệ thống mã hóa/giải mã, bản thân thuật toán là cố định và thường được công khai, trong khi khóa là thứ riêng tư hơn. Trong quá trình mã hóa, chúng ta sử dụng thuật toán mã hóa và khóa mã hóa để mã hóa văn bản gốc (nội dung cần mã hóa), từ đó thu được văn bản mã hóa (nội dung sau khi mã hóa). Quá trình giải mã ngược lại: sử dụng thuật toán giải mã và khóa giải mã để giải mã văn bản mã hóa, lấy lại văn bản gốc.
Trường hợp chỉ có một khóa duy nhất vừa dùng để mã hóa vừa dùng để giải mã—giống như ổ khóa và chìa khóa—thì được gọi là mã hóa đối xứng.
Ngược lại, nếu quá trình mã hóa và giải mã sử dụng hai khóa khác nhau, phương pháp này được gọi là mã hóa bất đối xứng. Mã hóa bất đối xứng đặc biệt ở chỗ nó tạo ra hai khóa: khóa quan trọng nhất gọi là khóa riêng tư (private key), do chúng ta tự giữ, còn khóa còn lại được công khai, gọi là khóa công khai (public key).
Một đặc điểm của chúng là nội dung được mã hóa bằng khóa riêng tư có thể được giải mã và đọc bằng khóa công khai, và ngược lại—nội dung mã hóa bằng khóa công khai cũng có thể được giải mã bằng khóa riêng tư, giống như sự kết nối tâm linh của hai anh em sinh đôi vậy.
Trong blockchain, mục đích chính của mã hóa bất đối xứng không phải để bảo vệ tính riêng tư của nội dung mà là để ngăn chặn việc giả mạo danh tính.
Ví dụ, khi thực hiện một giao dịch trên mạng blockchain, tôi không thể xác định liệu có phải chính bạn đang thực hiện giao dịch hay không. Lúc này, bạn có thể gửi chữ ký số (một đoạn nội dung được mã hóa bằng khóa riêng tư), và tôi sẽ giải mã nó bằng khóa công khai đã được công bố.
Vì chỉ bạn mới giữ khóa riêng tư, nếu tôi có thể giải mã thành công bằng khóa công khai tương ứng, điều đó chứng tỏ chính bạn đang thực hiện giao dịch. Nếu không giải mã được, có nghĩa là ai đó đang mạo danh bạn. Nhờ đó, vấn đề "Tôi là tôi, đây là giao dịch của tôi" được giải quyết.
Tóm lại, mật mã học là yếu tố nền tảng nhất trong mạng lưới blockchain. Nó không chỉ bảo vệ an ninh cho toàn bộ mạng lưới mà còn giải quyết nhiều vấn đề xác minh trong giao dịch. Có thể với sự xuất hiện của các công nghệ mới như máy tính lượng tử, một số người sẽ đặt nghi vấn về tính bảo mật của nó. Nhưng hãy nhớ rằng, mật mã học cũng phát triển theo thời đại. Đến khi máy tính lượng tử được thương mại hóa, mật mã học blockchain chắc chắn sẽ trở nên an toàn hơn nữa.