Tải bản đầy đủ (.pdf) (5 trang)

Phát triển thuật toán mật mã khóa công khai dựa trên hệ mật Elgamal

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (146.1 KB, 5 trang )

x A || M ) + x A × E ] mod q

M = C × ( R ) x B mod p ,

4- Sử dụng khóa công khai yb của người nhận để
tính thành phần C theo công thức:

E = H ( R || M ) mod q

thì: M = M và E = E .
Chứng minh:

C = M × ( yB ) H ( x A || M ) mod p

Thật vậy, thay (3) vào (5) ta có:

5- Gửi bản mã gồm (C , E , S ) đến người nhận B.

R = g S × ( y A ) E mod p

2.3 Thuật toán giải mã

= g k + x A × E × ( g − x A ) E mod p

Từ bản mã (C , E , S ) nhận được, B khôi phục và
kiểm tra nguồn gốc cũng như tính toàn vẹn của bản
tin ban đầu (M) như sau:

= g k × g x A × E × g − x A . E mod p

(8)



= g k mod p
Từ (8) suy ra:

1- Tính giá trị R theo công thức:

R = g k mod p

(5)

Thay (4) và (9) vào (6) ta có:

2- Khôi phục bản tin ban đầu theo công thức:

M = C × ( R ) x B mod p

x A , xB ∈ [1, q − 1] ,

y A = g − x B mod p ,

mod p

R = g S × ( y A ) E mod p

(7)

4- Kiểm tra nếu E = E thì M = M và M có
nguồn gốc từ người gửi A.

5- Sử dụng khóa công khai của B để tính thành

phần C theo công thức:

C = M × ( yB ) k mod p

Tập V-1, Số 8 (28), tháng 12/2012

(6)

24
22

(9)


Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT

Tập V-1, Số 8 (28), tháng 12/2012

M = C × ( R ) x B mod p

(C , E , S ) sẽ có cả 3 thành phần đều là giả mạo.

= {M × ( yB ) k mod p ×

Rõ ràng là, để được công nhận hợp lệ thì cặp
C * , E * , S * giả mạo này cần phải thỏa mãn:

× ( g k ) x B mod p} mod p
=M×g


−k .xB

×g

k.xB

*

(10)

mod p

*

*

(

)

*

với:

=M



R=R


(11)

Thay (10) và (11) vào (7) ta được:

- Trường hợp thứ hai: Giả mạo về nguồn gốc
nhưng không giả mạo về nội dung, trường hợp
này bản mã nhận được C , E * , S * có cặp

(

(E , S )
*

E = H ( R || M ) mod q
= H ( R || M ) mod q

*

)

là giả mạo, khi đó việc giả mạo sẽ

(

)

thành công nếu C , E * , S * thỏa mãn:
S*

*


E*

E = H (( g × ( y A ) mod p) || M ) mod q

=E
Đây là điều cần chứng minh.
2.5 Mức độ an toàn của thuật toán mới đề xuất
Mức độ an toàn của thuật toán mới đề xuất được
đánh giá bằng:
1) Khả năng chống thám mã.
2) Khả năng chống giả mạo về nguồn gốc và nội
dung của bản tin.
Về khả năng chống thám mã, có thể thấy rằng
mức độ an toàn của thuật toán mật mã mới đề xuất
là hoàn toàn tương đương với thuật toán Elgamal.
Hệ mật chỉ bị phá vỡ nếu khóa mật x có thể tính
được từ việc giải bài toán logarit rời rạc:

y = g − x mod p
hay từ:

S = [ H ( x || M ) + x × E ] mod q
Khả năng chống giả mạo về nguồn gốc và nội
dung bản tin của thuật toán mật mã mới đề xuất
phụ thuộc vào mức độ khó của việc tạo ra các cặp
C * , E * , S * giả mạo thỏa mãn được điều kiện

)


kiểm tra của thuật toán giải mã: E = E . Xét một
số trường hợp như sau:
- Trường hợp thứ nhất: Giả mạo cả về nội dung
và nguồn gốc bản tin, khi đó bản tin nhận được

25



M ∗ = [C ∗ × ( g S × ( y A ) E mod p) x B ] mod p

Từ (8) cũng suy ra:

(

*

E * = H (( g S × ( y A ) E mod p) || M ∗ ) mod q

với:




M = [C × ( g S × ( y A ) E mod p) x B ] mod p
- Trường hợp thứ ba: Giả mạo về nội dung
nhưng không giả mạo về nguồn gốc, ở trường
hợp này bản mã nhận được C ∗ , E , S chỉ có

(


)



thành phần C là giả mạo, việc giả mạo sẽ được
chấp nhận nếu điều kiện sau thỏa mãn:

E = H (( g S × ( y A ) E mod p ) || M ∗ ) mod q
với:

M ∗ = [C ∗ × ( g S × ( y A ) E mod p) x B ] mod p
Cần chú ý là ở 3 trường hợp trên, trong biểu thức
tính M và M* thì xB là khóa bí mật của người nhận
mà kẻ giả mạo không biết được. Mặt khác, với việc
sử dụng H(.) là hàm băm có tính kháng va chạm thì
việc tìm được các cặp C * , E * , S * giả mạo là rất
khó thực hiện.

(

)

III. KẾT LUẬN
Bài báo đề xuất một thuật toán mật mã khóa
công khai được phát triển dựa trên hệ mật ElGamal
có khả năng đồng thời:
1) Bảo mật thông tin.
2) Xác thực về nguồn gốc thông tin.



26Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT

Tập V-1, Số 8 (28), tháng 12/2012

[3] GOST R 34.10-94. Russian Federation Standard.
Information Technology. Cryptographic data Security.
Produce and check procedures of Electronic Digital
Signature based on Asymmetric Cryptographic
Algorithm. Government Committee of the Russia for
Standards, 1994 (in Russian).

3) Xác thực về tính toàn vẹn của thông tin.
Hơn nữa, mặc dù bản mã được tạo ra bởi thuật
toán mới đề xuất bao gồm 3 thành phần (C,E,S)
nhưng độ dài của nó không lớn hơn độ dài bản mã
2 thành phần (C,R) mà thuật toán ElGamal tạo ra.
Giả sử |p| = 512 bit, |q| = 160 bit khi đó độ dài bản
mã do thuật toán ElGamal tạo ra là: |C| + |R| = 512
bit + 512 bit = 1024 bit. Trong khi đó, bản mã với
khả năng xác thực được nguồn gốc và tính toàn
vẹn của nội dung bản tin do thuật toán mới đề xuất
tạo ra chỉ có độ dài: |C| + |E| + |S| = 512 bit + 160
bit + 160 bit = 832 bit.

[4] D.R Stinson, Cryptography: Theory and Practice,
CRC Press 1995.

Những phân tích về mức độ an toàn cho thấy khả
năng ứng dụng thuật toán mới đề xuất là hoàn toàn

thực tế.
TÀI LIỆU THAM KHẢO.
[1] 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.
[2] National Institute of Standards and Technology,
NIST FIPS PUB 186-3. Digital Signature Standard, U.S.
Department of Commerce,1994.
____________________________________________

SƠ LƯỢC VỀ TÁC GIẢ
LƯU HỒNG DŨNG.
Sinh năm 1966 tại Hưng Yên.
Tốt nghiệp đại học ngành Vô tuyến Điện tử tại
Học viện Kỹ thuật Quân sự năm 1989.
Hiện đang công tác tại khoa CNTT- Học viện
KTQS.
Hướng nghiên cứu: An toàn và bảo mật thông tin.
Email: luuhongdung@gmail.com.

26
22



×