Chương 13: Chữ ký điện tử và thủ tục xác nhận  Fourth Edition by William Stallings Lecture slides by Lawrie Brown
Chữ ký điện tử Digital Signatures <ul><li>Được xem như mẩu tin được xác thực </li></ul><ul><li>Cung cấp các khả năng để </...
Các tính chất của chữ ký điện tử Digital Signature Properties <ul><li>Cần phải phụ thuộc vào nội dung ký </li></ul><ul><li...
Chữ ký điện tử trực tiếp Direct Digital Signatures <ul><li>Bao gồm chỉ người gửi và người nhận </li></ul><ul><li>Người nhậ...
Chữ ký điện tử có trọng tài Arbitrated Digital Signatures <ul><li>Bao gồm cả việc sử dụng trọng tài A </li></ul><ul><ul><l...
Thủ tục xác thực Authentication Protocols <ul><li>Làm cho các bên tin tưởng vào danh tính của nhau để trao đổi khoá kỳ </l...
Tấn công trì hoãn Replay Attacks <ul><li>Bao gồm chỉ người gửi và người nhận </li></ul><ul><li>Người nhận được phép có kho...
Sử dụng khoá đối xứng  Using Symmetric Encryption <ul><li>Như đã thảo luận trước có thể sử dụng kiến trúc 2 tầng khoá </li...
Needham-Schroeder Protocol <ul><li>Thủ tục phân phối khoá có bên thứ 3 tham gia </li></ul><ul><li>Tạo khoá kỳ giữa A và B ...
Needham-Schroeder Protocol <ul><li>Sử dụng phân phối khoá bộ phận mới để A và B trao đổi </li></ul><ul><li>Có lỗ hổng là b...
Sử dụng khoá công khai Using Public-Key Encryption <ul><li>Có nhiều ứng dụng dựa trên khoá công khai </li></ul><ul><li>Cần...
Denning AS Protocol <ul><li>Denning 1981 đề xu ất </li></ul><ul><li>1.  A ->   AS:  ID A   ||  ID B </li></ul><ul><ul><li>...
Xác thực một chiều  One-Way Authentication <ul><li>Được dùng khi người nhận và người gửi không cùng ở trạng thái trao đổi ...
Sử dụng khoá đối xứng  Using Symmetric Encryption <ul><li>Có thể làm tốt hơn ứng dụng của KDC nhưng không thể trao đổi nhã...
Sử dụng khoá công khai  Public-Key Approaches <ul><li>Chúng ta đã thấy một số cách tiếp cận khoá công khai </li></ul><ul><...
Chuẩn chữ ký điện tử (DSS)  Digital Signature  Standard  <ul><li>Chính phủ Mỹ ủng hộ sơ đồ chữ ký điện tử FIPS 186  </li><...
Thuật toán chữ ký điện tử DSA Digital Signature  Algorithm  (DSA) <ul><li>Tạo 320 bit chữ ký </li></ul><ul><li>Với lựa chọ...
Digital Signature  Algorithm  (DSA)
Sinh khoá  DSA  DSA Key Generation <ul><li>Chia sẻ giá trị khoá công khai tổng thể  (p,q,g):  </li></ul><ul><ul><li>số ngu...
Tạo chữ ký DSA  DSA Signature Creation <ul><li>Để ký mẩu tin M người gửi cần </li></ul><ul><li>Sinh khoá chữ ký ngẫu nhiên...
Kiểm chứng chữ ký  DSA  DSA Signature Verification  <ul><li>Nhận được bản tin  M cùng với chữ ký  (r, s) </li></ul><ul><li...
Summary <ul><li>have discussed: </li></ul><ul><ul><li>digital signatures </li></ul></ul><ul><ul><li>authentication protoco...
Upcoming SlideShare
Loading in...5
×

Ch13

2,039

Published on

