1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Nhập môn an toàn hệ thống thông tin: Chương 4 - Trần Thị Kim Chi

95 77 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 95
Dung lượng 5,44 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Nhập môn an toàn hệ thống thông tin - Chương 4: Chữ ký điện tử cung cấp cho người học các kiến thức: Khái niệm về chữ ký số (Digital Signature), các dịch vụ bảo mật cung cấp bởi chữ ký số, một vài chữ ký số thông dụng, mô tả vài ứng dụng của chữ ký số. Mời các bạn cùng tham khảo.

Trang 1

(DIGITAL SIGNATURES)

Trang 2

Nội dung chính

1 Khái niệm về chữ ký số (Digital Signature)

2 Các dịch vụ bảo mật cung cấp bởi chữ ký số

3 Một vài chữ ký số thông dụng

4 Mô tả vài ứng dụng của chữ ký số

(Cryptography & Network Security

McGraw-Hill, Inc., 2007., Chapter 13)

Trang 3

Khái niệm về chữ ký điện tử

• Khái niệm về Digital Signature được để xuất bởi Diffie &Hellman (1976)

• “Chữ ký điện tử (còn gọi là chữ ký số) là thông tin được mãhoá bằng Khoá riêng của người gửi, được gửi kèm theovăn bản nhằm đảm bảo cho người nhận định danh, xácthực đúng nguồn gốc và tính toàn vẹn của tài liệu nhận

• Chữ ký điện tử thể hiện văn bản gửi đi là đã được ký bởichính người sở hữu một Khoá riêng tương ứng với mộtChứng chỉ điện tử nào đó.”

• Chữ ký điện tử và chữ ký tay đều có chung đặc điểm là rấtkhó có thể tìm được hai người có cùng một chữ ký Chữ ký

Trang 4

Khái niệm về chữ ký điện tử

• Chữ ký điện tử là một trong ứng dụng quan trọng nhất của mã hóa khóa công khai

• Message Authentication chỉ bảo vệ thông điệp trao đổi giữa hai bên tham gia không bị hiệu chỉnh hay giả mạo

từ bên thứ 3, nhưng nó không bảo vệ thông điệp bị hiệu chỉnh hay giả mạo từ một trong 2 bên tham gia, nghĩa là:

• Bên nhận giả mạo thông điệp của bên gửi

• Bên gửi chối là đã gửi thông điệp đến bên nhận

• Chữ ký điện tử không những giúp xác thực thông điệp

Trang 5

VÍ DỤ CHỮ KÝ SỐ TRONG THỦ TỤC HQĐT

Doanh nghiệp nhập tờ khai

Ký điện tử Kiểm tra chữ ký điện tử

Kiểm tra hiệu lực chữ ký số của DN

Lưu tờ khai và xử lý theo quy trình nghiệp vụ

Khai hải quan

In tờ khai và làm các quy trình

trong thông quan điện tử

Trả phản hồi về cho DN

Trang 6

Khái niệm về chữ ký điện tử

Ví dụ cơ bản:

• Mike có hai khóa, một khóa công khai và một khóa riêng

• Mike đưa khóa công khai của mình cho Amanda, nhưng giữ lại khóa riêng cho mình

• Khi muốn chuyển tài liệu cho Amanda, Mike có thể xác nhận (ký) các tài liệu này dùng chính khóa riêng của

mình và gửi chúng đến Amanda

• Amanda sau đó sẽ dùng khóa công khai của Mike, để có thể kiểm tra tài liệu mà cô ấy nhận được, thực sự được

Trang 7

Mục tiêu của chữ ký điện tử

Mục tiêu an toàn

• Xác thực (Authentication)

• Chống phủ nhận (Non-repudiation)

Trang 8

Đặc điểm chữ ký số

1 Đảm bảo tính xác thực

• Chứng minh tính hợp pháp của người gửi

• Chứng minh tính toàn vẹn của dữ liệu

2 Chữ ký số là hàm của các tham số

