Sơ đồ định danh

Một phần của tài liệu Nghiên cứu hệ mật mã khoá công khai trong giao dịch điện tử (Trang 73)

Cỏc sơ đồ định danh (giao thức định danh) cú quan hệ rất gần, nhưng đơn giản hơn so với cỏc sơ đồ chữ ký số. Cũng cú mục tiờu giống như cỏc sơ đồ chữ ký số, tuy nhiờn điểm khỏc biệt ở chỗ trong cỏc sơ đồ chữ ký chỳng ta phải quan tõm đến khỏi niệm “thời gian sống” (của chữ ký).

Sơ đồ định danh núi chung là một sơ đồ đơn giản, cú thể thực hiện trờn cỏc thẻ thụng minh (thẻ tớn dụng) cú khả năng thực hiện cỏc tớnh toỏn số học. Yờu cầu chung được đặt ra đối với bất kỳ sơ đồ định danh nào:

1. Người yờu cầu xỏc minh B chọn một số ngẫu nhiờn x và gửi x cho A; 2. A là người phải chứng minh danh tớnh của mỡnh trước B, A tớnh:

y = ek(x) và gửi y cho B; 3. B nhận được y và tớnh:

y’ = ek(x)

A được cụng nhận nếu y’ bằng y và ngược lại.

Hỡnh 4.6: Giao thức định danh y r C,  A B Giao thức định danh

Sơ đồ định danh SCHNORR

Sơ đồ định danh SCHNORR là một trong những sơ đồ định danh cú tớnh thực tiễn cao nhất. Sơ đồ này yờu cầu một người (cỏ nhõn, tổ chức) được tớn nhiệm tham gia vào quỏ trỡnh định danh gọi là TA.

Xõy dựng sơ đồ

1. Chọn p là một số nguyờn tố lớn (p > 2512) để sao cho bài toỏn logarit rời rạc trong Zp* khụng giải được;

2. q là ước nguyờn tố lớn của (p-1): q ≥ 2140; 3. Gọi  Zp* cú bậc q q p Z cua thuy nguyen tu phan p p ) ( ) 1 ( *    (4.10)

4. Một tham số mụi trường t sao cho q > 2t

5. TA thiết lập một sơ đồ chữ ký mật sigTA và verTA

6. Chỉ ra một hàm hash mật, mọi thụng tin được băm trước khi ký; Cỏc giỏ trị p, q, , verTA và hàm hash sử dụng được cụng khai.

Phõn tớch:

Vai trũ của TA: Xỏc thực cho A

- TA thiết lập danh tớnh của A bằng cỏch lập 1 chứng minh thư điện tử xỏc nhận ngày sinh, hộ chiếu, … Sau đú tạo thành một chuỗi ID(A) chứa đầy đủ cỏc thụng tin định danh của A;

- A chọn một số mũ ngẫu nhiờn a sao cho 0 ≤ a ≤ q -1 và tớnh:

 = -a mod p Gửi  cho TA;

- TA tạo ra một chữ ký

s = sigTA (I,v) đúng vai trũ là dấu xỏc nhận cho A: C(A) = (IDA, v, s);

 = k mod p

2. A gửi C(A) = (IDA, v, s) và y cho B;

3. B xỏc minh chữ ký của TA bằng cỏch kiểm tra xem verTA (IDA, v, s) = TRUE hay khụng

4. B chọn ngẫu nhiờn 1 số r: 1 ≤ r ≤ 2t và gửi cho A; 5. A tớnh: y = k + ar mod q Và gửi y cho B; 6. B xỏc minh: y. vr (mod p) Nhận thấy rằng: y. vr (mod p) (4.11) k + ar. vr (mod p)

k + ar . -ar (mod p) vỡ   -a (mod p) k (mod p) .

Trong sơ đồ SCHNORR, a là một số mật được chọn ngẫu nhiờn sao cho 0 ≤ a ≤ (q -1) để tạo ra v. Trong thực tế sử dụng, a chớnh là số PIN dựng để phõn biệt chủ sơ hữu thực sự của thẻ đồng thời dựng để thuyết phục B rằng người tham gia thực hiện giao thức định danh với mỡnh chớnh là A. Trong giao thức này, A hoàn toàn khụng bị lộ ra ngoài (bước 5), chớnh A (thẻ của A) sử dụng số a để tớnh ra y đỏp ứng lại yờu cầu của B. Như thế a được gọi là một chứng minh khụng tiết lộ thụng tin.

Đỏnh giỏ

Nếu kẻ tấn cụng O muốn mạo danh, O sẽ thực hiện nhiều phương ỏn. Thứ nhất, nếu O đoỏn ra đựơc yờu cầu r của B, khi đú O sẽ gửi giỏ trị  y. vr (mod p) cho B. Khi B nhận được , B gửi yờu cầu r lại cho A, lỳc này O mạo danh A sẽ gửi lại cho B giỏ trị y đó được chọn sẵn từ trước. Tham số t được đề cập đến trong giải thuật của sơ đồ SCHNORR chớnh là được sử dụng để ngăn chặn O thực hiện

phương ỏn này, vỡ r nằm trong khoảng 1 ≤ r ≤ 2t, trong hầu hết cỏc ứng dụng, chọn t = 40, do đú xỏc suất để O đoỏn trỳng giỏ trị r mà B sử dụng chỉ là 2-t (2-40).

Cỏch thứ 2 mà O cú thể thực hiện nhằm giả mạo A đú là O làm giả dấu xỏc nhận của A: C(A)’ = (IDA, v’, s’); (v’ ≠ v), s’ là chữ ký mà TA sử dụng để xỏc minh A. Vỡ lý do này mà TA phải được chọn là một bờn thứ ba đỏng tin cậy.

Cỏch thứ 3 để O mạo danh A đú là O sử dụng dấu xỏc nhận C(A) của A (dấu xỏc nhận của A khụng được giữ mật, sau nhiều lần sử dụng, C(A) gần như là cụng khai).Tuy nhiờn, để mạo danh A thành cụng, O phải luận ra đựơc số PIN (a) mà A sử dụng (để luận ra được a, O phải giải được bài toỏn logarit rời rạc là bài toỏn đó được giả thiết đặt ra là khụng thể giải được).

Xột trường hợp kẻ mạo danh O chớnh là người nhận tin B, khi đú, B sẽ nhiều lần yờu cầu A chứng minh danh tớnh và sẽ chọn cỏc yờu cầu r một cỏch cú chủ ý, để cố gắng xỏc định được số PIN mà A sử dụng. Do O biết được giỏ trị  nờn tồn tại một xỏc suất để O thành cụng :  ≥ 1/2(t-1), tương ứng với việc O tỡm được a trong đa thức thời gian.

Trong trường hợp kể trờn, nếu O giả mạo thành cụng, giao thức sử dụng là khụng an toàn, ngược lại, giao thức sử dụng là an toàn. Giao thức định danh SCHNORR khụng được chứng minh là một giao thức an toàn, tuy nhiờn nú vẫn được ưa thớch và sử dụng rộng rói trong thực tế vỡ hầu như khụng cú nhược điểm nào với thời gian thực hiện nhanh hơn nhiều so với cỏc giao thức khỏc.

4.3 Ứng dụng hệ mật RSA cho bài toỏn GDĐT

Hệ mật mó RSA được ứng dụng cho bài toỏn GDĐT bằng cỏch xõy dựng một chương trỡnh gửi nhận tin sử dụng mó hoỏ RSA, thụng tin về người gửi, người nhận được gắn kốm vào thụng tin chứa đựng trong bản mó. Chương trỡnh cú nhiệm vụ:

- Tạo cặp khoỏ cụng khai/khoỏ cỏ nhõn e, d theo hệ mật RSA + Tạo số lớn (32bit) ngẫu nhiờn

+ Kiểm tra tớnh nguyờn tố (6n+1)

+ Tớnh toỏn cỏc giỏ trị n, (n), chọn số mũ mó hoỏ e, sử dụng thuật toỏn Euclid mở rộng để tớnh ra số mũ mó hoỏ d

- Mó hoỏ bản tin gửi, thụng tin người gửi đi bằng khoỏ vừa tạo: Bản rừ được chuyển đổi sang dạng số nguyờn, thụng tin người gửi, thụng tin người nhận, được mó hoỏ RSA bằng khoỏ cụng khai của người nhận. - Giải mó bản mó hoỏ RSA thu được: Thụng tin người nhận được kiểm tra

với khoỏ cỏ nhõn của người nhận, nếu phự hợp coi như người nhận tin đó được xỏc minh. Bản mó sau đú được giải mó RSA bằng khoỏ cỏ nhõn của người nhận.

Giải thuật của chương trỡnh được xõy dựng như sau: Tạo khoỏ: Gửi tin: Tạo số lớn NN KT Nguyờn tố? Tớnh n, (n) Chọn e Tớnh d Y N Y Nhập khoỏ CN người gửi Bản rừ Thụng tin người gửi Thụng tin người nhận Mó RSA Chuyển đổi sang số nguyờn Khoỏ CK của

Nhận tin:

Một số giao diện của chương trỡnh:

N Y Y Nhập khoỏ cỏ nhõn Bản mó Thụng tin người nhận Giải mó RSA Kiểm tra Bản rừ Kết thỳc

Menu chớnh

Kết luận

Qua kết quả thực hiện luận văn, tụi nhận thấy:

An ninh trong cỏc giao dịch điện tử là vấn đề rất quan trọng, trong đú cỏc hệ mật mó hiện đại giữ vai trũ chủ yếu, quyết định. Cỏc hệ mật mó hiện đại là cơ sở để phõn tớch, đỏnh giỏ và thiết kế cỏc kờnh liờn lạc an toàn trờn mạng. Thuật toỏn dành cho cỏc hệ mật mó hiện đại như: RSA, Elgama, Rabit,…đó được quan tõm từ rất lõu, nhưng chỉ từ khi cụng cụ tin học phỏt triển nú mới được đẩy mạnh thực sự cả về lý thuyết lẫn thực hành và đó đem lại được nhiều ứng dụng quan trọng trong thực tế: chữ ký số, tiền số, xỏc thực điện tử, ... Cỏc ứng dụng này đó được nhiều quốc gia trờn thế giới cụng nhận là cỏc phương tiện giao dịch họp phỏp.

Qua nghiờn cứu tụi nhận thấy rằng, cỏc hệ mật mó hiện đại ứng dụng rất linh hoạt lý thuyết toỏn học, số học. Sự tường minh của toỏn học kết hợp với khả năng tớnh toỏn của những mỏy tớnh hiện đại giỳp cho cỏc hệ mó dễ dàng thực hiện một cỏch chớnh xỏc nhưng phỏ mó lại khú khăn tương đương với việc giải cỏc bài toỏn khú. Để học tập và vận dụng vào cụng tỏc thực tế của mỡnh, ta cần nghiờn cứu kỹ cỏc nguyờn lý lý thuyết của cỏc hệ mó, sau đú từng bước thực hành trờn mỏy. Tụi nghĩ rằng đú là cơ sở tốt nhất để cú thể cú những vận dụng sỏng tạo, những ý tưởng mới.

Qua quỏ trỡnh thực hiện khoỏ luận tốt nghiệp, tụi tự thấy đó nắm chắc phần lý thuyết của cỏc vấn đề mà mỡnh nghiờn cứu. Cụ thể là nguyờn lý lý thuyết của cỏc hàm băm, hệ mật mó khoỏ cụng khai (RSA), những sơ đồ chữ ký số, giao thức định danh, một số bài toỏn phõn tớch số nguyờn, và một vài cỏch tấn cụng cỏc hệ mật mó - những thành phần đúng gúp một cỏch quan trọng nhất cho việc bảo đảm an ninh trong cỏc giao dịch điện tử. Bờn cạnh đú, ứng dụng những lý thuyết tỡm hiểu được xõy dựng bài toỏn mó hoỏ/giải mó thụng tin gửi trong GDĐT.

Vỡ thời gian nghiờn cứu cú hạn, trỡnh độ cũn hạn chế nờn cỏc kết quả nghiờn cứu của tụi chắc chắn cũn nhiều thiếu sút. Mặc dự vậy, tụi tin rằng cỏc kết quả đó đạt được sẽ là cơ sở quan trọng cho nhiều hướng nghiờn cứu tiếp theo, như: nghiờn cứu, cài đặt thử nghiệm cỏc thuật toỏn mở rộng của hệ mật mó khoỏ cụng khai; xõy dựng gúi chương trỡnh ứng dụng sử dụng cỏc hệ mật hiện đại phục vụ an ninh giao dịch online; cỏc nghiờn cứu bẻ gẫy cỏc hệ mật, ... Đem lại sự hiểu biết một cỏch tường tận hơn về mọi vấn đề liờn quan đến việc bảo đảm an ninh, anh toàn dữ liệu trong cỏc giao dịch trờn mạng mỏy tớnh.

Phụ lục A: Cỏc thuật ngữ viết tắt

Viết tắt Tiếng Anh Tiếng Việt

DES Data encryption standard Chuẩn mó hoỏ dữ liệu

RSA Rivest, Shamir và Adleman Tờn của ba nhà phỏt minh ra loại mó RSA

SET Secured Electronic

Transaction Giao dịch điện tử an toàn TTP Trusted Third-party Uỷ thỏc cho bờn thứ 3 tin cậy PKI Public key infrastructure Hạ tầng khoỏ cụng khai PKCS#1 Public key cryptography

standards Cỏc tiờu chuẩn mật mó khoỏ cụng khai, cũn đợc gọi là tiờu chuẩn mó hoỏ RSA. CRT Chinese Remainder Theorem Định lý số dư Trung Quốc

MAC Message Authentication Code

Mó xỏc thực bản tin API Application Programming

Interface

Giao diện lập trỡnh ứng dụng được định nghĩa là cỏch giao tiếp cú thể thực hiện giữa cỏc ứng dụng. Giao tiếp này là một tập hợp của cỏc hàm hoặc cỏc phơng phỏp đợc sử dụng để truy cập đến một số cỏc chức năng.

MDC Modification Detection Code or Manipulation Detection Code

Mó dũ thay đổi OWHF One-Way Hash Function Hàm hash một chiều CRHF Collision Resistant Hash

Function

Phụ lục B: Cỏc thuật ngữ tiếng Anh dịch sang tiếng Việt

Thuật ngữ tiếng Anh Thuật ngữ tiếng Việt

"tweakable" block cipher Mó hoỏ khối với tham số: đầu vào của dạng thuật toỏn này bờn cạnh bản rừ/bản mó và cỏc khoỏ cũn cú thờm một tham số là tweak, tham số này kết hợp với cỏc khoỏ sử dụng để lựa chọn cỏch hoỏn vị của thuật toỏn.

Adversary Kẻ tấn cụng hệ mật mó, thỏm mó, kẻ giả mạo. Associative Tớnh chất kết hợp

Asymmetric cryptography Mật mó khoỏ bất đối xứng Authentication scheme Lược đồ/sơ đồ định danh

Axiom Tiờn đề

Bijection Song ỏnh, (chớnh là ỏnh xạ 1-1)

Blocklength Độ dài của một khối trong mó hoỏ khối Certificate Authority Chứng nhận bản quyền chứng chỉ Certificates Chứng nhận người dựng

Chaining variable Biến dõy chuyền, chỉ cơ chế lưu giữ tạm thời cỏc giỏ trị lối ra của hàm đang trong vũng lặp. Collision resistant (collision

free) (Hàm) Chống xung đột, chống va chạm Commutative Tớnh chất Giao hoỏn

Congruent Đồng dư

Cyclic permutation Phộp hoỏn vị vũng quanh

Deterministic Tớnh chất tiền định, tức là một sự lựa chọn cú tớnh toỏn, ngược lại với ngẫu nhiờn.

Deterministic algorithm Giải thuật tiền định, là một giải thuật mà cú khả năng phỏng đoỏn được. Với một lối vào biết trước, giải thuật luụn tạo ra chớnh xỏc cựng một lối ra. Digital cash Tiền điện tử

Digital certificate Chứng chỉ số, Chứng thực khoỏ cụng khai (chống lại tấn cụng đứng giữa)

Digital envelope Vỏ bọc số Digital fingerprint Võn tay số

Digital signature scheme Lược đồ/sơ đồ chữ ký số Digital signatures Chữ ký số

Distributive Tớnh chất phõn phối Entity Authentication (hay

identity verification)

Xỏc thực, hay định danh Exhaustive search Tỡm kiếm vột cạn

Extended Euclidean algorithm Giải thuật Euclid mở rộng Fermat's little theorem Định lý Fermat nhỏ Generator ( hay primitive

element)

Phần tử sinh (phần tử gốc hay thành phần nguyờn thuỷ)

Hard-core function Hàm lừi cứng

Hash collistion Xung đột băm, va chạm băm Hash function Hàm băm

Hash table Bảng (cỏc giỏ trị) băm Hash value Giỏ trị băm

Homophonic substitution ciphers

Bộ mó thay thế đồng õm Identification Nhận dạng

Index Chỉ số, cũn đợc coi là khoỏ của hàm băm Injection Đơn ỏnh

Injective function Hàm đơn ỏnh

Integer factorization Phõn tớch ra thừa số nguyờn tố

Internal state Trạng thỏi bờn trong, ỏm chỉ khỏi niệm chaining variable

Iterative hash function Hàm băm cú tớnh lặp Key-exchange pair Cặp khoỏ trao đổi Leading cofficient Hệ số chỉ đạo Least residue Thặng dư nhỏ nhất

Man-in-the-middle attack Tấn cụng đứng giữa; là một dạng tấn cụng mà kẻ tấn cụng mạo danh người khỏc để người gửi tin sử dụng khoỏ cụng khai mạo danh để mó hoỏ bản tin cần gửi, khi đú cả người gửi và người bị mạo danh đều khụng phỏt hiện được.

Memoryless variation of birthday attack

Phộp biến đổi khụng nhớ của tấn cụng ngày sinh nhật

Message digest Túm lược bản tin Mono-alphabetic substitution

cipher

Bộ mó thay thế sử dụng một bảng mẫu tự Multiplicative inverse Số nghịch đảo nhõn

One-way cryptographic function

Hàm mó một chiều

Padding Việc thờm vào một số bit vào trong văn bản Pair relative primes Cỏc số nguyờn tố cựng nhau

Permutation Tớnh chất giao hoỏn

Plaintext Là cỏc file,tài liệu dưới dạng mó ASCII (hoặc ký tự mà cú thể đọc được theo một kiểu soạn thảo nào

Polyalphabetic substitution ciphers

Bộ mó thay thế sử dụng nhiều bảng mẫu tự Primitive element (hay

generator) Thành phần nguyờn gốc (cũn gọi là phần tử sinh) Private key Khoỏ cỏ nhõn

pseudo-random generators Bộ tạo giả ngẫu nhiờn Pseudorandom sequences Chuỗi giả ngẫu nhiờn Public key Khoỏ cụng khai

Public-key cryptography Mật mó khoỏ cụng khai Public-key encryption scheme Sơ đồ mó khoỏ cụng khai Quadratic residue Thặng dư bậc hai

Redundancy function Hàm dư thừa

Round Một chu trỡnh trong vũng lặp của mó hoỏ khối lặp rounds Số lần update liờn tục cỏc trạng thỏI bờn trong

(trong cỏc giải thuật băm)

Second-preimage resistant (Hàm) Cản tiền ảnh thứ 2, chặn tiền ảnh thứ 2 Signature pair Cặp (khoỏ) chữ ký

Square root Căn bậc 2 Stream cipher Mó dũng Subsequent Liờn tục Substitution ciphers Mó thay thế surjection Toàn ỏnh

Symmetric cryptography Mật mó khoỏ đối xứng Symmetric key Khoỏ đối xứng

Transposition ciphers Mó chuyển vị

Trapdoor one-way function Hàm một chiều cú cửa sập

Zero-knowledge proof Chứng minh khụng tiết lộ thụng tin Chosen-ciphertext attack Tấn cụng lựa chọn bản mó

Cube-root Căn bậc 3

Salting message Ướp muối bản tin, việc gắn thêm vào bản tin một chuỗi bit đ-ợc tạo ngẫu nhiên tr-ớc khi tiến hành mã hoá, chuỗi bit này độc lập với mỗi lần mã hoá.

Homomorphic property Đặc tớnh đồng hỡnh

Time polynomial Đa thức thời gian, một số nguyờn n cú thể được kiểm tra (tớnh nguyờn tố) trong thời gian đa thức theo log2n (là số bit trong biểu diễn nhị phõn của n).

Tài liệu tham khảo Tiếng Việt

1. Nguyễn Bỡnh (2000). “Mật mó: từ lý thuyết đến thực hành”– Học viện

Một phần của tài liệu Nghiên cứu hệ mật mã khoá công khai trong giao dịch điện tử (Trang 73)

Tải bản đầy đủ (PDF)

(88 trang)