Published in: Education, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,039
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
362
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Lecture slides by Lawrie Brown for “Cryptography and Network Security”, 4/e, by William Stallings, Chapter 13 – “ Digital Signatures &amp; Authentication Protocols ”.
  • Ch13

    1. 1. Chương 13: Chữ ký điện tử và thủ tục xác nhận Fourth Edition by William Stallings Lecture slides by Lawrie Brown
    2. 2. Chữ ký điện tử Digital Signatures <ul><li>Được xem như mẩu tin được xác thực </li></ul><ul><li>Cung cấp các khả năng để </li></ul><ul><ul><li>Kiểm chứng tác giả, ngày và giờ ký </li></ul></ul><ul><ul><li>Xác thực nội dung mẩu tin </li></ul></ul><ul><ul><li>Được kiểm chứng bởi bên thứ 3 để chống từ chối </li></ul></ul><ul><li>Vì vậy bao gồm hàm xác thực </li></ul><ul><li>và một số khả năng bổ sung </li></ul>
    3. 3. Các tính chất của chữ ký điện tử Digital Signature Properties <ul><li>Cần phải phụ thuộc vào nội dung ký </li></ul><ul><li>Cần sử dụng thông tin đặc trưng duy nhất đối với người gửi </li></ul><ul><ul><li>Để chống cả giả mạo và từ chối </li></ul></ul><ul><li>Cần phải tương đối dễ dàng tạo ra </li></ul><ul><li>Dễ dàng đoán nhận và kiểm chứng </li></ul><ul><li>Không thể tính toán giả mạo được </li></ul><ul><ul><li>Với bản tin mới và chữ ký đã có </li></ul></ul><ul><ul><li>Với chữ ký giả mạo cho 1 bản tin </li></ul></ul><ul><li>Có thể lưu trữ cất chữ ký điện tử </li></ul>
    4. 4. Chữ ký điện tử trực tiếp Direct Digital Signatures <ul><li>Bao gồm chỉ người gửi và người nhận </li></ul><ul><li>Người nhận được phép có khoá công khai của người gửi </li></ul><ul><li>Chữ ký được người gửi ký trên toàn bộ mẩu tin hoặc Hash với khoá riêng </li></ul><ul><li>Có thể mã bằng khoá công khai của người nhận </li></ul><ul><li>Quan trọng là ký trước và sau đó mã hoá bản tin và chữ ký </li></ul><ul><li>Tính an toàn phụ thuộc vào khoá riêng của người gửi </li></ul>
    5. 5. Chữ ký điện tử có trọng tài Arbitrated Digital Signatures <ul><li>Bao gồm cả việc sử dụng trọng tài A </li></ul><ul><ul><li>Kiểm tra mọi mẩu tin được ký </li></ul></ul><ul><ul><li>Sau đó điền ngày giờ và gửi cho người nhận </li></ul></ul><ul><li>Đòi hỏi mức độ tin cậy hợp lý đối với trọng tài </li></ul><ul><li>Có thể cài đặt với thuật toán khoá riêng hoặc khoá công khai. </li></ul><ul><li>Trọng tài có thể được xem hoặc không được xem mẩu tin </li></ul>
    6. 6. Thủ tục xác thực Authentication Protocols <ul><li>Làm cho các bên tin tưởng vào danh tính của nhau để trao đổi khoá kỳ </li></ul><ul><li>Có thể 1 chiều và đa trị </li></ul><ul><li>Vấn đề chính là </li></ul><ul><ul><li>Bảo mật - để bảo vệ khoá kỳ </li></ul></ul><ul><ul><li>Thời sự - chống tấn công trì hoãn </li></ul></ul><ul><li>Các thủ tục đã công bố bị phát hiện có lỗi và cần được điều chỉnh </li></ul>
    7. 7. Tấn công trì hoãn Replay Attacks <ul><li>Bao gồm chỉ người gửi và người nhận </li></ul><ul><li>Người nhận được phép có khoá công khai của người gửi </li></ul><ul><li>Chữ ký được người gửi ký trên toàn bộ mẩu tin hoặc Hash với khoá riêng </li></ul><ul><li>Có thể mã bằng khoá công khai của người nhận </li></ul><ul><li>Quan trọng là ký trước và sau đó mã hoá bản tin và chữ ký </li></ul><ul><li>Tính an toàn phụ thuộc vào khoá riêng của người gửi </li></ul>
    8. 8. Sử dụng khoá đối xứng Using Symmetric Encryption <ul><li>Như đã thảo luận trước có thể sử dụng kiến trúc 2 tầng khoá </li></ul><ul><li>Thông thường có Trung tâm phân phối khoá tin cậy </li></ul><ul><ul><li>Mỗi bên chia sẻ khoá chính của mình với KDC </li></ul></ul><ul><ul><li>KDC sinh khoá kỳ được sử dụng trao đổi giữa các bên </li></ul></ul><ul><ul><li>Khoá chính được dùng để phân phối khoá kỳ </li></ul></ul>
    9. 9. Needham-Schroeder Protocol <ul><li>Thủ tục phân phối khoá có bên thứ 3 tham gia </li></ul><ul><li>Tạo khoá kỳ giữa A và B do KDC cung cấp </li></ul><ul><li>Thủ tục cụ thể như sau: </li></ul><ul><ul><li>1. A->KDC: ID A || ID B || N 1 </li></ul></ul><ul><ul><li>2 . KDC -> A: E Ka [Ks || ID B || N 1 || E Kb [ Ks || ID A ] ] </li></ul></ul><ul><ul><li>3. A -> B: E Kb [ Ks || ID A ] </li></ul></ul><ul><ul><li>4. B -> A: E Ks [ N 2 ] </li></ul></ul><ul><ul><li>5. A -> B: E Ks [f( N 2 )] </li></ul></ul>
    10. 10. Needham-Schroeder Protocol <ul><li>Sử dụng phân phối khoá bộ phận mới để A và B trao đổi </li></ul><ul><li>Có lỗ hổng là bị tấn công trì hoãn, nếu khoá bộ phận cũ vẫn còn thỏa thuận dùng </li></ul><ul><ul><li>Khi đó mẩu tin 3 có thể bị gửi lại khẳng định với B là đang trao đổi với A </li></ul></ul><ul><li>Muốn sửa lỗi trên cần phải </li></ul><ul><ul><li>Dùng Tem thời gian (Denning 81) </li></ul></ul><ul><ul><li>Sử dụng thêm nhãn (Neuman 93) </li></ul></ul>
    11. 11. Sử dụng khoá công khai Using Public-Key Encryption <ul><li>Có nhiều ứng dụng dựa trên khoá công khai </li></ul><ul><li>Cần phải tin tưởng rằng có khoá công khai đúng của các đối tác khác. </li></ul><ul><li>Sử dụng máy chủ xác thực trung tâm AS (Authentication Server) </li></ul><ul><li>Có nhiều thủ tục tồn tại sử dụng tem thời gian và nhãn </li></ul>
    12. 12. Denning AS Protocol <ul><li>Denning 1981 đề xu ất </li></ul><ul><li>1. A -> AS: ID A || ID B </li></ul><ul><ul><li>2. AS -> A: E PRas [ ID A ||PU a ||T] || E PRas [ ID B ||PU b ||T] </li></ul></ul><ul><ul><li>3. A -> B: E PRas [ ID A ||PU a ||T] || E PRas [ ID B ||PU b ||T] || E PUb [E PRas [K s ||T]] </li></ul></ul><ul><li>Nhận thấy rằng khoá kỳ được chọn bởi A, do đó AS không cần được uỷ quyền bảo vệ nó </li></ul><ul><li>Tem thời gian chống trì hoãn nhưng cần đồng hồ đồng bộ </li></ul>
    13. 13. Xác thực một chiều One-Way Authentication <ul><li>Được dùng khi người nhận và người gửi không cùng ở trạng thái trao đổi </li></ul><ul><li>Có đầu tin rõ ràng để có thể phân phối bởi hệ thống thư điện tử </li></ul><ul><li>Có thể muốn nội dung tin được bảo vệ và xác thực bởi người gửi </li></ul>
    14. 14. Sử dụng khoá đối xứng Using Symmetric Encryption <ul><li>Có thể làm tốt hơn ứng dụng của KDC nhưng không thể trao đổi nhãn cuối cùng: </li></ul><ul><ul><li>1. A -> KDC: ID A || ID B || N 1 </li></ul></ul><ul><ul><li>2 . KDC -> A: E Ka [Ks || ID B || N 1 || E Kb [ Ks || ID A ] ] </li></ul></ul><ul><ul><li>3. A -> B: E Kb [ Ks || ID A ] || E Ks [M] </li></ul></ul><ul><li>does not protect against replays </li></ul><ul><ul><li>Không bảo vệ chống trì hoãn được </li></ul></ul><ul><ul><li>Có thể dựa trên tem thời gian trên mẳu tin, tuy nhiên trì hoãn email tạovẫn nên vấn đề đó </li></ul></ul>
    15. 15. Sử dụng khoá công khai Public-Key Approaches <ul><li>Chúng ta đã thấy một số cách tiếp cận khoá công khai </li></ul><ul><li>Nếu bảo mật là chính, có thể dùng: </li></ul><ul><ul><li>A -> B: E PUb [Ks] || E Ks [M] </li></ul></ul><ul><ul><li>Mã được khoá kỳ và bản tin mã </li></ul></ul><ul><li>Nếu xác thực cần chữ ký điện tử với xác nhận điện tử: </li></ul><ul><ul><li>A -> B: M || E PRa [H(M)] || E PRas [T||ID A ||PU a ] </li></ul></ul><ul><ul><li>với mẩu tin, chữ ký và xác nhận </li></ul></ul>
    16. 16. Chuẩn chữ ký điện tử (DSS) Digital Signature Standard <ul><li>Chính phủ Mỹ ủng hộ sơ đồ chữ ký điện tử FIPS 186 </li></ul><ul><li>Sử dụng thuật toán hash SHA công bố 1991, sửa 1996, 2000 </li></ul><ul><li>DSS là chuẩn và DSA là thuật toán </li></ul><ul><li>Có phương án cải biên Elgamal và Schnorr </li></ul>
    17. 17. Thuật toán chữ ký điện tử DSA Digital Signature Algorithm (DSA) <ul><li>Tạo 320 bit chữ ký </li></ul><ul><li>Với lựa chọn 512-1024 bit an toàn hơn </li></ul><ul><li>Nhỏ và nhanh hơn RSA </li></ul><ul><li>Chỉ có sơ đồ chữ ký điện tử </li></ul><ul><li>An toàn phụ thuộc vào độ khó của tính logarit rời rạc </li></ul>
    18. 18. Digital Signature Algorithm (DSA)
    19. 19. Sinh khoá DSA DSA Key Generation <ul><li>Chia sẻ giá trị khoá công khai tổng thể (p,q,g): </li></ul><ul><ul><li>số nguyên tố lớn p = 2 L </li></ul></ul><ul><ul><li>ở đó L= 512 to 1024 bits và là bội của 64 </li></ul></ul><ul><ul><li>chọn q là số nguyên tố 160 bit ước của p-1 </li></ul></ul><ul><ul><li>chọn g = h (p-1)/q </li></ul></ul><ul><ul><li>ở đó h<p-1, h (p-1)/q (mod p) > 1 </li></ul></ul><ul><li>Người sử dụng chọn khoá riêng và tính khoá công khai </li></ul><ul><li> chọn x<q </li></ul><ul><li> Tính y = g x (mod p) </li></ul>
    20. 20. Tạo chữ ký DSA DSA Signature Creation <ul><li>Để ký mẩu tin M người gửi cần </li></ul><ul><li>Sinh khoá chữ ký ngẫu nhiên k: k < p, </li></ul><ul><li>k phải là số ngẫu nhiên, được xoá sau khi dùng và không bao giờ dùng lại </li></ul><ul><li>Sau đó tính cặp chữ ký : </li></ul><ul><ul><li>r = (g k (mod p))(mod q) </li></ul></ul><ul><ul><li>s = (k -1 (H(M)+ x.r))(mod q) </li></ul></ul><ul><li>Gửi cặp chữ ký (r, s) cùng với bản tin M </li></ul>
    21. 21. Kiểm chứng chữ ký DSA DSA Signature Verification <ul><li>Nhận được bản tin M cùng với chữ ký (r, s) </li></ul><ul><li>Để kiểm chứng chữ ký người nhận cần tính: </li></ul><ul><ul><li>w = s -1 (mod q) </li></ul></ul><ul><ul><li>u1= (H(M).w)(mod q) </li></ul></ul><ul><ul><li>u2= (r.w)(mod q) </li></ul></ul><ul><ul><li>v = (g u1 .y u2 (mod p)) (mod q) </li></ul></ul><ul><li>Nếu v = r thì chữ ký đã được kiểm chứng </li></ul>
    22. 22. Summary <ul><li>have discussed: </li></ul><ul><ul><li>digital signatures </li></ul></ul><ul><ul><li>authentication protocols (mutual & one-way) </li></ul></ul><ul><ul><li>digital signature algorithm and standard </li></ul></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×