• Thông báo giao dịch (văn bản gốc)

• Thông tin bí mật của người gửi (Khóa riêng của sender)

• Thông tin công khai trên mạng (Khóa công khai)

• Mã xác thực : Đảm bảo tính toàn vẹn của thông điệp

Trang 9

Đặc điểm chữ ký số

Trang 10

1 Người gởi (chủ nhân văn bản): ký văn bản bằng cách mã

hóa nó với khóa bí mật của mình, rồi gởi cho bên nhận

2 Người nhận tiến hành kiểm tra chữ ký bằng cách sử

dụng khóa công khai của người gởi để giải mã văn bản.Nếu giải mã thành công thì văn bản ký là đúng người gởiNguyên lý ký điện tử trong hệ mật

mã công khai

Trang 11

Sơ đồ sử dụng chữ ký điện tử

Trang 12

• Dùng để chiết xuất đặc trưng của văn bản, đầu ra là một dãy số xác định gọi là mã băm.

• Rất “nhạy” đối với các thay đổi trong văn bản

• Có tính kháng xung đột, tính một chiều và tốc độ nhanh

Hàm băm mật mã

Trang 13

Hàm băm mật mã

Signing the Digest

• Ký trên digest của thông đệp sẽ ngắn hơn ký trên thông điệp

• Người gửi có thể ký trên cốt thông điệp và người nhận có thể kiểm tra trên cốt thông điệp

Trang 14

Digital Signature Process

Tạo và Kiểm tra chữ ký số

• Trong mô hình này, Alice sau khi tính giá trị hash HA cho thông điệp M thì sẽ

mã hóa HA bằng khóa riêng của Alice để tạo thành chữ ký điện tử DS Alice gửi kèm DS theo M cho Bob.

Trang 15

• Chữ ký không phải là nét vẽ ngoằn ngoèo khó bắt chước mà là một dãy số trích từ đặc trưng văn bản đã được mã hóa.

• So với chữ ký thông thường, chữ ký số có ưu thế vượt trội hơn chữ ký tay.

Trang 16

• Mô hình CKS ở trên chỉ đạt được nếu như mỗi người sở hữu đúng cặp chìa khóa của chính mình.

• Có thể xẩy ra hiện tượng “mạo danh” người gởi.

Do đó, ta cần có cơ chế để xác định “ai là ai” trên toàn hệ thống.

• Giải pháp: chứng minh thư số

Nhược điểm mô hình chữ ký số

Trang 17

1 Xác thực thông điệp (Message Authentication): Người

ký được xác nhận là chủ chữ ký

2 Toàn vẹn thông điệp (Message Integrity): Nội dung

chưa bị thay đổi hoặc xáo trộn kể từ khi nó được ký điện tử

3 Chống từ chối (Non-repudiation): Chứng minh với tất

cả các bên về nguồn gốc của nội dung đã ký Từ

"thoái thác" dùng để chỉ hành động của một người ký

từ chối bất kỳ mối liên kết nào với nội dung đã ký

4 Bảo mật (Confidentiality)

Ứng dụng của chữ ký số

Trang 18

• Nonrepudiation có thể được cung cấp bằng cách dùng một trusted Center

Trang 19

• Thêm confidentiality vào cơ chế digital signature

Một Digital Signature không cung cấp tính bí mật Nếu cần bảo mật, encryption/decryption được áp dụng

Trang 20

Public Notary (công chứng)

• Trong trường hợp bên Alice cố cãi rằng cô ta chẳng maylàm thất lạc hay vô tình đánh lộ zA và bị một kẻ thứ ba lợidụng chứ không có ý định tạo ra văn bản có chữ ký nhưthế khi đó có thể thêm trọng tài vào hệ thống

• Người trọng tài này cũng còn gọi là công chứng viên (publicnotary) sẽ ký đè lên chữ ký của Alice để chứng thực, Alicekhông thể nào chối cãi

Trang 21

