
Mã hóa khóa công khai là một cơ chế mật mã dựa trên cặp “khóa công khai + khóa riêng tư”. Khóa công khai có thể chia sẻ tự do, còn khóa riêng tư luôn do bạn kiểm soát tuyệt đối. Cơ chế này cho phép người khác mã hóa thông điệp bằng khóa công khai của bạn, và chỉ khóa riêng tư của bạn mới có thể giải mã. Ngược lại, khi bạn ký dữ liệu bằng khóa riêng tư, bất kỳ ai cũng có thể xác minh chữ ký đó bằng khóa công khai của bạn.
Có thể hình dung như một ổ khóa cửa: loại ổ (khóa công khai) thì ai cũng thấy và dùng để xác minh hoặc mã hóa, nhưng chỉ chìa khóa thực sự (khóa riêng tư) mà bạn nắm giữ mới mở được cửa. Trong blockchain, địa chỉ ví, chữ ký giao dịch và đăng nhập danh tính phi tập trung đều dựa trên cơ chế nền tảng này.
Mã hóa khóa công khai là nền tảng cho cả địa chỉ ví và chữ ký giao dịch. Nếu không có nó, sẽ không thể xác thực “ai là người khởi tạo hành động” trên chuỗi. Cơ chế này cho phép chuyển tài sản, tương tác hợp đồng thông minh và đăng nhập dApp xác thực danh tính, quyền hạn mà không cần tên đăng nhập hay mật khẩu truyền thống.
Trong đa số ví, địa chỉ được dẫn xuất từ khóa công khai. Khi bạn thực hiện chuyển khoản, bạn ký giao dịch bằng khóa riêng tư; các nút mạng sẽ sử dụng khóa công khai của bạn để xác minh tính hợp lệ của chữ ký, xác nhận bạn đã ủy quyền thao tác đó. Khi kết nối với dApp và “ký một thông điệp”, quá trình này cũng dựa vào mã hóa khóa công khai để chứng minh bạn sở hữu địa chỉ đó.
Nguyên lý cốt lõi của mã hóa khóa công khai là “bất đối xứng”: mã hóa và giải mã—hoặc ký và xác minh—được thực hiện bằng hai khóa khác nhau. Nếu dùng sai chiều, thao tác sẽ thất bại. Với mã hóa, người khác dùng khóa công khai của bạn để mã hóa dữ liệu, và chỉ khóa riêng tư của bạn mới giải mã được. Với chữ ký, bạn tạo chữ ký bằng khóa riêng tư, và bất kỳ ai cũng xác minh được bằng khóa công khai.
Cơ chế này dựa trên các bài toán “một chiều” về mặt toán học: gần như không thể tính toán ngược lại khóa riêng tư từ khóa công khai, nhưng lại dễ dàng tạo chữ ký hợp lệ bằng khóa riêng tư. Các ứng dụng phổ biến gồm RSA và mật mã đường cong elliptic (ECC), cả hai đều dùng cấu trúc toán học khác nhau để đảm bảo tính chất bảo mật “một chiều dễ, chiều ngược khó” này.
Các ví sử dụng mã hóa khóa công khai để tạo địa chỉ và dùng khóa riêng tư để ký giao dịch, từ đó mạng lưới xác thực và ghi nhận giao dịch. Thông thường, người dùng chỉ làm việc với địa chỉ và các yêu cầu ký; khóa riêng tư được lưu trữ an toàn bởi chính bạn hoặc nền tảng.
Bước 1: Khi bạn tạo ví, một khóa riêng tư được sinh ra cùng với “cụm từ ghi nhớ”—một tập hợp từ dùng làm bản sao lưu dễ nhớ của khóa riêng tư. Nếu lưu trữ cụm từ ghi nhớ ngoại tuyến một cách an toàn, bạn có thể khôi phục quyền kiểm soát tài sản trên bất kỳ ví tương thích nào.
Bước 2: Ví dẫn xuất khóa công khai và địa chỉ từ khóa riêng tư của bạn. Địa chỉ này đóng vai trò như số tài khoản—người khác có thể chuyển tài sản vào địa chỉ đó.
Bước 3: Khi bạn thực hiện chuyển khoản hoặc tương tác với hợp đồng thông minh, ví sẽ ký giao dịch bằng khóa riêng tư. Các nút blockchain xác minh chữ ký bằng khóa công khai; chỉ khi xác minh thành công, giao dịch mới được ghi vào khối.
Trên các sàn như Gate, khi bạn nạp hoặc rút tài sản, hệ thống sẽ gán địa chỉ trên chuỗi cho tài khoản của bạn. Những địa chỉ này được tạo và quản lý bởi hạ tầng ví của nền tảng, cũng dựa trên mã hóa khóa công khai. Bạn chỉ nhìn thấy địa chỉ và lịch sử giao dịch; các thao tác phía nền tảng được thực hiện qua quy trình quản lý và ký khóa an toàn.
Tính bảo mật của chữ ký giao dịch đến từ hai yếu tố chính: chỉ người sở hữu khóa riêng tư mới tạo được chữ ký hợp lệ; bất kỳ ai cũng có thể dùng khóa công khai để xác minh tính xác thực của chữ ký và đảm bảo thông điệp không bị chỉnh sửa.
Khi bạn nhấn “xác nhận chuyển khoản”, ví sẽ đóng gói chi tiết giao dịch (địa chỉ nhận, số tiền, phí gas, v.v.) thành một thông điệp để ký bằng khóa riêng tư. Sau khi các nút mạng xác minh chữ ký, họ xác nhận thao tác này thực sự được chủ sở hữu khóa riêng tư ủy quyền. Nhiều dApp sử dụng ký thông điệp thay cho mật khẩu khi đăng nhập—chứng minh bạn kiểm soát địa chỉ qua chữ ký.
Chữ ký cũng bao gồm các yếu tố chống lại tấn công phát lại (như nonce trên chuỗi hoặc số ngẫu nhiên), ngăn chặn giao dịch cũ bị gửi lại. Người dùng cần kiểm tra kỹ nội dung hiển thị trong cửa sổ ký để tránh xác nhận các yêu cầu độc hại có thể gây mất tài sản.
Khác biệt chính nằm ở cách sử dụng và chia sẻ khóa: mã hóa đối xứng dùng chung một bí mật để mã hóa và giải mã—cả hai bên gửi và nhận đều phải có cùng bí mật đó; mã hóa khóa công khai dùng hai khóa—khóa công khai có thể công khai, còn khóa riêng tư phải giữ bí mật tuyệt đối.
Trong Web3, mã hóa khóa công khai đặc biệt phù hợp với các tác vụ xác thực danh tính và ủy quyền (ký và xác minh) trên mạng mở. Mã hóa đối xứng lại phù hợp hơn khi lưu trữ hoặc truyền dữ liệu riêng tư (ví dụ: sao lưu mã hóa), nhờ hiệu suất cao khi xử lý dữ liệu lớn. Nhiều hệ thống kết hợp cả hai: mã hóa khóa công khai phân phối khóa đối xứng an toàn, sau đó dùng mã hóa đối xứng để xử lý dữ liệu khối lượng lớn.
Các thuật toán phổ biến gồm RSA, mật mã đường cong elliptic (ECC) và các sơ đồ chữ ký như ECDSA và Ed25519. RSA ra đời sớm hơn và dựa vào phân tích số nguyên lớn; ECC tận dụng toán học đường cong elliptic để đạt cùng mức độ bảo mật với độ dài khóa ngắn hơn—giúp hiệu quả và tiết kiệm tài nguyên hơn cho ứng dụng blockchain.
Đến năm 2024, các blockchain chủ đạo chủ yếu sử dụng ECC: Bitcoin và Ethereum dùng secp256k1; Solana sử dụng Ed25519. ECC cho chữ ký ngắn, xử lý nhanh và chi phí thấp. RSA rất hiếm khi xuất hiện trên chuỗi, nhưng vẫn phổ biến trong các hệ thống truyền thống. Khi NIST thúc đẩy tiêu chuẩn hóa mật mã hậu lượng tử (2023–2024), ngành chuẩn bị cho khả năng chuyển đổi sang các thuật toán chống lượng tử trong tương lai.
Chú thích thuật ngữ: Đường cong elliptic là một cấu trúc toán học đặc biệt dùng cho mật mã bất đối xứng; Ed25519 là thuật toán chữ ký đường cong elliptic hiệu suất cao, dễ triển khai.
Người mới nên tập trung vào bốn bước cơ bản: tạo, sao lưu, sử dụng và xác minh khóa—làm đúng các bước này sẽ giảm đáng kể rủi ro.
Bước 1: Tạo ví và sao lưu cụm từ ghi nhớ ngoại tuyến. Ghi chép lại cụm từ ghi nhớ và cất giữ ở nơi an toàn; tuyệt đối không chụp ảnh màn hình hoặc đồng bộ lên đám mây để tránh rò rỉ khóa riêng tư.
Bước 2: Xác minh địa chỉ và nội dung ký. Luôn kiểm tra địa chỉ người nhận trước khi chuyển tiền; xem kỹ cửa sổ ký để nhận diện nguồn yêu cầu và dữ liệu cụ thể, tránh bị tấn công lừa đảo.
Bước 3: Ưu tiên ví phần cứng hoặc mô-đun bảo mật. Ví phần cứng giữ khóa riêng tư tách biệt trên chip chuyên dụng—thiết bị chỉ trả về chữ ký khi bạn xác nhận thao tác; khóa riêng tư không bao giờ rời khỏi thiết bị.
Bước 4: Khi nạp/rút trên Gate, luôn tuân thủ hướng dẫn của nền tảng về chuỗi và địa chỉ—nên kiểm tra thử với số tiền nhỏ trước khi giao dịch lớn. Kích hoạt các tính năng bảo mật của nền tảng (như kiểm soát rủi ro hoặc xác nhận phụ) khi liên quan đến tài sản để tránh sai sót.
Bước 5: Quản lý dài hạn nên dùng mô hình đa chữ ký hoặc lưu ký MPC. Đa chữ ký yêu cầu nhiều khóa cùng xác nhận một thao tác; MPC (tính toán đa bên) chia quyền kiểm soát khóa riêng tư cho nhiều bên, giảm rủi ro điểm lỗi đơn lẻ.
Chú ý rủi ro: Bất kỳ ai có được khóa riêng tư hoặc cụm từ ghi nhớ của bạn đều có thể kiểm soát tài sản. Luôn sao lưu ngoại tuyến, lưu ở nhiều nơi và cảnh giác với các yêu cầu ký giả mạo.
Rủi ro chủ yếu gồm hai nhóm: yếu tố con người và chi tiết triển khai. Rủi ro con người là làm lộ khóa riêng tư hoặc ký thông điệp một cách mù quáng; rủi ro kỹ thuật là sinh số ngẫu nhiên kém chất lượng khi ký hoặc thiết bị bị mã độc chiếm quyền kiểm soát.
Hiểu lầm 1: Chụp ảnh cụm từ ghi nhớ bằng điện thoại là an toàn. Điện thoại có thể đồng bộ hoặc nhiễm mã độc—dẫn đến lộ khóa riêng tư.
Hiểu lầm 2: Nhấn “xác nhận” mà không kiểm tra nội dung ký. Một số trang độc hại đánh lừa người dùng ký các ủy quyền hoặc chuyển tài sản không mong muốn.
Về mặt triển khai, chữ ký ECDSA phụ thuộc vào chất lượng số ngẫu nhiên—giá trị lặp lại hoặc yếu có thể làm lộ khóa riêng tư. Mã hóa lượng tử thường được nhắc tới: đến năm 2024, nó chưa phải mối đe dọa tức thời với các thuật toán ECC trên blockchain, nhưng các nhà mật mã và tổ chức tiêu chuẩn đang phát triển giải pháp hậu lượng tử để giảm thiểu rủi ro tương lai.
Mã hóa khóa công khai dựa trên việc chia sẻ khóa công khai để xác minh/mã hóa và giữ bí mật khóa riêng tư để ký/giải mã—là nền tảng cho danh tính và giao dịch tài sản trong Web3. Hiểu cách các khóa liên kết, cách xác thực chữ ký và các thuật toán phổ biến sẽ giúp bạn tương tác an toàn hơn với ví và nền tảng như Gate khi nạp, rút hoặc sử dụng dApp. Người mới cần ưu tiên sao lưu ngoại tuyến khóa riêng tư/cụm từ ghi nhớ, xác minh kỹ nội dung ký, sử dụng ví phần cứng hoặc giải pháp đa chữ ký/MPC—và luôn cập nhật các tiến bộ về mật mã hậu lượng tử, quản lý khóa an toàn cho bảo mật lâu dài.
Không—khóa công khai không thể giải mã dữ liệu. Trong mã hóa khóa công khai, dữ liệu được mã hóa bằng khóa công khai chỉ có thể giải mã bằng khóa riêng tư tương ứng. Có thể hình dung như một ổ khóa mở (khóa công khai) mà ai cũng có thể khóa đồ vật lại, nhưng chỉ chìa khóa vật lý phù hợp (khóa riêng tư) mới mở được. Tính chất một chiều này là nền tảng bảo mật của mã hóa khóa công khai.
Mã hóa đối xứng dùng cùng một bí mật cho cả mã hóa và giải mã—nhanh nhưng khó phân phối an toàn. Mã hóa bất đối xứng dùng cặp khóa công khai/riêng tư: khóa công khai để mã hóa, chỉ khóa riêng tư mới giải mã—bảo mật mạnh hơn nhưng tính toán phức tạp hơn. Thực tế thường kết hợp cả hai: mã hóa bất đối xứng phân phối khóa đối xứng an toàn, mã hóa đối xứng xử lý truyền dữ liệu lớn hiệu quả.
PEM là định dạng tệp tiêu chuẩn—cả khóa công khai và khóa riêng tư đều có thể lưu dưới định dạng PEM. Để xác định loại khóa, hãy kiểm tra nội dung tệp: “BEGIN PUBLIC KEY” là khóa công khai; “BEGIN PRIVATE KEY” là khóa riêng tư. PEM dùng mã hóa Base64 để lưu trữ và truyền tải dưới dạng văn bản thuận tiện.
Bởi vì mã hóa khóa công khai là một chiều—dữ liệu được mã hóa bằng khóa công khai chỉ giải mã được bằng khóa riêng tư tương ứng. Chia sẻ khóa công khai cho phép bất kỳ ai gửi thông điệp mã hóa cho bạn; chỉ bạn đọc được vì bạn giữ khóa riêng tư. Nếu khóa riêng tư bị lộ, kẻ tấn công có thể giải mã toàn bộ dữ liệu mã hóa bằng khóa công khai đó—mất an toàn hoàn toàn.
Mã hóa khóa công khai được ứng dụng rộng rãi trong: xác thực chứng chỉ SSL trên website HTTPS, chữ ký số xác minh danh tính, gửi email mã hóa, địa chỉ ví blockchain và quản lý khóa riêng tư an toàn. Ví dụ, khi truy cập website ngân hàng, trình duyệt sẽ dùng khóa công khai máy chủ để xác thực danh tính; khi rút tiền điện tử khỏi Gate, ví của bạn sẽ ký giao dịch bằng khóa riêng tư để xác minh tính xác thực.


