Một số tấn công lên lược đồ chữ ký số Gost R 34.10-2012 dựa trên thuật toán rút gọn cơ sở lưới LLL - Khúc Xuân Thành

Tài liệu Một số tấn công lên lược đồ chữ ký số Gost R 34.10-2012 dựa trên thuật toán rút gọn cơ sở lưới LLL - Khúc Xuân Thành: 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, 12 - 2017 95 MỘT SỐ TẤN CÔNG LÊN LƯỢC ĐỒ CHỮ KÝ SỐ GOST R 34.10-2012 DỰA TRÊN THUẬT TOÁN RÚT GỌN CƠ SỞ LƯỚI LLL Khúc Xuân Thành1*, Nguyễn Duy Anh2, Nguyễn Bùi Cương1 Tóm tắt: Trong bài báo này, chúng tôi trình bày hai tấn công khôi phục khóa ký dài hạn và khóa ký tức thời trong lược đồ chữ ký số GOST R 34.10-2012 dựa trên thuật toán rút gọn cơ sở lưới LLL. Các tấn công này được dựa trên cách tiếp cận trong các tấn công lên lược đồ chữ ký số DSA và ECDSA [1], [7]. Cụ thể, trong tấn công dựa trên [1], chúng tôi chỉ ra rằng nếu các khóa ký thỏa mãn , < / hoặc , > − / thì tấn công này có thể khôi phục lại các khóa này. Tấn công dựa trên [7], có thể khôi phục được các khóa ký nếu , − /. Các tấn công này đã được chúng tôi cài đặt thực nghiệm sử dụng phần mềm tính toán đại số Magma. Từ khóa: Mật mã, Lưới, Lược đồ chữ ký số, Thuật toán LLL, GOST R 34.10-20...