Proof of delivery (xác nhận

giao hàng - hoá đơn)

• Ngược lại, bên gửi cũng cần được bảo vệ để chống lại hiệntượng người nhận có nhận được thông báo nhưng chối làchưa nhận được

• Điều này có thể thực hiện được qua những giao thức cóphân xử (adjudicated protocol), tức là những giao thức màsau đó cho phép người thứ ba có thể kiểm định lại được

Trang 22

Tấn công trên Digital

Trang 23

Attack Types

• Key-Only Attack

• Known-Message Attack

• Chosen-Message Attack

Trang 24

Forgery Types

• Existential Forgery

• Selective Forgery

Trang 25

Vài chữ ký số thông dụng

• RSA Digital Signature Scheme

• ElGamal Digital Signature Scheme

• Schnorr Digital Signature Scheme

• Digital Signature Standard (DSS)

• Elliptic Curve Digital Signature Scheme

Trang 26

RSA Digital Signature Scheme

• Ý tưởng mật mã RSA được dùng cho việc ký và kiểmtra chữ ký, nó được gọi là cơ chế chữ ký số RSA

• Người gửi dùng private key của chính mình để kývào tài liệu; người nhận dùng public key của ngườigửi để kiểm tra chữ ký

• So với chữ ký truyền thống, private key đóng vai trò

là chữ ký của chính người gửi, public key của ngườigửi đóng vài trò là bản sao của chữ ký mà có thểđược công khai

Trang 27

RSA Digital Signature Scheme

• Ý tưởng tổng quát của cơ chế chữ ký RSA

Trang 28

RSA Digital Signature Scheme

Phát sinh khóa (Key Generation)

• Phát sinh khóa trong cơ chế chữ ký RSA là hoàn toàn giống như phát sinh khóa RSA

• Trong đó d là bí mật, en là công khai

Trang 29

RSA Digital Signature Scheme

1) Tạo cặp khóa (bí mật, công khai) (a, b):

• Chọn 2 số nguyên tố p, q, xác định n = p * q, n là công khai,

đặt P = A = Zn và định nghĩa:

• Tính f(n) = (p-1).(q-1).

• Chọn khóa công khai e < f(n), nguyên tố cùng nhau với f(n).

• Khóa bí mật d là phần tử nghịch đảo của e theo

mod f(n): e*d1 (mod f(n).

• Tập cặp khóa (bí mật, công khai) K = (e, d)/ e, d  Zn , e*d 1

(mod f(n)).

2) Ký số: Chữ ký trên M  P là S = sigk (M) = M d (mod n), SA

Trang 30

RSA Digital Signature Scheme

Tạo và Thẩm tra chữ ký

Trang 31

RSA Digital Signature Scheme

Trang 32

Chữ ký trên m = 2

*Tạo cặp khóa (bí mật, công khai) :

Chọn 2 số nguyên tố: p=3, q=5  n = p*q = 3*5 = 15(công khai) Đặt P = A = Z n Tính f(n) = (p-1).(q-1) = 2 * 4 = 8.

Chọn khóa công khai e = 3 < f(n), nguyên tố với f(n) = 8.

=>Tìm d: là phần tử nghịch đảo của e theo

mod f(n): e*d1 (mod f(n)).

EXAMPLE

Bước i N b R i+1 Q i+1 X i X i+1 X i+2

Trang 34

Sử dụng cơ chế chữ ký RSA cho các bài toán sau: 1) Cho p=5, q=11, e=7 Tạo và kiểm tra chữ ký

điện tử với bản tin M=5

2) Cho p=7, q=11, e=17 Tạo và kiểm tra chữ ký điện tử với bản tin M=3

BÀI TẬP

Trang 35

Bài toán căn bản bảo đảm độ an toàn của Sơ đồ chữ ký RSA:

a) Ký trước, Mã hóa sau:

• T ký trước vào x bằng chữ ký S = sig k (M), sau đó mã hoá x và y nhận được

