1. Trang chủ
  2. » Luận Văn - Báo Cáo

chữ kí số elgamal

13 584 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 113,5 KB

Nội dung

chữ kí số elgamal tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kinh tế, k...

Trang 1

CHƯƠNG I GIỚI THIỆU VỀ SƠ ĐỒ CHỮ KÍ SỐ

I Giới thiệu chung.

Hàng ngày chúng ta vẫn thường hay dùng chữ kí để xác minh một vấn

đề, hay để xác nhận quyền của mình đối với một vật thông qua những giấy tờ hoặc là một hợp đồng nào đó Chẳng hạn như trên một bức thư nhận tiền từ ngân hàng, hay những hợp đồng kí kết mua bán , chuyển nhượng Những chữ

kí như vậy còn được gọi là chữ kí viết tay , bởi nó được viết bởi chính tay người kí không thể sao chụp được Thông thường chữ kí viết tay trên các văn bản , trên các tài liệu hay trên các hợp đồng kinh tế v.v thì được dùng để xác nhận người kí nó

Sơ đồ chữ kí ( hay còn gọi là chữ kí số ) là phương pháp kí một bức điện lưu dưới dạng điện tử Chẳng hạn một bức điện có chữ kí được truyền trên mạng máy tính

Một vài khác biệt cơ bản giữa các chữ kí thông thường và chữ kí số :

+Đầu tiên là vấn đề kí một tài liệu Với chữ kí thông thường , nó là một phần vật lý của tài liệu Tuy nhiên , một chữ kí số không gắn theo kiểu vật lí vào bức điện nên thuật toán được dùng phải “ không nhìn thấy “ theo cách nào đó trên bức điện

+Thứ hai là vấn đề về kiểm tra Chữ kí thông thường được kiểm tra bằng cách so sánh nó với các chữ kí xác thực khác ( còn gọi là chữ kí mẫu ) 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 thẻ tín dụng để kiểm tra Dĩ nhiên , đây không phải là phương pháp an toàn vì nó dễ dàng bị giả mạo Mặt khác , các chữ kí số có thể được kiểm tra nhờ dùng một thuật toán kiểm tra công khai

Trang 2

Như vậy , bất kì ai cũng có thể kiểm tra được chữ kí số Việc dùng một sơ đồ chữ kí an toàn có thể sẽ ngăn chặn được khả năng giả mạo

+Sự khác biệt cơ bản khác giữa chữ kí thông thường và chữ kí số là bản copy tài liệu được kí bằng chữ kí số đồng nhất với bản gốc Điều này có nghĩa

là phải cẩn thận ngăn chặn một bức điện kí số khỏi bị dùng lại Ví dụ nếu một người A nào đó kí một bức điện số xác nhận một người B nào đó lấy một số tiền là một triệu từ tài khoản ngân hàng của anh ta ( ví dụ sec ) , người A chỉ muốn người B chỉ 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 một số thông tin gì đó ( chẳng hạn như ngày tháng ) để ngăn nó khỏi

bị dùng lại

Một sơ đồ chữ kí số thường chứa hai thành phần : Thuật toán kí và thuật toán xác minh Người A có thể kí bức điện x dùng thuật toán kí an toàn Chữ

kí Sig(x) nhận được có thể kiểm tra bằng thuật toán xác minh công khai Ver Khi cho trước cặp (x,y) thuật toán xác minh cho giá trị TRUE hay FALSE tuỳ thuộc vào việc chữ kí được xác thực như thế nào

Định nghĩa hình thức của chữ kí

Một sơ đồ chữ kí số là bộ 5 ( P,A,K,S,V) thoả mãn các điều kiện sau :

1 P : là tập hữu hạn các bức điện có thể.

2 A : là tập hữu hạn các chữ kí có thể

3 K : không gian khoá là tập hữu hạn các khoá có thể

4.Với mỗi K thuộc K tồn tại một thuật toán kí Sig K S và một thuật toán xác minh Ver K V

Mỗi Sig K : P -> A và Ver K :P x A -> { TRUE ,FALSE } là những hàm sao cho mỗi bức điện x P và mỗi bức điện y A thoả mãn phương trình sau đây

TRUE nếu y= Sig(x)

Ver (x,y) =

FALSE nếu y #Sig(x)

Trang 3

Với mỗi K ∈ K , hàm SigK và VerK là các hàm thời gian đa thức VerK

là người nhận Không thể dễ dàng tính toán để giả mạo chữ kí của Bob trên bức điện x Nghĩa là với x cho trước , chỉ có Bob mới có thể tính được chữ kí

y để Ver (x,y) = True Một sơ đồ chữ kí không thể an toàn vô điều kiện vì một người tò mò nào đó có thể kiểm tra tất cả các chữ số y có thể trên bức điện x nhờ dùng thuật toán Ver công khai cho đến khi anh ta có thể tìm thấy một chữ kí đúng.Vì thế , nếu có đủ thời gian anh ta luôn luôn có thể giả mạo chữ kí của Bob 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 toàn về mặt tính toán

Tóm lại ta xét cách kết hợp chữ kí và mã khoá công khai Giả sử rằng

Bản mã z sẽ được truyền tới Bob Khi Bob nhận được z , anh ta trước hết sẽ

Song đầu tiên Alice mã x rồi sau đó mới kí lên bản mã nhận được thì sao? Khi đó cô tính :

y= SigAlice(eBob(x))

Alice sẽ truyền cặp (z,y) tới Bob Bob sẽ giải mã z , nhận được x và sau

pháp này là nếu một người tò mò nào đó (ta gọi là người đó Oscar ) nhận được cặp (z,y) kiểu này , anh ta có thể thay chữ kí y của Alice bằng chữ kí của chính mình:

biết bản rõ x ) Khi đó nếu Oscar truyền (z,y’) đến Bob thì chữ kí của Oscar

Trang 4

Oscar Do khó khăn này , hầu hết người sử dụng được khuyến nghị nên kí trước khi mã

Trước khi nghiên cứu về sơ đồ chữ kí Elgamal ta có thể cần phải xem xét lại một số vấn đề sâu hơn về lý thuyết số

II Một số vấn đề về lý thuyết số

Trước tiên ta cần phải xem xét một số yếu tố liên quan đến lý thuyết số

và số học modulo Sau đây là một số kết quả cơ bản cần biết là thuật toán Euclide và định lý phần dư China

1 Thuật toán 1 ( thuật toán Euclide ).

Thuật toán này được dùng để tính ước số chung lớn nhất (USCLN) của hai số nguyên dương r0và r1 với r0 >r1 Thuật toán Euclide bao gồm việc thực hiện dãy các phép chia sau :

r0 = q1r1 + r2 , 0 < r2 < r1

r1 = q2r2 + r3 , 0 < r3 < r2

rm-2 = qm-1 rm –1 + rm , 0 < rm < rm-1

rm-1 = qmrm Khi đó dễ dàng chứng tỏ được rằng :

USCLN ( r0 , r1 ) = USCLN ( r1 , r2 ) = =USCLN ( rm , rm-1 ) = rm

Bởi vậy USCLN ( r0 , r1 ) = rm

Vì thuật toán Euclide tính các USCLN nên có thể dùng nó để xác định xem liệu có một số nguyên dương b < n có nghịch đảo theo modulo n không,

Trang 5

bằng cách bắt đầu với r0 = n và r1 = b Tuy nhiên thuật toán này không cho phép tính giá trị của phần tử nghịch đảo ( nếu nó tồn tại )

