Nghiên cứu hệ mật đường cong Elliptic và ứng dụng vào chữ ký điện tử trong bảo mật giao dịch thanh toán của Ngân hàng
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Định hướng đề tài tốt nghiệp Nghiên cứu hệ mật đường cong elliptic ứng dụng vào chữ ký điện tử bảo mật giao dịch toán ngân hàng.uh Các nhiệm vụ cụ thể ĐATN Tìm hiểu chữ ký điện tử Tìm hiểu giao dịch toán inernet banking yêu cầu bảo mật Nghiên cứu phương pháp mó hoỏ đường cong elliptic Xây dựng website có sử dụng chữ ký điện tử dựa đường cong elliptic dịch vụ toán ngân hàng Lời cam đoan sinh viên: Tơi Đồn Thị Kim Oanh cam kết ĐATN cơng trình nghiên cứu thân hướng dẫn Ths Bùi Thị Hoà Các kết nêu ĐATN trung thực, khơng phải chép tồn văn cơng trình khác Hà Nội, ngày 24 tháng 05 năm 2008 Tác giả ĐATN Đoàn Thị Kim Oanh Xác nhận giáo viên hướng dẫn mức độ hoàn thành ĐATN cho phép bảo vệ TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP Đồ án "Nghiên cứu hệ mật đường cong Elliptic ứng dụng vào chữ ký điện tử bảo mật giao dịch toán Ngân hàng" phần ý tưởng "bảo mật giao dịch toán Ngân hàng" Ý tưởng đề xuất phát triển ngân hàng trực tuyến internet banking, song hành với nhu cầu bảo mật xã hội thông tin Để bảo mật giao tiếp trình duyệt bạn tới máy chủ Ngân hàng, mật mã học sử dụng để bảo vệ giao dịch ngân hàng khỏi truy cập hay can thiệp trái phép So với hệ mã truyền thống RSA, thỡ mó hoỏ đường cong elliptic lên hệ mó hoỏ cơng khai hấp dẫn cho mơi trường bị ràng buộc, kích thước khố, u cầu tính tốn nhỏ đáp ứng mức bảo mật tương đương Vì thế, việc ứng dụng chữ ký điện tử giao dịch toán mang lại tốc độ xử lý nhanh hơn, giảm tiêu thụ lượng, yêu cầu nhớ băng thông giảm xuống Nội dung đồ án bao gồm phần viết thành chương: Chương trình bày sở hạ tầng chữ ký điện tử bao gồm: số hệ mó hoỏ cơng cộng điển hình, hàm băm… đưa nhìn tổng quan lịch sử phát triển ngành mật mã ưu điểm trội hệ ECC Chương trình bày Ibanking, lợi ích yêu cầu bảo mật, xác thực giao dịch tốn Chương trình bày phương pháp ECC, cách tiếp cận đại số đường cong elliptic trường hữu hạn Chương trình bày tổng quan chữ ký điện tử sơ đồ ký dựa đường cong elliptic Chương ứng dụng hệ chữ ký điện tử đường cong Elliptic giao dịch toán: Trong chương đưa giải pháp xác thực Ibanking Chương 6: Đánh giá kết luận kết đạt ABSTRACT "Elliptic curve cryptography and the use of integrate elliptic curve digital signature for online banking transaction security" thesis is a part of the "online banking transaction security" idea This idea is proposed because of developing internet banking and anyway, bank security issue is the most important To secure communications between your Internet Browser and the Bank's servers, Cryptography (encryption) is used to protect banking transactions from unauthorized access or tampering Compared to traditional cryptosystems like RSA, Elliptic Curve Cryptography (ECC) is emerging as an attractive public-key system for constrained environments, because of the small key sizes and computational efficiency, while preserving the same security level as the standard methods Thus, the Elliptic Curve Digital Signature in online transaction will offer equivalent security with faster computations, lower power consumption, as well as memory and bandwidth savings The content of this thesis involves six parts that is written to six chapters: Chapter 1: presents digital signature infrastructure: public key cryptosystem, hash function… and the comparison between the ECC and the RSA (that is widely used) to see advantages, especially in processing speed Chapter 2: about online banking transaction and banking transactions security issue Chapter 3: involve elliptc curve cryptography, is an approach to public key cryptography based on the algebraic structure of elliptic curves over finite field Chapter 4: Digital signature and some elliptic curve digital signature schemes Chapter 5: Intergrating ECDSA in banking transactions security Chapter 6: presents the results of this thesis that is achieved LỜI CẢM ƠN Trong thời gian thực đồ án tốt nghiệp, em nhận nhiều động viên, khích lệ hỗ trợ từ phớa cỏc thầy cô, cha mẹ bạn bè Em xin bày tỏ lòng biết ơn chân thành tới Cơ giáo, Thạc sĩ Bùi Thị Hồ, giảng viên môn Công nghệ phần mềm, khoa Công nghệ thông tin, Đại học Bách khoa Hà Nội, người trực tiếp hướng dẫn em hoàn thành đồ án Em xin gửi lời cảm ơn tới thầy cô khoa Cơng nghệ thơng tin nói chung, Bộ mơn Cơng nghệ phần mềm nói riêng tạo điều kiện giúp đỡ, truyền đạt kiến thức kỹ cần thiết để em hoàn thành nhiệm vụ học tập Con xin cảm ơn cha mẹ người thân luụn bên con, ủng hộ giúp đỡ trình học tập Cuối cùng, xin gửi lời cảm ơn tới bạn lớp CNPM K48 sát cánh cựng tụi suốt năm học qua Hà Nội, ngày 24 tháng năm 2008 Tác giả đồ án Đoàn Thị Kim Oanh MỤC LỤC TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP ABSTRACT LỜI CẢM ƠN .4 MỤC LỤC .5 Phụ lục hình vẽ .8 Phụ lục bảng biểu Phụ lục thuật ngữ từ viết tắt .9 CHƯƠNG I CƠ SỞ HẠ TẦNG CỦA CHỮ KÝ ĐIỆN TỬ 10 Giới thiệu chung .10 Mó hoỏ sử dụng khố công khai .11 2.1 Mó hoỏ an tồn (Secrecy) .12 2.2 Xác thực (Authentication) .13 2.3 Hệ thống khoá công khai (secrecy and authentication) 13 2.4 Thuật tốn mó hoỏ RSA 14 2.5 Thuật tốn mó hoỏ Elgamal 15 2.6 Thuật toán ECC .17 2.7 So sánh phương phỏp mó hoỏ sử dụng khố cơng khai 18 2.8 Vấn đề quản lý khoá 20 Hàm băm 23 3.1 Tổng quan hàm băm 23 3.2 Thuật toán băm SHA-1 24 3.3 So sánh đặc điểm thuật toán SHA-n 26 3.4 So sánh SHA-1 MD5 26 Kết chương .27 CHƯƠNG II IBANKING VÀ VẤN ĐỀ XÁC THỰC TRONG GIAO DỊCH THANH TOÁN 28 Khái niệm Ibanking 28 Yêu cầu bảo mật, xác thực giao dịch toán 30 2.1 Các nguy bị công, đe dọa 30 2.2 Các biện pháp an ninh 32 Kết chương .36 CHƯƠNG III PHƯƠNG PHÁP ECC 37 Lý thuyết toán học 37 1.1 Nhóm .37 1.2 Trường hữu hạn .37 Lý thuyết đường cong Elliptic 43 2.1 Công thức Weierstrasse đường cong elliptic 44 2.2 Các phép toán đường cong Elliptic 45 Áp dụng lý thuyết đường cong elliptic vào mó hoỏ 47 3.1 Cỏch nhỳng rừ lờn đường cong Elliptic 47 3.2 Các hệ mã đường cong elliptic (ECC) 48 3.3 Trao đổi khoá theo phương pháp Diffie-Hellman sử dụng lý thuyết đường cong elliptic (ECDH) 49 Kết chương .50 CHƯƠNG IV CHỮ KÝ ĐIỆN TỬ VÀ CÁC SƠ ĐỒ Kí DỰA TRÊN ĐƯỜNG CONG ELLIPTC 51 Giới thiệu chữ ký điện tử 51 1.1 Giới thiệu 51 1.2 Khái niệm chữ kí điện tử 51 1.3 Mơ hình hoạt động chữ ký điện tử 52 Các sơ đồ ký dựa ECC .54 2.1 Sơ đồ chữ ký ECDSA 54 2.2 Sơ đồ chữ ký mù Harn EC .55 2.3 Sơ đồ đa chữ ký mù Harn EC 56 Lựa chọn đường cong Elliptic phù hợp .58 Kết chương .61 CHƯƠNG V TÍCH HỢP CHỮ KÝ ĐIỆN TỬ DỰA TRÊN ECC TRONG BẢO MẬT GIAO DỊCH THANH TỐN CỦA NGÂN HÀNG 62 Mơ tả toán: 62 Giải pháp Ibanking 63 Thiết kế hệ thống: .64 Chương trình cài đặt 67 CHƯƠNG VI ĐÁNH GIÁ VÀ KẾT LUẬN 73 Tổng hợp kết 74 Nhận xét tự đánh giá 74 Phương hướng phát triển đề tài 74 Tài liệu tham khảo 75 Phụ lục 76 Phụ lục hình vẽ Hình 1-1: Mó hoỏ sử dụng khố cơng khai 11 Hình 1-2: Xác thực sử dụng khố cơng khai 12 Hình 1-3: Mơ hình sử dụng khố cơng khai 13 Hình 1-4: Thực RSA 14 Hình 1-5: Q trình phân phối khố cơng khai 20 Hình 1-6: Chứng khố cơng khai .21 Hình 1-7: Quá trình băm tin .23 Hình 1-8: Quá trình băm khối 24 Hình 4-1: Hoạt động hệ thống chữ ký điện tử 52 Hình 4-2: Quá trình tạo chữ ký 52 Hình 4-3: Quá trình xác thực chữ ký .53 Hình 5-1: Diagram 65 Phụ lục bảng biểu Bảng 1-1: So sánh kích thước khố RSA ECC với mức độ an toàn 17 Bảng 1-2: So sánh mức độ bảo mật RSA ECC 18 Bảng 1-3: Bảng so sánh thời gian thực thuật toán RSA ECC .18 Bảng 1-4: So sánh đặc điểm thuật toán SHA-n 25 Bảng 4-1: NIST đề xuất đường cong cho trường nguyên tố 61 Bảng 5-1: Bảng thông tin chủ sở hữu tài khoản (người đại diện cho tổ chức) 65 Bảng 5-2: Bảng thông tin tài khoản người dùng .66 Bảng 5-3: Bảng thông tin về quyền người dùng 66 Bảng 5-4: Bảng lưu chữ ký người dùng 67 Phụ lục thuật ngữ từ viết tắt STT Thuật ngữ từ viết tắt EC ECC ECDSA EDLP ISO FIPS IEEE NIST RSA 10 11 SHA CA 12 SET 13 14 DES MIP Tên đầy đủ giải thích Đường cong Elliptic (Elliptic Curve) Mã hố đường cong Elliptic (Elliptic Curve Crypt) Thuật toán ký EC (EC Digital Signature Algorithm) Bài toán Logarith rời rạc EC Tổ chức tiêu chuẩn quốc tế Tiêu chuẩn xử lý thông tin Hoa Kỳ (US Federal Information Processing Standard) Institute of Electrical Electronics Engineers Cơ quan quốc gia chuẩn hố cơng nghệ (National Institute of Standard and Technology) Thuật tốn mã hố cơng khai RSA (Rivest, Shamir and Adleman) Thuật tốn hàm băm an tồn (Secure Hash Algorithm) Tổ chức chứng thực (Certificate Authority) Giao thức ứng dụng cho toán điện tử (Secure Electronic Transmission) Chuẩn mã hoá liệu (Data Encryption Standard ) Triệu lệnh giây (Million Instruction Per Second) CHƯƠNG I CƠ SỞ HẠ TẦNG CỦA CHỮ KÝ ĐIỆN TỬ Giới thiệu chung Q trình truyền thơng mạng đưa u cầu khắt khe tính an tồn liệu truyền Dữ liệu truyền từ người gửi đến người nhận cần đảm bảo tính tồn vẹn, khơng bị xóa, sửa q trình xử lý, phải đảm bảo tính riêng tư, tức khơng bị đọc trộm người sử dụng bất hợp pháp, người gửi nhận phải có trách nhiệm thơng tin truyền đi…Giải pháp toàn diện sử dụng rộng rãi kĩ thuật mã hóa (encryption) giải mã (decryption) Kĩ thuật sử dụng thuật toán khác nhau, đảm bảo mức độ bảo mật khác đáp ứng tính tin cậy q trình truyền thơng tin Xét cách tổng qt mã hóa khơng sử dụng đại chúng internet với hệ thống đặc biệt ngân hàng, thương mại, qn mã hóa yêu cầu tiên để đảm bảo tính an tồn Có nhiều kiểu mã hóa khơng phải tất tin cậy Hiện nay, mã hóa 64 bít coi mạnh chuẩn mã hóa 128 bít thay tương lai Mã hóa phân thành mã hóa đối xứng (symetric) mã hóa bất đối xứng (asymetric) Các thuật tốn khóa đối xứng Blowfish, DES sử dụng khóa để mã hóa gửi giải mã nhận Khóa phân phối trước truyền liệu Đối với lược đồ mã hóa bất đối xứng RSA, Diffie Hellman, tạo cặp khóa: khóa cơng khai (public key) khóa bí mật (secret key) Một mã hóa, tin mã hóa (cyphertext) khơng thể giải mã khơng có khóa bí mật tương ứng Do đó, kiểu mã hóa bất đối xứng có độ an tồn cao mã hóa đối xứng Để hiểu hoạt động hệ thống mã hóa, trước hết đồ án xin trình bày số khái niệm sau đây: Mã hóa (encryption): Là q trình chuyển đổi liệu từ dạng đọc (plain text) sang dạng đọc (cipher) người không phép, cách sử dụng số quy tắc định Giải mã (decryption): Ngược lại với q trình mã hóa, giải mã chuyển tin đọc dạng đọc ban đầu Khóa (key): mẩu thơng tin đặc biệt kết hợp với thuật toán để thi hành mã hóa giải mã Có thể sử dụng khóa (mã hóa đối xứng) cặp khóa (mã hóa bất đối xứng) để mã hóa giải mã Plaintext (bản rõ): Là tin liệu ban đầu đọc được, đầu vào (input) thuật tốn mã hóa Encryption algorithm (thuật tốn mã hóa): Thực số phép thay chuyển đổi dạng biểu diễn liệu plaintext Cyphertext (bản mã hóa): Là đầu thuật tốn mã hóa, khơng thể đọc được, mã hóa phụ thuộc vào thuật tốn mã hóa plaintext Gọi E , D hàm mã hóa giải mã với khóa K P tin ban đầu, C mã hóa Khi E , D thỏa mãn yêu cầu sau: a) C = Ek(P) b) P = Dk(C) = Dk(Ek(P)) Với hạ tầng chữ ký điện tử hệ mã công khai hàm băm, hai phần sau đõy tụi xin trình bày vấn đề Mó hố sử dụng khố cơng khai Việc phát minh hệ mó hoỏ cơng cộng coi cách mạng lịch sử mật mã học Nó thay hệ thống mã hóa cổ điển dựa phương pháp hoán vị thơng thường, mà dựa hàm tốn học Hệ thống mã hóa cơng khai sử dụng hai khóa riêng biệt khóa bí mật (private key) khóa cơng khai (public key) Mã hóa khóa cơng khai ứng dụng hệ thống mã hóa xác thực 2.1 Mó hố an tồn (Secrecy) Hình 1-1: Mã hố sử dụng khố cơng khai Khi Alice muốn truyền tin tới Bob, nhằm đảm bảo tính bí mật, cần thực bước sau: Bước 1: Mỗi bên sinh cặp khóa để giải mã mã hóa liệu Bước 2: Mỗi bên đặt hai khóa vào ghi public tệp tin truy cập Đây khóa cơng khai, khóa cịn lại khóa bí mật ... Đồ án "Nghiên cứu hệ mật đường cong Elliptic ứng dụng vào chữ ký điện tử bảo mật giao dịch toán Ngân hàng" phần ý tưởng "bảo mật giao dịch toán Ngân hàng" Ý tưởng đề xuất phát triển ngân hàng trực... số đường cong elliptic trường hữu hạn Chương trình bày tổng quan chữ ký điện tử sơ đồ ký dựa đường cong elliptic Chương ứng dụng hệ chữ ký điện tử đường cong Elliptic giao dịch toán: Trong. .. .37 Lý thuyết đường cong Elliptic 43 2.1 Công thức Weierstrasse đường cong elliptic 44 2.2 Các phép toán đường cong Elliptic 45 Áp dụng lý thuyết đường cong elliptic vào mó hoỏ