Các bước làm :
a. Tạo khóa:
Cho p là số nguyên tố sao cho bài toán logarithm rời rạc trong Zp là khó giải. Cho a Î Zp* là phần tử nguyên thuỷ.Giả sử P = Zp* ,
C = Zp* ´ Zp* . Ta định nghĩa:
K = {(p, a,a,b): b º aa (mod p)}
Các giá trị p, a,b được công khai, còn a là khóa bí mật
b. Mã:
Chọn một số ngẫu nhiên bí mật k Î Zp-1, ta xác định:
ek (x,k) = (y1 ,y2 )
trong đó
y1 = ak mod p
y2 = xbk mod p
c. Giải mã
với y1 ,y2 Î Zp* ta xác định:
dk(y1 ,y2 ) = y2 (y1a )-1 mod pa. Tạo khóa:
Cho p là số nguyên tố sao cho bài toán logarithm rời rạc trong Zp là khó giải. Cho a Î Zp* là phần tử nguyên thuỷ.Giả sử P = Zp* ,
C = Zp* ´ Zp* . Ta định nghĩa:
K = {(p, a,a,b): b º aa (mod p)}
Các giá trị p, a,b được công khai, còn a là khóa bí mật
b. Mã:
Chọn một số ngẫu nhiên bí mật k Î Zp-1, ta xác định:
ek (x,k) = (y1 ,y2 )
trong đó
y1 = ak mod p
y2 = xbk mod p
c. Giải mã
với y1 ,y2 Î Zp* ta xác định:
dk(y1 ,y2 ) = y2 (y1a )-1 mod p
Nguồn: Sharecode.vn