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

Bài giảng An toàn dữ liệu - Tuần 3

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 (243.74 KB, 15 trang )

1
An toàn dữ liệu2007
An toàn dữ liệu
Trương Thị Thu Hiền
Bộ môn Các hệ thống thông tin –
trường Đạihọc Công nghệ - ĐHQGHN
2
An toàn dữ liệu2007
Bài giảng Tuần3
• Bài toán Logarith rờirạc
•Traođổi khóa Diffie - Hellman
•Hệ mã hóa ElGamal
•Sơđồchữ ký ElGamal
3
An toàn dữ liệu2007
Bài toán Logarith rờirạc
•Cho một nhóm nhân (G,*), phầntử nguyên thủyg
bậcn, phầntử y thuộc nhóm con sinh ra bởig.
•Tìmsố nguyên x duy nhấtthỏamãn:
g
x
mod n = y
•Khiđó x là logarith rờirạccủa log
g
y
•Nếu cho nhóm nhân Z
p
*
, với p là số nguyên tố
1024 bit, g là phầntử có bậc nguyên tố q 160 bit.
– q | (p-1)


–Z
7
*
= {3,2,6,4,5,1}, nhóm con {2,4,1}
4
An toàn dữ liệu2007
•Tạisaochọnphầntử bậc q thay vì phầntử sinh
củanhómZ
p
*
?
–Bậclàsố nguyên tố sẽ có lợi trong mộtsố trường hợp
như g
ed
= g
•Cânbằng giữa độ an toàn và độ phứctạptính
toán:
–pcầnlớn để bài toán DLP khó, thường khoảng 1024 bit
– Nhóm đượcchọn không nên quá lớnnênbậccủa nhóm
nhỏ (khoảng 160 bit)
Chọn tham số?
5
An toàn dữ liệu2007
Cách chọn tham số
• Làm thế nào để chọn đượcsố nguyên tố p và q sao
cho q|p-1 và mộtphầntử bậcq trongZ
p
*
?
–Cách1: Chọnngẫu nhiên p, sau đó phân tích ra thừasố

(p-1)
–Cách2: sinhngẫu nhiên q trước, sau đóchọnr để
p=2rq+1.
6
An toàn dữ liệu2007
ThỏathuậnkhóaDiffie-Hellman
•Giả sử A và B cùng muốnthỏathuậnmột khóa bí
mật. Giao thứcnhư sau:
– A và B chia sẻ các tham số công khai củanhómZ
p

phầntử sinh g
–A chọnmộtsố ngẫu nhiên x và gửig
x
mod p cho B
–B chọnmộtsố ngẫu nhiên y và gửig
y
mod p cho A
– A nhận được g
y
và tính (g
y
)
x
=g
yx
– B nhận được g
x
và tính (g
x

)
y
=g
xy
– A và B đềucóthể tính g
xy
mod p
–Kẻ thứ 3 khó có thể tính đượcg
xy
7
An toàn dữ liệu2007
CDH và DDH
•Sự an toàn củagiaothứcthỏathuận khóa
Diffie-Hellman dựa trên bài toán CDH
• CDH (Computational Diffie-Hellman)
– Cho nhóm nhân (G,*) và g là phầntử sinh bậcq,
biếtg
x
và g
y
. Tính g
xy
• DDH (Decision Diffie-Hellman)
– Cho nhóm nhân (G,*) và g là phầntử sinh bậcq,
biếtg
x
, g
y
và g
z

. Hỏig
xy
= g
z
mod n
8
An toàn dữ liệu2007
ElGamal
• Được ElGamal đưaranăm 1985
• Độ an toàn dựatrênđộ khó của bài toán Logarith
rờirạc và CDH, DDH
•Bảnmãgồm2 thànhphần
•Sử dụng tham số ngẫunhiên, mỗibảnrõcóthể sẽ
có p-1 bảnmã
9
An toàn dữ liệu2007
ElGamal
• Sinh khóa
–Chọnngẫu nhiên số nguyên tố p sao cho DLP là khó
giải trong Z
p
và phầntử g thuộc nhóm nhân Z
p
*
–Chọnngẫu nhiên a, và tính g
a
mod p
– Khóa công khai là (p, g, b=g
a
)

– Khóa bí mậtlàa
21 −


pa
10
An toàn dữ liệu2007
ElGamal
• Mã hóa
– Có thông điệpM cầnmãhóađể có bảnmãC
–Chọnngẫu nhiên k, 0≤ k ≤p-2
–Tínhx=g
k
mod p và y=M.b
k
mod p
–Bản mã C=(x,y)
• Giảimã
–Tínhx
-a
: x
p-1-a
mod p = x
-a
mod p
–M=x
-a
y mod p
Thựcvậy, x
-a

y mod p = g
-ka
M(g
a
)
k
mod p = M (mod p)
11
An toàn dữ liệu2007
Chữ ký ElGamal
• Sinh khóa
–Chọnngẫu nhiên số nguyên tố p sao cho DLP là khó giải
trong Z
p
và phầntử g thuộc nhóm nhân Z
p
*
–Chọnngẫu nhiên a, và tính
b = g
a
mod p
– Khóa công khai là (p, g, b = g
a
)
– Khóa bí mậtlàa
– Chú ý nên chọn p có khoảng 1024 bit và a khoảng 160
bit.
21 −



pa
12
An toàn dữ liệu2007
Chữ ký ElGamal
• Ký vănbảnM
–Chọnngẫu nhiên k, 0≤ k ≤p-2, k € Z
p-1
*
.
–Tính
–Chữ ký là (r,s)
Chú ý: h là hàm bămdùngđể thu gọnvănbảnM.
13
An toàn dữ liệu2007
Chữ ký ElGamal
• Kiểm tra chữ ký
–Kiểm tra r có thuộcZ
p-1
*
hay không?
–Tínhv
1
=b
r
r
s
mod p
– Tính h(m) và v
2
= g

h(M)
mod p
–Nếuv
1
= v
2
thì chấpnhậnchữ ký, ngượclạiphủ nhận
chữ ký.
14
An toàn dữ liệu2007
Chữ ký ElGamal
• Ví dụ
– Bob chọn p = 11, g = 2, khóa bí mậta = 8.
– Khóa công khai b = 2
8
mod 11 = 3.
– Công khai (p,g,b) tức (11,2,3)
– Bob ký M = 5 thì:
•Chọn k = 9 (có gcd(9,10)=1).
•r = 2
9
mod 11 = 6
• s = 9 (5 – 8 * 6) mod 10 = 3
–Chữ ký là (6,3)
–Kiểmtrachữ ký: 3
6
.6
3
= 2
5

mod 11????
15
An toàn dữ liệu2007
Câu hỏi?
☺ ☺ ☺

×