Trong phần II, chúng tôi trình bày cơ sở toán học cơ bản liên quan và trong các phần III, phần IV, phần V chúng tôi lần lượt trình bày đề xuất mô hình chữ ký số tập thể ủy nhiệm đa thà[r]
(1)CHỮ KÝ SỐ ỦY NHIỆM TẬP THỂ TRÊN HỆ MẬT ĐỊNH DANH Nguyễn Ánh Việt1*, Nguyễn Kim Tuấn2
Tóm tắt: Trong báo này, chúng tơi đề xuất mơ hình chữ ký số hồn tồn mới, chữ ký số ủy nhiệm tập thể đa thành phần Đồng thời đề xuất lược đồ chữ ký số cụ thể mơ hình dựa hệ mật định danh trong hệ mật tiên tiến xu ứng dụng năm gần Mơ hình chữ ký số cho phép đáp ứng môt cách linh hoạt mềm dẻo nhiều so với mơ hình chữ ký số ủy nhiệm tập thể trước
Từ khóa: Chữ ký số tập thể, Chữ ký số ủy nhiệm, Chữ ký số đa thành phần 1 MỞ ĐẦU
Luật Giao dịch điện tử Quốc hội Việt Nam thông qua ngày 29/11/2005 sở pháp lý cho thương mại điện tử phủ điện tử phát triển, theo luật chữ ký số có giá trị pháp lý chữ ký dấu truyền thống Tuy nhiên, Việt Nam chủ yếu có mơ hình chữ ký số đơn áp dụng Những mô ký tập thể, ký ủy nhiệm ký thay, ký ngưỡng chưa áp dụng chưa đáp ứng nhu cầu phong phú thực tiễn
Chữ ký số ủy nhiệm mô hình, lược đồ ký số mà cá nhân ủy quyền cho cá nhân khác ký thay cho vắng mặt Việc ký ủy nhiệm gắn với thuộc tính để hạn chế điều kiện hiệu lực việc ủy nhiệm, ví dụ hạn chế mặt thời gian, hạn chế mặt nội dung, lĩnh vực ký
Chữ ký số tập thể mô hình, lược đồ ký số mà tất thành viên tập thể tham gia ký vào văn Kích thước chữ ký số tập thể thời gian xác thực tính có độ dài thời gian tính tương đương thành viên, nên chữ ký số tập thể tiết kiệm nhiều khơng gian lưu trữ thời gian tính toán so với chữ ký lặp thành viên
Tác giả Das vào năm 2009 tổng hợp số lược đồ chữ ký số ủy nhiệm [4] Năm 2006, Gentry Ramzan đề xuất chữ ký nhóm dựa ID-Based [8] Năm 2007, Qin Wang Zhenfu Cao đề xuất chữ ký số tập thể ủy nhiệm dựa ID-Based [7]
Sau năm 2009 nhiều lược đồ chữ ký số tập thể ủy nhiệm đề xuất nhiều số dựa hệ mật định danh (ID-Based) [1],[2],[3],[5],[6]
Từ trước tới nay, lược đồ ký tập thể ủy nhiệm, thường gặp trường hợp thành viên tập thể ký vào toàn văn bản, thành viên ký vào phần văn theo thứ tự, nhiên, thực tế số thành viên số thành phần văn thường khác nhau, vậy, khơng có mơ hình ký số giải vấn đề này, mục tiêu nghiên cứu khắc phục nhược điểm kể
(2)Phần lại báo tổ chức sau Trong phần II, chúng tơi trình bày sở tốn học liên quan phần III, phần IV, phần V chúng tơi trình bày đề xuất mơ hình chữ ký số tập thể ủy nhiệm đa thành phần, lược đồ chữ ký số mơ hình hệ mật định danh Cuối cùng, kết luận báo phần VI
2 CƠ SỞ TOÁN HỌC
Năm 1985, Shamir lần đưa ý tưởng hệ mật định danh [11], thay việc tạo khóa cơng khai phương pháp ngẫu nhiên, dùng thông tin định danh địa Email, số chứng minh thư để tạo khóa cơng khai, ưu điểm hệ mật không cần phải trao đổi khóa cơng khai, biết khóa cơng khai từ trước cặp khóa tạo ra, khơng cần phải trao đổi khóa cơng khai tạo theo quy định tường minh dễ dàng Hệ mật khóa cơng khai đặc biệt phù hợp với mơi trường có số lượng lớn người dùng
Từ sau cơng trình Boneh and Franklin [10], hàng loạt cơng trình khác dựa ID-Based phát triển
Nếu P phần tử sinh với nhóm cộng có bậc số nguyên tố q nhóm nhân có bậc bậc nhóm Cặp song tuyến tính (Bilinear Pairing) ánh xạ: ê : × → có thuộc tính sau [9]:
1) Ánh xạ ê song tuyến tính: VớiQ,W, Z∈ , có:
ê(Q,W + Z ) = ê(Q, W) • ê(Q, Z) (1)
ê(Q + W,Z) = ê(Q,Z) • ê(W,Z)
và với a,b∈ ℤ thì:
ê (aQ,bW) = ê (Q,W )ab
= ê (abQ, W)
= ê (Q,abW) = ê (bQ,W)a
2) Ánh xạ ê không bị suy biến: ê (P, P)≠ phần tử đơn vị
3) Ánh xạ ê được tính cách dễ dàng Thơng thường nhóm nhóm điểm nằm đường cong elliptic trường hữu hạn ( ) với t số nguyên tố đủ lớn nhóm nhóm nhân trường hữu hạn liên quan
Định nghĩa 1 (Bài toán logarithm rời rạc - DLP) ChoQ,R ∈ tìm ∈ ∗ cho R = xQ.
Đinh nghĩa 2 (Bài tốn song tuyến tính Diffie-Hellman -BDHP) Cho (P, aP, bP, cP) với a,b,c∈ ℤ P∈ , tính ê (P,P)abc
Bài tốn DLP BDHP tốn khó chưa có thuật toán giải thời gian đa thức [4]
3 ĐỀ XUẤT LƯỢC ĐỒ CHỮ KÝ SỐ ỦY NHIỆM TẬP THỂ ĐA THÀNH PHẦN TỔNG QUÁT
(3)Định nghĩa 3 (Mảng phân công ký ) Giả sử có NSIG người ký Ui; ≤ i ≤
NSIG cần ký văn m ∈ {0,1}* Chia m thành NSEC phần, cho biểu
diễn m dạng:
m = (m1|| m2|| m3|| || mNSEC) Định nghĩa vector ký:
i = | i[1], , i[j], i[NSEC]| i[j] = {0,1} ≤ j ≤ NSEC
Người ký Ui cần phải ký mj thì i[j] = 1, i[j] = 0 Ui ký phần
mj Cho tập thể người ký, định nghĩa mảng sau:
= ( || || || i || || t)
Định nghĩa 4 (Giá trị băm tổng hợp He ký hiệu e) Từng thành viên
Ui chịu trách nhiệm ký số phần văn m, tính giá trị hàm băm hi(mj);
1 ≤ j ≤ NSEC gửi cho người ủy nhiệm, người tính giá trị băm cho mj
sau:
= ∑ [ ] × ℎ ; ≤ ≤ (2)
He = H(e1||e2 ||eNSEC (3)
Vector thỏa thuận định nghĩa từ trước, đó, chữ ký số tập thể đa thành phần không cần phải truyền , nhờ tiết kiệm băng thơng đường truyền Ngồi ra, mơ hình chữ ký số tập thể coi dạng tổng quát, với giá trị đặc biệt thu dạng lược đồ chữ ký số đơn (khi tất giá trị một) lược đồ dạng chữ ký số tập thể hành thành viên ký vào phần văn (vector biểu diễn dạng ma trận đơn vị, có đường chéo khơng vị trí khác)
Định nghĩa (Chữ ký số tập thể ủy nhiệm đa thành phần - MSMS-PROXY) Giả sử văn m chia thành NSEC, có tập thể NOSIG người ủy nhiệm cần ủy nhiệm quyền ký cho tập thể NPSIG người ký, chữ ký tập thể ủy nhiệm đa thành phần tập 13 thành phần (Setup, KeyGenOSIG, KeyGenPubOSIG, SignOSIG,
SignPubOSIG, VerifyOSIG, VerifyPubOSIG, KeyGenPSIG, KeyGenPubPSIG, SignPSIG,
SignPubPSIG, VerifyPSIG, VerifyPubPSIG ) có thuật tốn thực thời gia đa thức với giao thức sau:
1) Khởi tạo tham số params với k tham số độ an toàn, R tham số ngẫu nhiên
params ←Setup (1k) (4) 2) Sinh khóa cơng khai bí mật cho thành viên OSIGi, ≤ i ≤ NOSIG
(PK.OSIGi,SK.OSIGi) ← KeyGenOSIG(params, 1k,i) (5)
Sau có khóa cơng khai thành viên, sinh khóa cơng khai tập thể thuật toán:
(PK.OSIGpub) ← { (PK OSIG )} (6)
(4)← (SK OSIG , ) (7) Người tổng hợp cần phải kiểm tra chữ ký thành viên thuật toán sau:
{0,1} ← { ( , , )} (8)
Nếu tất hợp lệ (Accept) tiến hành tính chữ ký tập thể, khơng u cầu thực lại bước
← { ( )} (9)
4) Xác thực văn tập thể người ủy nhiệm:
{0,1} ← , , (10)
5) Sinh khóa cơng khai bí mật cho thành viên ủy nhiệm PSIGj, ≤ j ≤ NPSIC, w giá trị bảo đảm
( , ) ← params, , , , (11)
Sau có khóa cơng khai thành viên, sinh khóa cơng khai tập thể thuật toán:
( ) ← { , } (12)
6) Hình thành chữ ký tập thể người ủy nhiệm: Từng thành viên PSIGj tham gia ký văn theo thuật toán đây:
← ( , , , ) (13) Người tổng hợp cần phải kiểm tra chữ ký thành viên thuật toán sau:
{0,1} ← { , , , , } (14)
Nếu tất hợp lệ (Accept) tiến hành tính chữ ký tập thể, khơng yêu cầu thực lại bước
← { ( , )} (15)
7) Xác thực văn tập thể người ủy nhiệm:
{0,1} ← , , (16)
4 ĐỀ XUẤT LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ ỦY NHIỆM ĐA THÀNH PHẦN DỰA TRÊN HỆ MẬT ĐỊNH DANH
A Cài đặt
Coi G1 nhóm cộng cyclic có bậc số nguyên tố q phần tử sinh P G2
nhóm nhân cyclic có bậc q ê ánh xạ song tuyến tính:
ê : G1 × G1 → G2
H1,H2,H3 hàm băm sử dụng cho mục đích bảo mật định
nghĩa sau:
H1 : {0,1}* → G1 (17)
H2 : {0,1}* →ℤ∗ (18)
H3 : {0,1}* × {0,1}* →ℤ∗ (19)
(5)Ppub = sP ∈ G1
3) Công bố tham số hệ thống là:
Params = (k, G1,G2, q, ê, H1, H2, H3, P, Ppub)
B Tách khóa
Người ký ủy nhiệm có định danh ID, có NPSIG người ký ủy nhiệm
IDBI vớil ≤ i ≤ NPSIG
1) Bất kỳ tính khóa cơng khai người cần ủy nhiệm:
QID = H1(ID) ∈ G1
và người ủy nhiệm: QIDBi= H1(IDBi) ∈ G1
2) Người quản trị hệ thống tính khóa bímật cho người ủy nhiệm ủy nhiệm:
SID = sQID
SIDBi = sQIDBil ≤ i ≤ NPSIG
Người quản trị thơng qua kênh bí mật gửi khóa bí mật cho thànhviên
C Hình thành chữ ký người ủy nhiệm
1) Với văn ∈ {0, 1}∗người ký cNọn ngẫu nhiên ∈ ℤ∗ 2) Tính giá trị:
Vs = xP
H = H2(m)
Ws = HSID + xPpub
3) Chữ ký người ủy nhiệm = ( , )
D Xác thực chữ ký người ủy nhiệm
1) Với văn m’ chữ ký = ( , ) nhận được, người xác thực tính:
H' = H2(m')
QID = H1(ID)
2) Chấp nhận chữ ký điều kiện sau thoả mãn:
ê(Ws, P) = ê(H'QID + Vs, Ppub) (20)
E Sinh khóa cho người ủy nhiệm
Trong giai đoạn người ủy nhiệm trao đổi với người ủy nhiệm với quyền ủy nhiệm Để làm việc người ủy nhiệm tạo văn bảo đảm , văn kèm theo số thông tin văn bản, hạn chế văn ủy nhiệm, thời gian định danh người ủy nhiệm
1) Ủy nhiệm: Người cần ủy nhiệm chọn ngẫu nhiên ∈ ℤ∗và tính:
V = tP,
h = H2( ),
W = hSID + tPpub∈ G1
(6)2) Kiểm tra ủy nhiệm: Mỗi thành viênIDBi tính h = H2( ) kiểm tra điều kiện sau (nếu khơng thỏa mãn phải u cầu gửi lại hủy giao thức):
ê(W,P) = ê(hQID + V, Ppub)
3) Sinh khóa ủy nhiệm: Mỗi thành viênIDBi tính h = H2( ) tính khóa bí mật
ủy nhiệm:
= + ℎ
F Hình thành chữ ký ủy nhiệm
Trong phần có người phụ trách có nhiệm vụ tập hợp hết tất chữ ký thành phần
1) Mỗi thành viên IDBi chọn ngẫu nhiên số ∈ ℤ∗
2) Mỗi thành viên Ui (1 ≤ i ≤ NPSIG) chọn NSEC số nguyên [ ] ∈ ℤ∗ ; (1 ≤ j
≤ NSEC) khóa riêng tính khóa cơng khai tương ứng theo cơng thức:
= ( ⊗ ) (21)
Với định nghĩa phép tốn:
⊗ = ( [ ] × [ ])( ) (22)
Giả thiết có n người Ui;(1 ≤ i ≤ NPSIG) cần ký vănbản ∈ {0,1}∗ Chia
văn m thànhphần NSEC,sao cho viết m theo dạng
m = (m1||m2||m3|| |mNSEC)
sử dụng ký hiệu định nghĩa mảng phân công ký Định nghĩa
Từng thành viên Ui chịu trách nhiệm ký số phần văn m, tính giá
trị hàm băm hi(mj); (1 ≤ j ≤ NSEC) gửi cho người ủy nhiệm, người tính
giá trị băm cho mj sau:
= [ ] × ℎ ( ) ; (1 ≤ ≤ ) (23)
h3 = H3(e1||e2 ||eNSEC, ) (24)
Bằng cách tính thu chữ ký số tập thể có phân biệt trách nhiệm, gửi giá trị Upi đến (NPSIG - l) thành viên cịn lại
3) Các thành viên tính gửi :
= (25)
= ℎ + ( ⊗ ) (26) 4) Người phụ trách sau có chữ ký thành phần tạo khóa cơng khai ủy nhiệm:
= ℎ + + (27) sau kiểm tra điều kiện:
(7)= (29)
sau chữ ký số ủy nhiệm ( , , , , )
G Xác thực chữ ký ủy nhiệm
Người xác thực chữ ký ủy nhiệm sau nhận văn m' chữ ký
( , , , , ) tiến hành bước sau:
1) Kiểm tra m' bảo đảm điều kiện liên quan
2) Kiểm tra ủy quyền NPSIG người ký Nếu khơng hợp lệ dựng lại từ chối chữ ký
3)Tính giá trị: h = H2( )
h’3 = H3(m’, )
= ℎ + + ×
4) Kiểm tra điều kiện sau chấp nhận chữ ký, ngược lại từ chối chữ ký:
ê( , ) = ê , ℎ′ + (30)
Định lý 6 (Lược đồ ký tập thể ủy nhiệm đa thành phần) Nếu m’ = m ê ( , ) = ê , ℎ′ +
Chứng minh :
ê , = ê , ℎ +
ê , = ê , ℎ +
ê , [ℎ + ( ⊗ ) ] = ê , ℎ +
ê , [ℎ ( + ℎ ) + ( ⊗ ) ] = ê , ℎ +
ê , [ℎ (ℎ + + ℎ ) + ( ⊗ ) ]
= ê , ℎ +
ê , [ℎ (ℎ + + ℎ ) + ( ⊗ ) ] = ê , ℎ +