Tải bản đầy đủ (.ppt) (22 trang)

báo cáo môn an toàn bảo mật thông tin chữ ký mù

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 (131.72 KB, 22 trang )


TRƯỜNG ĐAI HỌC DÂN LẬP HẢI PHÒNG
KHOA CNTT-LỚP CT702
BÁO CÁO MÔN:
AN TOÀN BẢO MẬT THÔNG TIN
CHỮ KÝ MÙ
(BLIND SIGNATURES)
GIÁO VIÊN : TRẦN NGỌC THÁI
SINH VIÊN : 1. BÙI QUANG CHIẾN
2. PHAN THỊ QUỲNH

AN TOÀN BẢO MẬT THÔNG TIN
1. NỘI DUNG CHÍNH
1.1 Khái niệm chữ ký mù.
1.2 Các bước xây dựng chữ ký mù.
1.3 Các thuật toán của chữ ký mù.
1.4 Sơ đồ chữ ký mù theo RSA.
2. .NGHIÊM CỨU CỦA “ FAN_CHEN_YEH’S” VỀ CHỮ KÝ
MÙ.
2.1 Giới thiệu.
2.2 Mô tả sơ đồ ký.
2.3 Sự tấn công.
2.4 Sự cải tiến.
3. KẾT LUẬN

KHÁI NIỆM CHỮ KÝ MÙ
Khái niệm của chữ ký mù trước hết được giới thiệu:
Chúng tôi yêu cầu chữ ký phải được xác thực(chỉ một
người ký , có thể ký nhiều báo cáo) và có thể kiểm tra
chung (bất kỳ người nào cũng có thể kiểm tra xem liệu chữ
ký của bản báo cáo có đúng không).


Trong quá trình ký một người dùng tương tác với một
người ký và có một chữ ký. Trong thời gian sự tương tác
người ký không thể nhìn thấy nội dung tài liệu mà anh ta
đang ký.

KHÁI NIỆM CHỮ KÝ MÙ
Ý tưởng có thể được thực hiện bởi khái niệm của chữ ký RSA.
Nếu người ký có khóa công khai RSA(n,e) và khóa bí mật tương
ứng d, anh ta có thể ký một bản báo cáo m.
Một người nào đó có thể xác minh bằng cách kiểm tra xem liệu
m=s
e
mod n? chú ý rằng cách lập mã và giải mã của hệ thống mã
RSA trong việc ký báo cáo và xác minh chữ ký đó.

KHÁI NIỆM CHỮ KÝ MÙ
Giả sử người thỉnh cầu muốn đạt được chữ ký của bản báo
cáo m. Người đó không muốn để lộ thông tin bản báo cáo m cho
bất kỳ ai biết , kể cả người ký.
Người ký được yêu cầu ký vào một bản báo cáo mù,mà anh ta
không biết mình ký gì.

CÁC BƯỚC XÂY DỰNG CHỮ KÝ MÙ
Nếu người ký có khóa công khai RSA(n,e) và khóa
bí mật tương ứng d. thì người thình cầu sẽ có chữ ký mù
của bản báo cáo m như sau:
1.Người thỉnh cầu che (làm mù) bản báo cáo m được
m’=mr
e
mod n, với r €R Zn ngẫu nhiên và gửi m’ cho người

ký .
2. Người ký, ký vào bản báo cáo đã được làm mù m’ và
cho chữ ký s’=m’
d
mod n đến người thình cầu.
3. người thình cầu lấy lại được chữ ký s của bản báo cáo
m bằng cách tính toán :

s=s’/r=m’
d
/r=m
d
r
ed
/r=m
d
r/r=m
d
;

MÔ HÌNH CHUNG XÂY DỰNG CHỮ KÝ MÙ
Chữ ký mù phối hợp với không gian bản báo cáo M với 5 bộ
dữ kiệu là (ŋ,X,б,δ,Γ) trong đó:
1.ŋ là một thuật toán xác xuất, với việc đặt khóa công khai của
người ký là pk và khóa bí mật tương ứng là sk.
2. X là thuật toán mù, trong đó đặt một bản báo cáo m € M và một
khóa công khai pk và một xâu ngẫu nhiên r, đặt một bản báo cáo
mù m’.



MÔ HÌNH CHUNG XÂY DỰNG CHỮ KÝ MÙ
3. б là một thuật toán ký trong đó đặt một bản báo cáo mù m’ và
khóa bí mật sk đặt chữ ký mù s’ trong m’.
4. δ là một thuật toán đạt được trong đó đặt một chữ ký mù s’ và
một xâu ngẫu nhiên r rút ra một chữ ký s trên m.
5. Γ là một thuật toán xác minh chữ ký mà trên đó đặt một cặp bản
báo cáo _ chữ ký (m,s) khóa công khai pk.