Bây giờ giả sử định nghĩa một dãy số t0, t1, , tm theo công thức truy toán sau ( trong đó các giá trị qi đã được xác định ở trên

t0 = 0

t1 = 1

tj = tj-2 – qj -1 tj -1 mod r0 , nếu j ≥ 2

Ta có kết quả quan trọng sau:

Định lý 1:

Với 0 j m , ta có r j t j r 1 ( mod r 0 ), trong đó các giá trị q i và r i được xác định theo thuật toán Euclide còn các giá trị t j được xác định theo công thức truy toán ở trên

Chứng minh :

Ta chứng minh băng cách quy nạp theo j Định lý hiển nhiên đúng với

j = 0 và j =1 Giả sử rằng định lý cũng đúng với j = i – 1 và j = i –2 , trong đó

i ≥ 2 sau đây sẽ chứng tỏ định lý đúng đối với j = i Theo qui nạp ta có

ri-2≡ ti-2 r1 ( mod r0 )

Bây giờ ta tính

ri = ri -2 – qi -1 ri-1

≡ ti -2 – qi -1 ti-1 r1 ( mod r0 ) ≡ (ti -2 – qi -1 ti-1) r1 (mod r0) ≡ tir1 (mod r0 )

Trang 6

Bởi vậy theo quy nạp định lý là đúng./

Hệ quả sau rút từ định lý trên

Hệ quả 1:

Giả sử USCLN ( r 0 , r 1 ) =1 Khi đó t m = r i -1 mod r 0

Xét thấy dãy các số t0, t1, tn có thể được tính toán trong thuật toán

Euclide mở rộng để tính nghịch đảo của b theo modulo n ( Nếu nó tồn tại ) Trong thuật toán này không phải dùng mảng ( aray ) để ghi các giá trị qj , rj và

kỳ trong thuật toán

Thuật toán Euclide mở rộng

1 n0 = n

2 b0 = b

3 t0 = 0

4 t = 1

5 q=bo

no

6 r = n0 – q × b0

7 While r > 0 do

8 Temp = t0 – q × t

10 if temp < 0 then temp = n – ((-temp) mod n )

11 t0 = t

12 t = temp

13 n0 = b0

14 b0 = r

15 q = bo

no

16 r = n0 – q × b0

17 if b0 = 1 then

b không có nghịch đảo theo modulo n

else

Trang 7

b-1 = t mod n Trong bước 10 của thuật toán ta đã viết biểu thức cho biến temp theo cách để phép rút gọn theo modulo n được thực hiện i với đối số dương ( Trước đây đã biết rằng việc rút gọn theo modulo của các số âm sẽ dẫn tới các kết quả âm ở nhiều ngôn ngữ máy tính , còn ở đây ta muốn kết thúc bằng

chứng minh ở định lý trên )

Sau đây là ví dụ minh hoạ :

như sau :

75 = 2 × 28 + 19 ( bước 6 )

3 × 28 mod 75 = 9 ( bước 12 )

19 = 2 × 9 +1 ( bước 16 )

67 × 28 mod 75 =1 ( bước 12 )

9 = 9 × 1 ( bước 16 )

Vì thế 28-1 mod 75 = 67

2 Định lý phần dư China

Định lý này thực sự là một phương pháp giải các hệ phương trình đồng

dư Giả sử m1, ,mr là các nguyên tố cùng nhau từng đôi một ( tức USCLN(mi,mj )=1 nếu i ≠ j ) Giả sử a1, , ar là các số nguyên , xét hệ các phương trình đồng dư sau :

x ≡ a ( mod m )

Trang 8

x ≡ a2 ( mod m2 )

x ≡ ar ( mod mr )

Định lý phần dư China khẳng định rằng hệ này có nghiệm duy nhất theo modulo M = m1× m2× × mr Ta sẽ chứng minh kết quả đó trong phần này

và cũng mô tả một thuật toán hữu hiệu để giải hệ đồng dư thức dạng trên

Để thuận tiện , Xét hàm π : ZM -> Zm1 × ×Zmr Hàm này được định nghĩa như sau:

π (x) = ( x mod m1, , x mod mr )

Vídụ :

Giả sử r =2 , m1 = 5 và m2 = 3, bởi vậy M = 15 Khi đó hàm π có các giá trị sau :

π (0) = (0,0) π(1) = (1,1) π (2) = (2,2)

π (3) = (3,0) π(4) = (4,1) π (5) = (0,2)

π (6) = (1,0) π(7) = (2,1) π (8) = (3,2)

π (9) = (4,0) π(10) = (0,1) π (11) = (1,2)

π (12) = (2,0) π(13) = (3,1) π (14) = (4,2)

Việc chứng minh định lý phần dư China tương đương với việc chứng

ví dụ trên Trong thực tế có thể đưa ra một công thức tường minh tổng quát

Với 1 ≤ i ≤ r , định nghĩa :

Mi =

i

m M

Trang 9

Khi đó , dễ dàng thấy rằng :

với 1 ≤ i ≤ r Tiếp theo , với 1 ≤ i ≤ r , định nghĩa

yi = Mi-1 mod mi

bằng thuật toán Euclide ) Cần để ý rằng

Miyi ≡ 1 ( mod mi ) với 1 ≤ i ≤ r

Bây giờ ta định nghĩa hàm ρ : Zm1× × Zmr -> ZM như sau

ρ ( a1, ,ar ) = ∑

=

r

i 1

aiMiyi mod M

giải hệ đồng dư thức ban đầu

Kí hiệu X = ρ ( a1, , ar) và cho 1 ≤ j ≤ r Xét số hạng ai Mi yi trong tổng trên khi rút gọn theo modulo mj Nếu i = j thì :

ai Mi yi ≡ ai ( mod mi)

