1 MỤC LỤC MỤC LỤC ................................................................................................................. 1 LỜI CẢM ƠN ........................................................................................................... 5 DANH MỤC HÌNH VẼ ........................................................................................... 6 BẢNG CHỮ VIẾT TẮT .......................................................................................... 7 MỞ ĐẦU ................................................................................................................... 8 Chƣơng 1. CHỮ KÝ BỘI ........................................................................................ 9 1.1. MỘT SỐ KHÁI NIỆM TRONG SỐ HỌC VÀ ĐẠI SỐ ................................ 9 1.1.1. Một số khái niệm trong số học ................................................................ 9 1.1.1.1. Ước chung lớn nhất, bội chung nhỏ nhất ......................................... 9 1.1.1.2. Quan hệ “Đồng dư”....................................................................... 11 1.1.1.3. Số nguyên tố ................................................................................... 12 1.1.2. Một số khái niệm trong đại số ............................................................... 13 1.1.2.1. Cấu trúc nhóm ................................................................................ 13 1.1.2.2. Nhóm Cyclic ................................................................................... 13 1.1.2.3. Nhóm (Zn*, phép nhân mod n) ........................................................ 14 1.2. MỘT SỐ KHÁI NIỆM VỀ MẬT MÃ ......................................................... 16 1.2.1. Khái niệm mật mã ................................................................................. 16 1.2.2. Khái niệm mã hóa (Encryption) ............................................................ 16 1.2.2.1. Hệ mã hóa khóa đối xứng .............................................................. 17 1.2.2.2. Hệ mã hóa khóa bất đối xứng ........................................................ 18 1.2.3. Khái niệm ký số (Digital Signature)...................................................... 19 1.2.4. Một số loại chữ ký số ............................................................................ 20 1.2.4.1. Chữ ký RSA .................................................................................... 20 1.2.4.2. Chữ ký Elgamal .............................................................................. 21 1.2.4.3. Chữ ký DSS .................................................................................... 222 1.3. KHÁI NIỆM VỀ CHỮ KÝ BỘI .................................................................. 23 1.3.1. Đặt vấn đề .............................................................................................. 23 1.3.2. Bài toán Logarit rời rạc ......................................................................... 24 1.3.3. Lƣợc đồ chữ ký bội dựa trên bài toán Logarit rời rạc ........................... 24 1.3.3.1. Giới thiệu........................................................................................ 24 1.3.3.2. Thuật toán hình thành và kiểm tra chữ ký bội ............................... 253 Chƣơng 2. GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ ........................................... 28 2.1. KHÁI NIỆM CHÍNH PHỦ ĐIỆN TỬ ......................................................... 28 2.1.1. Giới thiệu ............................................................................................... 28 2.1.2. Các định nghĩa về CPĐT ....................................................................... 29 2.1.2.1. Cách tiếp cận 1............................................................................... 29 2.1.2.2. Cách tiếp cận 2............................................................................... 29 2.1.2.3. Cách tiếp cận 3............................................................................... 30 2.1.2.4. Cách tiếp cận 4............................................................................... 30 2.2. KHÁI NIỆM GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ ................................ 31 2.2.1. G2C (Government to Citizen) ............................................................... 31 2.2.2. G2E (Government to Employee) ........................................................... 31 2.2.3. G2G (Government to Government) ...................................................... 31 2.2.4. G2B (Government to Bussiness) ........................................................... 32 2.3. ỨNG DỤNG CHỮ KÝ BỘI TRONG GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ ................................................................................................................. 33 2.3.1. Giá trị pháp lý của chữ ký điện tử ......................................................... 33 2.3.2. Chữ ký bội trong giao dịch hành chính điện tử ..................................... 344 Chƣơng 3. THỬ NGHIỆM CHƢƠNG TRÌNH CHỮ KÝ BỘI ......................... 35 3.1. CẤU HÌNH HỆ THỐNG .............................................................................. 35 3.1.1. Phần cứng .............................................................................................. 35 3.1.2. Phần mềm .............................................................................................. 35 3.2. CÁC THÀNH PHẦN CỦA CHƢƠNG TRÌNH .......................................... 36 3.2.1. Tạo đại diện ........................................................................................... 36 3.2.2. Tạo chữ ký ............................................................................................. 36 3.2.3. Kiểm tra chữ ký ..................................................................................... 36 3.3. CHƢƠNG TRÌNH ........................................................................................ 37 3.3.1. Chức năng tạo đại diện .......................................................................... 37 3.3.2. Chức năng tạo chữ ký ............................................................................ 37 3.3.3. Chức năng kiểm tra chữ ký ................................................................... 37 3.4. HƢỚNG DẪN SỬ DỤNG CHƢƠNG TRÌNH ........................................... 38 3.4.1. Hƣớng dẫn cài đặt chƣơng trình ............................................................ 38 3.4.2. Hƣớng dẫn chạy chƣơng trình ............................................................... 39 3.4.2.1. Hướng dẫn chức năng “Tạo đại diện” .......................................... 39 3.4.2.2. Hướng dẫn chức năng “Tạo chữ ký” ............................................ 41 3.4.2.3. Hướng dẫn chức năng “Kiểm tra chữ ký” ..................................... 45 KẾT LUẬN ............................................................................................................. 47 TÀI LIỆU THAM KHẢO ..................................................................................... 495 LỜI CẢM ƠN Trƣớc hết em xin đƣợc bày tỏ sự trân trọng và lòng biết ơn sâu sắc đối với thầy giáo hƣớng dẫn, PGS.TS. Trịnh Nhật Tiến, Đại học công nghệ, đại học quốc gia Hà Nội. Trong suốt quá trình làm khóa luận tốt nghiệp của em, thầy đã dành rất nhiều thời gian quí báu của mình để tận tình chỉ bảo, hƣớng dẫn, định hƣớng cho em trong việc nghiên cứu, hoàn thành đồ án. Em xin cảm ơn thầy Lƣu Hồng Dũng, Học viện Kỹ thuật Quân sự vì đã góp ý, chỉ dẫn thêm cho em trong quá trình xây dựng chƣơng trình chữ ký bội. Em xin cảm cô giáo phản biện Hồ Thị Hƣơng Thơm, Trƣờng Đại Học Dân Lập Hải Phòng vì đã cho em những ý kiến đóng góp vô cùng hữu ích và nhận ra các khuyết điểm cần sửa chữa của đồ án. Em cũng xin chân thành cảm ơn các thầy giáo, cô giáo của Khoa Công Nghệ Thông Tin, Trƣờng Đại Học Dân Lập Hải Phòng đã dạy bảo, hƣớng dẫn, trang bị cho em những kiến thức quý báu, hữu ích để em có thể hoàn thành tốt báo cáo tốt nghiệp này.6 DANH MỤC HÌNH VẼ Hình 3.1 Giao diện chƣơng trình. ............................................................................. 36 Hình 3.1 Giao diện bắt đầu quá trình cài đặt. ........................................................... 38 Hình 3.2 Thiết lập cài đặt. ......................................................................................... 38 Hình 3.4 Cài đặt thành công. ..................................................................................... 39 Hình 3.5 Giao diện chức năng “Tạo đại diện”. ......................................................... 39 Hình 3.6 Chọn vị trí File cần tạo đại diện ................................................................. 40 Hình 3.7 Tạo đại diện thành công. ............................................................................ 40 Hình 3.8 Giao diện thẻ “Nhóm”. ............................................................................... 41 Hình 3.9 Tham số hợp lệ. .......................................................................................... 41 Hình 3.10 Giao diện thẻ “Cá nhân”. ......................................................................... 42 Hình 3.11 “Khóa cá nhân” hợp lệ. ............................................................................ 42 Hình 3.12 Tính khóa công khai và tham số r. ........................................................... 43 Hình 3.13 Nhập khóa công khai và tham số r ........................................................... 43 Hình 3.14 Chọn file cần ký số. .................................................................................. 44 Hình 3.15 Ký thành công. ......................................................................................... 44 Hình 3.16 Giao diện chức năng “kiểm tra chữ ký” ................................................... 45 Hình 3.17 Chữ ký sai. ............................................................................................... 45 Hình 3.18 Chữ ký chính xác. .................................................................................... 467 BẢNG CHỮ VIẾT TẮT UCLN: Ƣớc chung lớn nhất. BCNN: Bội chung nhỏ nhất. CPĐT: Chính phủ điện tử. CNTT: Công nghệ thông tin. CNTT-TT: Công nghệ thông tin – Truyền thông. G2C: Government to Citizen. G2E: Government to Employee. G2G: Government to Government. G2B: Government to Bussiness.8 MỞ ĐẦU Trong xu hƣớng phát triển của khoa học công nghệ ngày nay, công nghệ thông tin đã ngày càng phổ biến và đƣợc áp dụng trong mọi lĩnh vực đời sống. Việc phát triển ngày một mạnh mẽ và cấp thiết của hệ thống chính phủ điện tử đã nảy sinh các nhu cầu liên quan tới giao dịch hành chính điện tử. Nắm đƣợc tầm quan trọng và tính tất yếu của giao dịch hành chính điện tử, vấn đề xác minh, chứng thực các văn bản trong các giao dịch điện tử, nhằm đáp ứng các yêu cầu về: tính xác thực, tính toàn vẹn và tính chống chối bỏ trách nhiệm cũng đòi hỏi ngày càng cao. Chữ ký điện tử là một trong những cách thức để giải quyết vấn đề đó. Đồ án sẽ đi sâu về chữ ký bội và ứng dụng của nó trong giao dịch hành chính điện tử. Sau đó xây dựng, thử nghiệm một chƣơng trình chữ ký bội để tiến hành ký số, kiểm tra chữ ký trên tài liệu điện tử.9 Chương 1. CHỮ KÝ BỘI 1.1. MỘT SỐ KHÁI NIỆM TRONG SỐ HỌC VÀ ĐẠI SỐ 1.1.1. Một số khái niệm trong số học 1.1.1.1. Ước chung lớn nhất, bội chung nhỏ nhất 1/. Khái niệm ƣớc số và bội số Cho hai số nguyên a và b, b ≠ 0. Nếu có một số nguyên q sao cho a=b*q, thì ta nó rằng a chia hết cho b, kí hiệu b\a. Ta nói b là ƣớc của a, và a là bội của b. Ví dụ: + Cho a = 12, b = 3, ta có 12 = 3*4, ký hiệu 2\12. Ở đây 12 là bội của 3 và 3 là ƣớc của 12. Cho các số nguyên a, b ≠ 0, tồn tại cặp số nguyên (q, r) (0 ≤ r < |b|) duy nhất sao cho a = b*q + r. Khi đó q gọi là thƣơng nguyên, r gọi là số dƣ của phép chia a cho b. Nếu r = 0 thì ta có phép chia hết. Ví dụ: + Cho a = 9, b = 2, ta có 12 = 2*4 + 1. Ở đây thƣơng là q = 4, số dƣ là r = 1. 2/. Khái niệm ƣớc chung lớn nhất Số nguyên d đƣợc gọi là ƣớc chung của các số nguyên a1, a2, …, an, nếu nó là ƣớc của các số đó. Một ƣớc chung d > 0 của các số nguyên a1, a2, …, an, trong đó mọi ƣớc chung của a1, a2, …, an đều là ƣớc của d, thì d đƣợc gọi là ƣớc chung lớn nhất (UCLN) của a1, a2, …, an. Ký hiệu d = gcd(a1, a2, …, an) hay d = UCLN(a1, a2, …, an). Nếu gcd(a1, a2, …, an) = 1, thì các số a1, a2, …, an đƣợc gọi là nguyên tố cùng nhau. Ví dụ: + Cho a = 10, b = 15, gcd(10,15) = 5. + Hai số 7 và 9 là nguyên tố cùng nhau, vì gcd(7,9) = 1.10 3/. Khái niệm bội chung nhỏ nhất Số nguyên m đƣợc gọi là bội chung của các số nguyên a1, a2, …, an, nếu nó là bội của tất cả các số đó. Một bội chung m > 0 của các số nguyên a1, a2, …, an, trong đó mọi bội chung của a1, a2, …, an đều là bội của m, thì m đƣợc gọi là bội chung nhỏ nhất (BCNN) của a1, a2, …, an. Ký hiệu m = lcm(a1, a2, …, an) hay m = BCNN(a1, a2, …, an). Ví dụ: + Cho a = 10, b = 15, lcm(10,15) = 30. 4/. Một số ký hiệu + Zn = {0, 1, 2, …, n-1} là tập các số nguyên không âm < n. + Zn* = {e Zn, e là nguyên tố cùng nhau với n}, Tức e ≠ 0. Ví dụ: + Z4 = {0, 1, 2, 3}. Khi đó số phần tử của Z4 là |Z4| = 4. + Z4* = {1, 3}. Khi đó số phần tử của Z4* là | Z4*| = 2. 5/. Tính chất + d = gcd(a1, a2, …, an) khi và chỉ khi tồn tại các số x1, x2, …, xn sao cho: d = a1x1 + a2x2 + … + anxn. Đặc biệt: a a1, a2, …, an nguyên tố cùng nhau ⇔ tồn tại các số x1, x2, …, xn sao cho: 1 = a1x1 + a2x2 + … + anxn. + d = gcd(a1, a2, …, an) ⇔ gcd(a1/d, a2/d, …, an/d) = 1. + m = lcm(a1, a2, …, an) ⇔ gcd(m/a1, m/a2, …, m/an) = 1. + gcd(m*a1, m*a2, …, m*an) = m * gcd(a1, a2, …, an) (với m # 0). + Nếu gcd(a,b) = 1 thì lcm(a,b) = a*b. + Nếu b > 0, a = bq + r thì gcd(a,b) = gcd(b,r).11 1.1.1.2. Quan hệ “Đồng dư” 1/. Khái niệm Cho các số nguyên a, b, m (m > 0), khi đó a đƣợc gọi là đồng dƣ với b theo modulo m, nếu chia a và b cho m có cùng một số dƣ. Số nguyên m đƣợc gọi là modulo của đồng dƣ. Ký hiệu: a b (mod m). Ví dụ: 9 ≡ 7 (mod 2) vì 9 mod 2 = 7 mod 2 = 1. 2/.Tính chất của đồng dƣ Cho a, a1, b, b1, c Z. Ta có các tính chất sau: + a ≡ b mod m chỉ nếu a và b có cùng số dƣ khi chia cho m. + Tính phản xạ: a ≡ a mod m. + Tính đối xứng: Nếu a ≡ b mod m thì b ≡ a mod m. + Tính bắc cầu: Nếu a ≡ b mod m và b ≡ c mod m thì a ≡ c mod m. + (a + b) mod m ≡ [(a mod m) + (b mod m)] mod m. + (a - b) mod m ≡ [(a mod m) - (b mod m)] mod m. + Nếu a ≡ a1 mod m, b ≡ b1 mod m thì a + b ≡ a1 + b1 mod m và ab ≡ a1b1 mod m.12 1.1.1.3. Số nguyên tố 1/. Khái niệm Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có hai ƣớc là 1 và chính nó. Ví dụ: 2,3,5,7,11,13,17 là số nguyên tố. Số 2 là số nguyên tố chẵn duy nhất. 2/. Định lý a) Định lý về số nguyên dƣơng lớn hơn 1: Mọi số nguyên dƣơng n > 1 đều có thể biểu diễn đƣợc duy nhất dƣới dạng: n = P1n1 * P2n2 * Pknk, trong đó: k, ni (i = 1, 2, …, k) là các số tự nhiên, Pi là các số nguyên tố, từng đôi một khác nhau. b) Định lý Mersenne: Cho p = 2k – 1, nếu p là số nguyên tố, thì k phải là số nguyên tố. + Chứng minh: Bằng phản chứng, giả sử k không là số nguyên tố. Khi đó k = a*b với 1 < a, b < k. Nhƣ vậy: p = 2k – 1 = 2ab – 1 = (2a)b – 1 = (2a – 1).E, trong đó E là một số nguyên (áp dụng định thức Niu-tơn). Điều này mâu thuẫn giả thiết p là nguyên tố. Vậy là sai, hay k là số nguyên tố. c) Định lý Euler: Cho số nguyên dƣơng n, số lƣợng các số nguyên dƣơng bé hơn n và nguyên tố cùng nhau với n đƣợc ký hiệu (n) và gọi là hàm Euler. Nếu p là số nguyên tố, thì (p) = p – 1. Định lý về hàm Euler: + Nếu n là tích hai số nguyên tố n = p*q, thì (n) = (p)* (q) = (p – 1) * (q – 1).13 1.1.2. Một số khái niệm trong đại số 1.1.2.1. Cấu trúc nhóm 1/. Khái niệm nhóm Nhóm là một bộ (G, *), trong đó G ≠ , * là phép toán hai ngôi trên G thỏa mãn ba tính chất sau: + Phép toán có tính chất kết hợp: (x * y) * z = x * (y * z) + Tồn tại phần tử trung lập e G: e * x = x * e = x, x G + x G, tồn tại phần tử nghịch đảo x’ G: x’ * x = x * x’ = e Cấp của nhóm G đƣợc hiểu là số phần tử của nhóm, ký hiệu là |G|. Nhóm Abel là nhóm (G, *), trong đó phép toán hai ngôi * có tính giao hoán. 2/. Nhóm con của nhóm (G, *) Nhóm con của G là tập S G, S ≠ , và thỏa mãn các tính chất sau: + Phần tử trung lập e của G nằm trong S. + S khép kín đối với phép tính (*) trong, tức là x * y S với mọi x, y S. + S khép kín đối với phép lấy nghịch đảo trong G, tức x-1 S với mọi x S. 1.1.2.2. Nhóm Cyclic Nhóm (G, *) đƣợc gọi là nhóm Cylic nếu nó là nhóm đƣợc sinh ra bởi một trong các phần tử của nó. Tức là có phần tử g G mà với mỗi a G, đều tồn tại số n N để gn = a. Khi đó g là phần tử sinh hay phần tử nguyên thủy của nhóm G. Cho (G, *) là nhóm Cyclic với phần tử sinh g và phần tử trung lập e. Nếu tồn tại số tự nhiên nhỏ nhất n mà gn = e, thì G sẽ chỉ gồm có n phần tử khác nhau: e, g, g2, g3,…, gn-1. Khi đó G đƣợc gọi là nhóm Cyclic hữu hạn cấp n. Nếu không tồn tại số tự nhiên n để gn = e, thì G có cấp ∞. Phần tử a Zn* có cấp d nếu d là số nguyên dƣơng nhỏ nhất sao cho ad = e, trong đó e là phần tử trung lập của G.14 1.1.2.3. Nhóm (Zn*, phép nhân mod n) 1/. Khái niệm Tập thặng dƣ thu gọn theo modulo a) Ký hiệu Zn = {0, 1, 2, ..., n-1} là tập các số nguyên không âm < n. Zn và phép cộng (+) lập thành nhóm Cyclic có phần tử sinh là 1, pt trung lập e = 0. (Zn, +) đƣợc gọi là nhóm cộng, đó là nhóm hữu hạn có cấp n. b) Ký hiệu Zn* = {e Zn, e là nguyên tố cùng nhau với n}. Tức là e phải ≠ 0. + Zn* đƣợc gọi là Tập thặng dƣ thu gọn theo mod n, có số phần tử là (n). + Zn* với phép nhân mod n lập thành một nhóm (nhóm nhân), pt trung lập e = 1. Tổng quát phép nhân (Zn* , phép mod n) không phải là nhóm Cyclic. Nhóm nhân Zn* = là Cyclic chỉ khi n có dạng: 2, 4, pk hay 2pk với p là số nguyên tố lẻ. 2/. Một số kết quả đã đƣợc chứng minh a) Định lý Lagrange: Nếu G là nhóm cấp n và a G thì cấp của a là ƣớc của n. b) Hệ quả: Giả sử a Zn* có cấp m, thì m là ƣớc của (n). c) Định lý: Nếu p là số nguyên tố thì Zp* là nhóm Cyclic. Nếu b Zn* thì b(n) ≡ 1 (mod n). Nếu p là số nguyên tố thì (p) = p - 1. Do đó với b Zp* (tức b nguyên tố với p), thì b(n) ≡ 1 (mod n), hay bp-1 ≡ 1 (mod n). d) Chú ý: Theo định nghĩa, phần tử a Zn* có cấp d nếu d là số nguyên dƣơng nhỏ nhất sao cho ad = e trong Zn*. Nhƣ vậy trong Zn* ta hiểu là ad ≡ e (mod n). Định lý: Nhóm con của một nhóm Cyclic cũng là một nhóm Cyclic.15 3/. Phần tử nghịch đảo đối với phép nhân a) Định nghĩa: Cho a Zn. Nếu tồn tại b Zn sao cho a b 1 (mod n), ta nói b là phần tử nghịch đảo của a trong Zn và ký hiệu a-1. Một phần tử có phần tử nghịch đảo, gọi là khả nghịch. b) Định lý: UCLN(a, n) = 1 ⇔ Phần tử a Zn có phần tử nghịch đảo. Chứng minh: Nếu a a-1 ≡ 1 (mod n) thì a a-1 = 1 + kn ⇔ a a-1 – kn = 1 → (a,n) = 1. Nếu (a,n) = 1, ta có a a-1 + kn = 1 → a a-1 = 1 + kn, do đó a a-1 ≡ 1(mod n). c) Hệ quả: Mọi phần tử trong Zn* đều có phần tử nghịch đảo. 4/. Khái niệm Logarit rời rạc Cho p là số nguyên tố, g là phần tử nguyên thủy của Zp, β Zp*. “Logarit rời rạc” chính là việc giải phƣơng trình x = logg β (mod p) với ẩn x. Hay phải tìm số x duy nhất sao cho: gx ≡ β (mod p). 5/. Thăng dƣ bậc hai Cho p là số nguyên tố lẻ, x là số nguyên dƣơng ≤ p – 1. x đƣợc gọi là “thăng dƣ bậc hai” mod p, nếu phƣơng trình y2 ≡ x mod p có lời giải.16 1.2. MỘT SỐ KHÁI NIỆM VỀ MẬT MÃ 1.2.1. Khái niệm mật mã Mật mã có lẽ là kỹ thuật đƣợc dùng lâu đời nhất trong việc đảm bảo “An toàn thông tin”. Kỹ thuật “mật mã” là công khai cho ngƣời dùng. Điều bí mật nằm ở “khóa” mật mã. Hiện có nhiều kỹ thuật mật mã khác nhau với những ƣu, nhƣợc điểm riêng. Tùy theo yêu cầu của môi trƣờng ứng dụng mà ta dùng kỹ thuật này hay kỹ thuật khác. Mật mã cổ điển chủ yếu dùng để “che giấu” dữ liệu. Với mật mã hiện đại, ngoài khả năng “che giấu” dữ liệu, còn dùng để thực hiện: Ký số (ký điện tử), tạo đại diện thông điệp, giao thức bảo toàn dữ liệu, giao thức xác thực thực thể, giao thức xác thực tài liệu, … Theo nghĩa hẹp, mật mã chủ yếu dùng để bảo mật dữ liệu, ngƣời ta quan niệm: Mật mã là Khoa học nghiên cứu mật mã: Tạo mã và Phân tích mã. Phân tích mã là kỹ thuật, nghệ thuật phân tích mật mã, kiểm tra tính bảo mật của nó hoặc phá vỡ sự bí mật của nó. Phân tích mã còn đƣợc gọi là thám mã. Theo nghĩa rộng, mật mã là một trong những công cụ hiệu quả bảo đảm An toàn thông tin nói chung: bảo mật, bảo toàn, xác thực, chống chối cãi, … 1.2.2. Khái niệm mã hóa (Encryption) Mã hóa là quá trình chuyển thông tin có thể đọc đƣợc (gọi là Bản rõ) thành thông tin “khó” có thể đọc đƣợc theo cách thông thƣờng (gọi là Bản mã). Giải mã là quá trình chuyển thông tin ngƣợc lại: từ Bản mã thành Bản rõ. Thuật toán mã hóa hay giải mã là thủ tục tính toán để thực hiện mã hóa hay giải mã. Khóa mã hóa là một giá trị làm cho thuật toán mã hóa thực hiện theo cách riêng biệt và sinh ra bản rõ riêng. Thông thƣờng khóa càng lớn thì bản mã càng an toàn. Phạm vi các giá trị có thể của khóa đƣợc gọi là không gian khóa. Hệ mã hóa là tập các thuật toán, các khóa nhằm che giấu thông tin, cũng nhƣ làm cho rõ nó.17 1.2.2.1. Hệ mã hóa khóa đối xứng 1/. Khái niệm. Hệ mã hóa khóa đối xứng là hệ mã hóa có khóa lập mã và khóa giải mã là “giống nhau”, theo nghĩa biết đƣợc khóa này thì “dễ” tính đƣợc khóa kia. Vì vậy phải giữ bí mật cả hai khóa. Đặc biệt có một số hệ mã hóa có khóa lập mã và khóa giải mã trùng nhau (ke = kd), nhƣ hệ mã hóa “dịch chuyển” hay DES. 2/. Đặc điểm. a). Ƣu điểm: + Hệ mã hóa khóa đối xứng mã hóa và giải mã nhanh hơn hệ mã hóa khóa bất đối xứng. b). Hạn chế: + Hệ mã hóa khóa đối xứng chƣa thật an toàn với lý do sau: Khóa phải đƣợc giữ bí mật tuyệt đối vì biết đƣợc khóa này dễ tính đƣợc khóa kia và ngƣợc lại. + Vấn đề thỏa thuận khóa và quản lý khóa chung là khó khăn và phức tạp. Ngƣời gửi và ngƣời nhận phải luôn thống nhất về khóa. Việc thay đổi khóa là rất khó và dễ bị lộ. Khóa chung phải đƣợc gửi cho nhau trên kênh an toàn. 3/. Ứng dụng. Hệ mã hóa khóa đối xứng thƣờng đƣợc sử dụng trong môi trƣờng mà khóa chung có thể dễ dàng trao chuyển bí mật, chẳng hạn trong cùng một mạng nội bộ. Hệ mã hóa khóa đối xứng thƣờng đƣợc sử dụng để mã hóa những bản tin lớn, vì tốc độ mã hóa và giải mã nhanh hơn hệ mã hóa bất đối xứng.18 1.2.2.2. Hệ mã hóa khóa bất đối xứng 1/. Khái niệm. Hệ mã hóa khóa bất đối xứng là hệ mã hóa có khóa lập mã và giải mã khác nhau (ke kd), biết đƣợc khóa này cũng khó tính đƣợc khóa kia. Hệ mã này còn đƣợc gọi là hệ mã hóa khóa công khai. Khóa lập mã cho công khai, gọi là khóa công khai. Khóa giải mã giữ bí mật, gọi là khóa bí mật. 2/. Đặc điểm. a). Ƣu điểm: + Thuật toán viết một lần, công khai cho nhiều lần dùng, nhiều ngƣời dùng, họ chỉ cần giữ bí mật khóa riêng của mình. + Khi biết các tham số ban đầu của hệ mã hóa, việc tính ra cặp khóa công khai và bí mật phải là “dễ”. + Khả năng lộ khóa bí mật khó hơn vì chỉ có một ngƣời giữ. + Nếu thám mã biết khóa công khai và bản mã C, thì việc tìm ra bản rõ P là một bài toán “khó”, số phép thử là vô cùng lớn, không khả thi. b). Hạn chế: Mã hóa và giải mã chậm hơn hệ mã hóa khóa đối xứng. 3/. Ứng dụng: Hệ mã hóa khóa công khai đƣợc sử dụng chủ yếu trên mạng công khai nhƣ internet, khi mà việc trao chuyển khóa bí mật tƣơng đối khó khăn. Đặc trƣng nổi bật của hệ mã hóa khóa công khai là cả khóa công khai và bản mã C đều có thể gửi đi trên một kênh thông tin không an toàn. 4/. Ví dụ: Mã hóa RSA, Elgamal.19 1.2.3. Khái niệm ký số (Digital Signature) “Chữ ký số” dùng để chứng thực “tài liệu số”. Ngƣời ta tạo ra “chữ ký số” trên “tài liệu số” giống nhƣ tạo ra “bản mã” của tài liệu với “khóa lập mã”. Nhƣ vậy, ký số trên tài liệu số là “ký” trên từng bit dữ liệu. Kẻ gian khó có thể giả mạo “chữ ký số” nếu không biết “khóa lập mã”. Thực chất, ký số trên “tài liệu số” là “mã hóa” tài liệu số. Bản mã chính là “chữ ký số” hay “chữ ký điện tử” (Digital Signature). Xác nhận “chữ ký” là kiểm tra việc mã hóa trên có đúng không. Nhƣ vậy khi gửi một tài liệu số có chữ ký trên đó, ngƣời ta phải gửi cả hai file: một file tài liệu và một file chữ ký. Nhờ đó mới kiểm tra đƣợc có đúng chữ ký đó ký trên tài liệu đi kèm hay không. Để kiểm tra một chữ ký số thuộc về một tài liệu số, ngƣời ta giải mã chữ ký số bằng khóa giải mã và so sánh với tài liệu gốc. Chữ ký số có thể ký vào tài liệu từ rất xa trên mạng công khai, có thể ký bằng thiết bị cầm tay tại khắp mọi nơi, miễn là kết nối đƣợc mạng. Ký số đƣợc thực hiện trên từng bít tài liệu, nên độ dài của chữ ký số ít nhất cũng bằng độ dài của tài liệu. Do đó, thay vì ký trên tài liệu dài, ngƣời ta thƣờng dùng “hàm băm” để tạo “đại diện” cho tài liệu, sau đó mới “ký số” lên “đại diện này”. Sơ đồ chữ ký số là bộ năm (P, A, K, S, V), trong đó: + P là tập hữu hạn các văn bản có thể. + A là tập hữu hạn các chữ ký có thể. + K là tập hữu hạn các khóa có thể. + S là tập các thuật toán ký. + V là tập các thuật toán kiểm thử. Với khóa k K: Có thuật toán ký sigk S, sigk: P A. Có thuật toán kiểm tra chữ ký verk V, verk: P A {đúng, sai}. Thỏa mã điều kiện sau với mọi x P, y A: Verk(x, y) =20 1.2.4. Một số loại chữ ký số 1.2.4.1. Chữ ký RSA + Sinh khóa: Chọn p, q là số nguyên tố lớn. Tính n = p * q. Tính (n)= (p - 1)(q - 1). Đặt P = C = Zn. Chọn khóa công khai b < (n) và nguyên tố cùng nhau với (n). Khóa bí mật a là nghịch đảo của b theo modulo (n): a = b-1 (mod (n)). {n, b} công khai, {a, p, q} bí mật. + Ký số : Chữ ký trên x P là y A: y = Sigk(x) = xa mod n. + Kiểm tra chữ ký. Verk(x,y) = true ⇔ x = yb mod n.21 1.2.4.2. Chữ ký Elgamal + Sinh khóa: Chọn p là số nguyên tố sao cho bài toán logarit rời rạc trên Zp là khó giải. Chọn phần tử nguyên thủy g Zp*. Chọn khóa bí mật a Zp*. Đặt P = Zp*, A = Zp* Zp-1. Khóa công khai h ga mod p. Tập khóa K = {(p, g, a, h): h ga mod p} Các giá trị {p, g, h} công khai, a phải giữ bí mật. + Ký số: Dùng 2 khóa ký: khóa a và chọn khóa ngẫu nhiên bí mật r Zp-1*. Chữ ký trên x P là y = Sigk (x, r) = (y1, y2), y A. Trong đó y1 Zp*, y2 Zp-1: y1 = mod p y2 = (x – a * y1)*r-1 mod (p-1) + Xác minh chữ ký Verk(x, y1, y2) = đúng ⇔ * = gx mod p22 1.2.4.3. Chữ ký DSS + Sinh khóa: Chọn p là số nguyên tố sao cho bài toán logarit rời rạc trên Zp là khó giải. Chọn q là ƣớc nguyên tố của p - 1. Tức là p - 1 = t * q hay p = t * q + 1. Chọn g Zp* là căn bậc q của 1 mod p. (g là phần tử sinh của Zp*). Tính b = gt, chọn khóa bí mật a Zp*. Tính khóa công khai h ba mod p. Các tham số p, q, b, h là công khai, a là tham số bí mật. + Ký số: Dùng 2 khóa ký: a và khóa ngẫu nhiên bí mật r Zp*. Chữ ký trên x Zp* là Sigk (x, r) = (y1, y2) trong đó: y1 = (br mod p) mod q. y2 = ((x + a * y1) * r-1 mod q. + Xác minh chữ ký Verk(x, y1, y2) = đúng ⇔ (be1 * he2 mod p) mod q = y1 với: e1 = x * y2-1 mod q. e2 = y1 * y2-1 mod q.23 1.3. KHÁI NIỆM VỀ CHỮ KÝ BỘI 1.3.1. Đặt vấn đề Chữ ký số (Digital Signature) đƣợc sử dụng để chứng thực các văn bản trong các giao dịch điện tử, nhằm đáp ứng các yêu cầu về: tính xác thực, tính toàn vẹn và tính chống chối bỏ trách nhiệm. Chữ ký số đƣợc phân thành hai lớp: chữ ký đơn (Single Digital Signature) và chữ ký bội hay chữ ký tập thể (Digital Multi-Signature). Chữ ký đơn đƣợc sử dụng trong trƣờng hợp chỉ một ngƣời ký vào một văn bản, còn chữ ký bội đƣợc sử dụng trong trƣờng hợp một nhóm ngƣời có quan hệ với nhau cùng hợp tác để ký vào một văn bản. (bao gồm nhóm nnếđồng, thỏa thuậnnhƣ chữ ký số đơn. . Chữ ký bội cũng tƣơng tự nhƣ chữ ký đơn, nhƣng để phát sinh chữ ký bội phải có sự hợp tác của các thành viên trong nhóm ký với khóa riêng của từng ngƣời. Chữ ký bội đƣợc chia thành hai dạng cơ bản theo hai phƣơng pháp ký khác nhau: ký đồng thời và ký tuần tự, do đó các lƣợc đồ chữ ký bội cũng đƣợc chia thành hai dạng cơ bản là: lƣợc đồ chữ ký bội song song và lƣợc đồ chữ ký bội tuần tự. Với các lƣợc đồ thuộc loại song song, việc ký vào văn bản của các thành viên đƣợc thực hiện một cách đồng thời, còn ngƣợc lại trong các lƣợc đồ tuần tự, việc ký vào văn bản của các thành viên trong nhóm ký đƣợc thực hiện nối tiếp nhau. Trong thực tiễn, thứ tự ký vào văn bản của các thành viên cần phải đƣợc bảo đảm theo quy định.24 1.3.2. Bài toán Logarit rời rạc Cho số nguyên tố p, gọi là phần tử sinh (generator) và một phần tử . Cần xác định số nguyên dƣơng sao cho , kí hiệu . Trên thực tế, bài toán Logarit rời rạc thuộc loại bài toán khó, hiện nay chƣa có thuật toán đơn định đa thức để giải nó. Với p có tối thiếu 300 chữ số (hệ mƣời) và p – 1 có thừa số nguyên tố đủ lớn, phép toán lũy thừa modulo p có thể xem nhƣ là hàm một chiều hay việc giải bài toán logarit rời rạc trên Z*p xem nhƣ không thể thực hiện đƣợc trên thực tế. Lợi thế của bài toán Logarit rời rạc trong xây dựng hệ mật là khó tìm đƣợc logarit rời rạc, song bài toán lấy luỹ thừa lại có thể tính toán hiệu quả theo thuật toán "bình phƣơng và nhân". Nói cách khác, luỹ thừa theo modulo p là hàm một chiều với các số nguyên tố p thích hợp. 1.3.3. Lƣợc đồ chữ ký bội dựa trên bài toán Logarit rời rạc 1.3.3.1. Giới thiệu Lƣợc đồ đa chữ ký bội ở đây đƣợc phát triển với các yêu cầu nhƣ sau: + Chữ ký bội đƣợc phát sinh bởi một nhóm ngƣời với các khóa riêng của từng thành viên. Không có khả năng phát sinh đa chữ ký nếu không có đủ số lƣợng các thành viên. + Độ dài của chữ ký bội là cố định không phụ thuộc vào số lƣợng ngƣời ký. + Chữ ký bội đƣợc thẩm tra nhờ khóa công khai chung của cả nhóm, hơn nữa khóa công khai chung đƣợc hình thành từ các khóa công khai của mỗi thành viên theo một luật xác định. *pZ *pZ *paZ (mod )ap loga25 1.3.3.2. Thuật toán hình thành và kiểm tra chữ ký bội Giả thiết rằng nhóm ngƣời có thẩm quyền ký gồm n thành viên, để ký vào văn bản M, quá trình ký và xác minh đƣợc tiến hành nhƣ sau: 1/. Các tham số dùng chung + p, q là 2 số nguyên tố lớn, sao cho: p = Z.q +1, Z là số nguyên. + p, q có thể chọn theo chuẩn chữ ký số DSS của Mỹ nhƣ sau: , với: L = 1024, N = 160; L = 2048, N = 224; L = 2048, N = 256; L = 3072, N = 256. + g là phần tử sinh có bậc q của nhóm , nghĩa là: , và: . Các giá trị (p, q, g) là các tham số công khai trong quá trình hình thành và kiểm tra chữ ký. 2/. Hình thành khóa công khai chung cho cả nhóm + Mỗi thành viên chọn ngẫu nhiên số nguyên: làm khóa bí mật và tính khóa công khai tƣơng ứng: + Khóa công khai chung của nhóm đƣợc tính theo công thức: 3/. Hình thành đa chữ ký số a) Phƣơng án thứ nhất: + Mỗi thành viên chọn ngẫu nhiên số nguyên bí mật: và tính: + Một ngƣời làm đại diện cho nhóm tính giá trị công khai: + Ngƣời đại diện cho nhóm tính phần thứ nhất của chữ ký tập thể: LLp221 NNq221 *pZ pg0 pgqmod1 ]1,1[qxi pgyiximod niipyY1mod ]1,1[qki pgrikimod niiprR1mod26 Ở đây : – bản tóm lƣợc của M, với h – hàm băm đƣợc chọn đủ an toàn, chẳng hạn: SHA-1, 2. Sau đó E đƣợc gửi cho mọi thành viên trong nhóm; + Mỗi ngƣời ký tính phần thứ hai của chữ ký cá nhân theo công thức: (1) Sau đó gửi si cho ngƣời đại diện nhóm. Cặp giá trị là chữ ký cá nhân của thành viên thứ i vào văn bản M. + Sau khi nhận đƣợc tất cả các chữ ký cá nhân, ngƣời đại diện cho nhóm kiểm tra sự hợp lệ của các chữ ký này nhờ công thức: và: rồi tính: . Nếu: E’ = E, ngƣời đại diện nhóm sẽ tính thành phần thứ 2 của đa chữ ký: (2) Cặp giá trị (E, S) là đa chữ ký số của nhóm ngƣời ký trên văn bản M. + Nhƣ vậy việc hình thành đa chữ ký trong lƣợc đồ trên cần 4 bƣớc để thực hiện. qHREmod. )(MhH pgsqExkiiimodmod).( ( , )iirs ( , )iirs psyriEiimod.' niiprR1'mod' qHREmod'.' psSniimod127 Tuy nhiên, thay (1) vào (2) ta có: b) Nhƣ vậy ta sẽ có phƣơng án thứ 2 cho việc hình thành đa chữ ký nhƣ sau: + Mỗi thành viên chọn ngẫu nhiên số nguyên: và tính: + Một ngƣời làm đại diện cho nhóm tính giá trị công khai: rồi tính phần thứ nhất của đa chữ ký: với H = h(M) là bản tóm lƣợc của M. và tính phần thứ hai của đa chữ ký: 4/. Kiểm tra chữ ký số Ta có:, trong đó: . Nếu văn bản M và chữ ký (E, S) nhận đƣợc là đúng thì: E’ = E và S’ = S Nhƣ vậy, việc kiểm tra đƣợc thực hiện qua các bƣớc sau: + Từ M tính: ; + Sử dụng khóa công khai Y và tham số công khai R để tính: + So sánh E’ với E và S’ với S. Nếu: E’ = E và S’ = S thì chữ ký là hợp lệ và văn bản là toàn vẹn. )3.(mod.mod)....).(....(mod)....).(....(mod.........mod....2121modmod.mod.mod.modmodmodmod).(mod).(mod).(212121212211pYRSpyyyrrrSpggggggSpggggggSpgggSEEnnqExxxkkkqExqExqExqkqkqkqExkqExkqExknnnnnn ]1,1[qki pgrikimod niiprR1mod qHREmod. qYRSEmod. qHREmod'.' qYRSEmod.'' )('MhH )('MhH qHREmod'.' qYRSEmod.''28 Chương 2. GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ 2.1. KHÁI NIỆM CHÍNH PHỦ ĐIỆN TỬ 2.1.1. Giới thiệu Chính phủ điện tử (CPĐT) là Chính phủ ứng dụng Công nghệ thông tin – truyền thông (CNTT-TT) để các cơ quan Chính phủ đổi mới tổ chức, đổi mới các quy trình hoạt động, tăng cƣờng năng lực của Chính phủ, khiến Chính phủ làm việc hiệu lực, hiệu quả và minh bạch hơn, cung cấp thông tin, dịch vụ tốt hơn cho ngƣời dân, doanh nghiệp và các tổ chức và tạo điều kiện thuận lợi hơn cho ngƣời dân thực hiện quyền dân chủ và tham gia quản lý Nhà nƣớc. Nói một cách ngắn gọn, CPĐT là Chính phủ hoạt động hiệu lực, hiệu quả hơn, cung cấp dịch vụ tốt hơn trên cơ sở ứng dụng CNTT-TT. CPĐT là một hệ thống CNTT-TT hỗ trợ công tác quản lý (điều hành) của chính phủ một cách hiệu quả. CPĐT là “nhúng” toàn bộ hoạt động quản lý Nhà nƣớc vào môi trƣờng thông tin điện tử, sử dụng Internet và công nghệ Internet để mở rộng khả năng truy cập và cung cấp các dịch vụ công của Chính quyền đến công dân, công chức và doanh nghiệp. Qua đó, Chính phủ có thể quản lý và phục vụ ngƣời dân. Ngƣời dân chấp hành quy định và thực hiện trách nhiệm công dân của mình thông qua môi trƣờng đó. Mục tiêu của CPĐT là: + Thiết lập môi trƣờng kinh doanh thuận lợi. + Khách hàng “trực tuyến” (Online) chứ không phải “xếp hàng” (inline). + Tăng cƣờng sự điều hành có hiệu quả của Chính phủ với sự tham gia của cộng đồng. + Nâng cao hiệu lực và hiệu quả của các cơ quan Nhà nƣớc. + Nâng cao chất lƣợng cuộc sống cho các cộng đồng vùng sâu vùng xa.29 2.1.2. Các định nghĩa về CPĐT Có nhiều cách tiếp cận khác nhau nên có nhiều định nghĩa về CPĐT 2.1.2.1. Cách tiếp cận 1 Theo định nghĩa của Ngân hàng thế giới: CPĐT là việc các cơ quan của Chính phủ sử dụng một cách có hệ thống công nghệ thông tin và viễn thông để thực hiện các quan hệ với công dân, với doanh nghiệp và các tổ chức xã hội. Nhờ đó, giao dịch của các cơ quan Chính phủ với công dân và các tổ chức sẽ đƣợc cải thiện, nâng cao chất lƣợng. Lợi ích thu đƣợc sẽ là giảm thiểu tham nhũng, tăng cƣờng tính công khai, sự tiện lợi, góp phần vào sự tăng trƣởng và giảm chi phí. 2.1.2.2. Cách tiếp cận 2 CPĐT là sự tối ƣu hóa liên tục việc chuyển giao các dịch vụ, sự tham gia của các thành phần và sự quản lý của nhà nƣớc bởi việc chuyển đổi các quan hệ bên trong và bên ngoài thông qua công nghệ, Internet và các phƣơng tiện mới. Các thành phần bên ngoài: các dịch vụ trƣớc tuyến (Online Services) đối với công dân hay doanh nghiệp. Các thành phần bên trong: các hoạt động của Chính phủ từ các công chức cho tới bộ máy nhà nƣớc. CPĐT là một Chính phủ vận hành trực tuyến (Government Online – GOL), hay Chính phủ 24x7, thậm chí là 24x365. Một điểm cơ bản của CPĐT là khả năng sử dụng các công nghệ mới nhƣ hạ tầng cơ sở công nghệ thông tin, mạng máy tính và cao nhất là Internet làm nền tảng cho việc quản lý và vận hành của bộ máy nhà nƣớc nhằm cung cấp các “dịch vụ” cho toàn xã hội một cách tốt nhất. Trong xã hội thông tin hiện nay, quá trình hoạt động và quản lý từ cấp cao nhất đến cơ sở cần phải đƣợc dựa trên các hệ thống tập hợp, lƣu trữ, xử lý, sử dụng và khai thác thông tin có hiệu quả để cai quản và điều hành vĩ mô mọi hoạt động của nền kinh tế toàn xã hội. Tốc độ phát triển mạnh mẽ nhƣ vũ bão của Internet hiện nay đã và đang là động lực làm thay đổi cách thức kinh doanh và vận hành doanh nghiệp và cũng là nhân tố tích cực cho việc hình thành và phát triển khái niệm CPĐT, để trở thành một hệ thống “hiệu quả hơn” và “phục vụ tốt hơn”.30 2.1.2.3. Cách tiếp cận 3 Chính phủ điện tử là hệ thống thông tin đặc biệt, nhằm: + Kết nối các cơ quan của chính phủ trong hoạt động, cung cấp, chia sẻ thông tin và phối kết hợp cung cấp giá trị tốt nhất trong việc cung ứng các dịch vụ công với chất lƣợng tốt nhất, phƣơng thức mới nhất trên môi trƣờng điện tử. + Xây dựng và hình thành cổng điện tử của các cơ quan hành chính địa phƣơng, cung cấp thông tin cho mọi ngƣời dân về những công việc của cơ quan hành chính, các quy định và thủ tục, dịch vụ mà cơ quan hành chính cung cấp cho nhu cầu ngƣời dân. + Coi “công dân” là “khách hàng”: thay đổi cách tiếp cận về quan hệ giữa công dân và Chính phủ, từ quan hệ “xin-cho” thành quan hệ “phục vụ, cung ứng dịch vụ”. Khách hàng là công dân có nhiều khả năng lựa chọn dịch vụ tốt nhất cho cuộc sống. + Việc cung ứng các sản phẩm, dịch vụ và tƣ vấn bằng công nghệ mới đã đƣợc chuyển thành các “Trung tâm kết nối”, giúp cho mọi ngƣời có thể tự lựa chọn phƣơng án, cách thức để giải quyết những vấn đề của cá nhân trong cuộc sống. Cơ quan hành chính biến thành các Trung tâm kết nối thông tin, giúp đỡ, hƣớng dẫn, hỗ trợ ngƣời dân lựa chọn và thực hiện các dịch vụ hành chính. 2.1.2.4. Cách tiếp cận 4 CPĐT có thể coi là: + Việc sử dụng CNTT nhằm giải phóng các hoạt động thông tin, vƣợt qua các rào vản vật lý của hệ thống giấy tờ truyền thống và các hệ thống cơ sở khác. + Nhằm sử dụng công nghệ để tăng cƣờng khả năng tiếp cận cho công dân, doanh nghiệp, các đối tác và ngƣời lao động đến các dịch vụ của Chính phủ.31 2.2. KHÁI NIỆM GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ Về tổng thể có thể phân loại giao dịch của CPĐT thành bốn loại: + Chính phủ với Công dân (G2C). + Chính phủ với Ngƣời lao động (G2E). + Chính phủ với Chính phủ (G2G). + Chính phủ với Doanh nghiệp (G2B). Ngoài bốn mô hình chủ yếu trên, còn có nhiều hình thức giao tiếp khác trong CPĐT nhƣ: C2C, C2G, C2B, C2N, B2C… 2.2.1. G2C (Government to Citizen) G2C đƣợc hiểu nhƣ khả năng giao dịch và cung cấp các dịch vụ của Chính phủ trực tiếp cho cộng đồng, thí dụ tổ chức bầu cử của công dân, thăm dò dƣ luận, quản lý quy hoạch xây dựng đô thị, tƣ vấn, khiếu nại, giám sát và thanh toán thuế, hóa đơn của các nghành với ngƣời thuê bao, dịch vụ thông tin trực tiếp 24x7, phục vụ công cộng, môi trƣờng giáo dục. G2C bao gồm phổ biến thông tin tới công chúng, các dịch vụ công dân cơ bản nhƣ gia hạn giấy phép, cấp giấy khai sinh/ khai tử/ đăng ký kết hôn và kê khai các biểu mẫu nộp thuế thu nhập cũng nhƣ hỗ trợ ngƣời dân đối với các dịch vụ cơ bản nhƣ giao dục, chăm sóc y tế, thông tin bệnh viện, thƣ viện và rất nhiều dịch vụ khác. 2.2.2. G2E (Government to Employee) G2E chỉ các dịch vụ, giao dịch trong mối quan hệ giữa Chính phủ đối với ngƣời làm công lao động nhƣ bảo hiểm, dịch vụ việc làm, trợ cấp thất nghiệp, y tế, nhà ở… 2.2.3. G2G (Government to Government) G2G đƣợc hiểu nhƣ khả năng phối hợp, chuyển giao và cung cấp các dịch vụ một cách có hiệu quả giữa các cấp, ngành, tổ chức, bộ máy của Nhà nƣớc trong việc điều hành và quản lý Nhà nƣớc, trong đó chính bản thân bộ máy của Chính phủ vừa đóng vai trò là chủ thể và khách thể trong mối quan hệ này.32 2.2.4. G2B (Government to Bussiness) G2B là dịch vụ và quan hệ của Chính phủ đối với các doanh nghiệp, các tổ chức phi Chính phủ, nhà sản xuất nhƣ dịch vụ mua sắm, thanh tra, giám sát doanh nghiệp (về đóng thuế, tuân thủ luật pháp…); thông tin về phát triển đất đai, đấu thầu, xây dựng; cung cấp thông tin dạng văn bản, hƣớng dẫn sử dụng, quy định, thi hành chính sách… cho các doanh nghiệp. Đây là thành phần quan hệ cơ bản trong mô hình Nhà nƣớc là chủ thể quản lý vĩ mô nền kinh tế, xã hội thông qua chính sách, cơ chế và luật pháp, doanh nghiệp nhƣ là khách thể đại diện cho lực lƣợng sản xuất trực tiếp ra của cải vật chất của nền kinh tế. Các giao dịch G2B bao gồm nhiều dịch vụ khác nhau đƣợc trao đổi giữa Chính phủ và cộng đồng doanh nghiệp bao gồm cả việc phổ biến các chính sách, biên bản ghi nhớ, các quy định và thể chế. Các dịch vụ đƣợc cung cấp bao gồm truy xuất các thông tin về kinh doanh, tải các mẫu đơn, gia hạn giấy phép, đăng ký kinh doanh, xin cấp phép và nộp thuế. Các dịch vụ đƣợc cung cấp thông qua các giao dịch G2B cũng hỗ trợ việc phát triển kinh doanh, đặc biệt là phát triển các doanh nghiệp vừa và nhỏ. Việc đơn giản hóa các thủ tục xin cấp phép, hỗ trợ quá trình phê duyệt đối với các yêu cầu của doanh nghiệp vừa và nhỏ sẽ thúc đẩy kinh doanh phát triển. Ở mức cao hơn, các dịch vụ G2B bao gồm việc mua sắm điện tử và trao đổi trực tuyến giữa Chính phủ với các nhà cung cấp để mua sắm hàng hóa và dịch vụ cho Chính phủ. Tùy theo từng phƣơng pháp, ngƣời mua hoặc ngƣời bán có thể xác định giá cả hoặc mở thầu. Việc mua sắm điện tử làm cho quá trình đấu thầu trở nên minh bạch và cho phép các doanh nghiệp nhỏ có thể tham gia đấu thầu với các dự án lớn của Chính phủ. Hệ thống này cũng giúp cho Chính phủ có thể tiết kiệm chi tiêu nhiều hơn thông qua việc cắt giảm chi phí cho ngƣời môi giới trung gian và giảm chi phí hành chính của các đại lý mua bán.33 2.3. ỨNG DỤNG CHỮ KÝ BỘI TRONG GIAO DỊCH HÀNH CHÍNH ĐIỆN TỬ 2.3.1. Giá trị pháp lý của chữ ký điện tử Để ghi nhận tính xác thực của thông tin đƣợc chứa đựng trong văn bản, từ trƣớc đến nay chữ ký đƣợc coi là phƣơng thức phổ biến nhất với một số đặc trƣng cơ bản sau: + Chữ ký xác định tác giả của văn bản. + Chữ ký thể hiện sự khẳng định của tác giả với nội dung thông tin chứa đựng trong văn bản. Thông qua các phƣơng tiện điện tử, các yêu cầu về đặc trƣng của chữ ký tay trong giao dịch thƣơng mại có thể đáp ứng bằng hình thức chữ ký điện tử. Chữ ký điện tử trở thành một thành tố quan trọng trong văn bản điện tử. Chữ ký điện tử phải đáp ứng đƣợc sự an toàn và thể hiện ý chí rõ ràng của các bên về thông tin chứa đựng trong văn bản điện tử. Đối với Việt Nam, chữ ký điện tử đã đƣợc Chính phủ chấp nhận trong thanh toán liên ngân hàng do Ngân hàng Nhà nƣớc Việt Nam đề nghị vào tháng 3/2002. Tháng 7/2006, Bộ Thƣơng Mại đã công nhận chữ ký điện tử trong giao dịch. Chúng ta đã có Nghị định hƣớng dẫn chi tiết Luật Giao dịch điện tử về chữ ký số và dịch vụ chứng thực chữ ký số. Nghị định này quy định giá trị của chữ ký số và bản tin điện tử đƣợc ký số; việc quản lý, cung cấp và sử dụng dịch vụ chứng thực chữ ký số trong hoạt động của các cơ quan Nhà nƣớc, trong lĩnh vực dân sự, kinh doanh, thƣơng mại và các lĩnh vực khác do pháp luật quy định.34 2.3.2. Chữ ký bội trong giao dịch hành chính điện tử Quản lý tài liệu điện tử và truyền thông tin điện tử đã tạo thành một phần rộng lớn của hoạt động giao dịch hành chính. Ngƣời ta dự kiến việc sử dụng dữ liệu kỹ thuật số sẽ đƣợc phổ biến trong những năm tới và nó sẽ dần dần thay thế phƣơng pháp làm việc với giấy tờ nhƣ truyền thống. Tài liệu giấy sẽ không hoàn toàn biến mất nhƣng hình thức trên giấy sẽ không còn là cốt lõi của hệ thống quản lý tài liệu. Vai trò của nó sẽ đƣợc giảm đến mức cơ bản trong đầu ra của một hệ thống giao dịch hành chính điện tử, thay vào đó là hình thức quản lý số. Xu hƣớng này đã đƣợc thể hiện rõ ràng trong các môi trƣờng hành chính tiên tiến, ví dụ trong lĩnh vực ngân hàng hoặc trong lĩnh vực bảo hiểm, và nó sẽ sớm hay muộn cũng sẽ xuất hiện trong chính quyền của chính phủ, quốc hội và tòa án. Mặc dù vậy, việc sử dụng tài liệu số, thông tin điện tử vẫn không thể tránh khỏi một số hoài nghi, đặc biệt khi tiến hành giao dịch với các thông tin, tài liệu quan trọng. Một trong những lý do là thiếu bảo đảm về khả năng xác thực thông tin, tính xác thực, tính toàn vẹn và tính chống chối bỏ trách nhiệm trong văn bản đó. Vậy nên chữ ký số là một giải pháp thiết yếu cho vấn đề này. Trong thực tế, có rất nhiều giao dịch, thỏa thuận… cần đƣợc ký kết bởi nhiều ngƣời, nhiều đối tác. Vậy nên, ố đơn. Đối với giao dịch hành chính điện tử, việc xác xác thực của thông tin đƣợc chứa đựng trong văn bản do nhiều ngƣời chịu trách nhiệm lại càng cấp thiết. Chữ ký bội đƣợc bổ sung vào tài liệu cho phép những ngƣời có liên quan, cơ quan có thẩm quyền kiểm tra tính xác thực của tài liệu, cũng nhƣ kiểm tra tính toàn vẹn và tính chống chối bỏ trách nhiệm trong văn bản đó. Việc tạo ra khiến chữ ký bội sẽ là một giải pháp đƣợc sử dụng rất nhiều trong giao dịch hành chính điện tử hiện tại và tƣơng lai.35 Chương 3. THỬ NGHIỆM CHƢƠNG TRÌNH CHỮ KÝ BỘI 3.1. CẤU HÌNH HỆ THỐNG 3.1.1. Phần cứng Yêu cầu phần cứng của chƣơng trình: CPU Tối thiểu: 600MHz pentinum processor Đề nghị: 1GHz pentinum processor hoặc cao hơn RAM Tối thiểu: 256 MB Đề nghị: 512 MB hoặc cao hơn HDD Tối thiểu: 5 MB 3.1.2. Phần mềm Yêu cầu phần mềm của chƣơng trình: + Máy phải cài đặt và sử dụng một trong các hệ điều hành sau : window 2000, window XP (pack 1,2,3), window server, window 7. + Yêu cầu cài đặt .net framework.36 3.2. CÁC THÀNH PHẦN CỦA CHƢƠNG TRÌNH Chƣơng trình “Chữ ký bội” (Digital Multi-Signature) sử dụng ngôn ngữ vb.net với giao diện đƣợc thiết kế trên Visual Studio 2008, gồm ba phần chính: + Tạo đại diện. + Tạo chữ ký. + Kiểm tra chữ ký. Hình 3.1 Giao diện chƣơng trình. 3.2.1. Tạo đại diện Phần “Tạo đại diện” sử dụng thuật toán hàm băm MD5 để tạo ra file đại diện từ file cần tạo đại diện ban đầu. 3.2.2. Tạo chữ ký Phần “Tạo chữ ký” sử dụng thuật toán “hình thành chữ ký số bội” trong “phát triển lƣợc đồ chữ ký bội dựa trên cơ sở bài toán logarit rời rạc” để tiến hành ký số lên file đại diện đầu vào. 3.2.3. Kiểm tra chữ ký Phần “Kiểm tra chữ ký” sử dụng thuật toán “kiểm tra chữ ký” trong “phát triển lƣợc đồ chữ ký bội dựa trên cơ sở bài toán logarit rời rạc” để tiến hành kiểm tra chữ ký có chính xác với file đầu vào hay không.37 3.3. CHƢƠNG TRÌNH Chƣơng trình cung cấp chức năng tạo đại diện cho tài liệu và lập, kiểm tra chữ ký của file đại diện ấy. 3.3.1. Chức năng tạo đại diện Đầu vào: File cần tạo đại diện. Đầu ra: File đại diện. 3.3.2. Chức năng tạo chữ ký Đầu vào: + File đại diện. + Các tham số công khai p, q, g. + Khóa công khai cá nhân, tham số r cá nhân. Đầu ra: + File phần thứ nhất của chữ ký. + File phần thứ hai của chữ ký. 3.3.3. Chức năng kiểm tra chữ ký Đầu vào: + File đại diện. + File phần thứ nhất của chữ ký. + File phần thứ hai của chữ ký. + Các tham số p, q, khóa công khai. Đầu ra: + Kết quả kiểm tra chữ ký.38 3.4. HƢỚNG DẪN SỬ DỤNG CHƢƠNG TRÌNH 3.4.1. Hƣớng dẫn cài đặt chƣơng trình Chạy tệp setup.exe để bắt đầu quá trình cài đặt. Bấm [next]. Hình 3.3 Giao diện bắt đầu quá trình cài đặt. Sau đó lựa chọn đƣờng dẫn để cài chƣơng trình (hình 3.3). Bấm [next]. Hình 3.4 Thiết lập cài đặt.39 Sau khi cài đặt thành công sẽ nhận đƣợc thông báo (hình 3.4). Bấm [Close]. Hình 3.4 Cài đặt thành công. 3.4.2. Hƣớng dẫn chạy chƣơng trình Chạy file ChuKyBoi.exe để vào chƣơng trình. 3.4.2.1. Hướng dẫn chức năng “Tạo đại diện” Hình 3.5 Giao diện chức năng “Tạo đại diện”.40 Chọn vị trí File muốn tạo đại diện và vị trí file đại diện sẽ lƣu bằng cách bấm [Chọn] ở lần lƣợt hai vị trí tƣơng ứng. Hình 3.6 Chọn vị trí File cần tạo đại diện. Sau khi chọn xong vị trí file muốn tạo đại diện và vị trí lƣu file đại diện, bấm nút [Tạo đại diện]. Nếu thành công, sẽ nhận đƣợc thông báo nhƣ trong hình 3.7: Hình 3.7 Tạo đại diện thành công.41 3.4.2.2. Hướng dẫn chức năng “Tạo chữ ký” Trong chức năng “tạo chữ ký”, chọn thẻ “Nhóm” nếu bạn là Trƣởng nhóm hoặc ngƣời có trách nhiệm thực hiện ký số cho nhóm. Hình 3.8 Giao diện thẻ “Nhóm”. Trong thẻ “Nhóm”, điền các tham số p, q, g thỏa mãn: + p, q là 2 số nguyên tố lớn, sao cho: p = Z.q +1, Z là số nguyên. + g là phần tử sinh có bậc q của nhóm , nghĩa là: , và: . Bấm nút [Kiểm tra p], [Kiểm tra q], [Kiểm tra g] tƣơng ứng bên cạnh để kiểm tra xem các tham số điền vào có hợp lệ không. Nếu thông báo trả về là không hợp lệ, điền lại tham số đó và tiếp tục bấm các nút kiểm tra để xác định xem tham số mới có hợp lệ hay không. Nếu tham số hợp lệ, sẽ hiện thông báo nhƣ hình 3.9: Hình 3.9 Tham số hợp lệ. *pZ pg0 pgqmod142 Bấm sang thẻ “Cá nhân”. Điền các tham số p, q, g hợp lệ do Trƣởng nhóm hoặc ngƣời có trách nhiệm thực hiện ký số cho nhóm gửi tới. Hình 3.10 Giao diện thẻ “Cá nhân”. Điền khóa bí mật x của cá nhân và tham số k của cá nhân thỏa mãn: + + Bấm [Kiểm tra khóa], [Kiểm tra k] với khóa cá nhân và tham số k tƣơng ứng. Nếu khóa hoặc tham số không hợp lệ sẽ có thông báo lỗi trả về. Nhập lại khóa bí mật và tham số k, bấm các nút kiểm tra tƣơng ứng để xác nhận lại. Nếu khóa bí mật và tham số k hợp lệ, sẽ có thông báo nhƣ trong hình 3.11: Hình 3.11 “Khóa cá nhân” hợp lệ. ]1,1[qxi ]1,1[qki43 Bấm [Tính Khóa và tham số r] để tính giá trị Khóa công khai và r từ khóa bí mật và tham số k. Hình 3.12 Tính khóa công khai và tham số r. Trƣởng nhóm hoặc ngƣời có trách nhiệm thực hiện ký số cho nhóm bấm trở lại thẻ “Nhóm”. Điền số ngƣời tham gia ký số, bấm [Nhập thông số] và điền lần lƣợt các giá trị “Khóa công khai”, “tham số r” tƣơng ứng của họ theo yêu cầu. Hình 3.13 Nhập khóa công khai và tham số r.44 Bấm [OK] để xác nhận, chƣơng trình sẽ hiển thị giá trị khóa công khai, tham số R của nhóm trong mục “Khóa công khai” và “tham số R công khai” Bấm [Chọn] ở “Chọn file (đại diện) cần ký số”, “Chọn vị trí lƣu phần chữ ký thứ nhất”, “Chọn vị trí lƣu phần chữ ký thứ hai” để chọn lựa các file tƣơng ứng. Hình 3.14 Chọn file cần ký số. Bấm [Ký số] để tạo hai phần của chữ ký bội. Hai phần này sẽ đƣợc lƣu vào hai file trong thƣ mục do ngƣời dùng chọn bên trên, đồng thời thông báo việc ký số thành công nhƣ hình 3.15: Hình 3.15 Ký thành công. Việc ký số trên đại diện của tài liệu đến đây chính thức hoàn thành!45 3.4.2.3. Hướng dẫn chức năng “Kiểm tra chữ ký” Sau khi nhận đƣợc tài liệu và hai file ghi hai phần của chữ ký bội, ngƣời sử dụng sẽ dùng chức năng “Tạo đại diện” để tạo một đại diện của tài liệu ấy. Trong thẻ “Kiểm tra chữ ký”, bấm [Chọn] ở “Chọn file cần kiểm tra”, “Chọn phần chữ ký thứ nhất”, “Chọn phần chữ ký thứ hai” để chọn lựa các file tƣơng ứng. Nhập các tham số q, R công khai, khóa công khai. Hình 3.16 Giao diện chức năng “kiểm tra chữ ký”. Bấm [Kiểm tra] để tiến hành kiểm tra chữ ký. Nếu chữ ký không khớp với file cần kiểm tra, kết quả sẽ trả ra nhƣ hình 3.17: Hình 3.17 Chữ ký sai.46 Nếu chữ ký chuẩn xác, chƣơng trình sẽ báo về nhƣ hình 3.18: Hình 3.18 Chữ ký chính xác.47 KẾT LUẬN Đồ án gồm hai kết quả chính : 1/. Tìm hiểu và nghiên cứu qua tài liệu để hệ thống lại các vấn đề sau: + Tổng quan về chữ ký bội: Chữ ký bội đƣợc sử dụng trong trƣờng hợp một nhóm ngƣời có quan hệ với nhau cùng hợp tác để ký vào một văn bản. Chữ ký bội là phƣơng. Chữ ký bội cũng tƣơng tự nhƣ chữ ký đơn, nhƣng để phát sinh chữ ký bội phải có sự hợp tác của các thành viên trong nhóm ký với khóa riêng của từng ngƣời. + Tổng quan về chính phủ điện tử, giao dịch hành chính điện tử: Chính phủ điện tử (CPĐT) là Chính phủ ứng dụng Công nghệ thông tin – truyền thông (CNTT-TT) để các cơ quan Chính phủ đổi mới tổ chức, đổi mới các quy trình hoạt động, tăng cƣờng năng lực của Chính phủ, khiến Chính phủ làm việc hiệu lực, hiệu quả và minh bạch hơn, cung cấp thông tin, dịch vụ tốt hơn cho ngƣời dân, doanh nghiệp và các tổ chức và tạo điều kiện thuận lợi hơn cho ngƣời dân thực hiện quyền dân chủ và tham gia quản lý Nhà nƣớc. CPĐT là “nhúng” toàn bộ hoạt động quản lý Nhà nƣớc vào môi trƣờng thông tin điện tử, sử dụng Internet và công nghệ Internet để mở rộng khả năng truy cập và cung cấp các dịch vụ công của Chính quyền đến công dân, công chức và doanh nghiệp. Qua đó, Chính phủ có thể quản lý và phục vụ ngƣời dân. Ngƣời dân chấp hành quy định và thực hiện trách nhiệm của mình thông qua môi trƣờng đó. Về tổng thể có thể phân loại giao dịch của CPĐT thành bốn loại: + Chính phủ với Công dân (G2C). + Chính phủ với Ngƣời lao động (G2E). + Chính phủ với Chính phủ (G2G). + Chính phủ với Doanh nghiệp (G2B). Ngoài bốn mô hình chủ yếu trên, còn có nhiều hình thức giao tiếp khác trong CPĐT nhƣ: C2C, C2G, C2B, C2N, B2C…48 + Ứng dụng chữ ký bội trong giao dịch hành chính điện tử: Giao dịch hành chính điện tử phát sinh rất nhiều các văn bản điện tử cần bảo đảm về khả năng xác thực thông tin, tính xác thực, tính toàn vẹn và tính chống chối bỏ trách nhiệm trong văn bản đó. Vậy nên chữ ký số là một giải pháp thiết yếu cho vấn đề này. Trong thực tế, có rất nhiều giao dịch, thỏa thuận… cần đƣợc ký kết bởi nhiều ngƣời, nhiều đối tác. Đối với giao dịch hành chính điện tử, việc xác xác thực của thông tin đƣợc chứa đựng trong văn bản do nhiều ngƣời chịu trách nhiệm lại càng cấp thiết. Chữ ký bội đƣợc bổ sung vào tài liệu cho phép những ngƣời có liên quan, cơ quan có thẩm quyền kiểm tra tính xác thực của tài liệu, cũng nhƣ kiểm tra tính toàn vẹn và tính chống chối bỏ trách nhiệm trong văn bản đó. khiến chữ ký bội sẽ là một giải pháp đƣợc sử dụng rất nhiều trong giao dịch hành chính điện tử hiện tại và tƣơng lai. 2/. Thử nghiệm xây dựng chƣơng trình chữ ký bội. Chƣơng trình mô phỏng các bƣớc trong quá trình lập chữ ký bội, cũng nhƣ kiểm tra chữ ký với tài liệu số. Chữ ký số nói chung và chữ ký bội nói riêng là một hình thức mới, có tính ứng dụng cao trong tƣơng lai. Tuy nhiên, hiện tại ở Việt Nam, chữ ký bội cũng chƣa đƣợc phổ biến rộng rãi và ứng dụng nhiều trong thực tế, nên trong quá trình nghiên cứu, thực hiện đồ án sẽ không khỏi có những thiếu sót. Kính mong các thầy cô và mọi ngƣời quan tâm, bổ xung để đồ án trở nên hoàn chỉnh hơn.49 TÀI LIỆU THAM KHẢO Tiếng Việt. [1] PGS.TS Trịnh Nhật Tiến, “Giáo trình an toàn dữ liệu”, Đại học công nghệ, đại học quốc gia Hà Nội. [2] TS Nguyễn Đăng Khoa, “Tài liệu tập huấn Chính phủ điện tử”. [3] Lƣu Hồng Dũng, “Phát triển lược đồ đa chữ ký số trên cơ sở bài toán Logarit rời rạc”, Học viện Kỹ thuật Quân sự. Tiếng Anh. [1] Harald Baier and Markus Ruppert, “Interoperable and Flexible Digital Signatures for E-Government”, Darmstadt Centre of IT Security and FlexSecure Ltd. [2] Jos Dumortier, “E-Government and Digital Preservation”, K.U.Leuven – ICRI.
- Xem thêm -