SƠ ĐỒ CHỮ KÝ MÙ THEO RSA
1.Đặt khóa
ŋ(n) : là thuật toán sinh khóa.
Chọn ngẫu nhiên hai số nguyên tố lớn p, q sao cho:
n=p*q; và Φn=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn).
Lúc đó sk(khóa bí mật) sk=pk
-1
.
2.Làm mù báo cáo.
X(pk,r,m): thuật toán làm mù.
m bản rõ
m’ bản mù.
r xâu ngẫu nhiên.
m’=mr
pk
mod n;

SƠ ĐỒ CHỮ KÝ MÙ THEO RSA
3.Quá trình ký.
б(sk,s,m’) là thuật toán ký.
s’=m’

sk
mod n;
4. Lấy lại chữ ký.
δ(s,m’,m) thuật toán lấy lại chữ ký.
s=s’/r=m’sk/r=mskrpk sk/r=mskr/r=msk;
5.Kiểm định chư ký.
Γ(m,s) thuật toán kiểm định chữ ký.
kiểm địmh chữ ký dựa theo quá trình lập mã và giải mã của hệ
thống mã RSA.
Lập mã m’=m
pk
mod n;
Giải mã m=m’
sk
mod n;

GIỚI THIỆU NGIÊN CỨU CỦA “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
Trong phần này chúng tôi trình bày cho các bạn về nghiên cứu
của “ FAN_CHEN_YEH’S” về chữ ký mù. Họ vẫn dựa trên
tưởng của mã RSA. Nhưng họ gợi ý tới việc sử dụng m’=a1||…||at
với a1=m ai=H(a1||…||ai-1) for 1<i<t và |m’|=|n|.Thay vào đó một
hàm băm đơn giản như là MD5 hay SHA.
Để giảm bớt khả năng bị tấn công trong sơ đồ chữ ký mù.

SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
1. Khởi tạo khóa và hàm băm.
Chọn ngẫu nhiên hai số nguyên tố lớn p, q sao cho:
n=p*q; và Φn=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn).
Lúc đó sk(khóa bí mật) sk=pk-1. và một hàm băm H() với cách

băm như là MD5.


SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
2. Làm mù báo cáo.
Khi nhận được yêu cầu ký của một báo cáo m. người sử dụng
chọn ngẫu nhiên một số nguyên r € Zn* và một số nguyên dương
u € Zn.
Tiếp theo tính và đưa ra số nguyên
a Ξ ( r
pk
H(m) (u
2
+1) mod n ) cho người ký.
Sau khi nhận a, người ký chọn ngẫu nhiên một số nguyên
dương x € Zn và gửi tới cho người sử dụng.
Sau khi nhận x, người sử dụng chọn ngẫu nhiên một số nguyên
b € Zn* và tính. β Ξ (b
pk
(u-x) mod n ).
Cuối cùng người sử dụng đưa cho người ký số nguyên β.

SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
3. Quá trình ký.
Sau khi nhận được β người ký tính toán.
t Ξ (a(x
2
+1) β-2 )sk mod n .
tiếp theo người ký gửi t cho người sử dụng.
4. Quá trình làm rõ

sau khi nhận đươc t, người sử dụng tính
c Ξ((ux+1)(u-x)
1
mod n và s Ξ (r
-1
b
2
t ) mod n .
5.quá trình xác định chữ ký .
s là chữ ký của người ký trên băng (c,m) verify (c, m, s),
Một khảo sát nếu s
pk
Ξ H(m)(c
2
+1) mod n .

SỰ TẤN CÔNG SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
Sự tấn công vào sơ đồ chữ ký mù của “
FAN_CHEN_YEH’S”. người tấn công có thể gọi {H(m)(c2+1)}sk
của báo cáo m, với c€Zn do anh ta chọn.
1. Khởi tạo khóa và hàm băm (Giống tạo của sơ đồ ký).
Chọn ngẫu nhiên hai số nguyên tố lớn p, q sao cho:
n=p*q; và Φn=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn).
Lúc đó sk(khóa bí mật) sk=pk-1. và một hàm băm H() với cách
băm như là MD5.

SỰ TẤN CÔNG SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
2. Quá trình làm mù.
Khi gọi {H(m)(c2+1)}

sk
người tấn công chọn ngẫu nhiên số
nguyên r€Zn* và m,c€Zn .Tính toán và đưa
a Ξ ( rpk H(m) (u
2
+1) mod n ) cho người ký. Sau khi nhận a,
người ký chọn ngẫu nhiên một số nguyên dương x € Zn và gửi tới
cho người tấn công . Sau khi nhận x, người tấn công chọn ngẫu
nhiên một số nguyên b € Zn* và tính toán :
β Ξ(b
pk
(x+1
)(pk+1)/2
mod n )
tt
. Cuối cùng người tấn công đưa cho
người ký số nguyên β.
3. Quá trình ký.
Sau khi nhận được β người ký tính toán.
t Ξ(a(x
2
+1) β
-2
)
sk
mod n . tiếp theo người ký gửi tới cho người
tân công .

