Mã hóa là gì?
Mã hóa là quy trình mật mã chuyển đổi thông tin có thể đọc thành dạng không thể đọc để chỉ bên được cấp quyền có khóa phù hợp mới khôi phục được dữ liệu ban đầu.Dữ liệu đầu vào có thể đọc được gọi là bản rõ, còn dữ liệu đầu ra được bảo vệ gọi là bản mã.Giải mã đảo ngược quy trình bằng cách chuyển bản mã về bản rõ bằng khóa mật mã cần thiết.Trong tiền mã hóa, mã hóa thường được dùng để bảo vệ khóa riêng tư, tệp ví, bản sao lưu khôi phục, thông tin xác thực tài khoản, tin nhắn, kết nối API và thông tin nhạy cảm khác.Mã hóa là một phần của lĩnh vực mật mã học rộng hơn, bao gồm cả chữ ký số, hàm băm, trao đổi khóa, cam kết mật mã và bằng chứng không kiến thức.Tổng quan về mật mã học của NIST giải thích rằng mật mã học sử dụng kỹ thuật toán học để bảo vệ thông tin và liên lạc điện tử.
Mã hóa có thể bảo đảm tính bí mật nhưng không tự động chứng minh ai tạo ra dữ liệu hoặc dữ liệu có bị sửa đổi hay không.Vì vậy, hệ thống an toàn kết hợp mã hóa với xác thực, kiểm tra tính toàn vẹn, kiểm soát truy cập, sao lưu và quản lý khóa cẩn thận.Cách mã hóa hoạt động
Thuật toán mã hóa nhận bản rõ, khóa mật mã và đôi khi một giá trị bổ sung như nonce hoặc vector khởi tạo.Thuật toán xử lý các đầu vào này và tạo ra bản mã, vốn phải trông vô nghĩa với người không có khóa phù hợp.Thuật toán giải mã dùng khóa và tham số thích hợp để khôi phục bản rõ.Bảo mật của mã hóa hiện đại nên dựa vào việc giữ bí mật khóa, không phải giữ bí mật thuật toán.Thuật toán được rà soát rộng rãi thường an toàn hơn thuật toán riêng chưa được công chúng phân tích.Kẻ tấn công lấy được khóa mã hóa có thể giải mã toàn bộ dữ liệu được khóa đó bảo vệ.Vì vậy, tạo, lưu trữ, truy cập, luân chuyển, sao lưu và hủy khóa cũng quan trọng như chính thuật toán mã hóa.Khóa mã hóa là gì?
Khóa mã hóa là giá trị bí mật hoặc được kiểm soát, dùng trong thuật toán mật mã để mã hóa hoặc giải mã thông tin.Khóa an toàn cần có đủ entropy khó đoán để chống đoán khóa và tấn công vét cạn.Thông thường nên tạo khóa bằng bộ tạo số ngẫu nhiên an toàn về mật mã thay vì từ từ dễ nhớ hoặc con số có thể dự đoán.Độ dài khóa cần thiết phụ thuộc vào thuật toán và mục tiêu bảo mật đã chọn.Khóa dài hơn không thể khắc phục thuật toán yếu, cách triển khai sai, thiết bị bị lộ hoặc mật khẩu kém.Hướng dẫn quản lý khóa mật mã của NIST đề cập việc tạo, lưu trữ, thiết lập, sử dụng, bảo vệ và hủy vật liệu khóa mật mã.
Mã hóa đối xứng
Mã hóa đối xứng dùng cùng một khóa bí mật hoặc các khóa bí mật có liên hệ gần nhau để mã hóa và giải mã.Bên gửi và bên nhận đều phải nhận khóa bí mật bằng phương thức an toàn.Thuật toán đối xứng thường hiệu quả và phù hợp để bảo vệ tệp lớn, bản sao lưu ví, cơ sở dữ liệu, lưu lượng mạng và dữ liệu ứng dụng được lưu trữ.Thách thức chính là phân phối và lưu trữ bí mật chung mà không để lộ.Nếu kẻ tấn công lấy được khóa đối xứng, họ có thể giải mã thông tin được bảo vệ và có thể tạo bản mã đã sửa đổi trông đáng tin.Hệ thống an toàn thường kết hợp mã hóa đối xứng với phương thức khóa công khai để thiết lập hoặc bọc khóa đối xứng tạm thời.Tiêu chuẩn mã hóa nâng cao
Tiêu chuẩn mã hóa nâng cao, thường gọi là AES, là mật mã khối đối xứng được sử dụng rộng rãi.Tiêu chuẩn NIST FIPS 197 hiện tại quy định AES-128, AES-192 và AES-256.
Các phiên bản này dùng khóa dài 128, 192 hoặc 256 bit và xử lý dữ liệu theo khối 128 bit.AES mô tả bản thân mật mã khối, không phải một hệ thống mã hóa tệp hoàn chỉnh.Phần mềm phải dùng AES với chế độ hoạt động an toàn và quản lý khóa, nonce, thẻ xác thực cùng lỗi một cách chính xác.Hệ thống AES triển khai kém vẫn có thể làm lộ dữ liệu dù bản thân mật mã được xem là mạnh.Mã hóa có xác thực
Mã hóa có xác thực bảo vệ cả tính bí mật lẫn tính toàn vẹn.Phương pháp này cho phép bên nhận phát hiện dữ liệu mã hóa đã bị sửa đổi, hỏng hoặc làm giả hay chưa.Mã hóa có xác thực kèm dữ liệu liên kết cũng có thể bảo vệ thông tin không mã hóa như số phiên bản, mã tài khoản hoặc loại tin nhắn.AES-GCM là một cấu trúc mã hóa có xác thực được sử dụng rộng rãi.Đặc tả GCM của NIST định nghĩa Galois/Counter Mode cho mã hóa có xác thực kèm dữ liệu liên kết.
Một cấu trúc mã hóa có xác thực phổ biến khác kết hợp ChaCha20 với Poly1305.Nhà phát triển nên dùng thư viện mật mã đã được rà soát thay vì tự kết hợp thuật toán mã hóa với thuật toán xác thực thông điệp.Nonce hoặc vector khởi tạo là gì?
Nonce là giá trị được dự định chỉ sử dụng một lần với khóa và thuật toán mật mã cụ thể.Vector khởi tạo (IV) là giá trị bổ sung dùng để khởi tạo một số chế độ mã hóa.Một số hệ thống yêu cầu nonce không thể đoán trước, trong khi hệ thống khác chủ yếu yêu cầu nonce là duy nhất cho từng khóa.Dùng lại nonce trong chế độ yêu cầu tính duy nhất có thể làm lộ bản rõ, tiết lộ mối liên hệ giữa các tin nhắn hoặc cho phép kẻ tấn công giả mạo dữ liệu.Nonce thường được lưu bên cạnh bản mã vì thường không cần giữ bí mật.Nhà phát triển phải tuân theo chính xác yêu cầu nonce của thuật toán được chọn thay vì áp dụng một quy tắc chung cho mọi mật mã.Mã hóa bất đối xứng
Mã hóa bất đối xứng sử dụng khóa công khai và khóa riêng tư.Thông tin được mã hóa cho người nhận bằng khóa công khai thích hợp thường chỉ có thể được giải mã bằng khóa riêng tư tương ứng.Khóa công khai có thể chia sẻ rộng rãi, còn khóa riêng tư phải được giữ bí mật.Mã hóa bất đối xứng đơn giản hóa việc phân phối khóa vì hai bên không cần chia sẻ trước cùng một bí mật.Tuy nhiên, thao tác khóa công khai thường chậm hơn và không phù hợp để mã hóa trực tiếp tệp lớn.Hệ thống thực tế thường dùng mật mã bất đối xứng để thiết lập bí mật chung tạm thời, rồi dùng mã hóa đối xứng để bảo vệ dữ liệu thực tế.Mã hóa lai
Mã hóa lai kết hợp mật mã bất đối xứng và đối xứng.Bên gửi tạo khóa đối xứng ngẫu nhiên và dùng khóa đó để mã hóa hiệu quả tin nhắn hoặc tệp.Sau đó, khóa đối xứng được bảo vệ bằng phương thức mã hóa khóa công khai hoặc cơ chế đóng gói khóa.Bên nhận dùng khóa riêng tư để khôi phục khóa đối xứng rồi giải mã dữ liệu.Cách tiếp cận này kết hợp khả năng phân phối khóa thuận tiện của mật mã khóa công khai với tốc độ của mã hóa đối xứng.Nhắn tin mã hóa, hệ thống chia sẻ tệp, công cụ sao lưu và giao thức mạng thường dùng thiết kế lai.Mã hóa và mật mã khóa công khai trong tiền mã hóa
Hệ thống tiền mã hóa phụ thuộc nhiều vào mật mã khóa công khai, nhưng mật mã khóa công khai không phải lúc nào cũng đồng nghĩa với mã hóa.Khóa riêng tư của ví thường được dùng để tạo chữ ký số cấp quyền cho giao dịch.Khóa công khai hoặc địa chỉ tương ứng cho phép người khác xác minh chữ ký.Tài liệu khóa Ethereum giải thích rằng khóa riêng tư ký giao dịch và dữ liệu, còn thông tin công khai hỗ trợ nhận diện và xác minh.
Giao dịch đã ký thường có thể đọc được trên mạng dù người không được cấp quyền không thể tạo chữ ký hợp lệ cho người gửi.Vì vậy, người dùng nên phân biệt cấp quyền giao dịch với tính bí mật của giao dịch.Mã hóa và chữ ký số
Mã hóa chủ yếu được thiết kế để che giấu thông tin khỏi người đọc không được cấp quyền.Chữ ký số chủ yếu được thiết kế để chứng minh người nắm khóa riêng tư đã cấp quyền cho dữ liệu cụ thể.Mã hóa dùng khóa giải mã để khôi phục nội dung đã được che giấu.Việc xác minh chữ ký dùng thông tin công khai để xác nhận tính xác thực và toàn vẹn mà không làm lộ khóa riêng tư.Giao dịch tiền mã hóa thường được ký để người tham gia mạng có thể xác minh.Giao dịch thường không được mã hóa vì validator và node phải đọc chỉ dẫn giao dịch để thực thi và xác minh.Một hệ thống có thể sử dụng cả hai, chẳng hạn mã hóa bản sao lưu ví đồng thời ký giao dịch on-chain.Mã hóa và hàm băm
Có thể đảo ngược mã hóa nếu có khóa giải mã phù hợp.Hàm băm mật mã được thiết kế theo hướng một chiều.Hàm băm chuyển dữ liệu có độ dài thực tế bất kỳ thành giá trị digest có độ dài cố định.Không có khóa giải mã thông thường nào có thể khôi phục đầu vào ban đầu từ hàm băm an toàn.Blockchain dùng hàm băm cho mã định danh block, mã giao dịch, cam kết dữ liệu, tạo địa chỉ, hệ thống chứng minh và kiểm tra tính toàn vẹn.Không nên lưu mật khẩu bằng mã hóa đơn giản nếu hệ thống chỉ cần xác minh mật khẩu.Hệ thống mật khẩu thường dùng hàm băm mật khẩu hoặc hàm dẫn xuất khóa chuyên biệt, kèm salt và thông số xử lý phù hợp.Mã hóa và chuyển đổi định dạng
Chuyển đổi định dạng thay đổi cách biểu diễn dữ liệu để phần mềm lưu trữ hoặc truyền tải thuận tiện hơn.Ví dụ phổ biến gồm hệ thập lục phân, Base64 và định dạng văn bản có cấu trúc.Chuyển đổi định dạng không cần khóa bí mật và không bảo đảm tính bí mật.Thông thường, bất kỳ ai nhận ra định dạng đều có thể đảo ngược quá trình này.Khóa riêng tư viết ở dạng thập lục phân vẫn hoàn toàn bị lộ dù con người có thể thấy khó đọc.Người dùng không bao giờ nên xem bí mật ví đã chuyển đổi định dạng là bản sao lưu được mã hóa.Giao dịch blockchain có được mã hóa không?
Giao dịch trên nhiều blockchain công khai mặc định không được mã hóa.Giao dịch được ký bằng mật mã rồi phân phối cho người tham gia mạng để xác minh.Tài liệu giao dịch Ethereum mô tả giao dịch là chỉ dẫn từ tài khoản được ký bằng mật mã.
Tài liệu quyền riêng tư của Ethereum nêu rằng giao dịch ghi lên Ethereum mặc định là công khai và vĩnh viễn.
Dữ liệu giao dịch công khai có thể gồm địa chỉ người gửi và người nhận, giá trị chuyển, lệnh gọi hợp đồng thông minh, nhật ký sự kiện và thông tin ứng dụng khác.Mã hóa dữ liệu trước khi đưa lên on-chain có thể che bản rõ, nhưng bản mã, người gửi, thời điểm, kích thước và tương tác hợp đồng vẫn có thể hiển thị.Khóa bị lộ sau này có thể làm lộ dữ liệu đã mã hóa và lưu vĩnh viễn trên blockchain công khai.Tại sao blockchain công khai không thể mã hóa mọi thứ đơn giản?
Node blockchain phải đạt đồng thuận về giao dịch hợp lệ và thay đổi trạng thái.Trên mạng hợp đồng thông minh công khai thông thường, node phải có khả năng thực thi cùng chỉ dẫn hợp đồng và xác minh cùng kết quả.Nếu chỉ dẫn giao dịch và trạng thái được mã hóa bằng khóa mà validator không có, việc thực thi thông thường sẽ không thể diễn ra.Giao thức chú trọng quyền riêng tư giải quyết vấn đề này bằng cấu trúc mật mã chuyên biệt, thay vì áp dụng mã hóa tệp thông thường cho toàn bộ blockchain.Các cấu trúc này có thể bao gồm bằng chứng không kiến thức, cam kết mật mã, tính toán đa bên an toàn, hệ thống thực thi tin cậy, mật mã ngưỡng và mã hóa đồng cấu.Mỗi phương pháp có sự đánh đổi khác nhau về độ tin cậy, hiệu suất, độ phức tạp và tính sẵn có của dữ liệu.Mã hóa ví
Mã hóa ví thường có nghĩa là bảo vệ khóa riêng tư hoặc dữ liệu seed được lưu trữ bằng khóa mã hóa dẫn xuất từ mật khẩu.Tệp ví được mã hóa có thể bị sao chép hoặc đánh cắp mà không lập tức làm lộ khóa riêng tư.Người dùng phải cung cấp đúng mật khẩu trước khi ví có thể giải mã và sử dụng các khóa đó.Tài liệu ví Bitcoin lưu ý rằng tệp ví được mã hóa bảo vệ khóa riêng tư khi chúng không được sử dụng.
Tài liệu cũng giải thích mã hóa tệp không thể bảo vệ khóa sau khi mã độc lấy được mật khẩu hoặc đọc khóa đã giải mã từ bộ nhớ.Vì vậy, mã hóa ví chỉ bảo vệ trước một số hình thức đánh cắp dữ liệu, không bảo vệ hoàn toàn thiết bị bị xâm nhập.Tệp keystore được mã hóa
Tệp keystore là tệp có cấu trúc lưu khóa riêng tư đã mã hóa cùng tham số cần thiết để dẫn xuất khóa giải mã.Tệp thường chứa bản mã, salt, nonce hoặc IV, cấu hình dẫn xuất khóa, checksum hoặc giá trị xác thực và metadata nhận diện.Bản thân mật khẩu không nên được lưu trong tệp.Tiêu chuẩn keystore ERC-2335 định nghĩa định dạng JSON được mã hóa dùng cho khóa riêng tư BLS.
Các phương thức dẫn xuất khóa bằng mật khẩu được hỗ trợ gồm PBKDF2 và scrypt.Có thể sao chép keystore giữa các công cụ tương thích, nhưng để lộ cả tệp lẫn mật khẩu yếu vẫn có thể khiến khóa bị đánh cắp.Người dùng nên xác minh khả năng tương thích trước khi xóa ví gốc hoặc di chuyển khóa validator.Mật khẩu và hàm dẫn xuất khóa
Mật khẩu do con người tạo thường có entropy thấp hơn nhiều so với khóa mật mã được tạo ngẫu nhiên.Hàm dẫn xuất khóa chuyển mật khẩu và salt thành vật liệu khóa, đồng thời làm mỗi lần đoán mật khẩu trở nên tốn kém hơn.PBKDF2, scrypt và Argon2 là các phương pháp dẫn xuất dựa trên mật khẩu được dùng trong những hệ thống khác nhau.Salt ngăn các mật khẩu giống nhau tự động tạo ra khóa dẫn xuất giống nhau trên các tệp khác nhau.Thông số xử lý và yêu cầu bộ nhớ làm chậm việc đoán mật khẩu ngoại tuyến khi kẻ tấn công lấy được tệp mã hóa.Hàm dẫn xuất mạnh không thể khiến mật khẩu rất yếu trở nên an toàn tuyệt đối.Nhà phát triển ví nên chọn thông số đã được rà soát để cân bằng khả năng chống tấn công với thời gian mở khóa chấp nhận được trên thiết bị được hỗ trợ.Mật khẩu ví và cụm từ khôi phục
Mật khẩu ví và cụm từ khôi phục thường có mục đích khác nhau.Mật khẩu ví thường mở khóa tệp đã mã hóa lưu trên một thiết bị.Cụm từ khôi phục có thể tái tạo khóa nền tảng của ví trên thiết bị tương thích khác.Thay đổi hoặc quên mật khẩu ví cục bộ thường không làm thay đổi cụm từ khôi phục.Kẻ tấn công lấy được cụm từ khôi phục có thể không cần mật khẩu ví cục bộ.Do đó, người dùng phải bảo vệ cụm từ khôi phục riêng biệt với tệp ví mã hóa.Xóa ứng dụng ví đã mã hóa không xóa các bản sao cụm từ khôi phục được lưu ở nơi khác.Passphrase BIP-39 và mã hóa
Passphrase BIP-39 không đơn thuần là mật khẩu mã hóa cụm từ khôi phục được ghi lại.Đặc tả BIP-39 kết hợp câu mnemonic và passphrase tùy chọn thông qua quy trình dẫn xuất để tạo seed.
Mỗi passphrase đều tạo ra seed hợp lệ và có thể tạo một bộ địa chỉ ví khác.Nhập sai passphrase có thể mở một ví trông như trống thay vì hiển thị lỗi mật khẩu rõ ràng.Mnemonic không kèm passphrase tùy chọn có thể tạo ra ví khác.Người dùng không nên mô tả passphrase BIP-39 là mã hóa tệp thông thường vì quy trình khôi phục và cách xử lý lỗi khác nhau.Ví phần cứng và mã hóa
Ví phần cứng được thiết kế để thực hiện thao tác khóa riêng tư bên trong thiết bị chuyên dụng.Thiết bị có thể mã hóa bộ nhớ nhạy cảm và bảo vệ quyền truy cập bằng PIN hoặc phương thức xác thực khác.Lợi ích bảo mật chính là có thể ký giao dịch mà không làm lộ khóa riêng tư cho máy tính kết nối.Hướng dẫn bảo mật Ethereum khuyến nghị giữ khóa riêng tư ngoại tuyến để giảm nguy cơ bị máy tính kết nối Internet xâm nhập.
Ví phần cứng không khiến mọi giao dịch đều an toàn vì người dùng vẫn có thể phê duyệt địa chỉ, lệnh gọi hợp đồng, quyền hoặc tin nhắn độc hại.Cụm từ khôi phục cũng phải được bảo vệ vì có thể tái tạo ví mà không cần thiết bị gốc.Bản sao lưu ví được mã hóa
Bản sao lưu được mã hóa có thể bảo vệ dữ liệu ví lưu trên thiết bị lưu trữ rời, máy tính cá nhân hoặc dịch vụ lưu trữ từ xa.Bản sao lưu nên dùng mã hóa có xác thực để phát hiện hành vi sửa đổi trái phép.Mật khẩu hoặc khóa giải mã không nên được lưu cạnh tệp mã hóa dưới dạng không được bảo vệ.Người dùng nên duy trì đủ bản sao độc lập để phòng trường hợp mất thiết bị, hư hỏng vật lý hoặc lỗi lưu trữ.Bản sao lưu chưa từng được kiểm tra có thể không sử dụng được do hỏng dữ liệu, mật khẩu sai, định dạng không được hỗ trợ hoặc thiếu metadata.Việc kiểm tra nên được thực hiện mà không để lộ bí mật ví trong môi trường không đáng tin cậy hoặc kết nối Internet.Mã hóa khi truyền
Mã hóa khi truyền bảo vệ dữ liệu trong quá trình di chuyển giữa thiết bị hoặc dịch vụ.Ví crypto dùng kết nối mạng để giao tiếp với node, dịch vụ RPC, website, hệ thống ký và máy chủ ứng dụng.TLS (Transport Layer Security) thường được dùng để bảo vệ các kết nối Internet này.Tiêu chuẩn TLS 1.3 được thiết kế để bảo vệ liên lạc khỏi nghe lén, sửa đổi và giả mạo thông điệp.
TLS có thể bảo vệ liên lạc giữa ví và máy chủ, nhưng máy chủ nhận vẫn đọc được bản rõ sau khi giải mã kết nối.Vì vậy, người dùng cần phân biệt mã hóa đường truyền với mã hóa đầu cuối và mức độ tin cậy dành cho đơn vị vận hành dịch vụ.Mã hóa RPC
Giao diện gọi thủ tục từ xa cho phép ví và ứng dụng truy vấn dữ liệu blockchain cũng như gửi giao dịch.Kết nối RPC không mã hóa có thể làm lộ yêu cầu, địa chỉ, thông tin xác thực và giao dịch đã gửi cho bên quan sát mạng.Truy cập RPC từ xa nên dùng đường truyền mã hóa có xác minh chứng chỉ.Phương thức RPC quản trị nhạy cảm cũng cần xác thực, quy tắc tường lửa và quyền truy cập mạng hạn chế.TLS không ngăn nhà cung cấp RPC quan sát yêu cầu mà họ xử lý.Vận hành node do mình kiểm soát có thể giảm phụ thuộc vào nhà cung cấp bên ngoài, nhưng node vẫn cần được cấu hình và bảo mật đúng cách.Mã hóa dữ liệu lưu trữ
Mã hóa dữ liệu lưu trữ bảo vệ dữ liệu trên thiết bị, ổ đĩa, cơ sở dữ liệu, vật lưu trữ rời hoặc dịch vụ sao lưu.Mã hóa toàn bộ ổ đĩa có thể bảo vệ dữ liệu khi máy tính hoặc ổ đĩa đã tắt bị đánh cắp.Mã hóa ở cấp ứng dụng có thể bảo vệ một số tệp ví ngay cả khi nội dung khác trên ổ đĩa có thể đọc được.Mã hóa cơ sở dữ liệu có thể bảo vệ hồ sơ khách hàng, thông tin xác thực API, chính sách ký và bí mật vận hành.Mã hóa dữ liệu lưu trữ bảo vệ kém hơn sau khi thiết bị được mở khóa và ứng dụng có quyền truy cập khóa giải mã.Mã độc chạy trong phiên người dùng đang hoạt động có thể đọc dữ liệu đã giải mã.Mã hóa đầu cuối
Mã hóa đầu cuối có nghĩa dữ liệu được mã hóa cho thiết bị đầu cuối dự kiến và thông thường không thể được các dịch vụ trung gian giải mã.Máy chủ có thể chuyển tiếp hoặc lưu bản mã mà không có khóa giải mã nội dung.Ứng dụng crypto có thể dùng mã hóa đầu cuối cho tin nhắn, yêu cầu giao dịch, phối hợp khôi phục và dữ liệu tài khoản riêng tư.Bảo mật thiết bị đầu cuối vẫn rất quan trọng vì dữ liệu tồn tại ở dạng có thể đọc trước khi mã hóa và sau khi giải mã.Metadata như danh tính người gửi, người nhận, kích thước, thời gian và tần suất tin nhắn vẫn có thể hiển thị.Hệ thống không nên tuyên bố quyền riêng tư hoàn toàn chỉ vì nội dung tin nhắn được mã hóa.Mã hóa cấp ứng dụng
Mã hóa cấp ứng dụng bảo vệ dữ liệu trước khi gửi đến cơ sở dữ liệu, dịch vụ đám mây, mạng lưu trữ phi tập trung hoặc blockchain.Nhà cung cấp lưu trữ nhận bản mã thay vì bản rõ.Ứng dụng phải xác định người dùng nào được giải mã dữ liệu và cách phân phối hoặc thu hồi khóa của họ.Mã hóa một tệp dùng chung cho nhiều người dùng trở nên phức tạp hơn khi thành viên thay đổi.Thu hồi quyền truy cập trong tương lai của người dùng không xóa được bản rõ hoặc khóa cũ mà người đó đã có.Nhà phát triển nên xác định mô hình truy cập và khôi phục trước khi đưa nội dung đã mã hóa vĩnh viễn vào bộ nhớ phân tán.Dữ liệu mã hóa trên blockchain công khai
Nhà phát triển có thể đưa bản mã vào giao dịch blockchain hoặc trạng thái hợp đồng thông minh.Cách này có thể che bản rõ ngay lập tức nhưng không làm giao dịch trở nên vô hình.Người quan sát vẫn có thể thấy người gửi, người nhận, địa chỉ hợp đồng, phí giao dịch, kích thước dữ liệu, thời điểm và mối liên hệ giữa các tương tác lặp lại.Bản mã có thể vẫn tồn tại chừng nào lịch sử blockchain còn được lưu giữ.Nếu khóa giải mã bị lộ sau này hoặc thuật toán trở nên dễ bị tấn công, dữ liệu lịch sử có thể đọc được.Nhìn chung, không nên đưa dữ liệu cá nhân nhạy cảm lên on-chain vĩnh viễn chỉ vì dữ liệu đã được mã hóa.Mã hóa và hợp đồng thông minh
Hợp đồng thông minh công khai thông thường không thể giữ khóa giải mã bí mật với mọi người tham gia mạng trong khi vẫn sử dụng khóa đó khi thực thi công khai.Bytecode, đầu vào, dữ liệu lưu trữ và kết quả thực thi hợp đồng thường hiển thị hoặc có thể được node tái tạo.Lưu khóa giải mã trong dữ liệu hợp đồng không khiến khóa trở nên riêng tư.Che giấu khóa bằng cách chuyển đổi định dạng hoặc chia khóa thành nhiều giá trị đều hiển thị cũng không bảo đảm tính bí mật đáng tin cậy.Quyền riêng tư của hợp đồng thông minh cần giao thức được thiết kế riêng để bảo vệ tính toán riêng tư hoặc chứng minh kết quả mà không tiết lộ mọi đầu vào.Nhà phát triển nên giả định mọi bí mật gửi trực tiếp đến hợp đồng công khai thông thường đều có thể bị lộ.Bằng chứng không kiến thức và mã hóa
Bằng chứng không kiến thức cho phép một bên chứng minh một mệnh đề đúng mà không tiết lộ toàn bộ thông tin riêng tư cơ sở.Mã hóa che dữ liệu để bên được cấp quyền có thể giải mã sau này.Hai kỹ thuật này giải quyết những vấn đề khác nhau và có thể được dùng cùng nhau.Hệ thống giao dịch riêng tư có thể mã hóa dữ liệu cho người xem được cấp quyền, đồng thời dùng bằng chứng không kiến thức để chứng minh giao dịch ẩn tuân theo quy tắc giao thức.Bằng chứng không kiến thức không tự động che metadata mạng, địa chỉ ví, thông tin trình duyệt hoặc mọi đầu vào công khai.Ứng dụng quyền riêng tư cần phân tích toàn bộ luồng thông tin, không chỉ tập trung vào mạch chứng minh.Mã hóa đồng cấu
Mã hóa đồng cấu cho phép thực hiện một số phép tính trên dữ liệu đã mã hóa mà không cần tiết lộ bản rõ trước.Kết quả giải mã tương ứng với phép tính đã thực hiện trên thông tin gốc.Mã hóa đồng cấu hoàn toàn hướng đến hỗ trợ tính toán rộng trên bản mã.Công nghệ này có thể hỗ trợ phân tích blockchain bí mật hoặc logic hợp đồng thông minh, nhưng vẫn đòi hỏi nhiều tài nguyên tính toán cho nhiều trường hợp quy mô lớn.Cách triển khai cũng cần quản lý khóa an toàn, kiểm soát truy cập, tính toán có thể xác minh và bảo vệ khỏi rò rỉ metadata.Không nên xem mã hóa đồng cấu là phương án thay thế đơn giản cho thực thi blockchain thông thường.Mã hóa ngưỡng
Mã hóa ngưỡng phân chia quyền giải mã cho nhiều bên tham gia.Cần số lượng bên tham gia đạt ngưỡng mới có thể phối hợp giải mã dữ liệu được bảo vệ.Không bên nào cần nắm toàn bộ khả năng giải mã.Giao thức crypto có thể dùng mã hóa ngưỡng cho hệ thống đấu giá kín, tiết lộ trì hoãn, quản trị riêng tư hoặc sắp xếp giao dịch được bảo vệ.Thiết kế phải xác định cách chọn người tham gia, tạo khóa, xử lý trường hợp thành viên ngoại tuyến và xử lý phần khóa độc hại.Mã hóa ngưỡng khác ví đa chữ ký: một bên kiểm soát giải mã, còn bên kia thường kiểm soát việc cấp quyền giao dịch.Mã hóa và bảo mật đa chữ ký
Ví đa chữ ký yêu cầu nhiều phê duyệt trước khi giao dịch được cấp quyền.Mã hóa kiểm soát ai có thể đọc thông tin được bảo vệ.Ví có thể dùng cả hai cơ chế, nhưng chúng không thay thế cho nhau.Mã hóa một khóa riêng tư không tạo ra nhiều người phê duyệt giao dịch độc lập.Chính sách đa chữ ký không tự động mã hóa chi tiết giao dịch hoặc tệp sao lưu.Hệ thống lưu ký mạnh cần tách biệt việc cấp quyền, tính bí mật, sao lưu, khôi phục và trách nhiệm vận hành.Mã hóa và tính toán đa bên
Tính toán đa bên cho phép nhiều bên cùng tính kết quả mà không cần mỗi bên tiết lộ toàn bộ đầu vào riêng tư.Hệ thống lưu ký crypto có thể dùng kỹ thuật đa bên để tạo chữ ký mà không tái tạo toàn bộ khóa riêng tư trên một thiết bị.Đây không giống việc mã hóa tệp khóa riêng tư bằng mật khẩu.Giao thức đa bên có các giả định riêng về tính trung thực của người tham gia, liên lạc, sao lưu, ngưỡng và việc thiết bị bị xâm nhập.Tin nhắn mã hóa vẫn có thể được dùng để bảo vệ liên lạc giữa các bên tham gia.Quản lý khóa
Quản lý khóa bao gồm toàn bộ vòng đời của khóa mật mã.Quy trình này gồm tạo, phân phối, lưu trữ, kích hoạt, sử dụng, luân chuyển, sao lưu, khôi phục, thu hồi, lưu trữ dài hạn và hủy khóa.Thuật toán mã hóa mạnh về kỹ thuật vẫn có thể thất bại nếu khóa bị sao chép vào log, mã nguồn, ảnh chụp màn hình, yêu cầu hỗ trợ hoặc kho lưu trữ công khai.Tổ chức nên giới hạn quyền truy cập khóa ở những hệ thống và người cần sử dụng.Khóa ký và mã hóa có giá trị cao có thể cần phần cứng chuyên dụng, phân tách nhiệm vụ, nhật ký truy cập và quy trình khôi phục đã kiểm thử.Mất khóa mã hóa có thể khiến dữ liệu được mã hóa đúng cách vĩnh viễn không thể truy cập.Luân chuyển khóa
Luân chuyển khóa là thay khóa mật mã cũ bằng khóa mới.Việc này có thể hạn chế lượng dữ liệu bị lộ nếu một khóa bị xâm phạm.Hệ thống có thể mã hóa bản ghi mới bằng khóa mới nhưng vẫn duy trì quyền kiểm soát đối với khóa cũ để giải mã dữ liệu lịch sử.Mã hóa lại kho lưu trữ lớn có thể mất nhiều thời gian và cần xử lý lỗi cẩn thận.Ứng dụng blockchain cũng phải tính đến dữ liệu bất biến không thể xóa sau khi đổi khóa.Kế hoạch luân chuyển khóa cần xác định mã phiên bản, quy trình di chuyển, quy tắc khôi phục và việc ngừng sử dụng khóa cũ an toàn.Mã hóa phong bì
Mã hóa phong bì bảo vệ dữ liệu bằng khóa mã hóa dữ liệu được tạo ngẫu nhiên.Khóa mã hóa khóa riêng bảo vệ khóa mã hóa dữ liệu.Mỗi tệp hoặc bản ghi có thể dùng khóa dữ liệu riêng, trong khi khóa được bảo vệ tập trung hoặc bằng phần cứng kiểm soát quyền truy cập các khóa này.Cấu trúc này có thể đơn giản hóa việc luân chuyển vì hệ thống có thể bọc lại khóa dữ liệu mà không mã hóa lại toàn bộ dữ liệu cơ sở.Mất khóa mã hóa khóa hoặc hệ thống truy cập khóa đó có thể ảnh hưởng nhiều bản ghi được bảo vệ.Hạ tầng crypto nên áp dụng kiểm soát truy cập nghiêm ngặt và sao lưu cho mọi tầng khóa.Mã hóa và tính ngẫu nhiên
Mã hóa an toàn phụ thuộc vào tính ngẫu nhiên chất lượng cao cho khóa, nonce, salt và bí mật tạm thời.Giá trị ngẫu nhiên có thể dự đoán cho phép kẻ tấn công đoán khóa hoặc khôi phục thông tin được bảo vệ.Hàm ngẫu nhiên thông thường của ngôn ngữ lập trình có thể không phù hợp cho mục đích mật mã.Nhà phát triển nên dùng hệ điều hành hoặc thư viện mật mã đã được rà soát có chức năng tạo số ngẫu nhiên an toàn.Cần kiểm tra máy ảo, thiết bị nhúng và hệ thống vừa khởi động để bảo đảm đủ entropy.Người dùng không nên tự tạo khóa ví bằng từ ngữ, kết quả gieo xúc xắc, ngày tháng hoặc mẫu hình, trừ khi tuân theo phương pháp tạo entropy đã được rà soát kỹ.Mã hóa không bảo vệ thiết bị đầu cuối bị xâm nhập
Mã hóa bảo vệ dữ liệu khi kẻ tấn công không có khóa cần thiết và không truy cập được bản rõ.Mã độc có thể đánh cắp thông tin trước khi mã hóa hoặc sau khi giải mã.Phần mềm ghi phím có thể thu mật khẩu ví khi người dùng nhập.Mã độc clipboard có thể thay địa chỉ crypto dù tệp ví đã được mã hóa.Mã độc chụp màn hình có thể ghi lại cụm từ khôi phục khi cụm từ được hiển thị.Bảo mật thiết bị, cập nhật phần mềm, xác minh giao dịch và bảo vệ vật lý vẫn cần thiết.Mã hóa và phishing
Website phishing có thể dùng kết nối HTTPS được mã hóa hợp lệ.Biểu tượng ổ khóa cho biết kết nối được mã hóa đến tên miền hiển thị, không chứng minh website trung thực.Kẻ tấn công có thể lấy chứng chỉ cho tên miền gây nhầm lẫn rồi bảo mật việc gửi yêu cầu phê duyệt hoặc ký độc hại.Người dùng nên xác minh tên miền, yêu cầu từ ví, địa chỉ hợp đồng, mạng, tài sản, số lượng và quyền trước khi tiếp tục.Mã hóa bảo vệ kênh liên lạc nhưng không xác thực mục đích tài chính của yêu cầu.Mã hóa và tính sẵn có của dữ liệu
Dữ liệu mã hóa chỉ hữu ích khi người dùng được cấp quyền có thể lấy cả bản mã lẫn vật liệu giải mã cần thiết.Tệp lưu trữ phi tập trung có thể biến mất nếu không còn bên nào tiếp tục lưu trữ.Thiết bị phần cứng có thể hỏng khi đang giữ bản sao khóa duy nhất.Mật khẩu có thể bị quên hoặc thành viên chia sẻ khóa có thể không còn khả dụng.Thiết kế an toàn cần cân bằng tính bí mật với sao lưu bền vững và khả năng khôi phục.Tạo nhiều bản sao khóa không được bảo vệ có thể tăng tính sẵn có nhưng phá hủy tính bí mật.Mã hóa hậu lượng tử
Máy tính lượng tử có khả năng chịu lỗi quy mô lớn có thể đe dọa các thuật toán khóa công khai phổ biến dựa trên bài toán phân tích thừa số hoặc logarit rời rạc.Mật mã hậu lượng tử dùng thuật toán được thiết kế để chống lại tấn công từ cả máy tính cổ điển lẫn máy tính lượng tử.NIST phê chuẩn ba tiêu chuẩn mật mã hậu lượng tử đầu tiên vào tháng 8 năm 2024.Thông báo tiêu chuẩn hậu lượng tử của NIST gồm FIPS 203 cho thiết lập khóa ML-KEM và FIPS 204 cùng FIPS 205 cho chữ ký số.
ML-KEM là cơ chế đóng gói khóa, không phải phương thức thay thế trực tiếp cho mã hóa dữ liệu đối xứng.Hệ thống có thể dùng ML-KEM để thiết lập bí mật chung rồi mã hóa dữ liệu bằng mật mã đối xứng có xác thực.Rủi ro lượng tử đối với tiền mã hóa
Rủi ro lượng tử ảnh hưởng khác nhau đến mã hóa và chữ ký tiền mã hóa.Hệ thống chữ ký khóa công khai cuối cùng có thể cần chuyển sang phương án chống lượng tử.Mã hóa đối xứng cũng chịu ảnh hưởng của kỹ thuật tìm kiếm lượng tử, nhưng có thể tăng kích thước khóa để bảo vệ tốt hơn.AES-256 thường được xem là lựa chọn thận trọng hơn AES-128 trước khả năng cải thiện tìm kiếm lượng tử trong tương lai.Mạng crypto không thể chuyển đổi an toàn chỉ bằng cách thay đổi một ứng dụng ví, vì định dạng giao dịch, quy tắc địa chỉ, hợp đồng thông minh, node và hệ thống lưu ký có thể đều cần phối hợp.Người dùng nên theo dõi hướng dẫn nâng cấp giao thức chính thức thay vì chuyển tài sản dựa trên tuyên bố thiếu căn cứ về điện toán lượng tử.Lợi ích của mã hóa trong crypto
Mã hóa có thể bảo vệ bí mật ví khi thiết bị lưu trữ hoặc tệp sao lưu bị đánh cắp.Mã hóa có thể giảm nguy cơ lộ thông tin nhạy cảm khi truyền qua mạng không đáng tin cậy.Mã hóa có thể bảo vệ tin nhắn riêng tư, thông tin xác thực API, hồ sơ tài khoản và dữ liệu khôi phục.Mã hóa có thể hỗ trợ chia sẻ dữ liệu có kiểm soát trong ứng dụng blockchain.Mã hóa có xác thực vừa có thể phát hiện thay đổi trái phép vừa che giấu nội dung.Thiết kế lai và ngưỡng có thể phân phối quyền truy cập an toàn hơn một bí mật chung ở dạng bản rõ.Mã hóa có thể giảm rủi ro nhưng không bảo đảm an toàn tài sản hoặc thay thế việc rà soát giao dịch an toàn.Hạn chế của mã hóa
Mã hóa không ngăn người dùng được cấp quyền cố ý chia sẻ bản rõ.Mã hóa không che giấu mọi dạng metadata.Mã hóa không bảo vệ dữ liệu sau khi khóa giải mã bị đánh cắp.Mã hóa không thể khôi phục tài sản đã chuyển qua giao dịch hợp lệ nhưng độc hại.Mã hóa không thể khiến việc thực thi hợp đồng thông minh công khai trở nên bí mật nếu không có công nghệ quyền riêng tư bổ sung.Mã hóa không bảo đảm phần mềm không có lỗi triển khai.Mã hóa cũng có thể gây mất dữ liệu vĩnh viễn khi mất khóa giải mã hoặc mật khẩu duy nhất.Cách nhà phát triển nên dùng mã hóa
Nhà phát triển nên bắt đầu bằng mô hình đe dọa rõ ràng và xác định thông tin nào cần được giữ bí mật.Nên dùng thư viện mật mã được duy trì và cấu trúc mã hóa có xác thực tiêu chuẩn.Khóa phải được tạo bằng nguồn ngẫu nhiên an toàn và không bao giờ được hard-code trong mã nguồn công khai.Phải tuân thủ chính xác yêu cầu nonce và IV.Dữ liệu bảo vệ bằng mật khẩu nên dùng hàm dẫn xuất khóa có salt phù hợp cùng thông số đã được rà soát.Thông báo lỗi không nên tiết lộ từng phần dữ liệu bí mật có chính xác hay không.Nhà phát triển nên kiểm thử bản mã hỏng, mật khẩu sai, nonce dùng lại, tệp bị cắt cụt, khóa hết hạn và quá trình di chuyển bị gián đoạn.Đánh giá bảo mật cần bao quát toàn bộ vòng đời khóa, không chỉ riêng hàm mã hóa.Cách người dùng crypto dùng mã hóa an toàn
Bước đầu tiên là hiểu mật khẩu dùng để mã hóa tệp ví cục bộ, thay đổi quá trình dẫn xuất ví hay kiểm soát tài khoản trực tuyến.Bước thứ hai là dùng mật khẩu mạnh và duy nhất cho dữ liệu ví được mã hóa.Bước thứ ba là bảo vệ riêng cụm từ khôi phục vì mã hóa cục bộ có thể không bảo vệ cụm từ này.Bước thứ tư là giữ bản sao lưu an toàn của cả bản mã và mọi thông tin khôi phục cần thiết.Bước thứ năm là kiểm tra quy trình khôi phục trước khi nạp lượng tài sản crypto đáng kể.Bước thứ sáu là tránh nhập bí mật ví vào website, tin nhắn hoặc biểu mẫu hỗ trợ.Bước thứ bảy là xác minh chi tiết giao dịch trên màn hình đáng tin cậy trước khi ký.Bước thứ tám là cập nhật phần mềm ví, hệ điều hành, trình duyệt và thiết bị.Bước thứ chín là dùng kết nối mạng được mã hóa nhưng không xem HTTPS là bằng chứng website hợp pháp.Bước thứ mười là chuẩn bị phương án nếu mật khẩu, thiết bị hoặc người giữ khóa không còn khả dụng.Ví dụ mã hóa bản sao lưu ví
Giả sử Alice tạo bản sao lưu ví chứa vật liệu khóa nhạy cảm.Ví tạo salt ngẫu nhiên rồi dẫn xuất khóa mã hóa từ mật khẩu của Alice bằng hàm dẫn xuất khóa dựa trên mật khẩu.Ví tạo nonce duy nhất và mã hóa bản sao lưu bằng mã hóa có xác thực.Ví lưu bản mã, salt, nonce, tham số dẫn xuất và thẻ xác thực trong tệp có cấu trúc.Kẻ trộm chỉ lấy được tệp vẫn phải đoán mật khẩu của Alice và xác minh từng lần đoán thông qua quy trình dẫn xuất tốn kém.Mật khẩu mạnh cùng thông số xử lý phù hợp có thể khiến kiểu tấn công này khó hơn đáng kể.Alice giữ bản sao lưu mã hóa tại nhiều địa điểm an toàn và lưu mật khẩu riêng.Cô kiểm tra quy trình khôi phục trong môi trường được kiểm soát trước khi dựa vào bản sao lưu.Nếu Alice quên mật khẩu và không có phương thức khôi phục thay thế, bản sao lưu mã hóa có thể vĩnh viễn không sử dụng được.Các lỗi thường gặp khi mã hóa
Một lỗi phổ biến là cho rằng giao dịch tiền mã hóa riêng tư vì chúng sử dụng mật mã học.Lỗi khác là nhầm chữ ký số với mã hóa.Lỗi thứ ba là xem Base64, hệ thập lục phân hoặc định dạng chuyển đổi khác như mã hóa.Lỗi thứ tư là lưu mật khẩu giải mã cạnh tệp ví đã mã hóa.Lỗi thứ năm là dùng mật khẩu do con người tạo quá yếu mà không có hàm dẫn xuất khóa phù hợp.Lỗi thứ sáu là dùng lại nonce trong chế độ mã hóa yêu cầu tính duy nhất.Lỗi thứ bảy là mã hóa dữ liệu mà không có cơ chế xác thực.Lỗi thứ tám là đưa dữ liệu nhạy cảm đã mã hóa vĩnh viễn lên on-chain mà không tính đến nguy cơ lộ khóa trong tương lai.Lỗi thứ chín là cho rằng ví phần cứng được mã hóa loại bỏ rủi ro giao dịch độc hại.Lỗi thứ mười là không kiểm tra khôi phục bản sao lưu trước khi mất ví gốc.FAQ
Mã hóa trong tiền mã hóa có nghĩa là gì?
Mã hóa là chuyển dữ liệu ví, tin nhắn, bản sao lưu hoặc thông tin khác thành bản mã cần khóa được cấp quyền để giải mã.Giao dịch tiền mã hóa có được mã hóa không?
Hầu hết giao dịch blockchain công khai được ký và có thể xác minh công khai, thay vì được mã hóa.Tại sao giao dịch blockchain được ký thay vì mã hóa?
Người tham gia mạng phải đọc và xác minh chỉ dẫn giao dịch, còn chữ ký chứng minh khóa được cấp quyền đã phê duyệt giao dịch.Mã hóa khác mật mã học như thế nào?
Mã hóa là một phần của mật mã học; mật mã học còn gồm hàm băm, chữ ký, bằng chứng, cam kết và phương thức thiết lập khóa.Mã hóa khác hàm băm như thế nào?
Mã hóa có thể đảo ngược bằng khóa phù hợp, còn hàm băm an toàn được thiết kế như phép biến đổi một chiều.Mã hóa khác chuyển đổi định dạng như thế nào?
Mã hóa cần vật liệu khóa được bảo vệ, còn chuyển đổi định dạng chỉ thay đổi cách biểu diễn dữ liệu và thông thường ai cũng có thể đảo ngược.Mã hóa đối xứng là gì?
Mã hóa đối xứng dùng cùng một khóa bí mật hoặc các khóa bí mật có liên hệ gần nhau để mã hóa và giải mã dữ liệu.Mã hóa bất đối xứng là gì?
Mã hóa bất đối xứng dùng khóa công khai để mã hóa và khóa riêng tư tương ứng để giải mã.Mã hóa lai là gì?
Mã hóa lai bảo vệ dữ liệu bằng khóa đối xứng và bảo vệ khóa đó thông qua cơ chế khóa công khai.AES là gì?
AES là mật mã khối đối xứng tiêu chuẩn với khóa 128 bit, 192 bit và 256 bit.Mã hóa có xác thực là gì?
Mã hóa có xác thực che bản rõ và phát hiện việc dữ liệu được bảo vệ bị sửa đổi trái phép.Nonce mã hóa là gì?
Nonce là giá trị bổ sung phải đáp ứng yêu cầu về tính duy nhất hoặc không thể dự đoán của phương thức mã hóa được chọn.Mật khẩu ví có giống khóa riêng tư không?
Không. Mật khẩu ví có thể mở khóa tệp đã mã hóa, còn khóa riêng tư trực tiếp cấp quyền cho giao dịch của tài khoản liên quan.Mật khẩu ví có bảo vệ cụm từ khôi phục không?
Không nhất thiết, vì cụm từ khôi phục có thể tái tạo ví độc lập với tệp mã hóa cục bộ.Passphrase BIP-39 có phải mã hóa thông thường không?
Không. Passphrase làm thay đổi seed được dẫn xuất và tạo ví khác, thay vì chỉ giải mã tệp mnemonic đã lưu.Keystore được mã hóa là gì?
Keystore được mã hóa là tệp có cấu trúc chứa vật liệu khóa riêng tư đã mã hóa cùng các tham số cần thiết để dẫn xuất và xác minh khóa giải mã.Ví được mã hóa có thể bị hack không?
Có. Kẻ tấn công có thể đoán mật khẩu yếu, khai thác phần mềm ví, thu mật khẩu, đọc bộ nhớ đã giải mã hoặc lừa người dùng cấp quyền cho giao dịch độc hại.Ví phần cứng có dùng mã hóa không?
Ví phần cứng có thể mã hóa bộ nhớ nội bộ, nhưng mục đích chính là giữ thao tác khóa riêng tư tách biệt khỏi máy tính kết nối.HTTPS có khiến website crypto an toàn không?
Không. HTTPS mã hóa kết nối đến tên miền nhưng không chứng minh website hoặc yêu cầu giao dịch là trung thực.Hợp đồng thông minh có thể giữ bí mật khóa mã hóa không?
Hợp đồng thông minh công khai thông thường không thể lưu an toàn khóa bí mật mà phải được che giấu khỏi mọi người tham gia mạng.Có thể lưu dữ liệu mã hóa on-chain không?
Có, nhưng bản mã và metadata giao dịch vẫn công khai; nếu khóa bị lộ trong tương lai, bản rõ lưu vĩnh viễn có thể bị tiết lộ.Bằng chứng không kiến thức có phải mã hóa không?
Không. Bằng chứng không kiến thức chứng minh một mệnh đề đúng mà không tiết lộ mọi đầu vào riêng tư, còn mã hóa che dữ liệu có thể khôi phục.Mã hóa ngưỡng là gì?
Mã hóa ngưỡng yêu cầu số lượng bên tham gia được xác định phải phối hợp trước khi dữ liệu được bảo vệ có thể giải mã.Mã hóa có thể khôi phục tiền mã hóa bị đánh cắp không?
Không. Mã hóa không thể đảo ngược giao dịch blockchain hợp lệ hoặc khôi phục tài sản đã gửi cho kẻ tấn công.Điều gì xảy ra khi mất khóa mã hóa?
Dữ liệu được mã hóa đúng cách có thể vĩnh viễn không thể truy cập nếu không còn bản sao khóa giải mã hoặc phương thức khôi phục khả dụng.Mã hóa hậu lượng tử là gì?
Mã hóa hậu lượng tử dùng hệ thống thiết lập khóa và mã hóa được thiết kế để chống tấn công từ máy tính lượng tử trong tương lai.Mật mã ví hiện tại có chống lượng tử không?
Nhiều hệ thống chữ ký tiền mã hóa thường dùng không được thiết kế để chống lại máy tính lượng tử đủ mạnh trong tương lai.Mã hóa mạnh có bảo đảm an toàn crypto không?
Không. Bảo mật còn phụ thuộc vào thiết bị, phần mềm, quản lý khóa, sao lưu, quyền hạn, rà soát giao dịch và hành vi người dùng.Kết luận
Mã hóa chuyển thông tin có thể đọc thành bản mã mà các bên được cấp quyền có thể khôi phục bằng khóa mật mã phù hợp.Trong tiền mã hóa, mã hóa bảo vệ tệp ví, bản sao lưu khóa riêng tư, thông tin xác thực, tin nhắn, hồ sơ lưu trữ và kết nối mạng.Không nên nhầm mã hóa với chữ ký số, hàm băm hoặc chuyển đổi định dạng dữ liệu.Giao dịch blockchain công khai thường được ký và hiển thị công khai thay vì được mã hóa.Mã hóa đối xứng bảo vệ lượng dữ liệu lớn hiệu quả, còn mật mã bất đối xứng hỗ trợ thiết lập khóa và bảo vệ dữ liệu cho người nhận cụ thể.Hệ thống hiện đại thường kết hợp các phương pháp này thông qua mã hóa lai và mã hóa có xác thực.Mã hóa ví giảm rủi ro khi tệp bị đánh cắp nhưng không bảo vệ bí mật sau khi mã độc thu được mật khẩu hoặc khóa đã giải mã.Cần hiểu và bảo vệ cụm từ khôi phục, mật khẩu ví cục bộ và passphrase BIP-39 theo vai trò khác nhau của chúng.Nhà phát triển phải dùng thuật toán đã được rà soát, nguồn ngẫu nhiên an toàn, nonce duy nhất, dẫn xuất khóa mạnh, xác thực và quy trình quản lý khóa toàn diện.Người dùng phải duy trì bản sao lưu đã kiểm tra, xác minh chi tiết giao dịch, bảo vệ thiết bị và không xem HTTPS hoặc mã hóa phần cứng là bằng chứng ứng dụng đáng tin cậy.Các tiêu chuẩn hậu lượng tử đang bắt đầu cung cấp lựa chọn thiết lập khóa và chữ ký mới, nhưng quá trình chuyển đổi tiền mã hóa cần phối hợp cẩn thận giữa ví, giao thức và hạ tầng.Hiểu về mã hóa giúp người dùng crypto phân biệt tính bí mật với cấp quyền giao dịch và đưa ra quyết định tốt hơn về ví, bản sao lưu, quyền riêng tư và bảo mật tài sản dài hạn.Có thể bạn cũng thích
ZK-Rollup
ZK-Rollup-as-a-Service
zk-SNARK
HOT
Tiền mã hoá thịnh hành hiện nay đang thu hút sự chú ý đáng kể của thị trường
TOP KL
Tiền mã hoá có khối lượng giao dịch cao nhất
Mới được thêm vào
Tiền mã hoá được niêm yết gần đây có thể giao dịch

