Các hệ thống mật mã hiện được chia thành hai lĩnh vực nghiên cứu chính: mật mã đối xứng và bất đối xứng. Mã hóa bất đối xứng có hai trường hợp sử dụng: mã hóa bất đối xứng và chữ ký số.
Vì vậy, chúng ta có thể đại diện cho các nhóm này như sau:
Mã hóa khóa đối xứng
Mã hóa đối xứng
Mã hóa bất đối xứng (hoặc mã hóa khóa công khai)
Mã hóa bất đối xứng (hoặc mã hóa khóa công khai)
Chữ ký số (có thể bao gồm hoặc không bao gồm mã hóa)
Bài viết này sẽ tập trung vào các thuật toán mã hóa đối xứng và bất đối xứng.
Mã hóa đối xứng và mã hóa bất đối xứng
Thuật toán mã hóa thường được chia thành hai loại: mã hóa đối xứng và mã hóa bất đối xứng. Sự khác biệt cơ bản giữa hai phương pháp mã hóa này là thuật toán mã hóa đối xứng sử dụng một khóa duy nhất trong khi mã hóa bất đối xứng sử dụng hai khóa khác nhau nhưng có liên quan. Mặc dù sự khác biệt này có vẻ nhỏ, nhưng nó giải thích sự khác biệt về mặt chức năng giữa hai dạng kỹ thuật mã hóa và các phương pháp được sử dụng.
Hiểu về khóa mã hóa
Thuật toán mã hóa tạo ra các khóa là một chuỗi bit được sử dụng để mã hóa và giải mã một thông tin và đây là cách các khóa này được sử dụng để tính toán sự khác biệt giữa mã hóa đối xứng và mã hóa bất đối xứng.
Trong khi các thuật toán mã hóa đối xứng sử dụng cùng một khóa để thực hiện cả chức năng mã hóa và giải mã, ngược lại, thuật toán mã hóa bất đối xứng sử dụng một khóa để mã hóa dữ liệu và một khóa khác để giải mã. Trong các hệ thống bất đối xứng, khóa dùng để mã hóa được gọi là khóa công khai và có thể được chia sẻ tự do với người khác. Mặt khác, khóa được sử dụng để giải mã là khóa riêng tư và không nên chia sẻ hoặc giữ bí mật.
Ví dụ, nếu Alice gửi một tin nhắn cho Bob được bảo vệ bằng mã hóa đối xứng, cô ấy cần chia sẻ cùng một khóa đã sử dụng để mã hóa với Bob để anh ấy có thể giải mã tin nhắn. Điều này có nghĩa là nếu bên thứ ba có ý đồ xấu có được quyền truy cập vào khóa, họ sẽ có thể truy cập vào thông tin được mã hóa.
Nhưng nếu Alice sử dụng mã hóa bất đối xứng thay vào đó, cô ấy mã hóa tin nhắn bằng khóa công khai của Bob và Bob sẽ có thể giải mã nó bằng khóa riêng của mình. Do đó, mã hóa bất đối xứng cung cấp mức độ bảo mật cao hơn vì ngay cả khi ai đó chặn tin nhắn của cô ấy và tìm thấy khóa công khai của Bob , họ sẽ không thể giải mã được thông điệp hoặc hiểu được nội dung của nó.
Độ dài khóa
Một sự khác biệt về chức năng giữa mã hóa đối xứng và mã hóa bất đối xứng liên quan đến độ dài của khóa, được đo bằng bit và liên quan trực tiếp đến mức độ bảo mật mà mỗi thuật toán mã hóa cung cấp.
Trong các phương pháp mã hóa đối xứng, khóa được chọn ngẫu nhiên và thường có độ dài 128 hoặc 256 bit, tùy thuộc vào mức độ bảo mật cần thiết. Trong mã hóa bất đối xứng, phải có mối quan hệ toán học giữa khóa công khai và khóa riêng, nghĩa là phải có một mô hình toán học giữa hai khóa. Do kẻ tấn công có khả năng khai thác mô hình này để phá vỡ mã hóa nên khóa bất đối xứng sẽ cần dài hơn nhiều để cung cấp mức độ bảo mật tương đương. Sự khác biệt về độ dài khóa là khóa đối xứng 128 bit và khóa bất đối xứng 2048 bit cung cấp mức độ bảo mật tương đương nhau.
Ưu điểm và nhược điểm
Cả hai loại mã hóa đều có ưu và nhược điểm tương tự nhau. Thuật toán mã hóa đối xứng nhanh hơn nhiều và đòi hỏi ít sức mạnh tính toán hơn nhưng điểm yếu chính của chúng là phân phối khóa. Vì cùng một khóa được sử dụng để mã hóa và giải mã thông tin nên khóa này phải được phân phối cho bất kỳ ai cần truy cập vào dữ liệu, điều này tất yếu sẽ gây ra rủi ro bảo mật (như đã mô tả ở trên).
Ngược lại, mã hóa bất đối xứng giải quyết vấn đề phân phối khóa bằng cách sử dụng khóa công khai để mã hóa và khóa riêng để giải mã. Tuy nhiên, hệ thống mã hóa bất đối xứng rất chậm so với hệ thống đối xứng và đòi hỏi nhiều sức mạnh tính toán hơn do độ dài khóa rất dài.
Các trường hợp sử dụng
mã hóa đối xứng
Mã hóa đối xứng được sử dụng rộng rãi để bảo vệ thông tin trong nhiều hệ thống máy tính hiện đại vì tốc độ cao của nó. Ví dụ, Tiêu chuẩn mã hóa nâng cao (AES) được chính phủ Hoa Kỳ sử dụng để mã hóa thông tin mật và nhạy cảm. AES thay thế Tiêu chuẩn mã hóa dữ liệu (DES) trước đó, được phát triển vào những năm 1970 như là tiêu chuẩn cho mã hóa đối xứng.
Mã hóa bất đối xứng
Mã hóa bất đối xứng có thể được áp dụng cho các hệ thống mà nhiều người dùng có thể cần mã hóa và giải mã một thông điệp hoặc một tập dữ liệu, đặc biệt là khi không yêu cầu tốc độ và sức mạnh tính toán. Một ví dụ về hệ thống như vậy là email được mã hóa, trong đó khóa công khai có thể được sử dụng để mã hóa tin nhắn và khóa riêng tư khác có thể được sử dụng để giải mã tin nhắn đó.
Hệ thống lai
Mã hóa đối xứng và mã hóa bất đối xứng được sử dụng cùng nhau trong nhiều ứng dụng. Các ví dụ điển hình của các hệ thống kết hợp này là các giao thức mã hóa Security Sockets Layer (SSL) và Transport Layer Security (TLS) được thiết kế để cung cấp giao tiếp an toàn trên Internet. Giao thức SSL hiện được coi là không an toàn và nên ngừng sử dụng. Trong khi giao thức TLS được coi là an toàn và đã được sử dụng rộng rãi trên tất cả các trình duyệt web chính.
Tiền điện tử có sử dụng mã hóa không?
Các kỹ thuật mã hóa được sử dụng trong nhiều ví tiền điện tử như một phương tiện cung cấp mức độ bảo mật cao hơn cho người dùng cuối. Ví dụ, thuật toán mã hóa được áp dụng khi người dùng đặt mật khẩu cho ví tiền điện tử, nghĩa là tệp được sử dụng để truy cập ví sẽ được mã hóa.
Tuy nhiên, do Bitcoin và các loại tiền điện tử khác sử dụng cặp khóa công khai-riêng nên có một quan niệm sai lầm phổ biến rằng hệ thống blockchain sử dụng thuật toán mã hóa bất đối xứng. Mặc dù mã hóa bất đối xứng và chữ ký số là hai trường hợp sử dụng chính của mã hóa bất đối xứng (mã hóa khóa công khai) như đã đề cập trước đó.
Do đó, không phải tất cả các hệ thống chữ ký số đều sử dụng kỹ thuật mã hóa ngay cả khi chúng cung cấp khóa công khai và khóa riêng tư. Trên thực tế, một tin nhắn có thể được ký số mà không cần mã hóa. RSA là một ví dụ về thuật toán có thể được sử dụng để ký các thông điệp được mã hóa. Nhưng thuật toán chữ ký số mà Bitcoin sử dụng (gọi là ECDSA) không sử dụng mã hóa chút nào.
Suy nghĩ kết thúc
Cả mã hóa đối xứng và mã hóa bất đối xứng đều đóng vai trò quan trọng trong việc bảo mật thông tin và truyền thông nhạy cảm trong thế giới phụ thuộc vào kỹ thuật số ngày nay. Mặc dù cả hai đều hữu ích nhưng chúng đều có ưu điểm và nhược điểm riêng và do đó được sử dụng cho các ứng dụng và mục đích khác nhau. Khi mật mã tiếp tục phát triển để chống lại các mối đe dọa mới và tinh vi hơn, cả hệ thống mã hóa đối xứng và bất đối xứng có khả năng sẽ vẫn gắn liền với bảo mật máy tính.