z = e T (M, S) T gửi z cho N.

• Nhận được z, N giải mã z để được M, S.

• Tiếp theo kiểm tra chữ ký ver N (M, S) = true ?

b) Mã hóa trước, Ký sau:

• T mã hoá trước M bằng u = e T (M), sau đó ký vào u bằng chữ

ký v = sig T (u).

• T gửi (u, v) cho N.

• Nhận được (u, v), N giải mã u được M.

ĐỘ AN TOÀN CỦA CHỮ KÝ RSA

Trang 36

Chữ ký RSA trên Message

Digest

Trang 37

Chữ ký RSA trên Message Digest

Lưu ý:

• Khi cốt thông điệp được ký thay cho thông điệp của

nó, thì độ nhạy cảm của chữ ký số RSA tùy thuộc

vào sức mạnh của hàm băm

Trang 38

ElGamal Digital Signature

Scheme

• Ý tưởng tổng quát của chữ ký ElGamal

Trang 39

ElGamal Digital Signature Scheme

Phát sinh khóa (Key Generation)

• Phát sinh khóa trong cơ chế chữ ký ElGamal là hoàntoàn giống như phát sinh khóa mật mã ElGamal

• Trong đó (e1,e2,p) là public key; d là private key

Trang 40

ElGamal Digital Signature

Trang 41

ElGamal Digital Signature

Scheme

Tạo và Thẩm tra chữ ký

Trang 42

ElGamal Digital Signature

•Nếu không dùng hàm băm thì có thể bị tình trạng existential forgery

Trang 43

1) Tạo cặp khóa (bí mật, công khai) (a, k) :

• Chọn phần tử nguyên tử α Zp*

Đặt P = Z p*, A = Z p* x Z p-1.

• Chọn khóa bí mật là a Zp* Tính khóa công khai β

α a mod p.

• Định nghĩa tập khóa: = {(p, α, a, β): β  α a mod p}.

• Các giá trị p, α, β được công khai, phải giữ bí mật a.

HỆ CHỮ KÝ ELGAMMAL

Trang 44

2) Ký số:

• Dùng 2 khóa ký: khóa a và số ngẫu nhiên kZ p-1 *

• (Vì kZ p-1 * , nên nguyên tố cùng p -1, do đó tồn tại k -1 mod

Trang 45

Chữ ký Elgamal trên dữ liệu x = 112.

1) Tạo cặp khóa (bí mật, công khai) (a, β) :

• Chọn số nguyên tố p = 463 Đặt P = Z p *, A = Z p * x Z p-1

• Chọn phần tử nguyên tử α = 2Z p*

• Chọn khóa bí mật là a = 211Z p*

• Tính khóa công khai β  α a mod p = 2 211 mod 463 = 249.

• Định nghĩa tập khóa: = {(p, α, a, β): β  α a mod p}.

• Các giá trị p, α, β được công khai, phải giữ bí mật a.

EXAMPLE

Trang 46

i e[i]= 211 10 p=p*p p=p mod 463 p= p*2 p= p mod

Trang 49

i e[i]= 235 10 p=p*p p=p mod 463 p= p*2 p= p mod

Trang 51

* Bài toán căn bản bảo đảm độ an toàn của Sơ đồ chữ ký Elgammal:

1) TH1: Giả mạo chữ ký cùng với tài liệu được ký.

• T có thể ký trên tài liệu ngẫu nhiên bằng cách chọn trước đồng

thời x,,.

• Chọn x,, thoả mãn điều kiện kiểm thử như sau:

• Chọn các số nguyên i, j sao cho 0  i, j  p-2, GCD(j, p-1) = 1 và tính:

Trang 52

• Chọn các tham số của sơ đồ chữ ký Elgammal:

• Chọn p = 463, phần tử sinh α = 2, Khóa bí mật a = 135.

• Khóa công khai β = α a mod p = 2 135 mod 463 = 272

• Chọn x,, thoả mãn điều kiện kiểm thử như sau:

Trang 53

2) TH2: Sử dụng lại chữ ký của bức điện trước đó

• Nếu (, ) là chữ ký trên tài liệu x có từ trước, thì có thể giả mạo chữ ký trên tài liệu x’ khác.

Trang 54

Cả hai cách giả mạo nói trên đều cho chữ ký đúng trên tài liệu tương ứng, nhưng đó không phải là tài liệu được chọn theo ý của người giả mạo Tài liệu đó đều được tính sau khi tính chữ ký, vì vậy giả mạo loại này trong thực tế cũng không có ý nghĩa nhiều.

TÓM LẠI

Trang 55

Schnorr Digital Signature

Scheme

• Với chữ ký ElGamal thì p cần phải rất lớn thì mới đảm bảo bài toán logaric rời rạc là khó thực hiện trong Z*

p Theo khuyến cáo p phải ít nhất 1024-bit  chữ ký là 2048-bit.

• Để giảm kích cỡ của chữ ký, Schnorr đề xuất một cơ chế chữ ký mới dựa trên ElGamal nhưng với một kích cỡ chữ ký được giảm.

Trang 56

Schnorr Digital Signature

Scheme

Ý tưởng tổng quát của chữ ký Schnorr

Trang 57

Schnorr Digital Signature

3.Alice chọn e1 sao cho e1p = 1 mod p.

4.Chọn 1 số nguyên d, làm private key

5.Tính e2= e1 d mod p.

6.Public key là (e1, e2, p, q); private key là d

Trang 58

Schnorr Digital Signature

Scheme

Tạo và Thẩm tra chữ ký

Trang 59

• Thuật toán CKĐT DSA là thuật toán được đề

nghị trong chuẩn chữ ký điện tử DSS (Digital

Signature Standard) của NIST.

• Nó cung cấp một trình tự để tạo và xác nhận

CKĐT

• DSA sử dụng 1 cặp khóa công khai – khóa riêng.

Trong cả giai đoạn ký và xác nhận văn bản được

ký thể hiện dưới dạng thông điệp rút gọn là kết

quả của việc áp dụng hàm băm SHA-1 lên văn

THUẬT TOÁN CKĐT DSA & CHUẨN CKĐT DSS

Trang 60

Digital Signature Process

Tạo và Kiểm tra chữ ký số

Trang 62

Thuật giải DSA – Chuẩn chữ

Tính s = (k-1(SHA-1(m) + x*r)) mod q, ở đây

SHA-1(m) là hàm băm mã hoá SHA-1 áp dụng

cho thông điệp m

• Tính toán lại chữ ký trong trường hợp không

Trang 63

Thuật giải DSA – Chuẩn chữ

• Nếu v != r’ văn bản có thể đã được sửa đổi trên đường

truyền hoặc khóa cá nhân mã hóa văn bản không khớp

Trang 64

Thuật giải DSA – Chuẩn chữ

ký số

Trang 65

Digital Signature Standard

(DSS)

• NIST đã công bố chuẩn xử lý thông tin liên ban FIPS

186, được biết như là Digital Signature Standard(DSS)

• DSS được đề xuất năm 1991 và hiểu chỉnh lại 1993,

1996 có một hiệu chỉnh nhỏ, năm 2000, một phiênbản mở rộng của chuẩn được phát hành như FIPS186-2, 2009 cập nhật FIPS 186-3 Phiên bản cuốicùng hợp nhất các thuật tóan chữ ký số dựa trên mật

mã RSA và đường cong Eliptic

Trang 66

Digital Signature Standard

(DSS)

• Ý tưởng tổng quát của chữ ký DSS

Trang 67

1) Tạo cặp khóa: Cho p là 1 số nguyên tố 512 bit trong

trường logarit rời rạc Zp ; q là 1 số nguyên tố 160 bit và qchia hết cho (p-1) Cho α Є Zp*; P=Zp*; A =Zp*Zq:

Trang 68