pdf10 trang | Chia sẻ: quangot475 | Lượt xem: 579 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Một số tấn công lên lược đồ chữ ký số Gost R 34.10-2012 dựa trên thuật toán rút gọn cơ sở lưới LLL - Khúc Xuân Thành, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
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, 12 - 2017 95 MỘT SỐ TẤN CÔNG LÊN LƯỢC ĐỒ CHỮ KÝ SỐ GOST R 34.10-2012 DỰA TRÊN THUẬT TOÁN RÚT GỌN CƠ SỞ LƯỚI LLL Khúc Xuân Thành1*, Nguyễn Duy Anh2, Nguyễn Bùi Cương1 Tóm tắt: Trong bài báo này, chúng tôi trình bày hai tấn công khôi phục khóa ký dài hạn và khóa ký tức thời trong lược đồ chữ ký số GOST R 34.10-2012 dựa trên thuật toán rút gọn cơ sở lưới LLL. Các tấn công này được dựa trên cách tiếp cận trong các tấn công lên lược đồ chữ ký số DSA và ECDSA [1], [7]. Cụ thể, trong tấn công dựa trên [1], chúng tôi chỉ ra rằng nếu các khóa ký thỏa mãn , < / hoặc , > − / thì tấn công này có thể khôi phục lại các khóa này. Tấn công dựa trên [7], có thể khôi phục được các khóa ký nếu , − /. Các tấn công này đã được chúng tôi cài đặt thực nghiệm sử dụng phần mềm tính toán đại số Magma. Từ khóa: Mật mã, Lưới, Lược đồ chữ ký số, Thuật toán LLL, GOST R 34.10-2012. 1. MỞ ĐẦU Khía cạnh tính toán của hình học của các số đã có một cuộc cách mạng nhờ thuật toán rút gọn cơ sở lưới do ba nhà toán học Arjen Lenstra, Hendrik Lenstra, László Lovász tìm ra năm 1982 [6] (được viết tắt là LLL). Ngay sau khi được công bố, thuật toán LLL ngay lập tức được xem như một trong những thuật toán quan trọng nhất của thế kỷ 20 bởi vì những ứng dụng của nó trong mật mã, đại số máy tính và lý thuyết số. Một trong những ứng dụng đầu tiên của thuật toán LLL trong mật mã là phá vỡ hệ mật Merkle–Hellman. Sau đó, một loạt các tấn công lên RSA [2], DSA [1], ECDSA [7] đã được phát triển dựa trên thuật toán LLL. Các nghiên cứu liên quan. Lược đồ DSA và ECDSA [5] được biết đến như phiên bản lược đồ chữ ký số của Mỹ. Gần đây, trên thế giới nổi lên một số công trình nghiên cứu tấn công lên DSA, ECDSA dựa trên thuật toán LLL như [1], [7]. Các tấn công này đem lại khả năng thành công cao và thời gian thực hiện rất ngắn khi các khóa ký của chữ ký thỏa mãn một điều kiện nào đó. Trong khi đó, GOST R 34.10-2012 [4] thì được biết đến như phiên bản lược đồ chữ ký số của Nga và hiện đang được nghiên cứu tìm hiểu tại Việt Nam thì chưa có nghiên cứu nào với các tấn công dạng này. Do đó, nhằm tránh các tấn công trên để không có các khóa ký “yếu” trong chữ ký, câu hỏi cần thiết phải được đạt ra là liệu các tấn công như vậy có thể xảy ra trên lược đồ chữ ký số GOST R 34.10-2012? Đóng góp của chúng tôi. Dựa trên các tấn công trong [1] và [7] lên lược đồ chữ ký số DSA và ECDSA, chúng tôi xây dựng hai phiên bản tấn công khôi phục khóa ký lên lược đồ chữ ký số GOST R 34.10-2012. Cụ thể, đối với lược đồ chữ ký số GOST R 34.10-2012, tấn công 1dựa trên [1] chỉ ra rằng nếu khóa ký dài hạn và khóa ký tức thời thỏa mãn || < √ (ở đây, là cấp của điểm cơ sở trong chữ ký, với ∈ [1, ],kí hiệu = nếu ≤ , ngược lại = − ) thì kẻ tấn công có thể khôi phục lại các khóa ký này. Tấn công 2 dựa trên [7] chỉ ra rằng kẻ tấn công có thể khôi phục được và khi || < √ . Hai tấn công này đã được chúng tôi thực hiện cài đặt thực nghiệm sử dụng phần mềm tính toán đại số Công nghệ thông tin K. X. Thành, N. D. Anh, N. B. Cương, “Một số tấn công lên lược đồ cơ sở lưới LLL.” 96 Magma với các tham số được lấy trong [4]. Kết quả thực nghiệm cho thấy, các tấn công này có thể khôi phục các khóa ký trong thời gian rất ngắn. Bố cục bài báo. Sau mục Mở đầu, Mục 2 trình bày một số khái niệm cơ sở của lý thuyết lưới và lược đồ chữ ký số GOST R 34.10-2012. Mục 3 trình bày ý tưởng chung cho việc xây dựng các tấn công lên lược đồ chữ ký số GOST R 34.10-2012. Hai tấn công cụ thể lên GOST R 34.10-2012 được trình bày trong Mục 4. Cuối cùng, Mục 5 đưa ra một số kết quả thực nghiệm và khuyến cáo khi sinh các khóa ký cho lược đồ chữ ký số GOST R 34.10-2012. 2. MỘT SỐ KHÁI NIỆM CƠ SỞ 2.1. Lưới Trước tiên, chúng tôi nhắc lại định nghĩa của lưới. Định nghĩa 1. ([3]) Cho 1n  , 1 2 ( , , , ) n b b b là một cơ sở của n . Lưới n chiều L với cơ sở 1 2 ( , , , ) n b b b là tập hợp gồm tất cả các tổ hợp tuyến tính của các véctơ cơ sở nàyvới hệ số nguyên. Tức là, L có thể được biểu diễn như sau: 1 2 1 2 1 , , , n n i i n i L a a a a                b b b b     (1) Các véctơ 1 2 ( , , , ) n b b b được gọi là cơ sở của lưới. Với mỗi 1 i n  , viết 1 2 b ( , , , ) i i i in b b b  , thành lập một ma trận ( ) ij X b . Định thức của lưới L trong cơ sở 1 2 ( , , , ) n b b b được định nghĩa là det detL X . Ký hiệu 1 2 * * *( , , , ) n b b b là các véctơ thu được sau khi trực giao hóa Gram-Schmidt 1 2 ( , , , ) n b b b . Định thức của lưới không phụ thuộc cách chọn cơ sở. Thuật toán LLL [6] đưa ra một cơ sở mới “tốt hơn” theo nghĩa gồm các véctơ ngắn hơn. Sau đây là một số tính chất của một cơ sở mới thu được sau khi ápdụng thuật toán LLL. Khẳng định 2. ([3]) Cho L là một lưới được căng bởi 1 2 ( , , , ) n v v v . Áp dụng thuật toán rút gọn cơ sở LLL vào lưới L ta thu được một cơ sở mới 1 2 ( , , , ) n b b b , được gọi là cở sở LLL-rút gọn, thỏa mãn hai điều kiện sau đây: 1, 2 1 2 b b b * * i j ij j     với mọi1 j i n   . 2, 1 1 1 3 4 * * * ,i i i i i      b b b với mọi 2 i n  , ở đây, b b* i j  là tích vô hướng của véctơ b i và * j b . Chứng minh. Xem [3], Trang 71. ∎ Tính chất 3. ([3])Nếu 1 2 ( , , , ) n b b b là một cơ sở LLL-rút gọn của lưới L trong n thì ta có: 1, 1 4 1 1 2b ( ) (det ) . n n L   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, 12 - 2017 97 2, 1 1 12 4 2 1 2 ( ) ( ) det . n n L         b b Chứng minh. Xem [3], Trang 59. ∎ 2.2. Lược đồ chữ ký số GOST R 34.10-2012 Lược đồ GOST R 34.10-2012 [4] được xem là chuẩn chữ ký số của Nga. Lược đồ này sử dụng một đường cong elliptic E trên p  và một điểm ( ) p P E  có cấp là một số nguyên tố (256 bít hoặc 512 bít). Lược đồ gồm ba thuật toán chính: 1, Thuật toán sinh khóa cho người ký:  Chọn a ngẫu nhiên đều trong 1 1[ , , ]q  là khóa ký dài hạn.  Tính Q aP là khóa công khai 2, Thuật toán ký của người ký trên thông điệp m :  Chọn k ngẫu nhiên đều trong 1 1[ , , ]q  là khóa ký tức thời.  Tính ( , )kP x y , lấy (mod )r x q nếu 0r  thì chọn lại k .  Tính ( )h m , ở đây h là một hàm băm ánh xạ thông điệp tới 1 1{ , , }q  .  Tính ( ( ) ) (mod )s kh m ar q  , nếu 0s  thì chọn lại k . 3, Thuật toán xác minh chữ ký ( , )r s trên thông điệp m :  Xác minh ,r s có thuộc 1 1[ , ]q  hay không.  Tính 1( ) (mod )w h m q  Tính 1 (mod )u sw q và 2 (mod )u rw q  .  Tính 1 2 ( , ) R R R x y u P u Q    Chữ ký được chấp nhận chỉ khi (mod ) R r x q . Tính đúng đắn của thuật toán. Ta có, 1 1 1 1 2 1 2 ( , ) ( ) ( ( ) ( ) ) . R R R x y u P u Q u u a P h m s arh m P kP          3. Ý TƯỞNG CHUNG CỦA TẤN CÔNG Ý tưởng chính của các tấn công lên lược đồ chữ ký số GOST R 34.10-2012 dựa trên lý thuyết lưới là đi tìm khóa a và k (với ( ), , ,h m r s q đã biết) thông qua việc giải phương trình đồng dư: ( ( ) ) (mod )s kh m ar q  . (2) Từ phương trình (2), các tấn công sử dụng hai các biến đổi chính sau: Cách 1. Nhân cả hai vế của (2) với 1r , ta có: 1 1 0( ( ) ) (mod )a k h m r sr q    . Đặt 1 1( ) (mod ), (mod )A h m r q B sr q   . Khi đó, cặp ( , )k a nghiệm của đa thức 0( , ) (mod )f x y y Ax B q    . Cách 2. Nhân cả hai vế của (2) với 1k và 1r , ta có: 1 1 1 1 0( ) ( ) (mod )ak r s k h m r q      . Công nghệ thông tin K. X. Thành, N. D. Anh, N. B. Cương, “Một số tấn công lên lược đồ cơ sở lưới LLL.” 98 Đặt 1 1(mod ), ( ) (mod )A sr q B h m r q   . Khi đó, cặp 1( , )k a là nghiệm của phương trình đồng dư 0( , ) (mod )f x y xy Ax B q    . Với bất kỳ cách biến đổi nào, ta đều phải tìm nghiệm của một phương trình đồng dư ( , )f x y trên vành modulo , và đây là một công việc khó. Tuy nhiên, ta lại có những công cụ hữu hiệu để tìm nghiệm của phương trình trên vành số nguyên. Do vậy, ta sẽ tìm cách chuyển việc tìm nghiệm trên vành modulo q về tìm nghiệm trên vành số nguyên. Bổ đề Howgrave-Graham [2] dưới đây cho ta một ý tưởng một cách chuyển như vậy. Cho , , ( , ) i j i j i j h x y h x y với ,i jh   . Khi đó, gọi “chuẩn của ( , )h x y ” là đại lượng được ký hiệu là ( , )h x y và được xác định theo công thức 2 , , ( , ) : . i j i j h x y h  Bổ đề 4. (Howgrave-Graham, [2])Cho đa thức , , ( , ) [ , ]i j i j i j h x y h x y x y   là tổng của n đơn thức. Lấy ,X Y là các số nguyên dươngvà các số nguyên 0 0 ,x y sao cho 0 0 ,x X y Y  . Khi đó, nếu 1, 0 0 0( , ) (mod )h x y q 2, ( , )h xX yY q n , thì 0 0 0( , )h x y  trên vành số nguyên. Chứng minh. Xem [2] Trg. 4-5. ∎ Bổ đề chỉ ra rằng ta cần tìm các đa thức có nghiệm chung với ( , )f x y và đa thức này có các hệ số đủ nhỏ đề chuẩn của nó cũng đủ nhỏ. Cụ thể, ta tìm các đa thức chuyển như sau: Đặt 0 x k theo biến đổi Cách 1 (hoặc 1 0 x k theo biến đổi Cách 2) và 0 y a . Cho n là một số nguyên dương nào đó (trong từng tấn công sẽ định nghĩa cụ thể). Sinh các đa thức 1( , ) ( , , ) i f x y i n  mà cũng nhận 0 0 ( , )x y là nghiệm trên vành modulo q . Sinh lưới chiềuL từ các hàng của ma trận I trong đó các hàng của I là các hệ số của đa thức 1( , ) ( , , ) i f xX yY i n  . Áp dụng thuật toán rút gọn cơ sở LLL vào lưới L ta thu được cơ sở mới 1 2 b b b( , , , ) n  . Do thuật toán LLL sử dụng các phép toán biến đổi tuyến tính nguyên nên 0 0 0 1( , ) (mod ) ( , , ) i g x y q i n   . Ngoài ra, qua thuật toán LLL ta còn thu được cận trên của 1 b . Nếu cận trên này nhỏ hơn q n thì 1 0 0 0( , )g x y  trên  . Toàn bộ cách thực hiện có thể được mô tả qua Sơ đồ 1. 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, 12 - 2017 99 0 0 0 0 0 0 1 1 1 1 2 0 0 0 0 LLL H-G b b ( , ) (mod ), , Sinh ( , ) (mod ) ( , ) ( , ) ( , ) ( , ) ( , ) ( , ) i n n n f x y q x X y Y f x y q f xX yY g xX yY g x y I I g x y f xX yY g xX yY                                             Sơ đồ 1. Cách thức chung trong thực hiện các tấn công. Tấn công 2 dựa trên [7] đã đưa ra một phương pháp tìm nghiệm của 1 0( , )g x y  trên  nếu đa thức 1 ( , )g x y có dạng 1 ( , )g x y xy Ax B   và dựa trên giả thiết biết phân tích thừa số nguyên tố của B . Tuy vậy, không phải lúc nào 1 ( , )g x y cũng có dạng như vậy. Do đó, ta cần thêm một đa thức 2 0( , )g x y  trên  để thu được hệ hai phương trình hai ẩn số. Hệ này có thể giải bằng cách tính kết thức để thu được một đa thức một biến theo hoặc. Sau đó, áp dụng các phương pháp tìm nghiệm của đa thức một biến để tìm hoặc . Đây cũng là cách thức thực hiện Tấn công 1 dựa trên [1]. 4. CÁC TẤN CÔNG LÊN GOST R 34.10-2012 4.1. Tấn công 1 Tấn công này dựa trên cách tiếp cận của Blake [1]. Từ phương trình đồng dư (2) thực hiện biến đổi theo Cách 1, ta có ( , ) (mod )f x y y Ax B q   nhận ( , )k a là nghiệm. Xét các đa thức 1 2 ( , ) , ( , )f x y q f x y qx  và 3 ( , ) ( , )f x y f x y . Dễ thấy 0 1 2 3( , ) (mod ) ( , , ) i f k a q i  . Xây dựng lưới L được căng các véctơ hàng của ma trận I , ở đó, ma trận có các hàng lần lượt hệ số của đa thức 1 2 ( , ) , ( , )f xX yX q f xX yY qXx  và 3 ( , )f xX yY Yy AXx B   . Do các hàng của ma trận I là  -độc lập tuyến tính nên lưới có số chiều bằng 3n  . Áp dụng thuật toán LLL vào lưới L ta thu được một cơ sở rút gọn của lưới, ký hiệu là 1 2 3 b b b( , , ) . 0 1 2 3 4 5 6 7 8 0 0 0 0 q C C C I qX LLL C C C B AX Y C C C                           Khi đó, ta có định thức của lưới L là 2det detL I q XY  . Đặt 0 0 1 1 2 2 , ,C C X C Y     , 3 3 ,C  4 4 C X  và 5 5 C Y  nên ta có    1 0 1 2 2 3 4 5b b, , , , ,X Y X Y       . Đặt các đa thức 1 0 1 2( , ) ,g x y x y     và 2 3 4 5 ( , )g x y x y     . Do 1 ( , )g xX yY và 2 ( , )g xX yY là các tổ hợp tuyến tính nguyên của 1 2 3( , ) ( , , ) i f xX yY i  nên các đa thức 1 2 ( , ), ( , )g x y g x y cũng nhận ( , )k a Công nghệ thông tin K. X. Thành, N. D. Anh, N. B. Cương, “Một số tấn công lên lược đồ cơ sở lưới LLL.” 100 là nghiệm trên vành modulo . Do đó, các đa thức 1 2 ( , ), ( , )g x y g x y thỏa mãn điều kiện đầu tiên của Bổ đề 4. Bây giờ, ta cần xác minh điều kiện để các đa thức 1 2 ( , ), ( , )g x y g x y thỏa mãn điều kiện hai của Bổ đề 4. Ta có, 1 1 b ( , )g xX yY và 2 2 b ( , )g xX yY . Theo Tính chất 3, 1 32 1 2b ( )q XY . Do đó, để 1 ( , )g x y thỏa mãn các điều kiện hai của Bổ đề 4, ta cần 1 322 3( )q XY q hay 6 6XY q . Tuy nhiên, đây chỉ là điều kiện cho đa thức 1 ( , )g x y . Ta cần tìm điều kiện cho đa thức 2 ( , )g x y , tức cần điều kiện để 2 3b q . Theo Tính chất 3, ta có 11 4 1 2 2 1 2b b(det )L    . Do đó, ta cần 11 4 1 2 1 2 3b(det )L q    hay 1 3 2b XY . Do vậy, nếu 6 6XY q và 1 3 2b XY thì 0 1 2( , ) , ( , ) i g k a i  trên  . Đặt 3 ( )r y là kết thức của đa thức 1 ( , )g x y và 2 ( , )g x y theo biến x . Khi đó, ta thu được 3 ( )r y là một đa thức một biến theo biến y . Sử dụng các phương pháp tìm nghiệm của đa thức một biến như phương pháp dãy Sturm hay phương pháp Newton ta có thể tìm được nghiệm y của 3 ( )r y . Nếu tồn tại 0 y sao cho 0 y P Q thì 0 a y . Mặt khác, nếu 0a  thì lấy a a ngược lại thì lấy .a a q  Từ các lập luận trên, ta có suy ra khẳng định sau đây: Khẳng định 5. Đối với lược đồ chữ ký số GOST R 34.10-2012, giả sử tồn tại ,X Y là các số nguyên dươngsao cho ,k X a Y  và 6 6XY q . Cho L là một lưới được định nghĩa bởi ma trận I như ở trên. Khi đó, nếu véctơ ngắn nhất của cơ sở LLL-rút gọn có độ dài lớn hơn hoặc bằng 3 2XY thì Tấn công 1 được mô tả dưới đây có thể tìm được khóa ký dài hạn a trong lược đồ chữ ký số. Tấn công 1 Đầu vào: Các giá trị đã biết gồm( ( ), , )h m r s . Đầu ra: Khóa ký dài hạn hoặc tấn công không thực hiện được. Bước 1. Tính 1( ) (mod )A h m r q và 1 (mod )B sr q  . Bước 2. Xây dựng lưới L được sinh từ 0 0 0 0( , , ),( , , )q qX và ( , , )B AX Y . Sử dụng thuật toán LLL, tìm cơ sở LLL-rút gọn của lưới L . Bước 3. Tính 0 0 1 1 2 2 , ,C C X C Y     , 3 3 4 4 , ,C C X   5 5 C Y  . Bước 4. Xây dựng đa thức 1 2 ( , ), ( , )g x y g x y tương ứng là véctơ đầu tiên và véctơ thứ hai của cơ sở LLL-rút gọn. Cụ thể, 1 0 1 2 ( , )g x y x y     và 2 3 4 5 ( , )g x y x y     . Bước 5. Tính 3 ( )r y là kết thức của đa thức 1 ( , )g x y và 2 ( , )g x y theo biến x . Bước 6. Tìm nghiệm của đa thức một biến 3 ( )r y . 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, 12 - 2017 101 Bước 7. Nếu tồn tại y sao cho yP Q thì trả ra đầu ra a y . Nếu 0a  thì lấy a a , ngược lại thì lấy a a q  . Trường hợp khác trả ra “Tấn công không tìm được khóa a ”. Nhận xét 6. Chọn các số nguyên dương , sao cho + < log(/6√6). Đặt = 2, = 2. Khi đó, theo Khẳng định 5, nếu ta chọn các khóa ký , thỏa mãn < , || < thì tấn công trên có thể khôi phục lại các khóa ký này. Do đó, để tránh tấn công này, ta có thể chọn > /, || > /, tương đương/ < , < − /. 4.2. Tấn công 2 Tấn công này dựa trên cách tiếp cận trong [7]. Cụ thể, trong [7] đưa ra một cách giải cho các phương trình conic có dạng ( , )r x y Dxy Ax B   , ở đây , ,D A B  . Nhờ vậy, ta có thể xây dựng tấn công chỉ cần một đa thức từ véctơ đầu tiên của cơ sở LLL-rút gọn. Cụ thể, thuật toán giải phương trình ( , )r x y như sau. Thuật toán giải phương trình ConicDxy Ax B  Đầu vào: Phương trình 0( , )r x y  và phân tích thừa số nguyên tố của B . Đầu ra: Cặp 2( , )x y   với 0( , )r x y  . Bước 1. Tính tập ( )D B gồm tất cả các ước của B . Bước 2. Với mỗi ( )x D B tính ( )y B x A D   . Bước 3. Nếu y   thì trả cặp ( , )x y . Nếu không trả ra không tìm được nghiệm. Tính đúng đắn của thuật toán: Giả sử 2( , )x y   là nghiệm của 0( , )r x y  . Khi đó, ( )x Dy A B   . Suy ra x B hay B x , ở đây    . Đơn giản hóa phương trình, ta thu được 0Dy A    . Do đó, ( ) ( )y A D B x A D      . Nếu y   thì ta có ( , )x y là nghiệm của 0( , )r x y  ∎ Từ phương trình đồng dư (2), thực hiện biến đổi theo Cách 2 ta có, ( , ) (mod )f x y xy Ax B q   nhận  1,k a là nghiệm. Xét các đa thức 1 2 ( , ) , ( , )f x y q f x y qx  và 3 ( , ) ( , )f x y f x y . Dễ thấy các đa thức này cũng nhận 1( , )k a là nghiệm trên vành modulo q . Xây dựng lưới L được căng các véctơ hàng của ma trận J , ở đó, J có các hàng lần lượt hệ số của đa thức 1 2 ( , ) , ( , )f xX yX q f xX yY qYx  và 3 ( , )f xX yY XYxy AYx B   . Do các hàng của J là  -độc lập tuyến tính nên lưới có số chiều bằng 3n  . Áp dụng thuật toán LLL vào lưới L ta thu được một cơ sở rút gọn của lưới, ký hiệu là 1 2 3 b b b( , , ) . 0 1 2 3 4 5 6 7 8 0 0 0 0 q C C C J qX LLL C C C B AX XY C C C                           Công nghệ thông tin K. X. Thành, N. D. Anh, N. B. Cương, “Một số tấn công lên lược đồ cơ sở lưới LLL.” 102 Ta có, 2 2det detL I q X Y  . Đặt 0 0 1 1 2 2 , ,C C X C XY     . Ta có  1 0 1 2b , ,X XY   . Đặt đa thức 1 0 1 2( , )g x y x xy     . Do 1( , )g xX yY là các tổ hợp tuyến tính nguyên của 1 2 3( , ), , , i f xX yY i  nên 11 0( , ) (mod )g k a q   . Do vậy, đa thức 1 ( , )g x y thỏa mãn điều kiện đầu tiên của Bổ đề 4. Bây giờ ta cần xác minh điều kiện để các đa thức 1 ( , )g x y thỏa mãn điều kiện hai của Bổ đề 4. Theo Tính chất 3, ta có 1 32 2 1 2b ( )q X Y . Do đó, để 1 ( , )g x y thỏa mãn ta cần 1 32 22 3( )q X Y q hay 2 6 6X Y q . Khi đó, ta có 1 1 3b ( , )g xX yY q  . Thật vậy, nếu 2 0  thì 1 0 1 1 ,qt qXt   với 0 1 ,t t   và 1 2 3bq q  (vô lý). Suy ra, 2 0  và 1 1 3b ( , )g xX yY q  . Theo Bổ đề 4,  11 0,g k a  trên  . Áp dụng thuật toán giải phương trình conic cho 1 ( , )g x y ta thu được a và 1k (Do = ℎ() nên việc phân tích thừa số nguyên tố của hoàn toàn có thể thực hiện được). Từ các lập luận trên, ta suy ta khẳng định sau đây. Khẳng định 7. Đối với lược đồ chữ ký sốGOST R 34.10-2012, giả sử tồn tại ,X Y là các số nguyên dương sao cho 1 ,k X a Y   và 2 6 6X Y q thì Tấn công 2 dưới đây có thể tìm được khóa ký dài hạn a trong lược đồ chữ ký. Tấn công 2 Đầu vào: Các giá trị đã biết gồm( ( ), , )h m r s . Đầu ra: Khóa ký dài hạn a hoặc tấn công không thực hiện được. Bước 1. Tính 1 (mod )A sr q và 1( ) (mod )B h m r q . Bước 2. Xây dựng lưới L được sinh từ 0 0 0 0( , , ), ( , , )q qX và ( , , )B AX XY . Sử dụng thuật toán LLL, tìm cơ sở LLL-rút gọn của lưới L . Bước 3. Tính 0 0 1 1 2 2 , ,C C X C XY     . Bước 4. Xây dựng đa thức 1 ( , )g x y từ véctơ đầu tiên của cơ sở LLL-rút gọn. Cụ thể, 1 0 1 2 ( , )g x y x xy     . Bước 4. Sử dụng thuật toán giải phương trình conic, tính tập S gồm các nghiệm ( , )x y của đa thức 1 0( , )g x y  . Bước 5. Nếu tồn tại 0 0 ( , )x y S và 0 y P Q thì trả ra 0 a y . Nếu 0a  thì lấy a a , ngược lại thì lấy a a q  . Trường hợp khác, trả ra “Tấn công không tìm được khóa a ”. Nhận xét 7. Chọn các số nguyên dương , sao cho 2 + < log(/6√6). Đặt = 2, = 2. Khi đó, theo Khẳng định 7, nếu ta chọn các khóa ký , thỏa mãn < , || < thì tấn công trên có thể khôi phục lại các khóa ký này. Do đó, để tránh tấn công này, ta có thể chọn > /, || > /, tương đương / < , < − /. 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, 12 - 2017 103 5. CÁC KẾT QUẢ THỰC NGHIỆM Chúng tôi đã cài đặt thực nghiệm các Tấn công 1 và 2 sử dụng phần mềm tính toán đại số Magma được cài đặt trên máy tính có năng lực tính toán CPU Intel Core i7-6700 3.4 Ghz, 8Gb Ram. Mã nguồn cài đặt trên Magma cho các tấn công lên GOST R 34.10-2012 được chúng tôi đạt trong[8]. Các tham số sử dụng trong lược đồ chữ ký số GOST R 34.10-2012 được lấy trong Ví dụ 7 của [4]. Cụ thể, là một số nguyên tố có kích thước 256 bít: = 57896044618658097711785492504343953926 634992332820282019728792003956564821041 Đường cong elliptic ( ) p E  được định nghĩa bởi : = + 7 + 3308876546767276905765904595650931995 942111794451039583252968842033849580414 Cấp của điểm cơ sở ≔ 5789604461865809771178549250434395392 7082934583725450622380973592137631069619 Tấn công Kích thước của (bít) Kích thước của (bít) Kích thước của (bít) Kích thước của (bít) Thời gian (giây) Tấn công 1 256 126 126 0,23 Tấn công 2 256 80 256 80 1,79 Qua các kết quả thực nghiệm, chúng tôi thấy rằng điều kiện về véctơ ngắn nhất thường luôn được thỏa mãn, đồng thời thời gian thực hiện tấn công khôi phục lại được khóa ký là rất ngắn. Do đó, để tránh các tấn công dạng này trên lược đồ GOST R 34.10-2012, chúng tôi khuyến cáo cần chọn các khóa ký tức thời và khóa ký dài hạn thỏa mãn / < , , , < − /. 6. KẾT LUẬN Trong bài báo này, chúng tôi đã trình bày hai tấn công khôi phục khóa ký lên lược đồ chữ ký số GOST R 34.10-2012. Tấn công 1 đã chỉ ra rằng nếu khóa và thỏa mãn || < /6√6 thì tấn công có thể tìm lại được các khóa này. Tấn công 2 chỉ ra có thể tìm được khóa và nếu|| < /6√6. Các thuật toán tấn công này đã được cài đặt tính toán thực hành trên phần mềm tính toán đại số Magma với các tham số trong chuẩn GOST R 34.10-2012. TÀI LIỆU THAM KHẢO [1].Ian F Blake and Theodoulos Garefalakis, “On the security of the digital signature algorithm”. Designs, Codes and Cryptography, Vol. 26, No. 1 (2002), pp. 87–96. [2]. Dan Boneh and Glenn Durfee. “Cryptanalysis of rsa with private key d less than n/sup 0.292”. IEEE transactions on Information Theory, Vol 46, No. 4 (2000), pp. 1339–1349. Công nghệ thông tin K. X. Thành, N. D. Anh, N. B. Cương, “Một số tấn công lên lược đồ cơ sở lưới LLL.” 104 [3]. Murray R Bremner, “Lattice basis reduction: an introduction to the LLL algorithm and its applications”. CRC Press (2011). [4]. Vasily Dolmatov and Alexey Degtyarev,“Gost R 34.10-2012: Digitalsignature algorithm”, (2013). [5]. PUB FIPS. 186-4, “Federal information processing standards publication. digital signature standard (dss)”.Information TechnologyLaboratory, National Institute of Standards and Technology (NIST), Gaithersburg, MD (2013), pp. 20899–8900. [6]. Arjen Klaas Lenstra, Hendrik Willem Lenstra, and László Lovász. “Factoring polynomials with rational coefficients”. Mathematische Annalen, Vol 261, No. 4 (1982), pp. 515–534. [7]. D. Poulakis,“Some lattice attacks on dsa and ecdsa”. Applicable Algebra in Engineering,Communication andComputing,Vol 22,No. 5 (2011), pp. 347– 358. [8]. https://github.com/khucxuanthanh/Attack-on-GOST-R-34.10-2012- ABSTRACT SOME ATTACKS ON THE DIGITAL SIGNAURTE SCHEME GOST R 34.10- 2012 BASED ON LATTICE REDUCTION ALGOTHRIM LLL In this paper, two attacks to recover the long-term key and the ephemeral key in the digital signature GOST R 34.10-2012 based on the LLL algorithm are introduced. These attacks are based on approaches in the attacks on DSA and ECDSA [1], [7]. Specifically, it is showed that if the signature keys , which satisfies , − /then they can be retrieved by the attack which based on [1]. The attack that based on [7] can be recovered the key , if , < / or, < /. These attacks have been tested by us on the Magma Algebra software. Keywords: Cryptography, Lattice, Digital signature algorithm, LLL algorithm, GOST R 34.10-2012. Nhận bài ngày 16 tháng 8 năm 2017 Hoàn thiện ngày 26 tháng 11 năm 2017 Chấp nhận đăng ngày 28 tháng 11 năm 2017 Địa chỉ: 1 Viện Khoa học-Công nghệ Mật mã, Ban cơ yếu Chính phủ; 2 Đại học Khoa học Tự nhiên Hà Nội. *Email: khucxuanthanh@gmail.com.

Các file đính kèm theo tài liệu này:

  • pdf09_6186_2151880.pdf