Mặt khác , nếu i ≠ j thì:

ai mi yi ≡ 0 ( mod mi )

do mj | Mi trong trường hợp này Bởi vậy , chúng ta có :

=

r

i 1

aiMiyi ( mod mj )

Trang 10

Do điều này đúng đối với mọi j , 1 ≤ j ≤ r, nên X là nghiệm của hệ phương trình đồng dư

Tới lúc này , cần phải chứng tỏ rằng nghiệm x là duy nhất theo modulo

hàm từ một miền có lực lượng M sang một miền có lực lượng M Ta vừa mới

phép tương ứng 1 –1 ) do miền xác định và miền giá trị có cùng lực lượng Điều đó kéo theo π là một song ánh và π-1 = p Cũng cần chú ý là π-1 là một hàm tuyến tính của các biến a1, ,ar

Ví dụ :

Giả sử r = 3, m1 = 7, m2 = 11 và m3 = 13 Khi đó M = 1001 Ta tính

M1 = 143, M2 = 91 và M3 = 77 và sau đó tính y1 = 5 , y2 = 4 và y3 =12 khi đó hàm π-1 : Z7× Z11 × Z13 -> Z1001 có dạng :

π-1 (a1, a2, a3 ) =715 a1 + 364 a2 +924 a3 mod 1001

Ví dụ , nếu x ≡ 5 ( mod 7 ) , x ≡ 3 ( mod 11 ) , và x ≡ 10 ( mod 13 ) thì công thức trên sẽ cho ta biết rằng :

x = 715 × 5 + 364 × 3 + 924 × 10 mod 1001

= 13907 mod 1001

= 894 mod 1001

Điều này có thể kiểm tra được bằng cách rút gọn 894 theo modulo 7, 11

và 13

Để tham khảo sau này, ta sẽ phải ghi các kết quả của phần này dưới dạng một định lý :

Trang 11

Định lý 2 : Định lý phần dư China

Giả sử m 1 , ,m r là các số nguyên dương nguyên tố cùng nhau từng đôi một và cho a 1 , ,a r là các số nguyên Khi đó , hệ r đồng dư thức

x a i ( mod m i ) , ( 1 i r ) sẽ có một nghiệm duy nhất theo modulo M = m 1 × × m r được cho theo công thức

x =

=

r

i 1

a i M i y i ( mod M ).

trong đó M i = M/m i và y i = M i -1 mod m i , với 1 i r.

3 Một số định lý cần thiết khác

a Định lý Lagrange :

Định lý 3 (Lagrange):

Giả sử G là một nhóm cấp n và g G Khi đó cấp của g là ước của n

b Hệ quả 1:

Nếu b Z n * thì bφ(n) l (mod n ).

c Hệ quả 2 ( Ferma )

Giả sử p là số nguyên tố và b Z p Khi đó b n b ( mod p )

Chứng minh:

Trang 12

Nếu p là số nguyên tố thì φ(n) = p – 1 Bởi vậy , với b ≡ 0 ( mod p ) ,

đúng do 0p≡ 0 ( mod 0 )

α∈ Zp* có cấp bằng p –1

Định lý 4:

Nếu p là số nguyên tố thì Z p * là nhóm cyclic

{α i : 0 ≤ i ≤ p – 2 } = Zp*

phần tử bất kỳ β ∈ Zp* có thể được viết như sau : β = αi , trong đó 0 ≤ i ≤ p –

2 ( theo một cách duy nhất ) Không khó khăn có thể chứng tỏ rằng cấp của

β = αi là :

) , 1 (

1

i p USCLN

p

Như vậy bản thân β sẽ là một phần tử nguyên thuỷ khi và chỉ khi USCLN(p-1,i) = 1 Điều đó dẫn đến là số các phần tử nguyên thuỷ theo modulo p = φ ( p-1 )

Ví dụ:

Giả sử p =13 Bằng cách tính các luỹ thừa liên tiếp của 2 ta có thể thấy rằng , 2 là phần tử nguyên thuỷ theo modulo 13 :

Trang 13

2 mod 13 = 12 2 mod 13 = 11 2 mod 13 = 9

Phần tử 2i là nguyên thuỷ khi và chỉ khi USCLN ( i,12 ) = 1 Nghĩa là khi và chỉ khi i = 1, 5, 7 hoặc 11 Bởi vậy , các phần tử nguyên thuỷ theo modulo 13 là 2, 6, 7 và 11

Ngày đăng: 19/02/2015, 16:58

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w