Chữ ký đớch thực nờn nhận được từ biến đổi của thụng điệp trong khụng gian thụng điệp là tập thưa trong miền giỏ trị của hàm chữ ký Vớ dụ, yờu

Một phần của tài liệu Một số nghiên cứu về hàm băm và giao thức mật mã (Trang 143 - 152)

gian thụng đip là tp thưa trong min giỏ tr ca hàm ch ký. Vớ dụ, yờu cầu độ dư, hay một sự tớnh trước nào khỏc, trong dữ liệu được đem ký, cú thể làm trở ngại cỏc tấn cụng mà kẻ thự địch cố gắng giả chữ ký mới bằng cỏch kết hợp cỏc chữ ký đớch thực nhận được từ trước. Với thủ tục STS, hàm băm được chọn khi băm cỏc lũy thừa cần sinh ra kết quả nhỏ hơn kớch thước tối đa của dữ liệu vào cho quỏ trỡnh ký, như vậy sẽ cho phộp thờm độ dưđược thờm vào kết quả băm trước khi ký.

Thủ tục trạm-tới -trạm được đề xuất thỏa món cỏc nguyờn tắc trờn, đồng thời những tớnh chất mong đợi được nờu ở mục 4 (độ an toàn chuyển tiếp hoàn thiện, xỏc thực trực tiếp, khụng đũi hỏi tem thời gian). Tớnh tương thớch của nú với cỏc thủ tục xỏc thực ISO đang nổi lờn, và khả năng của nú đảm bảo việc thiết lập khúa trong khuụn khổ, thờm vào tớnh hấp dẫn của nú. Hơn nữa, thủ tục trạm-tới trạm sử dụng số ớt nhất cỏc thụng điệp cần thiết cho việc xỏc thực hỏi-đỏp hai phớa dựa vào số ngẫu nhiờn (bằng 3), và chỉ yờu cầu một lần sinh chữ ký, một lần kiểm tra chữ ký, hai phộp mó húa đối với từng bờn (cựng với việc kiểm tra chữ ký thờm nếu chứng thực được sử dụng trờn cơ sở dựa vào vận hành để kết nối nhận diện của người sử dụng và khúa cụng khai).

Lược đồ chữ ký thớch hợp cú thểđược sử dụng trong thủ tục STS, bao gồm Thuật toỏn chữ ký số (Digital Signature Algorithm) được đề xuất gần đõy bởi NIST [10]. Với lý do tớnh hiệu quả thực tế, lược đồ chữ ký thay thế hiển nhiờn là RSA [26]. Tương tự, thuật toỏn mó dữ liệu đối xứng thớch hợp bất kỳ cú thể được sử dụng. Trong một sốứng dụng cú thể cần phải trỏnh việc sử dụng thuật toỏn mó. Một phương phỏp được xem xột để trỏnh việc sử dụng thuật toỏn mó húa EK như sau: thay chữ ký được mó húa bởi chữ ký cộng với mó xỏc thực thụng điệp (message authentication code-MAC) trờn chữ ký; cú nghĩa là thay EK(s), với s=sB{αy, αx} (như ở trong mục 5.1), bởi (s, MK(s)), với MK là MAC cú khúa K. Phớa bờn nhận cần phải kiểm tra cả chữ ký và MAC trờn chữ ký. Trong khi cho phộp trỏnh được yờu cầu cần cú khả năng mó/dịch (cả hai thủ tục Kerberos và X.509 đều đũi hỏi), nhược điểm của phương ỏn này là cần truyền thờm dữ liệu.

Lời cảm ơn

Cỏc tỏc giả xin cảm ơn tới tập thể đồng nghiệp vỡ sự hỗ trợ và cỏc ý tưởng liờn quan đến cỏc thủ tục được xem xột, và trong cỏc thảo luận đặc biệt với Carlise Adams và Warwick Ford.

Tài liệu tham khảo

1. Information Technology- Security Techniques. Entity Authentication Mechanisms- Part 3: Entity Authentication Using a Public- Key Algorithm

(CD 9798-3), Nov. 1991 (ISO/IEC JTCI/SC27 Commitee Draft #4).

2. Bauspiess, F. and Knobloch, H.-J. 1990. How to keep authenticity alive in a computer network. Advance in Cryptology-Eurocrypt 89, (J.J. Quisquater and J. Vandewalle, eds.) Lecture Notes in Computer Science 434:38-46, Berlin/New York: Springer Verlag.

3. Bellovin, S.M. and Merritt, M.1990. Limitations of the Kerberos authentication system. ACM Computer Communication Review 20 (5): 175-183.

4. Bengio, S., Brassard, G., Desmedt, Y.G., Coutier, C., Quisquater, J.-J. 1991,

5. Bird, R., Gopal, I., Herzberg, A., Janson, P., Kutten, S., Molva, R., and Yung, M. Forthcoming. Systematic design of two-party authentication protocols.

Advances in Cryptology-Crypto’91, Berlin/New York: Springer-Verlag.

6. Brassard, G. 1988. Modern Cryptology, Lecture Notes in Computer Science 325. Berlin/New York: Springer- Verlag.

7. Burrows, M., Abadi, M., and Needham, R. 1990. A logic of authentication.

ACM Transactions on Computer Systems 8 (1):18-36.

8. Denning, D.E. and Sacco, G.M. 1981. Timestamps in key distribution protocols. Comm. ACM 24 (8): 533-536.

9. Diffie, W. and Hellman, M.E. 1976. New directions in cryptography. IEEE Trans. Info. Theory IT-22 (6):644-654.

10. (proposed U.S. FIPS) Digital Signature Standard (DSS), announced in Federal Register, vol 56, no. 169 (Aug. 30, 1991), 42980-42982.

11. ElGamal, T. 1988. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Info. Theory IT-31 (4): 469-472.

12. Fiat, A. and Shamir, A. 1987. How to prove yourself: pravtice solutions to identification and signature problems. Advances in Cryptology-Crypto 86 (A. Odlyzko, ec.), Lecture Notes in Computer Science 263: 194-196, Berlin/New York: Springer-Verlag.

13. Gaarder, K. and Snekkenes, E. 1991. Applying a formal analysis technique to CCITT X.509 strong two-way authentication protocol. J. Cryptology 3 (2):81- 98.

14. Guillou, L.C.and Quisquater, J.-J. 1988. A practical zero-knowledge protocol fitted to security microprocessing minimizing both transmission and memory.

Advances in Cryptology- Eurocrypt’88, (C.G. Gỹnther, (ed.), Lecture Notes in Computer Science 330: 123-128, Berlin/New York: Springer-Verlag.

15. Gỹnther, C.G. 1990. An identity-based key-exchange protocol. Advances in Cryptology-Eurocrypt 89, (J.-J. Quisquater and J. Vandewalle, eds.), Lecture Notes in Computer Science 434:29-37, Berlin/New York: Springer-Verlag. 16. Haber, S. and Stornetta, W.S. 1991. How to time-stamp a digital document. J.

Cryptology 3 (2):99-111.

17. I’Anson, C. and Michell, C. 1990. Security defects in CCITT Recommendation X.509- The Directory Authentication Framework. Computer Communication Review 20 (2):30-34.

18. Kohl, J. and Neuman, B.C. 1991. The Kerberos network authentication service. MIT Priject Athena Version 5.

19. Mitchell, C. 1989. Limitations of challenge-response entity authentication.

Electronic Letters 25 (17): 195-196.

20. Moore, J.H. 1988. Protocol failures in cryptosystems. Proc. of the IEEE 76 (5):594-602. (adsbygoogle = window.adsbygoogle || []).push({});

21. O’Higgins, B., Diffie, W., Strawczynski, L. and de Hoog, R. 1987. Encryption and ISDN- A Natural fit. In Proc. 1987 International Switching Symposium, Pheonix Arizona, pp. A1141-7.

22. Okamoto, E. and Tanaka, K. 1989. Key distribution system based on identification information. IEEE J. Selected Areas in Comm. 7 (4): 481-485. 23. Odlyzko, A.M. 1985. Discrete logarithm in finite fields and their cryptographic

significance. Advances in Cryptology-Eurocrypt 84, (T. Beth, N. Cot and I. Ingemarsson, eds.), Lecture Notes in Computer Science 209:224-314, Berlin/New York: Springer-Verlag.

24. LaMacchia, B.A. and Odlyzko, A.M. 1991. Computation of discrete logarithms in prime fields. Designs, Codes and Cryptography I (1): 47-62.

25. Pohlig, S.C. and Hellman, M. 1978.An improved algorithm for computing logarithms over GF(p) and its cryptographic significance. IEEE Transactions on Information Theory IT-24: 106-110.

26. Rivest, R.L. Shamir, A. and Adlemman, L. 1978. A method for obtaining digital signatures and public-key cryptosystems. Comm. ACM 21: 120-126. 27. Rivest, R.L. and Shamir, A. 1984. How to expose an eavesdropper. Comm.

ACM 27 (4): 393-395.

28. Schnorr, C.P. 1990, 1991. Efficient signature generation by smart cards, J. Cryptology 4 (3): 161-174; see also: Efficient identification and signature for smart cards. Advances in Cryptology-Crypto 89, (G. Brassard, ed.), Lecture Notes in Computer Science 435:239-251, Berlin/New York: Springer-Verlag. 29. Shamir, A. 1985. Identity-based cryptosystems and signature schemes,

Advances in Cryptology-Crypto 84, (G.R. Blakley and D. Chaum, eds.),

Lecture Notes in Computer Science 196: 47-53, Berlin/New York: Springer- Verlag.

30. CCITT Blue Book Recommendation X.509. The Directory-Authentication Framework. 1988. Geneva. March 1988; amended by resolution of Defect 9594/016 (1Q 1991). Also ISO 9594-8.

Cập nhật thụng tin về hàm băm SHA-1

Trong những ngày cuối thỏng 2 năm 2005, cộng đồng mật mó đó xụn xao vỡ thụng tin phỏ được SHS-1 bởi 3 người Trung Quốc. Chỳng tụi xin giới thiệu về thụng bỏo này và ý kiến bỡnh luận của Bruce Schneier, cũng như giới thiệu 2 bài bỏo về thành tựu mới đối với việc tấn cụng hàm băm trong thời gian gần đõy. Hiện chỳng tụi đang theo dừi bài bỏo đầy đủ về vấn đề nay.

---

Mó thỏm SHA-1

Bruce Schneier

Ngày thứ 3, tụi đó đưa lờn trang web (www.schneier.com/blog/archives/2005/02/

sha1_broken.html) thụng tin về một kết quả mó thỏm mới

(theory.csail.mit.edu/~yiqun/shanote.pdf), đõy là tấn cụng đầu tiờn nhanh hơn tấn cụng vột cạn chống lại SHA-1. Tụi đó viết về SHA, và sự cận thiết phải thay nú từ thỏng 9 năm 2004 (www.schneier.com/essay/074-html). Trừ những chi tiết của tấn cụng mới, mọi cỏi tụi đó núi vẫn đỳng cả. Tụi sẽ trớch dẫn từ bài bỏo này, cú thờm tư liệu ở những nơi thớch hợp:

Cỏc hàm băm một chiều là cỏc kiến thiết mật mó được sử dụng trong nhiều ứng dụng. Chỳng được sử dụng cựng với cỏc thuật toỏn khoỏ cụng khai cho cả mó mật và chữ ký số. Chỳng được sử dụng trong kiểm tra tớnh toàn vẹn. Chỳng được sử

dụng trong xỏc thực. Chỳng cú nhiều kiểu loại ứng dụng trong rất nhiều giao thức khỏc nhau. Nhiều hơn nhiều so với cỏc thuật toỏn mật mó, cỏc hàm băm một chiều là con ngựa thồ của mật mó hiện đại.

Vào năm 1990, Ron Rivest đó sỏng tạo ra hàm băm MD4. Vào năm 1992, ụng đó cải tiến MD4 và phỏt triển một hàm băm khỏc: MD5. Vào năm 1993, NSA đó cụng bố một hàm băm rất giống với MD5, nú được gọi là SHA. Sau đú, vào năm 1995, khi trớch dẫn điểm yếu mới được phỏt hiện mà nú chối từ chau chuốt lại, NSA đó làm những thay đổi đối với SHA. Thuật toỏn mới được gọi là SHA-1. Ngày nay, hàm băm thụng dụng nhất là SHA-1, cựng với MD5 hóy cũn được sử

dụng trong cỏc ứng dụng cũ.

Cỏc hàm băm một chiều được giả thiết là cú 2 tớnh chất. Thứ nhất, chỳng là một chiều. Điều này cú nghĩa là dễ lấy một văn bản và tớnh giỏ trị băm, nhưng khụng thể lấy giỏ trị băm rồi tạo lại văn bản xuất phỏt (tụi hiểu “khụng thể” cú nghĩa là “khụng thể làm trong một lượng thời gian hợp lý”). Thứ hai, chỳng là khụng va chạm. Điều đú cú nghĩa là khụng tỡm được 2 văn bản mà khi băm cho cựng một giỏ trị. í nghĩa mật mó đằng sau 2 tớnh chất này là tinh tế, tụi xin mời cỏc bạn

đọc tũ mũ hóy tỡm hiểu thờm trong cuốn sỏch của tụi “Applied Cryptography” (www.schneier.com/book-applied.html).

Phỏ một hàm băm cú nghĩa là chỉ ra hoặc một trong 2 tớnh chất này, hoặc cả 2 tớnh chất là khụng đỳng.

Đầu tuần này, 3 nhà mật mó học người Trung Quốc đó chỉ ra rằng SHA-1 khụng phải là khụng va chạm. Cú nghĩa là, họđó phỏt triển được một thuật toỏn để tỡm những va chạm nhanh hơn so với vột cạn.

SHA-1 sinh ra giỏ trị băm 160-bit. Cú nghĩa là, mỗi văn bản được băm thành một số

160-bit. Giả thiết rằng cú vụ số cỏc văn bản mà được băm thành mỗi giỏ trị cú thể, cho nờn cú vụ số cỏc va chạm cú thể. Nhưng bởi vỡ số cỏc giỏ trị băm cú thể là rất lớn, nờn khả năng tỡm thấy một va chạm một cỏch tỡnh cờ là nhỏ khụng đỏng kể (một trong 280, nếu muốn chớnh xỏc). Nếu bạn băm 280 văn bản ngẫu nhiờn, bạn sẽ tỡm được một cặp mà

được băm tàhnh cựng một giỏ trị. Đú là cỏch “vột cạn” để tỡm cỏc va chạm, và nú chỉ (adsbygoogle = window.adsbygoogle || []).push({});

phụ thuộc vào độ dài của giỏ trị băm. “Phỏ” hàm băm cú nghĩa là cú thể tỡm cỏc va chạm nhanh hơn như thế. Đú chớnh là cỏi mà những người Trung Quốc đó làm.

Họ cú thể tỡm cỏc va chạm của SHA-1 trong 269 lần tớnh toỏn, khoảng 2000 lần nhanh hơn tấn cụng vột cạn. Thực ra, cỏi đú cũn xa so với tớnh khả thi của cụng nghệ hiện tại. Hai tớnh toỏn lớn so sỏnh được minh hoạđiểm này.

Vào năm 1999, một nhúm cỏc nhà mật mó học xõy dựng một mỏy phỏ DES (www.eff.org/Privacy/Crypto/Crypto_misc/DESCracker/). Nú cú thể thực hiện 256 phộp mó DES trong vào 56 giờ. Để thiết kế mỏy nài tốn 250,000 USD, mặc dự để nhõn bản nú chỉ tốn khoảng 50-70 nghỡn USD. Ngoại suy rằng mỏy này tuõn theo luật Moore, thỡ ngày nay một mỏy tương tự cú thể xõy dựng để thực hiện 260 phộp mó trong 56 giờ, và 269 phộp mó trong 3 năm 3 thỏng. Hoặc là, một mỏy giỏ 25 –> 38 triệu USD cú thể tớnh 269 phộp mó trong 56 giờ.

Về phớa phần mềm, so sỏnh chớnh là 264 phộp tỡm khoỏ đó được làm bởi distributed.net

và đó kết thỳc vào năm 2002 (stats.distributed.net). Một bài bỏo

(www.windowsitpro.com/Article/ArticleID/26857/26857.html) đó đưa thụng tin sau: “Trong một cuộc thi, cú 331,252 người tham gia bằng cỏch cho phộp sử dụng cỏc nhịp vi xử lý khụng dựng đến ở mỏy tớnh của họ vào việc khụi phục khoỏ. Sau 1,757 ngày (4.81 năm), những người tham gia ở Nhật đó tỡm được khoỏ thắng lợi.” Luật Moore cú nghĩa là ngày nay, tớnh toỏn này chỉ chiếm ẳ thời gian đú, hoặc là chỉ yờu cầu ẳ số mỏy tớnh, cho nờn ngày nay, 269 lần tớnh sẽ chiếm 8 lần thời gian lõu hơn, hoặc đũi hỏi 8 lần nhiều mỏy tớnh hơn.

Tầm quan trọng của cỏc kết quả này phụ thuộc vào bạn là ai. Nếu bạn là nhà mật mó học, đú là một cụng việc lớn. Trong khi chưa cú một cuộc cỏch mạng, cỏc kết quả này là cỏc tiến bộ nối tiếp trong lĩnh vực. Cỏc kỹ thuật được mụ tả bởi cỏc nhà nghiờn cứu là dường như cú cỏc tỏc dụng khỏc, như là một kết quả, chỳng ta sẽ cú thể thiết kế cỏc hệ thống mật mó tốt hơn. Đú là cỏch mà khoa học mật mó phỏt triển: chỳng ta học cỏch thiết kế cỏc thuật toỏn mới bằng cỏch phỏ cỏc thuật toỏn khỏc. Thờm vào đú, cỏc thuật toỏn từ NSA được xem như một dạng cụng nghệ xa lạ: chỳng đến từ một bộ tộc siờu đẳng mà khụng cú giải thớch. Mỗi thành cụng mó thỏm chống lại thuật toỏn của NSA là một điểm dữ kiện thỳ vị trong cõu

Đối với một người sử dụng Internet trung bỡnh, cỏc thụng tin này khụng gõy ra một nỗi hoảng sợ. Khụng ai cú thể phỏ cỏc chữ ký số hoặc đọc cỏc văn bản đó được mó trong một thời gian gần. Thế giới điện tử khụng ớt an toàn hơn sau những cụng bố này so với nú trước đõy.

Nhưng cú một thành ngữ cũ trong NSA: “Cỏc tấn cụng luụn trở nờn tốt hơn; chỳng khụng bao giờ tồi đi.” Chớnh tấn cụng của tuần này được xõy dựng trờn những bài bỏo mụ tả cỏc tấn cụng chống lại cỏc phiờn bản được đơn giản của SHA-1, đú là SHA-0, MD4 và MD5, cỏc nhà nghiờn cứu khỏc sẽ xõy dựng tiếp dựa trờn kết quả này. Tấn cụng chống lại SHA-1 sẽđược tiếp tục hoàn thiện, do những người khỏc đọc nú và phỏt triển cỏc mẹo nhanh hơn, làm cỏc tối ưu hoỏ, vv... Và luật Moore sẽ tiếp tục đỳng về phớa trước, làm cho tấn cụng đang tồn tại nhanh hơn và chấp nhận được.

Jon Callas (là CTO của PGP), đó núi núi như: “ Đó đến lỳc phải đi, nhưng chưa phải chạy, đến lối thoỏt hiểm. Bạn chưa nhỡn thấy khúi, nhưng cũi bỏo chỏy đó kờu.” Về cơ

bản, đú là những gỡ tụi đó núi vào thỏng 8 năm 2004.

Đó đến lỳc chỳng ta phải trỏnh khỏi SHA-1.

Thật may mắn, cú những cỏi thay thế. NIST đó cú cỏc chuẩn cho cỏc hàm băm

dài hơn và khú phỏ hơn: SHA-224, SHA-256, SHA-384 và SHA-512

(csrc.nist.gov/CryptoToolkit/tkhash.html). Chỳng là cỏc chuẩn của chớnh phủ, và

đó sẵn sàng để sử dụng. Đõy là một cỏi để lấp chỗ trống tốt, nhưng tụi muốn thấy nhiều hơn.

Tụi muốn nhỡn thấy NIST đứng ra bắt nhịp một cuộc thi trờn toàn thế giới cho một hàm băm mới, giống như họ đó làm cho thuật toỏn mó mới, AES, thay cho DES. NIST nờn đưa ra lời kờu gọi cho cỏc thuật toỏn, tổ chức cỏc vũng đỏnh giỏ, khi đú cộng đồng mật mó phõn tớch cỏc đề xuất khỏc nhau với mục đớch thiết lập một thuật toỏn mới.

Phần lớn cỏc hàm băm mà chỳng ta cú, và tất cả những cỏi được sử dụng rộng rói, là dựa vào cỏc nguyờn tắc chung của MD4. Rừ ràng là chỳng ta đó học được khỏ nhiều về cỏc hàm băm trong mười năm gần đõy, và chỳng tụi nghĩ chỳng ta cú thể bắt đầu ỏp dụng hiểu biết này để sỏng tạo ra một cỏi gỡ đú an toàn hơn.

Cỏc hàm băm là thành tố mật mó được hiểu biết ớt nhất, cỏc kỹ thuật băm được phỏt triển ớt hơn so với cỏc kỹ thuật mó hoỏ. Thường xuyờn cú những kết quả bất ngờ trong băm. Tụi cú một bài bỏo (eprint.iacr.org/2004/304), viết cựng với John Kelsey, nú mụ tả

thuật toỏn để tỡm tiền ảnh thứ hai cho SSHA-1, kỹ thuật này cú thể tổng quỏt hoỏ cho

Một phần của tài liệu Một số nghiên cứu về hàm băm và giao thức mật mã (Trang 143 - 152)