Xây dựng giao thức trao đổi khóa an toàn dựa trên tính khó của việc giải đồng thời 2 bài toán logarit rời rạc và phân tích số/khai căn cho các hệ mật khóa đối xứng
Tóm tắt: Bài báo đề xuất xây dựng giao thức trao đổi khóa an toàn cho các hệ
mã hóa khóa đối xứng từ mức độ khó của việc giải đồng thời 2 bài toán: bài toán
logarit rời rạc trên Zp và bài toán phân tích một số nguyên lớn ra các thừa số
nguyên tố, hoặc: bài toán logarit rời rạc trên Zp và bài toán khai căn trên vành Zn.
Giao thức mới đề xuất đảm bảo các tính chất của một giao thức trao đổi khóa an
toàn, đồng thời khóa bí mật chia sẻ tạo ra được xác thực về nguồn gốc nên có thể
chống lại các kiểu tấn công khóa giả mạo, khóa bí mật chia sẻ rất hiệu quả.
- Tính : = ‖ ( ) (13) - Kiểm tra nếu = thì thực hiện tiếp, nếu ≠ thì dừng. - Tính khóa bí mật chia sẻ với A theo: = (( ) ) (14) - Tính thành phần theo: = ‖ (15) Bước 3 - Tính : = ‖ ( ) (16) - Kiểm tra nếu = thì A khẳng định đối tượng tham gia trao đổi khóa là B và B đã thiết lập được khóa bí mật chia sẻ với A, sau đó A có thể dùng khóa này để trao đổi thông tin mật với B bằng 1 thuật toán mật mã khóa đối xứng, Nếu ≠ thì khẳng định đối tượng tham gia trao đổi khóa là giả mạo và hủy khóa đã được tạo ra. - Tính : = ‖ ( ) (17) - Kiểm tra nếu = thì B khẳng định đối tượng tham gia trao đổi khóa là A và A đã thiết lập được khóa bí mật chia sẻ với B, sau đó B có thể dùng khóa này để trao đổi thông tin mật với A bằng 1 thuật toán mật mã khóa đối xứng, Nếu ≠ thì khẳng định đối tượng tham gia trao đổi khóa là giả mạo và hủy khóa đã được tạo ra. b) Tính đúng đắn của giao thức Điều cần chứng minh ở đây là: Cho p, q , p , q là các số nguyên tố thỏa mãn: |(p − 1), n = p × q , > , 1 < < , = , 1 < , < , = , = , = ( ) ( ), = ( ) ( ), 1 < < , = , 1 < < , = , = ( ) , = ‖ , = ( ) , = ‖ , = (( ) ) , = (( ) ) , = ‖ , = ( ‖ ‖ ) Nếu: = ‖ ( ) , = ‖ ( ) , = ‖ ( ) , = ‖ ( ) thì: = , = , = , = , = Chứng minh: Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 04 - 2019 13 Từ (7), (11) ta có: = (( ) ) = (( ) . ) =( ) = . (18) Từ (4), (14) ta có: = (( ) ) = (( ) . ) =( ) = . (19) Từ (18), (19) ta có: = (20) Từ (3) và (5) ta có: = ( ) = ( ) = . (21) Từ (3) và (8) ta có: = ( ) = ( ) = . (22) Từ (21), (22) ta có: = (23) Từ (6), (13) và (23) suy ra: = ‖ ( ) = ‖ = Từ (9), (10), và (23) suy ra: = ‖ ( ) = ‖ = Từ (12), (17), (18) và (23) suy ra: = ‖ ( ) = ‖ = Từ (15), (16), (18) và (23) suy ra: = ‖ ( ) = ‖ = c) Độ an toàn của giao thức Giao thức MTA 01.19 - 01 được đề xuất bảo đảm các tính chất an toàn của một giao thức trao đổi khóa: - Xác thực thực thể: ở giao thức này việc kiểm tra điều kiện = và = cho phép các đối tượng tham gia trao đổi khóa hoàn toàn có thể xác thực được danh tính của nhau. - Xác thực khóa hiện: bằng việc kiểm tra điều kiện = , A hoàn toàn có thể khẳng định B đã tạo được khóa bí mật chia sẻ với mình và B cũng có thể khẳng định được điều tương tự như thế với A khi điều kiện: = thỏa mãn. - Tính an toàn khóa đã biết: việc biết một hoặc một số khóa chia sẻ giữa A và B cũng không cho phép một đối tượng thứ 3 nào đó có thể tính được các khóa khác cũng được thiết lập bởi A và B. - Tính bí mật về phía trước: việc tính các khóa bí mật chia sẻ đã được thiết lập trước đó bởi A và B là không thể thực hiện được, dù các khóa bí mật của A và B ( , , , ) bị lộ. Các tính chất an toàn nói trên của thuật toán thực chất được đảm bảo bởi mức độ an toàn của nó trước các dạng tấn công: - Tấn công khóa bí mật chia sẻ: Công nghệ thông tin N. V. Thái, L. H. Dũng, “Xây dựng giao thức trao đổi khóa các hệ mật khóa đối xứng.” 14 Để tính được khóa , từ (11) cho thấy kẻ tấn công cần phải tính được và . Để tính cần phải giải được ( ), còn để tính từ (3) trước tiên cần phải giải được bài toán phân tích số ( ) rồi tính: = ( ) hoặc phải giải được bài toán khai căn RSAP( , ) để tìm: = ( , )( ). Sau đó phải giải tiếp bài toán logarit rời rạc DLP( , ) để tìm : = ( , )( ). Việc tính từ (14) cũng phải được thực hiện các bước tương tự như thế. Như vậy, độ an toàn của thuật toán trước dạng tấn công khóa bí mật chia sẻ luôn được đảm bảo bằng tính khó của việc giải đồng thời 2 bài toán: DLP( , )và ( ); DLP( , ) và RSAP( , ). - Tấn công giả mạo: Một kẻ giả mạo T muốn mạo danh A để tạo khóa bí mật chia sẻ với B hoặc mạo danh B để chia sẻ khóa bí mật với A thì cần phải tính được: , , , . Tuy nhiên, từ (6) cho thấy để tính được thì kẻ giả mạo cần phải giải được bài toán loagrit rời rạc: = ( , )( ) rồi tính và bài toán khai căn để tìm: = ( , )( ) hoặc bài toán phân tích số để tìm khóa bí mật rồi tính: = ( ) . Để tính từ (9) hay , từ (12) và (15) thì T cũng phải thực hiện các bước tính toán tương tự. Như vậy, để có thể giả mạo thành công A hoặc B nhằm tạo khóa bí mật chia sẻ với đối tượng còn lại thì T cần phải giải được đồng thời 2 bài toán: DLP( , ) và ( ) hoặc DLP( , ) và RSAP( , ). Nghĩa là độ an toàn trước dạng tấn công giả mạo của giao thức được đảm bảo bằng độ khó của việc giải đồng thời 2 bài toán DLP( , ) và ( ) hoặc DLP( , ) và RSAP( , ). 4. KẾT LUẬN Bài báo đề xuất xây dựng một giao thức trao đổi khóa an toàn cho các hệ mật khóa đối xứng. Qua phân tích đánh giá cho thấy các thuật toán của giao thức mới đề xuất có độ an toàn được đảm bảo bằng mức độ khó của việc giải đồng thời 2 bài toán: bài toán logarit rời rạc và bài toán phân tích một số nguyên lớn ra các thừa số nguyên tố, hoặc: bài toán logarit rời rạc và bài toán khai căn. Hoàn toàn có thể khẳng định rằng không có bất kỳ kiểu tấn công nào vào giao thức thành công được mà không phải giải được đồng thời 2 bài toán khó nêu trên, do đó giao thức trao đổi khóa an toàn MTA 01.19 - 01 mới đề xuất có thể phù hợp với các ứng dụng yêu cầu cao về độ an toàn trong thực tế. TÀI LIỆU THAM KHẢO [1]. W. Diffie & M. Hellman, “New Directions in Cryptography”, IEEE Trans. On Info. Theory, IT-22(6):644-654, 1976. [2]. T. ElGamal, “A public key cryptosystem and a signature scheme based on discrete logarithms”, IEEE Transactions on Information Theory 1985, Vol. IT-31, No. 4. pp.469–472. [3]. Mark Stamp, Richard M. Low,“Applied cryptanalysis: Breaking Ciphers in the Real World”, John Wiley & Sons, Inc., ISBN 978-0-470-1. [4]. Eddie Shahrie Ismail, Tahat N.M.F., Rokiah. R. Ahmad, “A New Digital Signature Scheme Based on Factoring and Discrete Logarithms”, Journal of Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 04 - 2019 15 Mathematics and Statistics, 04/2008; 12(3). DOI: 10.3844/jmssp.2008.222.225 Source:DOAJ. [5]. Qin Yanlin, Wu Xiaoping,“New Digital Signature Scheme Based on both ECDLP and IFP”, Computer Science and Information Technology, 2009. ICCSIT 2009. 2nd IEEE International Conference on, 8-11 Aug. 2009, E- ISBN : 978-1-4244-4520-2, pp 348 - 351. [6]. Swati Verma1, Birendra Kumar Sharma, “A New Digital Signature Scheme Based on Two Hard Problems”, International Journal of Pure and Applied Sciences and Technology, ISSN 2229 – 6107, Int. J. Pure Appl. Sci. Technol., 5(2) (2011), pp. 55-59. [7]. Sushila Vishnoi, Vishal Shrivastava, “A new Digital Signature Algorithm based on Factorization and Discrete Logarithm problem”, International Journal of Computer Trends and Technology, volume 3, Issue 4, 2012. [8]. A.N. Berezin, N.A. Moldovyan, V.A. Shcherbacov, “Cryptoschemes Based on Difficulty of Simultaneous Solving Two Different Difficult Problems”, Computer Science Journal of Moldova, vol.21, no.2(62), 2013. [9]. Lưu Hồng Dũng, Trần Trung Dũng, Tống Minh Đức, “Nghiên cứu xây dựng hệ tích hợp mật mã khóa công khai - chữ ký số”, Tạp chí Khoa học và Kỹ thuật (Học viện KTQS), số 149 (08-2012). ISSN: 1859 - 0209., 01/08/2012. [10]. Do Viet Binh, “Authenticated key exchange protocol based on two hard problems”, Tạp chí Nghiên cứu Khoa học và Công nghệ Quân sự, số 50 (08/2017), trang 147 - 152 . ISSN: 1859 - 1043. [11]. National Institute of Standards and Technology, NIST FIPS PUB 186-4. Digital Signature Standard, U.S. Department of Commerce, 2013. [12]. R. L. Rivest, A. Shamir, and L. M. Adleman, “A Method for Obtaining Digital Signatures and Public Key Cryptosystems”, Commun. of the ACM, Vol. 21, No. 2, 1978, pp. 120-126. ABSTRACT THE KEY EXCHANGE PROTOCOL BASED ON TWO HARD PROBLEMS FOR SECRET - KEY CRYPTOSYSTEMS The paper proposes to build a protocol for exchanging security keys for symmetric key encryption systems from the difficulty level of solving two problems simultaneously: Discrete Logarithm and Factorization/Root problems. The new protocol proposes to ensure the properties of a secure key exchange protocol, and the shared secret key is authenticated to the origin, so it can withstand fake key attacks, secret keys-share is works effectively. Keywords: Discrete Logarithm; Factorization; Root Problems; Key Establishment; Key Agreement Protocols; Key Exchange Protocol; Key Transport Protocols. Nhận bài ngày 04 tháng 12 năm 2018 Hoàn thiện ngày 10 tháng 3 năm 2019 Chấp nhận đăng ngày 25 tháng 3 năm 2019 Địa chỉ: 1 Viện CNTT, Viện KH và CNQS; 2 Khoa CNTT, Học viện KTQS. * Email: luuhongdung@gmail.com.
File đính kèm:
- xay_dung_giao_thuc_trao_doi_khoa_an_toan_dua_tren_tinh_kho_c.pdf