Digital Signature Standard

(DSS)

Trang 71

Digital Signature Standard

Trang 72

Elliptic Curve Digital Signature

Scheme

• Ý tưởng tổng quát của chữ ký EC

Trang 73

Elliptic Curve Digital Signature

Scheme

Phát sinh khóa

• Chọn một đường cong elliptic Ep(a, b).

• Chọn số nguyên tố q, chọn private key d (số nguyên)

• Chọn e1(…, …), một điểm trên đường cong.

• Tính e2(…, …) = d × e1(…, …).

• Public key là (a, b, p, q, e1, e2); private key là d.

Trang 74

Elliptic Curve Digital Signature

Scheme

Tạo và Thẩm tra chữ ký

Trang 75

Những biến thể chữ ký

Time Stamped Signatures

• Một tài liệu được ký cần được gắn nhãn thời gian(Timestamped) để ngăn chặn tài liệu bị phát lại(replay) bởi đối phương

• Ví dụ: Alice ký một yêu cầu đối với ngân hàng của

cô ta, Bob chuyển tiền cho Eve Tài liệu yêu cầunày có thể bị chặn và phát lại bởi Eve nếu không

có nhãn thời gian gắn trên tài liệu

Trang 76

Những biến thể chữ ký

Blind Signatures

• Giả sử có một tài liệu mà chúng ta muốn có chữ ký mà không muốn tiết lộ nội dung của tài liệu đối với người ký.

• Ví dụ: Nhà khoa học phát minh ra một lý thuyết rất quan trọng mà cần được ký bởi công chứng viên, công chứng viên sẽ ký nhưng sẽ không biết gì về nội dung của phát

Trang 78

• Là chứng thực để gắn một chìa khóa công khai với một thực thể (cá nhân, máy chủ, cty,…) Hay nói cách khác, CTS giúp xác định chìa khóa công khai thuộc về thực thể nào.

• Một CTS thường gồm chìa khóa công khai và một

số thông tin khác về thực thể sở hữu chìa khóa đó.

• Chứng thư số thuộc sở hữu của nhà cc chứng thư

số, viết tắt CA (certificate authority).

Chứng thư số

Trang 83

Sơ đồ tạo chứng thư số

Trang 85

Các mô hình hệ thống

Trang 86

• Là quá trình lưu trữ an toàn các dấu tích

về thời gian tạo ra văn bản cùng với

Trang 87

Qui trình đóng dấu và kiểm định tem thời gian có sự tham gia của các đối tượng sau:

1 Dữ liệu cần đóng dấu tem thời gian

2 Bên thứ 3 tin cậy (TSA-time stamp authority)

3 Dịch vụ gắn tem thời gian: cung cấp thẻ tem

thời gian.

4 Người yêu cầu tem thời gian

5 Người kiểm tra tem thời gian

Tem thời gian tin cậy

(trusted timestamping)

Trang 88

Sơ đồ đóng tem thời gian tin cậy cho dữ liệu

Trang 89

Kiểm tra tem thời gian tin cậy

Trang 90

• Do tính chất của hàm băm nên tem thời gian tin

cậy không chỉ khẳng định dữ liệu đã tồn tại trước thời điểm ghi nhãn thời gian mà còn khẳng định dữ liệu không hề thay đổi kể từ khi được cấp phát tem thời gian.

• Tem thời gian chỉ khẳng định dữ liệu được sinh ra trước thời điểm cấp tem thời gian Để xác định

chính xác khoảng thời gian xẩy ra một sự kiện nào

Nhận xét

Trang 91

• Công cụ mật mã mà TSA sử dụng sắp hết thời hạn sử dụng

• Bản thân TSA có thể sắp được thay thế bởi TSA khác

• Thuật toán băm thay đổi

Dữ liệu được cấp phát tem thời gian mới bao gồm dữ liệu gốc và con tem cũ

Tem thời gian bội

Ngày đăng: 30/01/2020, 16:27

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm