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 đó: trong đó: 1.ŋ là một thuật toán xác xuất, với việc đặt khóa công
Trang 1TRƯỜ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
Trang 2AN 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Ý
Trang 3ký 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ý.
Trang 4KHÁ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=se 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ý đó
Trang 5KHÁ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ì
Trang 6CÁ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’=mremod 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=mdred/r=mdr/r=md;
Trang 7MÔ 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 đó:) 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’
Trang 8
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 Γ) trong đó: 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
Trang 9SƠ ĐỒ 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);n=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn=(p-1)*(q-1);n) Lúc đó sk(khóa bí mật) sk=pk-1
Trang 10SƠ ĐỒ CHỮ KÝ MÙ THEO RSA
Γ) trong đó:(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’=mpk mod n;
Giải mã m=m’sk mod n;
Trang 11GIỚ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ù
Trang 12SƠ ĐỒ “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);n=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn=(p-1)*(q-1);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
Trang 13
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 Ξ ( rpk H(m) (u2+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 β Ξ (bpk(u-x) mod n )
Cuối cùng người sử dụng đưa cho người ký số nguyên β
Trang 14sau khi nhận đươc t, người sử dụng tính
c Ξ((ux+1)(u-x)1mod n và s Ξ (r-1b2t ) 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 spk Ξ H(m)(c2+1) mod n
Trang 15SỰ 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);n=(p-1)*(q-1);
Chọn ngẫu nhiên pk(khóa công khai) pk(1<pk<Φn=(p-1)*(q-1);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
Trang 16SỰ 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) (u2+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 :
β Ξ(bpk(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(x2+1) β-2 )sk mod n tiếp theo người ký gửi tới cho người
tân công
Trang 17SỰ 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-1b2t ) mod n
Ξ {H(m)(c2+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 spk Ξ H(m)(c2+1) mod n
Chú ý:
Với gcd(pk,Φn=(p-1)*(q-1);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 (δskmod n) của báo cáo
m và cho ra kết quả
Trang 18SỰ 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 β Ξ(bpk(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=(p-1)*(q-1);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
Trang 19SỰ 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 Ξ ( rpk H(m) (u2+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
∏ Ξ (gx 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
∏’ Ξ (gu 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 β Ξ(bpk(u-x) mod n )
Cuối cùng người sử dụng đưa cho người ký số nguyên β
Trang 20SỰ 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(x2+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)1mod n và s Ξ(r-1b2t ) 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 spk Ξ H(m)(c2+1) mod n
Trang 21SỰ 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 (x2+1) trước khi x đã cho Thành công nhất của anh ta
là có khả năng tính b’: bpk(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’.
Trang 22KẾ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.