SỰ TẤN CÔNG SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
4. Quá trình làm rõ

Người tấn công tính toán s Ξ(r
-1
b
2
t ) mod n
Ξ {H(m)(c
2
+1)}
sk
mod n;
5.quá trình xác định chữ ký . (Giống tạo của sơ đồ ký).
s là chữ ký của người ký trên băng (c,m) verify (c, m, s),
Một khảo sát nếu s
pk
Ξ H(m)(c
2
+1) mod n .
Chú ý:
Với gcd(pk,Φn) Ξ 1và (pk+1) là số nguyên thì người tấn công
luôn luôn tính được(x+1
)(pk+1)/2
.Nếu người tấn công thiết lập H{m}=δ
và c=0. sau đó anh ta có thể gọi (δ
sk
mod n) của báo cáo m và cho ra
kết quả.

SỰ CẢI TIẾN SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
Cả hai sơ đồ trên có thể cải tiến để người sử dụng có thể thay
đổi nhân tố ngẫu nhiên x. ý tưởng cơ bản là trướic khi người ký

gửi x cho người sử dụng. người ký yêu cầu người sử dung gửi cho
anh ta để chứng minh và anh ta xác định hai số nguyên u và b rồi
đưa ra kết quả. Người sử dụng không thể nhận được sự chợ giúp
trong quá trình gửi β Ξ(b
pk
(u-x) mod n ) và sau đó nhận x. Dưới
đây là sơ đồ cải tiến.
1. Khởi tạo khóa và hàm băm.
Chọn ngẫu nhiên hai số nguyên tố lớn p, q sao cho:
n=p*q; và (p-1)*(q-1) Ξ 0mod n; g của ZnP×Q
N =Y × (P × Q)
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn).
Lúc đó sk(khóa bí mật) sk=pk-1. và một hàm băm H() với cách
băm như là MD5.

SỰ CẢI TIẾN SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
2. Làm mù báo cáo.
Khi nhận được yêu cầu ký của một báo cáo m. người sử dụng
chọn ngẫu nhiên một số nguyên r € Zn* và một số nguyên dương
u € Zn. Tiếp theo tính toán và đưa ra số nguyên
a Ξ ( r
pk
H(m) (u
2
+1) mod n ) cho người ký. Sau khi nhận a,
người ký chọn ngẫu nhiên một số nguyên dương x € Zn và tính
toán.
∏ Ξ (g
x
mod n) và gửi ∏ cho người sử dụng. Sau khi nhận ∏,

người sử dụng chọn ngẫu nhiên một số nguyên b € Zn* và tính
toán
∏’ Ξ (g
u
x∏ )
(be mod n)
)mod N.
Sau khi nhận ∏’ , người ký gửi x tới cho người sử dụng. Sau khi
nhận x, người sử dụng chọn ngẫu nhiên một số nguyên b € Zn* và
tính toán . β Ξ(b
pk
(u-x) mod n ).
Cuối cùng người sử dụng đưa cho người ký số nguyên β.

SỰ CẢI TIẾN SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
3. Quá trình ký.
Sau khi nhận được β người ký kiểm tra
∏’ Ξ (g
β
mod (p x q). Nếu không đúng từ chối. Ngược lại
tính t Ξ(a(x
2
+1)
β-2
)
sk
mod n . Tiếp theo người ký gửi t cho người sủ
dụng.
4. Quá trình làm rõ (Giống của sơ đồ ký).
Sau khi nhận đươc t, người sử dụng tính

c Ξ((ux+1)(u-x)
1
mod n và s Ξ(r
-1
b
2
t ) mod n .
5.quá trình xác định chữ ký . (Giốngcủa sơ đồ ký).
s là chữ ký của người ký trên băng (c,m) verify (c, m, s),
Một khảo sát nếu s
pk
Ξ H(m)(c
2
+1) mod n .

SỰ CẢI TIẾN SƠ ĐỒ “FAN_CHEN_YEH’S” VỀ CHỮ KÝ MÙ.
Chú ý : Người tấn công không thể tìm được x từ gx và không
tạo ra được thuật toán và kết quả. Anh ta cũng không thể
tính (x
2
+1) trước khi x đã cho. Thành công nhất của anh ta
là có khả năng tính b’: b
pk
(u+x)= b’
pk
(x+1)
(pk+1)/2
mod n .Nhưng
anh ta không biết sk thì anh ta cũng không tính được b’.


KẾT LUẬN
Trên đây chúng em đã trình bày về chữ ký mù, chữ ký
mù theo hệ mã RSA và một số nghiên cứu của
“FAN_CHEN_YEH’S”.
Em xin chân thành cảm ơn thầy Trần Ngọc Thái đã
cung cấp tài liệu cho chúng em.
Đồng thơid cảm ơn mọi người đa lắng nghe chúng em
trình bày.

×