Khác biệt giữa bản sửa đổi của “Khóa (mật mã)”

Nội dung được xóa Nội dung được thêm vào
Sanga (thảo luận | đóng góp)
Sanga (thảo luận | đóng góp)
Dòng 15:
Đối với hệ thống mật mã hóa sử dụng một lần ([[one-time pad]]) thì khóa có độ dài ít nhất bằng độ dài của bản rõ cần mã hóa. Đối với các hệ thống mã hóa khác thì khóa có thể nhỏ hơn văn bản khá nhiều. Tuy nhiên khóa cũng cần đủ dài để kẻ tấn công không thể thử từng khóa một.
 
Hiện nay (năm [[2006]]), đối với các thuật toán [[mật mã hóa khóa đối xứng]], khóa với độ dài 80 bít được xem là đủ an toàn. Trong thực tế, các hệ thống thường dùng mặc định khóa 128 bít.
A key length of 80 bits is generally considered the minimum for strong security with symmetric encryption algorithms. 128-bit keys are commonly used and considered very strong. See the [[key size]] article for a fuller discussion.
 
Các khóa sử dụng trong các hệ thống [[mật mã hóa khóa bất đối xứng]] thường có một cấu trúc [[toán học]] nào đó. Chẳng hạn, trong thuật toán [[RSA (mã hóa)|RSA]], khóa công cộng là tích của hai số nguyên tố lớn. Vì vậy khóa đòi hỏi có độ dài lớn hơn đáng kể so với khóa trong các hệ thống khóa đối xứng. Để đạt độ an toàn tương đương với hệ thống đối xứng dùng khóa 128 bít, các hệ thống mã hóa công cộng dựa trên bài toán phân tích thừa số và lôgarit rời rạc cần khóa có độ dài khoảng 3072 bít. [[Mật mã hóa đường cong ellip]] (ECC) có thể chỉ cần đến khóa có chiều dài nhỏ hơn nhưng các thuật toán này mới được phát triển nên các ước đoán có thể không chính xác. Gần đây hệ thống dạng này với khóa 109 bít đã bị phá vỡ bằng phương pháp [[tấn công duyệt toàn bộ]]. Theo những ước lượng chưa được kiểm chứng thì khóa của hệ thống ECC cần có độ dài gấp đôi hệ thống mật mã hóa khóa đối xứng để đạt được độ an toàn tương đương.
The keys used in [[public key cryptography]] have some mathematical structure. For example, public keys used in the [[RSA]] system are the product of two prime numbers. Thus public key systems require longer key lengths than symmetric systems for an equivalent level of security. 3072 bits is the suggested key length for systems based on [[Factorization|factoring]] and integer [[discrete logarithm]]s which aim to have security equivalent to a 128 bit symmetric cipher. [[Elliptic curve cryptography]] may allow smaller-size keys for equivalent security, but these algorithms have only been known for a relatively short time and current estimates of the difficulty of searching for their keys may not survive. Recently, a message encrypted using a 109-bit key elliptic curve algorithm was broken by brute force. The current rule of thumb is to use an ECC key twice as long as the symmetric key security level desired. Except for the random [[one-time pad]], the security of these systems has not (as of [[2004]]) been proven mathematically, so a theoretical breakthrough could make everything you've encrypted an open book. This is another reason to err on the side of choosing longer keys.
 
Ngoại trừ hệ thống mật mã một lần, an ninh của các hệ thống mật mã đều chưa được chứng minh về toán học (thời điểm năm [[2004]]). Vì vậy, không loại trừ khả năng một phát hiện đột phá nào đó có thể khiến cho các hệ thống trở nên mất hiệu quả.
 
== Lựa chọn khóa ==