BÀI 5.CHỮ KÝ SỐ

21 3 0
BÀI 5.CHỮ KÝ SỐ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

13/09/2021 BÀI CHỮ KÝ SỐ Bùi Trọng Tùng, Viện Công nghệ thông tin Truyền thông, Đại học Bách khoa Hà Nội 1 Nội dung • Khái niệm chữ ký số • Một số phương pháp ký số • Giao thức chữ ký số • Hạ tầng khóa cơng khai PKI 2 13/09/2021 KHÁI NIỆM CƠ BẢN 3 Khái niệm – Digital Signature • Chữ kí số(Digital Signature) hay cịn gọi chữ ký điện tử đoạn liệu bên gửi gắn vào văn gốc để chứng thực nguồn gốc nội dung văn • Yêu cầu: • Tính xác thực: người nhận chứng minh văn • • • • ký gửi Tính tồn vẹn: người nhận chứng minh khơng có sửa đổi văn ký Không thể tái sử dụng: chữ ký có giá trị văn Khơng thể giả mạo Chống từ chối: người gửi phủ nhận hành động ký vào văn • Đề nghị Diffie-Hellman: Sử dụng khóa cá nhân mật mã công khai để tạo chữ ký 4 13/09/2021 Chữ ký số • Hàm sinh khóa: Gen() • Hàm ký S(sk, m) • Đầu vào: • sk: Khóa ký • m: Văn cần ký • Hàm ký phải có tính ngẫu nhiên • Bất kỳ có khóa sk tạo chữ ký • Đầu ra: chữ ký số sig • Hàm kiểm tra: V(pk, m, sig) • Đầu vào: • Bất kỳ có khóa pk kiểm tra chữ ký • pk: Khóa thẩm tra • m, sig • Đầu ra: True/False • Tính đắn: V(pk, m, S(sk,m)) = True 5 Tấn cơng vào chữ ký số • Kẻ công chọn trước số tin 1, 2, , có chữ ký tin ← ( , ) ∉ { 1, 2, , } • Mục tiêu: Tạo chữ ký cho tin • Yêu cầu đồi với chữ ký số: Xác suất công thành công không đáng kể • Quiz: Nếu kẻ cơng tìm tin m1, m2 cho V(pk, m1, sig) = V(pk, m2, sig) ∀(sk, pk)thì chữ ký số có an tồn khơng? 6 13/09/2021 Một số ứng dụng chữ ký số • Chữ ký xác thực phần mềm Khởi tạo cài đặt, pk sk Cập nhật, sig • Chữ ký xác thực giao dịch Chi tiết giao dịch Chữ ký số Chi tiết giao dịch, Mã PIN (nếu có) sk Chữ ký số • Chữ ký xác thực thư điện tử: DKIM •… 7 Khi cần sử dụng chữ ký số? • Nếu bên ký bên xác thực: sử dụng MAC/HMAC  bên cần chia sẻ trước khóa bí mật  Khơng có khả chống từ chối: bên nhận thay đổi nội dung ký lại • Nếu bên ký nhiều bên xác thực: sử dụng chữ ký số  Bên ký cần công bố khóa cơng khai  Có khả chống từ chối 8 13/09/2021 Chữ ký số dựa hàm băm • Phía gửi : hàm ký Băm tin gốc, thu giá trị băm h Mã hóa giá trị băm khóa riêng  chữ kí số sig Gắn chữ kí số lên tin gốc (m || sig) • Phía nhận : hàm xác thực Tách chữ kí số sig khỏi tin Băm tin m, thu giá trị băm h Giải mã sig với khóa công khai người gửi, thu h’ So sánh : h h’ Kết luận 9 Chữ ký số dựa hàm băm • Hàm ký: sig = S(sk, m) = E(sk, H(m)) • Hàm xác thực: V(pk, m, sig) = V(pk, m, E(sk, H(m))) 10 10 13/09/2021 Một số phương pháp tạo chữ ký số • Chữ ký số lần: khóa dùng để ký tin  Thuật tốn Lamport • Chữ ký số nhiều lần:  Chữ ký số RSA  Chữ ký số ElGamal  Chuẩn chữ ký số DSS • Chữ ký mù: người ký khơng biết nội dung tin 11 11 Chữ ký số RSA • Sinh cặp khóa: kU = (n, e), kR = (n, d) • Chữ ký: sig = E(kR, H(m)) = H(m)d mod n • Thẩm tra: H(m) = sige mod n chấp nhận D(kU, sig) 12 12 13/09/2021 Chuẩn chữ ký số DSS (Đọc thêm) • Digital Signature Standard • Các tham số:  Hàm băm H  L: bội số 64, N ≤ Kích thước mã băm • Tạo khóa nhóm kUG = (p, q, g):  Số nguyên tố q kích thước N bit  Số nguyên p kích thước L bit, cho p−1 bội số q  Chọn h ngẫu nhiên ≤ h ≤ p −  g = h(p - 1)/q mod p • Khóa riêng: x ngẫu nhiên thỏa mãn < x < q • Khóa cơng khai: y = gx mod p 13 13 Chuẩn chữ ký số DSS • Tạo chữ ký:  Chọn giá trị < k < q ngẫu nhiên  Tính r = (gk mod p) mod q ; r = chọn lại k  Tính s = [k -1 (H(m) + xr)] mod q; s = chọn lại k  Chữ ký (r, s) • Thẩm tra chữ ký:  w = (s)-1 mod q  u1 = [H(m)w] mod q  u2 = rw mod q  v = [(gu1yu2) mod p] mod q  Nếu v = r chữ ký hợp lệ 14 14 13/09/2021 An toàn cho chữ ký số • Tính an tồn khóa cá nhân • Vấn đề: khóa cá nhân bị kẻ cơng đánh cắp, giả mạo chữ ký người sở hữu khóa • Giải pháp: • Bảo vệ mật • Sử dụng thẻ thơng minh(Smart Card) • Sử dụng thiết bị lưu trữ an tồn (USB Token) • Tính tin cậy khóa cơng khai • Vấn đề: kẻ cơng làm sử dụng khóa cơng khai giả mạo Nếu người dùng bị đánh lừa, họ tin cậy vào chữ ký giả mạo • Giải pháp: sử dụng hệ thống PKI để phát hành khóa cơng khai dạng chứng thư số 15 15 Bảo vệ khóa cá nhân(1) • Khóa cá nhân đóng gói vào file(ví dụ pfx), lưu thiết bị nhớ thơng thường (ổ cứng, USB…) • File bảo vệ mật dạng mã PIN • Mức an tồn thấp nhất: • Dễ dàng chép file chứa khóa • Mã PIN bị đốn nhận 16 16 13/09/2021 Bảo vệ khóa cá nhân(2) • Khóa lưu trữ chip điện tử (IC) Smart Card • Khi thực ký số: • Giá trị băm truyền vào chip IC • Chip IC mã hóa giá trị băm khóa cá nhân (yêu cầu người dùng nhập mã PIN)  chữ ký số • Truyền chữ ký số từ Smart Card tới ứng dụng • u cầu: • Phải có đầu đọc chuyên dụng • Thư viện API để giao tiếp 17 17 Bảo vệ khóa cá nhân (3) • Khóa lưu trữ thiết bị nhớ chuyên dụng, sử dụng giao tiếp USB • Có nhiều mức độ giải pháp khác nhau: • Chỉ có chức lưu trữ khóa, cho phép ứng dụng truy xuất khóa cá nhân để sử dụng • Kịch sử dụng tương tự Smart Card • Khóa sinh thiết bị 18 18 13/09/2021 GIAO THỨC CHỮ KÝ SỐ 19 19 Chữ ký điện tử có trọng tài • Trọng tài (Trent – T) có nhiệm vụ:  Áp dụng số lần kiểm tra lên tin, kiểm tra tính tồn vẹn nội dung nguồn gốc  Kiểm tra nhãn thời gian (timestamp) tin (1) A  T: IDA || E(kUB,m) || SA(E(kUB,m)) || TA || SA(mAB) mAB = IDA || E(kUB,m) || SA(E(kUB,m)) || TA SA(E(kUB, m)) = E(kRA, H(E(kUB, m))) (2) T  A: IDA || E(kUB,m) || SA(E(kUB,m)) || TA || ST(mAB) ST(mAB) = E(kRT, H(mAB)) (3) A gửi cho B tin 20 10 20 13/09/2021 Chữ ký mù (Blind Signature) • Một số giao dịch điện tử yêu cầu cần che giấu thông tin cá nhân bên tham gia: Thương mại điện tử Bầu cử điện tử • Chữ ký mù: người ký nội dung văn Người kiểm tra tính hợp lệ phiếu bầu không phép biết nội dung phiếu (tên cử tri, người cử tri bầu ) Sau xác minh chấp nhận cho khách hàng rút tiền, ngân hàng kiểm tra lại tờ tiền điện tử lưu thơng có tên người rút 21 21 Chữ ký mù RSA cho Phiếu bầu điện tử • Cơ quan bầu cử sử dụng cặp khóa kU = (e,n), kR = (d,n) • Sau thực xác thực với quan bầu cử, Alice điền thông tin phiếu bầu Thông tin ghi lên tin x:  Chọn giá trị ngẫu nhiên r  Làm mù nội dung phiếu: m’ = (H(x).re)  Đưa cho quan bầu cử ký • Cơ quan BC thực ký mù mod n Chữ ký điện tử quan BC lên X s’ = (m’)d mod n = ((H(x))d.r) mod n • Alice xóa mù chữ ký: s = s’.r−1 mod n = (H(x))d mod n Lưu ý < r−1 < n giá trị cho r.r−1 mod n = • Phiếu điện tử Alice (x, s) • Làm để quan kiểm phiếu tin tưởng phiếu bầu quan bầu cử phát hành? 22 11 22 13/09/2021 Chữ ký mù phần • Ngăn chặn người gửi gian lận nội dung • Giao thức: (1) Alice gửi cho trọng tài n tin (đã làm mù n giá trị ngẫu nhiên khác nhau), có chứa tin cần trọng tài ký (2) Trọng tài yêu cầu Alice gửi k giá trị làm mù (3) Trọng tài kiểm tra tính hợp lệ nội dung k tin (4) Nếu k tin hợp lệ, trọng tài ký vào “siêu tin” ghép từ (n-k) tin lại 23 23 Chữ ký nhóm • u cầu: Chỉ xác thực chữ ký nhóm ký, khơng xác định xác người ký • Giao thức: (1) Người quản trị tạo n*m cặp khóa (2) Người quản trị phân phối cho thành viên nhóm m cặp khóa (3) Người quản trị cơng bố danh sách khóa cơng khai (thứ tự xáo trộn) (4) Khi cần ký, người lựa chọn khóa cá nhân ngẫu nhiên để ký (5) Người xác thực tìm khóa công khai danh sách (3) để xác thực chữ ký 24 12 24 13/09/2021 HẠ TẦNG KHĨA CƠNG KHAI 25 25 Hạ tầng khóa cơng khai PKI • Public Key Infrastructure • Hệ thống bao gồm phần cứng, phần mềm, sách, thủ tục cần thiết để tạo, quản lý lưu trữ, phân phối thu hồi chứng thư số • Chứng thư số: văn điện tử chứng thực khóa cơng khai • Các thành phần: • RA(Registration Authority): Chứng thực thơng tin đăng ký • CA(Certification Authority): Phát hành quản lý chứng thư số • CR(Certificate Reposiroty): Lưu trữ, chứng thực chứng thư số • EE(End-Entity): đối tượng sử dụng chứng thư số 26 13 26 13/09/2021 Các thành phần PKI 27 27 Chứng thư số X.509 28 14 28 13/09/2021 Chứng thư số X.509 • Version: phiên chứng thư số • Số serial chứng thư số (tối đa 20 byte) • Algorithm: Thuật tốn chữ ký số CA sử dụng để ký • Issuer: Thơng tin quan cấp chứng thư số • C: Quốc gia • CN: Tên giao dịch CA • DN: Tên định danh • O: Tên tổ chức phát hành • ST: Tên đơn vị hành trực thuộc trung ương • Validity: Thời gian hiệu lực chứng thư số • Not Before: Ngày bắt đầu có hiệu lực • Not after: Ngày hết hiệu lực 29 29 Chứng thư số X.509(tiếp) • Subject: Thơng tin người cấp chứng thư • Các trường tương tự thông tin tổ chức phát hành • Subject’s Public Key Information: Thơng tin khóa cơng khai • Algorithm: Thuật tốn tạo khóa • Public Key: Giá trị khóa • Signature: chữ ký số quan cấp chứng thư số • Issuer UID: định danh quan cấp chứng thư số • Subject UID: định danh người cấp chứng thư • Extensions: Các trường mở rộng khác 30 15 30 13/09/2021 Xác thực chứng thư số Chứng thư số cần kiểm tra tính tin cậy: • Kiểm tra tên thực thể sử dụng có khớp với tên đăng ký chứng thư số • Kiểm tra hạn sử dụng chứng thư số • Kiểm tra tính tin cậy CA phát hành chứng thư số • Kiểm tra trạng thái thu hồi chứng thư số • Kiểm tra chữ ký chứng thư số để đảm bảo chứng thư không bị sửa đổi, làm giả 31 31 Thu hồi chứng thư số • Thực khóa người dùng an toàn PKI Yêu cầu thu hồi chứng thư số ID=1234 Alice Công bố: Chứng thư số ID = 1234 Tình trạng: Đã thu hồi Thơng tin cơng bố ký CA Kiểm tra thơng tin tình trạng chứng thư số: phương pháp - CRLs - OCSP Bob 32 16 32 13/09/2021 CRLs • PKI cơng bố danh sách chứng thư số bị thu hồi Danh sách ký CA Chứng thư số ID = 1234 Tình trạng: Đã thu hồi PKI Download CRLs Bob Hạn chế: - Kích thước CRLs lớn - Khơng cập nhập liên tục 33 33 OCSP • Dịch vụ kiểm tra trạng thái chứng thư số trực tuyến(Online Certificate Status Protocol) Hãy cho biết tình trạng chứng thư số ID = 1234 Bob Chứng thư số ID = 1234 bị thu hồi PKI Hãy cho biết tình trạng chứng thư số ID = 5678 Chứng thư số ID = 5678 cịn giá trị Thơng điệp trả lời từ PKI ký CA 34 17 34 13/09/2021 Kiến trúc PKI • Kiến trúc PKI đa dạng, tương ứng theo mơ hình hoạt động tổ chức • Các kiến trúc PKI sau phân loại dựa số lượng CA, tổ chức mối quan hệ chúng:  Kiến trúc đơn CA (Sigle CA)  Kiến trúc PKI xí nghiệp (Enterprise PKI)  Kiến trúc PKI lai (Hybrid PKI) 35 35 Kiến trúc đơn CA • Chỉ sử dụng CA hệ thống PKI • Đơn giản, phù hợp với hệ thống nhỏ • Khơng có khả mở rộng • Mơ hình danh sách tin cậy: thực thể sử dụng chứng thư số phát hành CA khác  Mỗi CA có danh sách CA mà tin cậy  Mỗi CA phải nằm danh sách tin cậy CA lại  Hạn chế: Ln địi hỏi phải đồng Ví dụ: CA ngừng hoạt động 36 18 36 13/09/2021 Kiến trúc PKI phân cấp • Mỗi CA chứng thực cho tất CA cấp • Dễ dàng mở rộng • Yêu cầu: Root CA cần giữ an tồn tuyệt đối(thơng thường Root CA ln nằm phân vùng mạng offline) 37 37 Chứng thư số kiến trúc PKI phân cấp 38 19 38 13/09/2021 Chuỗi xác thực • Một chứng thư phát hành hệ thống PKI phân cấp cần chứng thực theo chuỗi hướng từ nút gốc tới nút phân cấp • Ví dụ: Một chứng thư kiến trúc phân cấp Certificate Certificate Certificate “I’m because I say so!” “I’m because says so” “I’m because says so” 39 39 Chuỗi chứng thực ✓ ✓ Certificate ✓ Certificate Certificate “I’m because I say so!” “I’m because says so” “I’m because says so” Chuỗi xác thực từ chối chứng thư số có bước cho kết xác thực thất bại 40 20 40 13/09/2021 Tổng kết • Chữ ký số:  Sử dụng hệ mật mã khóa cơng khai  Tạo chữ ký: người gửi dùng khóa cá nhân để mã hóa mã băm tin  Xác thực chữ ký: người nhận sử dụng khóa cơng khai người gửi để xác thực  Cần đảm bảo an tồn cho khóa cá nhân xác thực khóa cơng khai • PKI  Phát hành chứng thư số để xác thực khóa cơng khai người dùng  Chứng thư số X.509: chứa khóa thơng tin cơng khai người dùng, xác thực chữ ký số CA 41 41 21

Ngày đăng: 01/04/2022, 12:07

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan