Hiện nay vấn đề Bảo mật và an toàn thông tin trong mọi lĩnh vực đã và đang được áp dụng phổ biến và rộng rãi ở Việt Nam và trên phạm vi toàn cầu. Vì thế vấn đề Bảo mật và an toàn đang được nhiều người tập trung nghiên cứu và tìm mọi giải pháp để đảm bảo Bảo mật và an toàn cho các hệ thống thông tin trên mạng. Tuy nhiên cũng cần phải hiểu rằng không có một hệ thống thông tin nào được bảo mật 100% bất kỳ một hệ thống thông tin nào cũng có những lỗ hổng về bảo mật và an toàn mà chưa đc phát phát hiện ra. Ở chuyên đề tìm hiểu làn này chúng em xin đc trình bày một mô hình chữ kí điện tử mang tên “chữ kí FAIL - STOP” là đây là một giải pháp giúp bảo mật và an toàn thông tin. Trong chuyên đề này chúng em xin đc trình bày những vấn đề sau: 1. Gới thiệu và sơ lược về chữ kí 2. Chữ kí FAIL - STOP
Trang 1 Sinh viên thực hiện :
Phạm Văn Hải
Hà Viết Hải
Vũ Duy Mạnh
Trang 2 Lời nói đầu.
Phần I: Gới thiệu và sơ lược về chữ kí.
Phần II: Chữ kí FAIL - STOP.
Trang 3đang được nhiều người tập trung nghiên cứu và tìm mọi giải pháp để đảm bảo Bảo mật và an toàn cho các hệ thống thông tin trên mạng Tuy nhiên cũng cần phải hiểu rằng không có một hệ thống thông tin nào được bảo mật 100% bất kỳ một hệ thống thông tin nào cũng có những lỗ hổng về bảo mật và an toàn mà chưa đc phát phát hiện ra.
Ở chuyên đề tìm hiểu làn này chúng em xin đc trình bày một mô hình chữ kí điện tử mang tên “chữ kí FAIL - STOP” là đây là một giải pháp giúp bảo mật và an toàn thông tin Trong chuyên đề này chúng em xin đc trình bày những vấn đề sau:
1 Gới thiệu và sơ lược về chữ kí
2 Chữ kí FAIL - STOP Mặc dù rất cố gắng nhưng do đây là lần đầu tiên chúng em đi sâu vào nghiên cứu đề tài này nên tài liệu chắc chắn không tránh khỏi những sai sót Vì vậy chúng em rất mong nhận được sự đóng góp ý kiến của thầy và các bạn để nhóm hoàn thiện hơn nữa về để tài này tốt hơn.
Chúng Em xin chân thành cảm ơn!
Trang 5 Nội dung:
1.1 Chữ kí viết tay và chữ kí số.
1.2 Định nghĩa hình thức 1 chữ kí số
Trang 61.1.1 Chữ kí viết tay
Trang 71.1.1 Chữ kí viết tay
Chữ kí viết tay thông thường trên tài liệu thường được dùng để xác người kí
nó Chữ kí được dùng hàng ngày chẳng hạn như trên một bức thư, đơn từ, hợp đồng
Là một phần vật lý của tài liệu
Chữ kí viết tay được kiểm tra bằng cách so sánh nó với các chữ kí xác thực khác ví dụ, ai đó kí một tấm séc để mua hàng, người bán phải so sánh chữ
kí trên mảnh giấy với chữ kí nằm ở mặt sau của thẻ tín dụng để kiểm tra Dĩ nhiên, đây không phải là phươg pháp an toàn vì nó dể dàng giả mạo
Chữ kí viêt tay có thể khác so với bản gốc
Trang 81.1.2 Chữ kí số
Trang 10an toàn có thể sẽ ngăn chặn dược khả năng giả mạo.
Tài liệu được kí băng chữ kí số đồng nhất với bản gốc, => phải cẩn thận ngăn chăn một bức kí số khỏi bị dùng lại
Ví dụ: Bob kí một bức điện xác nhận Alice có khả năng làm điều đó một lần Vì thế, bản thân bức điện cần chứa thông tin (chẳng hạn như ngày
tháng) để ngăn nó khỏi bị dùng lại
Trang 11xác minh verk V Mỗi sigk : P A và verk: Pa true,false là những hàm sao cho mỗi bức đIửn x P và mối chữ kí y a thoả mãn phương trình dưới đây.
False nếu y# sig(x)
Trang 121.2.1 Các thành phần của 1 chữ kí số
Với mỗi k thuộc K hàm sigk và verk là các hàm thời gian đa thức
Verk sẽ là hàm công khai sigk là mật Không thể dể dàng tính toán để
giả mạo chữ kí trên bức điện x Nghĩa là x cho trước, chỉ có Bob mới có thể tính được y để verk = True
Một sơ đồ chữ kí không thể an toàn vô điều kiện vì có thể kiểm tra tất cả
các chữ số y có thể có trên bức điện x nhờ dùng thuât toán ver công khai cho đến khi anh ta tìm thấy một chữ kí đúng Vi thế, nếu có đủ thời gian luôn luôn có thể tạo 1 chữ kí giả mạo
Như vậy, giống như trường hợp hệ thống mã khoá công khai, mục đích
của chúng ta là tìm các sơ đồ chữ kí số an toan về mặt tính toán
Trang 131.2.2 Sơ đồ chữ kí xuất phát từ hệ thống mã khóa công khai RSA
Thuật toán tạo 1 chữ kí số từ hệ mã RSA
verk (x,y)= true x yb (mod n)trong đó(x,y Zn)
Trang 141.2.2 Sơ đồ chữ kí xuất phát từ hệ thống mã khóa công khai RSA
Như vậy, Bob kí bức điện x dùng qui tắc giải mã RSA là dk, Bob là
người tạo ra chữ kí vì dk = sigk là mật Thuật toán xác minh dùng qui tắc
mã RSA ek Bất kì ai củng có xác minh chữ kí vi ek được công khai
Chú ý rằng, ai đó có thể giả mạo chữ kí của Bob trên một bức điện “
ngẩu nhiên” x bằng cách tìm x= ek (y) với y nào đó; khi đó y= sigk (x) Một pháp xung quanh vấn đề khó khăn này là yêu cầu bức điện chưa đủ phần dư để chữ kí giả mạo kiểu này không tương ứng với bức điện đây nghĩa là x trừ một xác suất rất bé Có thể dùng các hàm hash trong việc kết nối với các sơ đồ chữ kí số sẽ loại trừ được phương pháp giả mạo này
Trang 151.2.2 Sơ đồ chữ kí xuất phát từ hệ thống mã khóa công khai RSA
Cuối cùng, ta xét tóm tắt các kết hợp chữ kí và mã khoá công khai Giả
sử rằng, Alice tính toán chư kí của ta y= sigAlice (x) và sau đó mã cả x
và y bằng hàm mã khoá công khai eBob của Bob, khi đó cô ta nhận được
z = eBob (x,y) Bản mã z sẽ được truyền tới Bob Khi Bob nhận được z, anh ta sẽ trước hết sẽ giảI mã hàm dBob để nhận được (x,y) Sau đó anh
ta dung hàm xác minh công khai của Alice để kiểm tra xem verAlice
(x,y) có bằng True hay không
Song nếu đầu tiên Alice mã x rồi sau đó mới kí tên bản mã nhận được
thì sao? Khi đó cô tính :
y= sigAlice (eBob (x)).
Trang 161.2.2 Sơ đồ chữ kí xuất phát từ hệ thống mã khóa công khai RSA
Alice sẽ truyền cặp (z,y) tới Bob Bob sẽ giải mã z, nhận x và sau đó xác
minh chữ kí y trên x nhờ dùng verAlice Một vấn đề tiểm ẩn trong biện pháp này là nếu Oscar nhận được cặp (x,y) kiểu này, được ta có thay chữ
kí y của Alice bằng chữ kí của mình
y’ = sigAlice (eBob (x)).
(chú ý rằng,Oscar có thể kí bản mã eBob (x) ngay cả khi anh ta không
biết bản rõ x) Khi đó nếu Oscar truyền(x, y’ ) đến Bob thì chữ kí Oscar được Bob xác minh bằng verOscar và Bob có thể suy ra rằng, bản rõ x xuất phát từ Oscar Do khó khăn này, hầu hết người sử dụng được
khuyến nghị nếu kí trước khi mã
Trang 18 Nội dung:
2.1 Tóm tắt sơ lược.
2.2 Các bổ đề và định lí
2.3 Ví dụ minh họa
Trang 19Bob có khả năng chứng minh được (với xác suất cao) rằng chữ ký của
Oscar là giả mạo
Sơ đồ Fail- stop do Van Heyst va Pedersen đua ra năm 1992 Đầu là sơ đồ chữ ký 1 lần (chỉ một bức điện có thể ký bằng một cho trước chỉ 1 lần) Hệ thống gồm các thuật toán ký, thuật toán xác minh và thuật toán “chứng minh giả mạo” Hình 6.9 mô tả các thuật toán ký và xác minh của sơ đồ Fail- stop của Van Heyst va Pedersen
Không khó khăn nhận thấy rằng, chữ ký do Bob tao ra sẽ thoả mãn điều kiện xác minh nên ta lại trở các kía cạnh an toàn toàn của sơ đồ này và các thức làm việc của tính chất Fail- Safe (tự động ngừng khi có sai số) Trước hết, ta thiết lập vài yếu tố quan trọng có liên quan đến các khoá của sơ đồ Đầu tiên đưa ra một định nghĩa: Hai khoá (1, 2, a1, a2, b1, b2) và (1’,
2’, a1’, a2’, b1’, b2’) là tương đương nếu 1 =1’,2= 2’ Và dễ dàng nhận thấy tồi tại q2 khoá trong lớp tương đương bất kỳ
Trang 20 Giả sử K và K’là các khoá tương đương và giả thiết chữ ký verK(x,y) = true(đúng) Khi đó chữ ký verK’(x,y) = true.
Bây giờ giả sử ta xác minh y bằng cách dùng K’
y1y2 a’1+ xb’1a’ + xb’2 (mod p)
a’1a’2 (b’1b’2 )x (mod p) 12x mod p
Như vậy, y cũng sẽ được xác minh bằng K’.
Trang 212.2.1 Bổ đề 1
Hình 2 Sơ đồ chữ ký Fail- stop
Cho p = 2q+1 là số nguyên tố sao q là nguyên tố và bài toán logarithm rời rạc trong Zp là khó giải cho Zp* là phần tử bậc
q Giả sử 1 a0 q-1và định nghĩa = a0 mod p Các giá trị p,
q, , và a0 đều do người có thẩm quyền (được tin cậy) chọn Các
số p, q, và công khai và cố định còn a0 được giữ bí mật.
Cho p =Zp và a = Zq Zq khoá có dạng:
K =(1, 2, a1, a2, b1, b2) trong đó a1, a2, b1, b2 Zq
1= a1 a2 mod p còn 2= b1 b2 mod p Với K =(1, 2, a1, a2, b1, b2) và x Zp , ta định nghĩa
sigk(x) =(y1, y2) trong đó
y1= a1+xb1mod q còn y2= a2+xb2mod q Với y =(y1, y2) Zq Zq ta có:
Xác minh ver(x,y) = true 12 y1 y2 (mod p)
Trang 221 a1a2 (mod p)
2 b1b2 (mod p)y1 a1+xb1(mod q) y2 a2+xb2(mod q)
Trang 23y1 a1+ xb1(mod q) y2 a2+ xb2(mod q)
Trang 240 x
0 a 1
0 0
1 0
0 1
0 0
0 a 1
1b
2a
1a
1y
2c1c
Trang 252.2.2 Bổ đề 2
Có thể thấy ma trận hệ thống số của phương trình có hạng là
3( hạng của một ma trận là số cực đậi của các hàng độc lập tuyến tính mà nó có) Rõ ràng, hạng ít nhất bằng 3 vì các hàng 1,
2 và 4 là độc lập tuyến tính trên Zp còn hạng nhiều nhất cũng bằng 3 vì:
r1 +x r2-r3-a0r4= (0,0,0,0)
Với r1 chỉ hàng thứ i của ma trận
Hệ phương trình này có ít nhâts một nghiệm nhận được bằng cách dùng khoá K.Vì hàng của ma trận hệ số bằng 3 nên suy ra rằng chiều của không gian nghiệm là 4-3=1 và có chính xác q nghiệm
Trang 262.2.3 Bổ đề 3
Giả sử K là khoá y=sigK(x) còn verK (x’,y’)=true, trong đó x’ #
x Khi đó tồn tại ít nhất một khoá K’ tương đương với K sao cho y=sigK’(x) và y’= sigK’(x’)
Ta hãy làm sáng tỏ hai bổ đề trên về độ mật của sơ đồ Khi cho trước y là chữ kí hợp lệ của x, sẽ tồn tại q khoá có thể để x sẽ được kí bằng y Song với bức điện bất kì x’ x, q khoá này sẽ tạo ra q khoá khác nhau trên x’ Điều đó dẫn đến định lí sau đây:
Tương tự như bổ đề 2 ta có thể chứng minh được bổ đề 3:
Trang 272.2.3 Định lí 1
là 1/q.
Mức an toàn qui định đạt được vì Oscar không thể nói về q khoá có thể mà Bob đang dùng Như vậy độ an toàn ở đây là vô điều kiện.
điện x Oscar không thể tính ra được chữ ký y’ của Bob trên bức điện x’ khác Điều này cũng có thể hiểu rằng, Oscar có thể tính được chữ ký giả mạo y’’ = sigK(x’)(sẽ được chứng minh )
tạo ra “một bằng chứng về sự giả mạo ” với xác suất 1-1/q Bằng chứng về
sự giả mạo là giá trị a0=log (chỉ người có thẩm quyền trung tâm biết ).
Trang 292.2.3 Định lí 1
Nếu viết = a0mod p, ta có :
Cuối cùng, chú ý rằng,sơ đồ chữ kí là một lần vì khóa k của Bob có thể tính dễ dàng nếu hai bức điện đều dùng K để ký Dưới đây là ví dụ minh hoạ cách Bob tạo một bằng chứng về sự giả mạo
y”1+ a0 y”2 y’1+ a0 y’2(mod p)
Trang 302.2.3 Định lí 1
Xét thấy y’1 y’’2(mod q) vì y’ là giả mạo Vì thế (y’2-y’’2)-1 mod q tồn tại và
a0 =log = (y’’1-y’1) (y’2-y’’2)-1 mod q
Dĩ nhiên, bằng việc chấp nhận bằng chứng về sự giả mạo như vậy,ta giả thiết Bob không thểt ự tính được logarithm rời rạc log Đây là gải thiết về mặt tính toán
Trang 31Cho p=4367=2.1733+1 Phần tử =4 có bậc là 1733 trong Z3467*
Trang 32Tiếp theo, giả sử Bob nhận được chữ kí giả mạo (822,55) trênê bức điện 3383 Đây là chữ ký hơp lệ vì thoả mãn điều kiện xác minh.
3405 228133842282 (mod 3476) và 4822514552282(mod 3476)
Mặt khác đây không phải là chữ kí đã được Bob xây dựng Bob
có thể tíng chữ kí của mình như sau: