Mật mã khóa công khai: cách nó hoạt động và tại sao nó quan trọng
Last updated: tháng 4 9, 2026
Hiểu mật mã khóa công khai (asymmetric cryptography) qua các ví dụ đơn giản. Cách thức HTTPS, ký mã và mã hóa đầu cuối hoạt động mà không cần toán học phức tạp.
Hãy tưởng tượng bạn muốn gửi một tin nhắn bí mật cho một người bạn qua đường bưu điện, nhưng bạn không tin tưởng các nhân viên bưu điện. Bạn muốn chắc chắn rằng khi thư đến tay bạn bè, chỉ họ mới có thể mở được nó — và không ai khác, kể cả những người xử lý thư. Đó chính là vấn đề mà mật mã khóa công khai (asymmetric cryptography) giải quyết. Nhưng thay vì dùng khóa vật lý, nó sử dụng toán học.
Thực tế là: lâu trước khi internet tồn tại, các nhà mật mã học đã chứng minh rằng có thể tạo ra hai khóa có liên quan với nhau theo cách rất đặc biệt. Một khóa bạn công khai cho mọi người (gọi là "khóa công khai"). Một khóa bạn giữ riêng tư (gọi là "khóa riêng"). Điều kỳ diệu là: bất cứ ai có thể sử dụng khóa công khai để khóa một hộp, nhưng chỉ người có khóa riêng mới có thể mở nó.
Hộp khóa tương tự
Hãy tưởng tượng một hộp sắt có một lỗ khe trên trên. Bạn có thể gửi bản sao lỗ khe này cho bất kỳ ai — đó là khóa công khai. Mọi người có thể nhìn thấy lỗ khe, và họ có thể đưa những thứ vào qua lỗ khe. Nhưng lỗ khe chỉ hoạt động một chiều: sau khi bạn nhét thứ gì đó vào, nó sẽ rơi vào bên trong hộp. Bạn là người duy nhất có chìa khóa thực tế để mở hộp từ bên ngoài — đó là khóa riêng. Không ai khác, dù họ có lỗ khe, cũng không thể lấy được những gì bên trong.
Đó là một sự so sánh không hoàn hảo (toán học không hoạt động giống như vật lý), nhưng nó nắm bắt được ý tưởng cốt lõi: khóa công khai cho phép mọi người mã hóa thông tin dành cho bạn, nhưng chỉ khóa riêng của bạn mới có thể giải mã nó.
RSA: hệ thống dựa trên số lớn
Một trong những thuật toán khóa công khai nổi tiếng nhất được gọi là RSA (viết tắt từ tên ba người phát minh của nó). RSA dựa trên một sự thật toán học đơn giản nhưng mạnh mẽ: rất dễ nhân hai số nguyên tố lớn với nhau, nhưng rất khó phân tích tích của chúng trở lại các thừa số nguyên tố.
Hãy tưởng tượng bạn được cho biết rằng tích của hai số nguyên tố là 15. Bạn có thể nhanh chóng tìm ra rằng chúng là 3 và 5. Nhưng nếu tôi nói với bạn rằng tích là một số có 2048 chữ số — một con số quá lớn để ghi vào một trang — thì công việc trở nên rất khác. Thậm chí những máy tính mạnh nhất cũng sẽ mất hàng năm để phân tích nó. RSA tận dụng độ khó này: khóa công khai chứa tích (dễ nhân), khóa riêng chứa các thừa số (khó tìm).
Các đường cong elliptic: phương pháp hiện đại
Ngoài RSA, có một phương pháp khác được gọi là "cryptography đường cong elliptic" (hay ECC). Nó dựa trên các đặc tính của các đường cong hình học thay vì phân tích các số nguyên tố. Nó có cùng ý tưởng cơ bản — khóa công khai và khóa riêng được liên kết theo cách mà một chiều rất dễ nhưng chiều ngược lại rất khó — nhưng toán học bên dưới hoàn toàn khác.
ECC hiện ngày ngoài cách áp dụng rộng rãi vì nó có thể đạt cùng mức độ an toàn như RSA với khóa nhỏ hơn nhiều. Điều này giúp nó nhanh hơn, đặc biệt trên các thiết bị di động hoặc khi bạn cần xử lý lưu lượng mạng lớn.
Tại sao điều này quan trọng: HTTPS, ký mã, và mã hóa đầu cuối
Mật mã khóa công khai làm được ba điều quan trọng. Thứ nhất, nó bảo vệ các trang web: HTTPS (phần "s" nghĩa là "an toàn") sử dụng nó để tạo kết nối mã hóa giữa máy tính của bạn và máy chủ web. Khi bạn truy cập một trang web, máy chủ gửi cho bạn khóa công khai của nó. Máy tính của bạn sử dụng khóa này để mã hóa dữ liệu bạn gửi đi. Chỉ máy chủ, người có khóa riêng, mới có thể đọc được nó.
Thứ hai, nó cho phép "ký" các file. Nếu một nhà phát triển phần mềm muốn chứng minh rằng một phần mềm thực sự đến từ họ và chưa bị sửa đổi, họ có thể sử dụng khóa riêng của họ để "ký" tệp. Bất kỳ ai cũng có thể sử dụng khóa công khai của họ để xác minh chữ ký — điều này chứng minh rằng chữ ký đó chỉ có thể được tạo ra bởi người có khóa riêng.
Thứ ba, nó cho phép "mã hóa đầu cuối" (end-to-end encryption): ứng dụng nhắn tin có thể sử dụng khóa công khai của bạn để mã hóa các thông điệp sao cho chỉ bạn mới có thể đọc chúng. Thậm chí cả công ty chạy ứng dụng cũng không thể giải mã chúng.
Nhưng có một vấn đề: máy tính lượng tử
Tất cả những gì chúng ta vừa thảo luận dựa trên giả định rằng những máy tính hiện tại của chúng ta không đủ mạnh để phá vỡ những thuật toán này. Nhưng máy tính lượng tử (nếu chúng được phát triển hoàn toàn) có thể thay đổi mọi thứ. Những máy tính này sử dụng các nguyên lý vật lý kỳ lạ và có khả năng giải quyết các vấn đề nhất định nhanh hơn rất nhiều so với máy tính truyền thống. Điều đó có nghĩa là RSA và ECC hiện tại có thể không còn an toàn nữa.
Vì lý do đó, các nhà mật mã học đang làm việc trên "mật mã hậu lượng tử" (post-quantum cryptography) — các thuật toán được thiết kế để chống lại cả máy tính cổ điển và lượng tử. Đó là một lĩnh vực nghiên cứu đang hoạt động, và điều quan trọng là biết rằng không ai có câu trả lời cuối cùng ngay bây giờ.
Tóm lại
Mật mã khóa công khai là một trong những khám phá quan trọng nhất trong lịch sử an ninh máy tính. Nó giải quyết một vấn đề cơ bản: làm thế để có thể gửi tin nhắn bí mật đến ai đó mà không cần phải gặp gỡ trước để trao đổi khóa bí mật. Bằng cách tách khóa thành hai phần — một công khai, một riêng tư — nó cho phép những điều mà các hệ thống mã hóa cũ không thể làm được.
Những kỹ thuật này (RSA, ECC) hoạt động bằng cách tận dụng các sự thật toán học khó khăn — những điều dễ làm một chiều nhưng rất khó làm chiều ngược lại. Chúng ta sử dụng chúng hàng ngày khi truy cập các trang web an toàn, tải xuống phần mềm được ký, và gửi các thông điệp riêng tư. Nhưng chúng không hoàn hảo: máy tính lượng tử trong tương lai có thể yêu cầu chúng ta thay đổi cách làm mọi việc.
Nếu bạn muốn tìm hiểu sâu hơn, hãy xem các chủ đề liên quan như HTTPS cách hoạt động, chữ ký số, và tại sao một "cơ sở hạ tầng khóa công khai" là cần thiết để chúng ta thực sự tin tưởng các khóa công khai chúng ta nhìn thấy.
Thực tế là: lâu trước khi internet tồn tại, các nhà mật mã học đã chứng minh rằng có thể tạo ra hai khóa có liên quan với nhau theo cách rất đặc biệt. Một khóa bạn công khai cho mọi người (gọi là "khóa công khai"). Một khóa bạn giữ riêng tư (gọi là "khóa riêng"). Điều kỳ diệu là: bất cứ ai có thể sử dụng khóa công khai để khóa một hộp, nhưng chỉ người có khóa riêng mới có thể mở nó.
Hộp khóa tương tự
Hãy tưởng tượng một hộp sắt có một lỗ khe trên trên. Bạn có thể gửi bản sao lỗ khe này cho bất kỳ ai — đó là khóa công khai. Mọi người có thể nhìn thấy lỗ khe, và họ có thể đưa những thứ vào qua lỗ khe. Nhưng lỗ khe chỉ hoạt động một chiều: sau khi bạn nhét thứ gì đó vào, nó sẽ rơi vào bên trong hộp. Bạn là người duy nhất có chìa khóa thực tế để mở hộp từ bên ngoài — đó là khóa riêng. Không ai khác, dù họ có lỗ khe, cũng không thể lấy được những gì bên trong.
Đó là một sự so sánh không hoàn hảo (toán học không hoạt động giống như vật lý), nhưng nó nắm bắt được ý tưởng cốt lõi: khóa công khai cho phép mọi người mã hóa thông tin dành cho bạn, nhưng chỉ khóa riêng của bạn mới có thể giải mã nó.
RSA: hệ thống dựa trên số lớn
Một trong những thuật toán khóa công khai nổi tiếng nhất được gọi là RSA (viết tắt từ tên ba người phát minh của nó). RSA dựa trên một sự thật toán học đơn giản nhưng mạnh mẽ: rất dễ nhân hai số nguyên tố lớn với nhau, nhưng rất khó phân tích tích của chúng trở lại các thừa số nguyên tố.
Hãy tưởng tượng bạn được cho biết rằng tích của hai số nguyên tố là 15. Bạn có thể nhanh chóng tìm ra rằng chúng là 3 và 5. Nhưng nếu tôi nói với bạn rằng tích là một số có 2048 chữ số — một con số quá lớn để ghi vào một trang — thì công việc trở nên rất khác. Thậm chí những máy tính mạnh nhất cũng sẽ mất hàng năm để phân tích nó. RSA tận dụng độ khó này: khóa công khai chứa tích (dễ nhân), khóa riêng chứa các thừa số (khó tìm).
Các đường cong elliptic: phương pháp hiện đại
Ngoài RSA, có một phương pháp khác được gọi là "cryptography đường cong elliptic" (hay ECC). Nó dựa trên các đặc tính của các đường cong hình học thay vì phân tích các số nguyên tố. Nó có cùng ý tưởng cơ bản — khóa công khai và khóa riêng được liên kết theo cách mà một chiều rất dễ nhưng chiều ngược lại rất khó — nhưng toán học bên dưới hoàn toàn khác.
ECC hiện ngày ngoài cách áp dụng rộng rãi vì nó có thể đạt cùng mức độ an toàn như RSA với khóa nhỏ hơn nhiều. Điều này giúp nó nhanh hơn, đặc biệt trên các thiết bị di động hoặc khi bạn cần xử lý lưu lượng mạng lớn.
Tại sao điều này quan trọng: HTTPS, ký mã, và mã hóa đầu cuối
Mật mã khóa công khai làm được ba điều quan trọng. Thứ nhất, nó bảo vệ các trang web: HTTPS (phần "s" nghĩa là "an toàn") sử dụng nó để tạo kết nối mã hóa giữa máy tính của bạn và máy chủ web. Khi bạn truy cập một trang web, máy chủ gửi cho bạn khóa công khai của nó. Máy tính của bạn sử dụng khóa này để mã hóa dữ liệu bạn gửi đi. Chỉ máy chủ, người có khóa riêng, mới có thể đọc được nó.
Thứ hai, nó cho phép "ký" các file. Nếu một nhà phát triển phần mềm muốn chứng minh rằng một phần mềm thực sự đến từ họ và chưa bị sửa đổi, họ có thể sử dụng khóa riêng của họ để "ký" tệp. Bất kỳ ai cũng có thể sử dụng khóa công khai của họ để xác minh chữ ký — điều này chứng minh rằng chữ ký đó chỉ có thể được tạo ra bởi người có khóa riêng.
Thứ ba, nó cho phép "mã hóa đầu cuối" (end-to-end encryption): ứng dụng nhắn tin có thể sử dụng khóa công khai của bạn để mã hóa các thông điệp sao cho chỉ bạn mới có thể đọc chúng. Thậm chí cả công ty chạy ứng dụng cũng không thể giải mã chúng.
Nhưng có một vấn đề: máy tính lượng tử
Tất cả những gì chúng ta vừa thảo luận dựa trên giả định rằng những máy tính hiện tại của chúng ta không đủ mạnh để phá vỡ những thuật toán này. Nhưng máy tính lượng tử (nếu chúng được phát triển hoàn toàn) có thể thay đổi mọi thứ. Những máy tính này sử dụng các nguyên lý vật lý kỳ lạ và có khả năng giải quyết các vấn đề nhất định nhanh hơn rất nhiều so với máy tính truyền thống. Điều đó có nghĩa là RSA và ECC hiện tại có thể không còn an toàn nữa.
Vì lý do đó, các nhà mật mã học đang làm việc trên "mật mã hậu lượng tử" (post-quantum cryptography) — các thuật toán được thiết kế để chống lại cả máy tính cổ điển và lượng tử. Đó là một lĩnh vực nghiên cứu đang hoạt động, và điều quan trọng là biết rằng không ai có câu trả lời cuối cùng ngay bây giờ.
Tóm lại
Mật mã khóa công khai là một trong những khám phá quan trọng nhất trong lịch sử an ninh máy tính. Nó giải quyết một vấn đề cơ bản: làm thế để có thể gửi tin nhắn bí mật đến ai đó mà không cần phải gặp gỡ trước để trao đổi khóa bí mật. Bằng cách tách khóa thành hai phần — một công khai, một riêng tư — nó cho phép những điều mà các hệ thống mã hóa cũ không thể làm được.
Những kỹ thuật này (RSA, ECC) hoạt động bằng cách tận dụng các sự thật toán học khó khăn — những điều dễ làm một chiều nhưng rất khó làm chiều ngược lại. Chúng ta sử dụng chúng hàng ngày khi truy cập các trang web an toàn, tải xuống phần mềm được ký, và gửi các thông điệp riêng tư. Nhưng chúng không hoàn hảo: máy tính lượng tử trong tương lai có thể yêu cầu chúng ta thay đổi cách làm mọi việc.
Nếu bạn muốn tìm hiểu sâu hơn, hãy xem các chủ đề liên quan như HTTPS cách hoạt động, chữ ký số, và tại sao một "cơ sở hạ tầng khóa công khai" là cần thiết để chúng ta thực sự tin tưởng các khóa công khai chúng ta nhìn thấy.
🛡️
Recommended VPN Services
Top-rated VPNs trusted by millions
N
NordVPN
⭐ LỰA CHỌN BIÊN TẬP
★★★★★ 9.5/10 · 6,000+ servers · Hoạt động ở Trung Quốc
$3.39/mo
View Deal →
S
Surfshark
BEST VALUE
★★★★★ 9.6/10 · Unlimited devices
$2.49/mo
View Deal →
E
ExpressVPN
PREMIUM
★★★★★ 9.4/10 · 94 countries
$6.67/mo
View Deal →
Disclosure: SaveClip may earn a commission when you sign up through our links. This helps us keep our tools free for everyone.