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

Bài giảng an toàn bảo mật hệ thống chủ đề 6 trình bày những kiến thức về chữ ký điện tử

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 (5.15 MB, 25 trang )

Chủ đề 6:

Chữ ký điện tử


Nội dung
Mở đầu
Chữ ký điện tử
Phương pháp RSA
Phương pháp DSA


Mở đầu


Nhắc lại Hàm Băm Mật Mã
Hàm băm mật mã
Tính chất của hàm băm mật mã
Hạn chế ???


Mở đầu
Mục tiêu của chữ ký điện tử (Digital Signature) :
Xác nhận người dùng (Authentication)
Tính tồn vẹn thơng tin (Data Integrity)
Không thể từ chối trách nhiệm (Non-Repudiation)


Demo1

Văn phòng B cần thực hiện giao


dịch hàng
rút tiền
với
Ngân hàng A
Khách
phải
đến
tận nơi để giao dịch.
$ 5,000,000
OK !

?

Người gửi:

Gửi
bằng
email
Văn
phòng
B

Người nhận: Ngân hàng A

Người gửi:

Ngày gửi:

Người nhận: Ngân hàng A


10 / 10 / 2007

Văn phòng B

?

Nội dung:

Ngày gửi:

……..

Nội dung:

Rút $5,000,000

……..

Mã tài khoản: NHB-212551245

Rút $5,000,000

… ....

Mã tài khoản: NHB-212551245
Ngân hàng A
… ....
Gửi

Văn phòng B


1 0/ 10 / 2007


Demo2
Giải mã & kiểm tra chữ ký

Ok! Chấp nhận yêu
cầu & gửi tiền

$ 5,000,000
email
Người gửi:

Văn phịng B

Mã hóa & Ký
Người gửi:

Văn phòng B

Người nhận: Ngân hàng A

Người nhận: Ngân hàng A

Ngày gửi:

Ngày gửi:

10 / 10 / 2007


10 / 10 / 2007

Nội dung:

Nội dung:

……..

……..

Rút $5,000,000

Rút $5,000,000

Mã tài khoản: NHB-212551245

Mã tài khoản: NHB-212551245

… ....

… ....


Mở đầu
Một số khái niệm cơ bản:
Chữ ký điện tử: chuỗi dữ liệu cho phép xác định
nguồn gốc/xuất xứ/thực thể đã tạo ra 1 thơng điệp.
Thuật tốn phát sinh chữ ký điện tử: phương
pháp tạo ra chữ ký điện tử

Chiến lược chữ ký điện tử: bao gồm thuật toán
phát sinh chữ ký điện tử và thuật toán tương ứng
để kiểm chứng chữ ký điện tử.
Digital Signature Scheme =
Digital Signature Generation Algorithm +
Digital Signature Verification Algorithm


Mở đầu
Một số ký hiệu:
M Không gian thông điệp
MS Không gian thông điệp được ký
S Không gian chữ ký
R Ánh xạ 1-1 từ M vào MS (redundancy function)
MR Ảnh của R
R-1 Hàm ngược của R
h Hàm một chiều với tập nguồn M
Mh Không gian giá trị hash (h: M→ Mh)


M
ởđ
ầu
Mở
đầu
Phân loại chữ ký điện tử

Đính kèm (Appendix)

Chiến lược

chữ ký
Khơi phục thông điệp
(Message Recovery)


M
ởđ
ầu
Mở
đầu
Các chiến lược chữ ký với phần đính kèm (appendix)
Chữ ký điện tử đi kèm với thơng điệp gốc
Cần có thơng điệp (gốc) cho q trình kiểm tra chữ
ký điện tử
Sử dụng hàm băm mật mã (thay vì redundancy
function)
Ví dụ: DSA, ElGamal, Schnorr…


M
ởđ
ầu
Mở
đầu
Chữ ký điện tử với phần đính kèm

M

Mh
h


m

mh

S
SA,k

s*
s* = SA,k(mh)
u = VA(mh, s*)

Mh x S

VA

u ∈ {{true,
true, false
}
false}


M
ởđ
ầu
Mở
đầu
Yêu cầu:
Với mỗi k ∈ R, có thể dễ dàng tính SA,k
Phải dễ dàng tính được VA

Rất khó để một người khơng phải là signer có thể
tìm ra m ∈ M và s*∈ S sao cho VA(m’, s*) = true,
với m’ = h(m)


M
ởđ
ầu
Mở
đầu
Chữ ký điện tử có khả năng cho phép khơi phục lại
thông điệp
M

MR
R

m

mr

S
SA,k

s*

MS

S
s*


VA

MR
mr

R-1

M
m


M
ởđ
ầu
Mở
đầu
Yêu cầu:
Với mỗi k ∈ R, có thể dễ dàng tính SA,k
Có thể dễ dàng tính VA
Rất khó (computationally infeasible) để một người
khơng phải là A có thể tìm ra s* ∈ S sao cho
VA(s*) ∈ MR
VD: RSA


M
ởđ
ầu
Mở

đầu
Chuyển từ Chữ ký điện tử có khả năng cho phép khơi
phục lại thơng điệp Ỉ Chữ ký điện tử với phần đính
kèm

M
m

Mh
h

mh

MR
R

mr
MS

S
SA,k

s*


Tạo Chữ ký điện tử
Tạo chữ ký
Dữ liệu

Hash


Dữ liệu

MessageHash

Sign

Khố bí mật

Signature


Kiểm tra Chữ ký điện tử
Kiểm tra chữ ký
Dữ liệu

Hash

Signature

Verify

Khoá công cộng

?


Phương pháp RSA



Phương pháp RSA
Phát sinh khóa n, p, q, e, d
Tạo chữ ký
Tính mr = R(m)
Tính s = mrd mod n
Chữ ký tương ứng với m là s
Kiểm tra chữ ký
Nhận được public key (n, e)
Tính mr = se mod n
Kiểm tra mr ∈ Mr
Khôi phục m = R-1(mr)


Phương pháp DSA

Digital Signature Algorithm
Digital Signature Standard (DSS)


Phương pháp DSA
Phát sinh khóa:
1. Chọn 1 số nguyên tố q 160 bit
2. Chọn 0≤t≤8, chọn 2511+64t 3. Chọn g trong Zp*, và α = g(p-1)/q mod p, α≠1 (α là
phần tử sinh của nhóm con bậc q của Zp*)
4. Chọn 1 ≤ a ≤q-1, tính y= αa mod p
5. public key (p,q, α,y), private key a


Phương pháp DSA

Tạo chữ ký:
Chọn ngẫu nhiên số nguyên k, 0 < k < q
Tính r=(αk mod p) mod q
Tính k-1 mod q
Tính s=k-1 ∗(h(m) + ar) mod q
Chữ ký = (r, s)


Phương pháp DSA
Kiểm tra chữ ký
Kiểm tra 0luận là khơng chữ ký hợp lệ
Tính w= s-1mod q và h(m)
Tính u1=w∗h(m)mod q,
u2=r∗w mod q
Tính v = (αu1yu2 mod p) mod q
Chữ ký hợp lệ ⇔ v = r


Phương pháp DSA
Tính hiệu quả
Tạo chữ ký
Một thao tác tính lũy thừa modulo
Một số thao tác 160-bit (nếu p ~ 768 bit)
Việc tính lũy thừa có thể được tính sẵn trước
Nhanh hơn phương pháp RSA

Kiểm tra chữ ký
Hai thao tác tính lũy thừa modulo
Châm hơn phương pháp RSA



×