M
3.2.2 Bài toán DLP trên nhóm GL(2,p)
Giả sử p là số nguyên tố và à trường các số nguyên
theo modulo p. Kí hiệu là tập các ma trận vuông cấp 2 không suy biến hệ
số trên , đây là một nhóm nhân với phép nhân ma trận thông thường. Bài toán
DLP trên nhóm được phát biểu như sau:
Bài toán: “Cho , hãy tìm số nguyên k mà “. (3.4)
Nghiệm k của bài toán nếu tồn tại sẽ được xác định duy nhất theo modulo với là bậc của ma trận A trong nhóm . Để tiện cho trình bày, chúng ta giả
sử rằng
và
, ma trận đơn vị trong GL(2,p) được kí
hiệu là
.
3.2.3 Ý tư ng
Trước hết ta nhận xét rằng nếu A có dạng chéo, tức là nếu thì
rõ ràng
và bài toán (3.4) tương đương với hệ
, việc
giải hệ này là rất đơn giản do ta có thể giải từng phương trình của hệ theo các phương pháp đã biết. Do đó ý tưởng để giải bài toán (3.4) là chéo hóa ma trận A để
t nh được và đưa bài toán về dạng đơn giản hơn. Tuy nhiên không phải ma trận
nào cũng đưa được về dạng chéo. Trong số các dạng chéo hóa mà bất kỳ ma trận vuông nào cũng đưa về được, chúng tôi chọn dạng chéo hóa Jordan, lý do là thích
hợp với bài toán đang khảo sát. Việc đưa một ma trận về dạng chuẩn
Jordan sẽ được nhắc lại trong Phần 3.2.4, àm cơ sở cho việc đơn giản hóa việc giải bài toán (3.4) trong Phần 3.2.5.
3.2.4 Chéo hóa Jordan c a ma trận
Việc đưa ma trận A về dạng chéo Jordan bao gồm tìm một ma trận và một ma trận dạng chéo Jordan D sao cho D . Chi tiết về dạng chéo Jordan có thể tìm thấy trong [20]. Chúng tôi tóm tắt lại như sau.
Đa thức theo một biến z
được gọi à đa thức đặc trưng của ma trận A, đa thức này có dạng với . Nếu không có nghiệm trong , ta sẽ mở rộng trường
theo một nghiệm của để được trường mở rộng
. Theo kết quả trong lý thuyết trường thì trong trường mở rộng , sẽ
có 2 nghiệm là và (nghiệm này có thể t nh nhanh th o định lý Viet bằng
), bậc của hai nghiệm này trong là bằng nhau. Như vậy nói chung,
luôn có 2 nghiệm (trong hoặc trong ), đây là các giá trị riêng của A.
Có các trường hợp sau:
a. :
-Ta tìm các vector riêng ứng với giá trị riêng .
- hi đó và
.
b. : Kí hiệu , có 2 trường hợp:
(i) : Trong trường hợp này, . Ta tìm một phần tử
của . hi đó tồn tại phần tử mà . Các ma trận D và P sẽ được xác định bởi và .
(ii) : hi đó . Ta tìm 2 v ctor cơ sở của
là
và
. Các ma trận D và P sẽ được xác định bởi và .
Việc đưa ma trận về dạng chéo Jordan làm cho bài toán trở nên đơn giản hơn, do vì ũy thừa của ma trận dạng chéo Jordan có thể t nh được như sau đây.
Mệnh ề 3.6 Với k là số nguyên dương ta có:
a. Nếu thì .
b. Nếu thì .
Chứng minh. có thể chứng minh kết quả trên bằng quy nạp theo k. ■
Nếu ta tìm được các ma trận P không suy biến và ma trận D dạng chéo Jordan sao cho thì bài toán (4.4) ban đầu có thể đưa về dạng đơn giản hơn như sau.
(3.5)
Do ma trận à t nh được và tính theo mệnh đề trên, ta đồng nhất
các thành phần tương ứng trong 2 ma trận ở hai vế của (3.5) để có một hệ 2 phương trình theo k mà mỗi phương trình à bài toán DLP trên (hoặc trên trường mở
rộng của ). Tuy nhiên, như đã nói ở trên, nghiệm của bài toán (3.4) là duy
nhất theo modulo của bậc của , vì vậy cần phải xác định bậc của . Chúng tôi
dùng kí hiệu để ch trường (nếu đa thức đặc trưng của có nghiệm
trong ) hoặc trường (là mở rộng của theo một nghiệm của , nếu
không có nghiệm trong ). Mệnh đề sau đây khẳng định bậc của có thể
t nh được theo các bậc của các phần tử của .
Mệnh ề 3.7 Giả s và là ma trận chéo hóa Jordan của , tức tồn
(a) Nếu với thì . (b) Nếu với thì .
(c) Nếu với thì . Chứng minh.
a.Kí hiệu . Ta có ngay
và .
Từ , ta có . Từ đây suy
ra . Vậy phải là bội số của cả và . Do đó .
Mặt khác, do nên . Suy ra
. Vậy . Do đó .
b.Kí hiệu và . Dễ dàng kiểm tra được .
Theo Mệnh đề 3.6 ta có . Vậy . Từ , ta có . Vậy .
Nếu thì với . Từ ta có , suy ra hay . Điều này vô lý vì phải là một ước số của bậc của nhóm nhân trong , mà bậc của nhóm nhân này hoặc là (nếu
) hoặc là (nếu ). c.Là hệ quả trực tiếp của a. ■
Những kết quả trên đây cho phép chúng tôi đưa ra thuật toán àm đơn giản hóa việc giải bài toán (3.4) như sau.
Thuật toán
Bước 1. T nh đa thức đặc trưng
.
Kiểm tra xem có nghiệm trong hay không. Nếu có đặt , ngược lại
đặt với là một nghiệm của . Như vậy luôn có 2 nghiệm
trong . Xác định ma trận P sao cho với D là dạng chéo hóa Jordan của A.
Tính ma trận , giả sử
.
Nếu với : sang ước 2. Nếu
với : sang ước 3.
Nếu với : sang ước 4.
Bước 2.Nếu hoặc : bài toán vô nghiệm. Kết thúc.
Ngược lại, giải từng phương trình của hệ
, kết quả có dạng
với .
-Nếu : nghiệm của (4.4) được t nh th o định lý Trung Hoa
mở rộng (xem [5] trang 45).
-Ngược lại, bài toán (3.4) vô nghiệm. Kết thúc.
Ngược lại giải bài toán trong . Nghiệm tìm được chính là nghiệm của (3.4).
Bước 4. Nếu hoặc : bài toán vô nghiệm. Kết thúc. Ngược lại, bài toán (3. ) đưa về việc giải hệ theo ẩn :
Nếu thì việc giải hệ (4.6) là tầm thường. Nếu , ta biến đổi
Giải (3.7) bằng các phương pháp đã biết ta được nghiệm trong đó
.
Giải (3.8) trong trường , nếu nghiệm thì (3.4) vô nghiệm. Ngược lại,
nghiệm của (3.8) có dạng . D ng định lý phần dư Trung Hoa giải hệ
nghiệm nhận được chính là nghiệm của (3.4).
3.2.6 Ví dụ 3.1 Giải bài toán DLP trên nhóm với ,
và .
Trước hết ta đưa về dạng chéo Jordan. Đa thức đặc trưng của là
Bằng cách thử trực tiếp, ta thấy không có nghiệm trên , cũng có thể thấy
được kết quả này nếu biến đổi và chú ý rằng -1 không phải là
một bình phương trong do 59 là số nguyên tố bằng (xem [39]). Ta sẽ
mở rộng theo một nghiệm của . Trường mở rộng sẽ là và trong
trường này có 2 nghiệm là .
Một vector riêng tương ứng với giá trị riêng được tìm từ hệ
Hệ này đưa về dạng
. Một nghiệm khác 0 của hệ là
.
Tương tự, một v ctor riêng tương ứng với giá trị riêng là
Như vậy, A sẽ có dạng chéo Jordan là và ta có hệ thức
với .
Có thể t nh được
.
Ta biến đổi bài toán
Có thể t nh được . Như vậy, bài toán bây giờ có
dạng đơn giản hơn à
hay dưới dạng hệ
Bằng phương pháp giải bài toán DLP trên một trường, ta giải k từ phương trình
, được kết quả là với 3480 là bậc của trong
nhóm nhân .
Kết quả giải phương trình cũng cho kết quả
với 3 8 cũng à bậc của .
Như vậy bài toán có nghiệm là .
3.2.7 Nhận xét
Để so sánh việc giải bài toán (4.4) trực tiếp bằng các phương pháp đã biết và giải (4.4) bằng cách đưa về giải bài toán DLP trên , chúng ta hãy chọn một phương pháp cụ thể để so sánh, chẳng hạn hương há bước nhỏ, bước lớn.
Thuật toán này do D.Shanks phát triển [34] và có thể tham khảo ở nhiều sách chuyên dụng như [14], [62]. Thuật toán nhằm giải bài toán tìm số nguyên k sao cho
, trong đó là nhóm có phần tử và là hai phần tử đã biết. Nếu d
là bậc của a, tức d là số nguyên dương bé nhất mà thì lời giải k nếu tồn tại
sẽ được xác định duy nhất theo modulo d. Chú ý rằng d uôn à ước số của n.
Th o phương pháp này, trước hết ta tìm một chặn trên của , tức là tìm một
số tự nhiên m mà . Chia k cho m, giả sử . Vì
luôn có thể tìm với điều kiện nên . Nếu thì
hay . Điều này dẫn đến thuật toán sau:
(1) Tìm một số nguyên dương .
(2) T nh và ưu các giá trị .
(3) Tính các giá trị cho đến khi tìm được một giá trị trùng lại với một trong các giá trị đã ưu ở bước 2. trên.
Trong thuật toán này, các giá trị được tính bằng cách nhân thêm a vào
(bước nhỏ) và các giá trị được tính bằng cách nhân thêm vào
(bước lớn) nên có tên là thuật t án bước nhỏ, bước lớn. Rõ ràng thuật
này cần xấp x bước và ưu trữ xấp x giá trị, do đó thực hiện tốt khi n không lớn lắm.
Cấp của nhóm GL(2,p) có thể t nh được là , như vậy chẳng
hạn áp dụng trực tiếp phương pháp bước nhỏ, bước lớn để giải bài toán (1) thì phải
cần xấp x bước và ưu trữ xấp x chừng ấy giá trị. Trong
khi đưa bài toán về bài toán DLP trên trường theo thuật toán của chúng tôi, ch
cần giải nhiều nhất 2 bài toán DLP trên trường có nhiều nhất giá trị (khi
), điều này sẽ thực hiện xấp x bước và ưu trữ xấp x chừng ấy giá trị. Rõ ràng chi phí sẽ giảm đi rất nhiều khi p lớn. Ngoài ra việc vét cạn để tìm ra
cấp của trong theo Mệnh đề 3.7 sẽ mất nhiều t nh toán hơn việc tìm ra
KẾT LUẬN
RSA là một hệ mã được dùng rộng rãi nhất trong mã hóa thông tin. Để đóng góp vào việc nghiên cứu RSA, luận án đã đạt được những kết quả sau:
- Xây dựng sơ đồ cho RSA trên vành thương của vành Euclid, sơ đồ này bao
quát được RSA trên vành thương các đa thức và vành thương các số nguyên Gauss của tác giả El-Kassar A. N., R. Hatary và Y. Awad.
- Xây dựng sơ đồ cho RSA trên một nửa nhóm, đây à sơ đồ tương đối tổng quát, bao quát hết tất cả các biến thể của RSA được đề cập trong luận án. - Dựa trên sơ đồ cho RSA trên nửa nhóm, xây dựng một biến thể mới cho
RSA dựa trên kết quả về vành Bergman của các tác giả J. J. Climent, P. R. Navarro và L. Tortosa.
- Trong ĩnh vực thám mã RSA, đưa ra điều kiện của khóa riêng bảo đảm cho
phương pháp tấn công RSA bằng dàn hai chiều uôn thành công và đưa ra thuật toán nhằm đơn giản hóa việc giải bài toán DLP trên nhóm GL(2,p). Trong quá trình thực hiện luận án, tác giả thấy rằng còn có những bài toán liên quan đến luận án như sau:
- Trước khi tìm được tài liệu về vành Bergman, tác giả đã cố gắng xây dựng
một biến thể của RSA trên vành thương của vành quat rnion, tuy có đạt được một số kết quả nhưng chưa hoàn thành mục đ ch do vành quat rnion không giao hoán.
- Cách thám mã dùng thuật toán LLL của D. Boneh và G. Durfee [25] cũng à
h uristic. Như vậy, tương tự như cách tấn công RSA dùng dàn 2 chiều, có thể tìm các điều kiện đảm bảo cho phương pháp tấn công này luôn thành công.
- Giữa liên phân số và dàn có mối liên hệ mật thiết. Như vậy thông qua cách tấn công RSA bằng dàn, có thể ch ra cách tấn công tương ứng bằng cách dùng liên phân số và ngược lại.
- Mặc dù sơ đồ RSA đưa ra ở phần 2.2 bao quát hết các biến thể của RSA trong phần 1.3, một câu hỏi thú vị được đặt ra là liệu nó có bao quát được các hệ mã RSA trong tương ai hay không ? Chúng tôi đã chứng minh được rằng nếu một hệ mã RSA được xây dựng trên một nhóm giao hoán thì có thể áp dụng được sơ đồ này. Tuy vậy chúng tôi vẫn chưa có kết luận gì cho một hệ mã RSA xây dựng trên một nửa nhóm và sẽ tiếp tục công việc này trong tương ai.
- Đối với biến thể của RSA được xây dựng ở Chương 2, các quá trình mã hóa
và giải mã đòi hỏi nhiều t nh toán. ài toán đặt ra là thiết lập công thức trước sao cho có thể tiết kiệm được việc tính toán.
Tác giả hy vọng rằng trong thời gian sắp tới, khi không còn bị áp lực thời gian, sẽ khảo sát các vấn đề trên một cách t nh táo và toàn diện hơn.
DANH MỤC CÁC CÔNG TRÌN ĐÃ CÔNG Ố
[1]
Long T. D., Thu T. D., Thuc N. D., “A G n ra Mod or RSA
Cryptosyst m”, I FI ’10, uyển tập công trình nghiên cứu Công Nghệ
Thông Tin và Truyền thông 2010, pp. 100-103.
[2]
Long T. D., Thu T. D., Thuc N. D., “ ài toán DLP trên nhóm GL(2,p)”, ICTFIT’12, Tuyển tập công trình nghiên cứu Công Nghệ Thông Tin và
Truyền thông 2012, pp. 19-26.
[3]
Thuc D. Nguy n, Than Duc Nguy n, Long D. Tran, “Attacks on ow
private expon nt RSA: an xp rim nta study”, 2013 13th
InternationalConference on Computational Science and Its Applications (ICCSA2013), pp.162-165, IEEE, 2013.
[4]
Long D. T., Thu D. T., and Thuc D. N., “A rgman ring bas d
cryptosystem analogue of RSA”, 2013 International Conference on IT
Convergence and Security, IEEE Ebook , pp. 377-380.
[5] Long D. T., Thu D. T., Thuc D. N., “On the heuristic guess of 2-dimension
lattice attack on low private exponent RSA, Tạp chí Khoa h c-Khoa h c
Tự nhiên & Công nghệ, Đại h c Sư hạm Tp Hồ Chí Minh, số 2(67), pp.101-108.
TÀI LIỆU THAM KHẢO Tài liệu tiếng Việt
[1] i Tuấn Anh (2009), ác hương há tấn c ng RSA, Luận văn Thạc S ,
Đại Học Công Nghệ- ĐH G Hà Nội.
[2] Đỗ Thanh ình (2011), ệ mật mã RSA và ứng dụng ược đồ chữ ố tr ng
ác thực th ng tin, Luận văn Thạc S , Viện Công Nghệ Thông Tin Hà Nội.
[3] Phạm Tuấn Dũng (2011), ghiên cứu hương há bả mật ch cơ chế đăng
nhậ một ần ứng dụng tr ng hệ h n tán, Luận văn Thạc S , Học Viện ưu
Ch nh Viễn Thông.
[4] Bùi Doãn Khanh, Nguyễn Đình Thúc, Hoàng Đức Hải (2004) Giáo trình mã
hóa thông tin, Nxb Lao Động Xã Hội.
[5] Bùi Doãn Khanh, Nguyễn Đình Thúc, Trần Đan Thư (2007), ơ ở lý thuyết
số trong an toàn – bảo mật thông tin, Nxb Giáo Dục.
[6] Nguyễn Thành Nhân (2007), RSA - Tấn công và phòng thủ, Nxb Thanh niên.
[7] Văn Thị Nhiên (2007), hả át các chữ ố dựa trên hệ RSA, Luận văn
Thạc S , Đại Học Công Nghệ.
[8] Hoàng Văn Thức (2011), Hệ tiêu chu n tham số an toàn cho hệ mật mã RSA
và ứng dụng, Luận án Tiến sĩ Toán học, Viện Khoa học và Công nghệ Quân
sự, Bộ Quốc Phòng.
[9] Nguyễn Ngọc Trung (2008), ác huật t án tối ưu hóa tr ng bả mật th ng
tin, Luận văn Thạc S , Đại học Thái Nguyên.
[10] Lương hánh Tý (2012), ối ưu hóa giải thuật ố h c tr ng hệ mã hóa
RSA, Luận văn Thạc S , Đại học Đà Nẵng.
Tài liệu tiếng Anh
[11] A. Fiat, “Batch RSA”, Advance in ry t gy, ry t ’89, Vol. 435, pp.
[12] Antoine Joux and Jacqu s St rn (1 8), “Lattic R duction: A too box or th cryptana yst”, J. Cryptology 11, pp. 161-185.
[13] A.A. Kalele, V.R. Sule (2005), “On the Diffie-Hellman Problem over GLn”,
Freely available on the internet.
[14] A. Menezes, P. Van Ooschot, and S. Vanstone (1997), Handbook of applied
cryptography, CRC Press.
[15] A. Nita and Ta ddin Rachidi (2 15), “Factoring RSA Modu i W ak
Prim Factors”, Codes, Cryptology and Information Security Conference
(C2SI 2015), LNCS 9084, pp. 361-374.
[16] A. Nitaj and Tajjeeddine Rachidi (2 15), “N w Attacks on RSA with modu i
”, Codes, Cryptology and Information Security Conference (C2SI 2015), LNCS 9084, pp. 352-360.
[17] Bergman G.M (1974), “Examples in PI ring theory”, Israel J. Math. 18, 257-
277.
[18] C. Alison, Monteiro Paixao (2 3), “An ici nt variant o th RSA
cryptosyst m”, preprint.
[19] Christophe Coupe, Phong Nguyen, and Jacques Stern (1999), “The
effectiveness of lattice attacks against low-exponent RSA”, Public Key Cryptography '99.
[20] Card D. Meyer (2000), Matrix Analysis and Applied Linear Algebra, Siam.
[21] C. L. Siegel (1989), Lectures on the geometry of numbers, Springer-Verlag.