intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Luận văn Thạc sĩ Khoa học máy tính: Nghiên cứu xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:54

22
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Kết cấu của luận văn gồm phần mở đầu, kết luận và danh mục tài liệu tham khảo, luận văn có bố cục gồm 3 chương: Chương 1 - Tổng quan các chuẩn chữ ký số; Chương 2 - Xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số; Chương 3 - Cài đặt và thử nghiệm chương trình. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Luận văn Thạc sĩ Khoa học máy tính: Nghiên cứu xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số

  1. i ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG CAO HÙNG PHƯƠNG NGHIÊN CỨU XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TRÊN CƠ SỞ BÀI TOÁN PHÂN TÍCH SỐ LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN, 2018
  2. ĐẠI HỌC THÁIii NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG CAO HÙNG PHƯƠNG NGHIÊN CỨU XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TRÊN CƠ SỞ BÀI TOÁN PHÂN TÍCH SỐ Chuyên ngành: Khoa học máy tính Mã số: 84 80 101 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: TS. NGUYỄN NGỌC CƯƠNG THÁI NGUYÊN, 2018
  3. i LỜI CAM ĐOAN Em xin cam đoan tất cả các kết quả được trình bày trong luận văn: “Nghiên cứu xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số” là công trình nghiên cứu của riêng em, không sao chép từ bất kỳ một công trình nào khác. Các số liệu, kết quả nghiên cứu trong luận văn được sử dụng là trung thực, đã được kiểm chứng và chưa được công bố trong bất kỳ công trình của tác giả nào khác. Nếu sai em xin hoàn toàn chịu trách nhiệm. Thái Nguyên, ngày 10 tháng 6 năm 2018 Học viên Cao Hùng Phương
  4. ii LỜI CẢM ƠN Trước hết em xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo TS Nguyễn Ngọc Cương Phó cục trưởng Cục công nghệ thông tin là người đã trực tiếp hướng dẫn, chỉ bảo tận tình và hết lòng giúp đỡ em trong suốt thời gian làm luận văn này.. Xin trân trọng cảm ơn tới Ban lãnh đạo, các thầy cô giáo trường Đại học Công nghệ thông tin và truyền thông Thái Nguyên đã chia sẻ và động viên giúp em vượt qua mọi khó khăn để hoàn thành tốt công việc nghiên cứu của mình. Xin chân thành cảm ơn gia đình, bạn bè và những người đã luôn ủng hộ, quan tâm, giúp đỡ, động viên, tạo điều kiện tốt nhất và là chỗ dựa vững chắc giúp em có thể hoàn thành luận văn. Cuối cùng em xin gửi lời chúc sức khỏe và thành công tới tất cả quý thầy cô và gia đình cùng toàn thể các bạn. Thái Nguyên, ngày 10 tháng 6 năm 2018 Học viên Cao Hùng Phương
  5. iii MỤC LỤC LỜI CAM ĐOAN ....................................................................................................... i LỜI CẢM ƠN ............................................................................................................ii MỤC LỤC ................................................................................................................ iii DANH MỤC CÁC KÝ HIỆU................................................................................... v LỜI MỞ ĐẦU ............................................................................................................ 1 CHƯƠNG 1. TỔNG QUAN CÁC CHUẨN CHỮ KÝ SỐ .................................... 3 1.1. Giới thiệu về hệ mật mã khóa công khai các nguyên lý ......................................3 1.2. Các khái niệm cơ bản ...........................................................................................4 1.2.1 Hệ khoá công khai RSA .................................................................... 4 1.2.2 Khái niệm chữ ký số ......................................................................... 5 1.2.3 Các bước tạo và kiểm tra chữ ký điện tử ......................................... 7 1.2.4 Định nghĩa lược đồ chữ ký số .......................................................... 8 1.2.5 Chức năng của chữ ký số ................................................................. 8 1.2.6 Các yêu cầu thành phần để tạo ra được chữ ký số .......................... 9 1.2.7 Ưu, nhược điểm của chữ ký số ......................................................... 9 1.3 Các hệ chữ ký số điển hình .................................................................................10 1.3.1 Cở sở toán học ............................................................................... 10 1.3.2 Hệ mật khóa công khai RSA........................................................... 12 1.3.3 Hệ chữ ký số Elgamal .................................................................... 18 1.3.4 Chuẩn chữ ký DSS .......................................................................... 19 1.3.5 Hệ chữ ký GOST 3410.94............................................................... 20 1.4 Khả năng ứng dụng của chữ ký số vào thực tiễn ................................................22 1.4.1. Đối với người dùng cá nhân ......................................................... 22 1.4.2. Đối với các Cơ quan - Tổ Chức .................................................... 22 1.4.3. Đối với các Doanh nghiệp ............................................................ 22 1.5. Kết luận chương 1 ..............................................................................................23 CHƯƠNG 2. XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TRÊN BÀI TOÁN PHÂN TÍCH SỐ .................................................................................................................. 24
  6. iv 2.1. Cở sở nghiên cứu ...............................................................................................24 2.2. Xây dựng thuật toán trên bài toán phân tích số cơ bản ......................................25 2.2.1. Thuật toán trên bài toán phân tích số ........................................... 25 2.2.2.Thuật toán hình thành tham số và khóa ......................................... 26 2.2.3.Thuật toán ký và kiểm tra chữ ký ................................................... 26 2.3. Xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số ...........................27 2.3.1.Thuật toán hình thành tham số và khóa ......................................... 27 Chú thích: ................................................................................................ 28 2.3.2. Thuật toán ký ................................................................................ 28 2.3.3. Thuật toán kiểm tra chữ ký ........................................................... 28 2.3.4. Tính đúng đắn của lược đồ chữ ký số ........................................... 29 2.3.5. Mức độ an toàn của lược đồ chữ ký số ......................................... 29 2.4. Kết luận chương 2 ..............................................................................................30 CHƯƠNG 3. CÀI ĐẶT THỬ NGHIỆM............................................................... 32 3.1. Kịch bản chương trình........................................................................................32 3.2 Cài đặt, thử nghiệm chương trình .......................................................................33 3.2.1. Cài đặt chương trình ..................................................................... 33 3.2.2. Thử nghiệm chương trình.............................................................. 39 3.3. Kết luận chương 3 ..............................................................................................43 KẾT LUẬN VÀ KHUYẾN NGHỊ ......................................................................... 44 1. Kết luận .................................................................................................................44 2. Khuyến nghị ..........................................................................................................44 TÀI LIỆU THAM KHẢO ...................................................................................... 45
  7. v DANH MỤC CÁC KÝ HIỆU Từ tắt Tiếng Anh Tiếng việt CA Certificate Authority Tổ chức chứng thực PKC Public key certificate Chứng chỉ số (chứng nhận khóa công) PKI Public Key Infrastructure Hạ tầng cơ cở khóa công khai RA Registration Authority Trung tâm đăng ký chứng chỉ số CR Certificate Repository Kho lưu trữ chứng chỉ số RSA Ron Rivest, Adi Shamir Là từ viết tắt tên của 3 tác giả đã phát và Leonard Adleman triển ra hệ mật mã khóa công khai
  8. vi DANH MỤC CÁC HÌNH VẼ CHƯƠNG 1 Hình 1.1 Hệ thống sử dụng mã hóa khóa công khai............................... 3 Hình 1.2 Chữ ký số ................................................................................. 6 Hình 1.3 Sơ đồ mã hóa công khai ......................................................... 13 Hình 1.4 Sơ đồ quy trình tạo chữ ký trong RSA .................................. 17 Hình 1.5 Sơ đồ quy trình xác minh chữ ký số RSA ............................. 17 CHƯƠNG 2 Hình 2.1 Sơ đồ thuật toán sinh khóa và ký ........................................... 25 Hình 2.2 Sơ đồ thuật toán xác minh chữ ký ......................................... 27 CHƯƠNG 3 Hình 3.1 Khai báo các giá trị tham số và khóa ..................................... 33 Hình 3.2 Thuật toán tạo tham số cho chuơng trình .............................. 34 Hình 3.3 Câu lệnh cho nút tạo tham số chương trình ........................... 34 Hình 3.4 Câu lệnh nút lưu tham số ....................................................... 34 Hình 3.5 Thuật toán tạo khóa cho chương trình ................................... 34 Hình 3. 6 Câu lệnh cho nút tạo khóa chương trình ............................... 35 Hình 3.7 Câu lệnh nút lưu khóa ............................................................ 35 Hình 3.8 Thuật toán tạo chữ ký số ........................................................ 36 Hình 3.9 Câu lệnh cho nút tạo chữ ký số .............................................. 37 Hình 3.10 Câu lệnh nút lưu chữ ký số .................................................. 37 Hình 3.11 Câu lệnh nút nạp chữ ký số cần xác thực ............................ 37
  9. vii Hình 3.12 Thuật toán kiểm tra hay xác thực chữ ký số ........................ 38 Hình 3.13 Giao diện chính của phần mềm ........................................... 39 Hình 3.14 Giao diện của Modul tạo tham số và khóa .......................... 40 Hình 3.15 Giao diện của Modul tạo chữ ký số ..................................... 41 Hình 3.16 Giao diện modul xác thực chữ ký ........................................ 42
  10. 1 LỜI MỞ ĐẦU 1. Lý do chọn đề tài: Hiện nay, khi mà Chính phủ điện tử và Thương mại điện tử là xu hướng tất yếu của hầu hết các quốc gia trên thế giới, trong đó có Việt Nam, thì chứng thực điện tử đã trở thành một yếu tố không thể thiếu được và ngày càng trở nên quan trọng. Hạ tầng công nghệ của chứng thực điện tử là cơ sở hạ tầng khoá công khai với nền tảng là mật mã khoá công khai và chữ ký số. Có nhiều nghiên cứu về lược đồ chữ ký số nói chung, phần lớn đều dựa trên bài toán logarit rời rạc, bài toán khai căn, phân tích số nguyên ra thừa số nguyên tố. Gần đây có một nghiên cứu mới xây dựng một lược đồ chữ ký số trên cơ sở bài toán phân tích một số nguyên lớn ra các thừa số nguyên tố (bài toán phân tích số) kết hợp với bài toán khai căn trong modulo hợp số (bài toán khai căn). Tuy nhiên, do bài toán khai căn không có vai trò quyết định đến mức độ an toàn của lược đồ nên đã không được đề cập đến. Trong nghiên cứu này chọn một phương pháp xây dựng lược đồ chữ ký số theo cùng nguyên tắc đã được chỉ ra, nhưng phương pháp ở đây được mô tả dưới dạng một lược đồ tổng quát từ đó cho phép triển khai ra các lược đồ chữ ký số khác nhau cho các ứng dụng thực tế. Trước tình hình nghiên cứu trong và ngoài nước về chữ ký số như hiện nay thì việc nghiên cứu, phát triển và từng bước đưa chữ ký số ứng dụng vào thực tiễn là rất cần thiết. Chính vì lý do trên tôi đã chọn đề tài “Nghiên cứu xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số” để nghiên cứu làm luận văn tốt nghiệp của mình . 2. Mục đích nghiên cứu - Tìm hiểu chung về bài toán phân tích số - Tìm hiểu chuẩn chữ ký số dựa trên bài toán phân tích số và hàm băm.
  11. 2 - Nghiên cứu rõ về lược đồ chữ ký số dựa trên chuẩn chữ ký số trên cơ sở bài toán phân tích số. 3. Đối tượng và phạm vi nghiên cứu Đối tượng nghiên cứu: Xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số. Phạm vi nghiên cứu: Thuật toán chữ ký số này được dựa trên tính khó của bài toán phân tích một số nguyên lớn ra các thừa số nguyên tố từ đó xây dựng lược đồ chữ ký số mới. Lược đồ Elgamal gồm cả hệ mã và chữ ký số có độ an toàn dựa trên bài toán logarit rời rạc. 4. Phương pháp nghiên cứu - Tổng hợp các tài liệu liên quan đến các lược đồ cơ sở dựa trên các hệ mật và các chuẩn chữ ký số được đánh giá có độ an toàn cao - Sử dụng phương pháp lập luận và phân tích các lược đồ làm cơ sở để xây dựng các lược đồ chữ ký số theo mục tiêu nghiên cứu đặt ra. - Sử dụng phương pháp mô phỏng, lập trình để xây dựng một số lược đồ chữ ký phân tích theo mô hình ứng dụng có khả năng ứng dụng trong thực tiễn. 5. Kết cấu của luận văn Ngoài phần mở đầu, kết luận và danh mục tài liệu tham khảo, luận văn được kết cấu gồm 3 chương Chương 1. Tổng quan các chuẩn chữ ký số. Chương 2. Xây dựng lược đồ chữ ký số trên cơ sở bài toán phân tích số. Chương 3. Cài đặt và thử nghiệm chương trình.
  12. 3 CHƯƠNG 1. TỔNG QUAN CÁC CHUẨN CHỮ KÝ SỐ Chương này trình bày các khái niệm cơ bản về chữ ký số, một số hệ chữ ký số điển hình, chức năng và khả năng ứng dụng của chữ ký số, quy trình ký, xác thực chữ ký số và định hướng nghiên cứu của đề tài. Đây chính là những kiến thức cơ bản và chung nhất cho việc tạo ra một chữ ký số hoàn chỉnh, là nền tảng để phát triển thuật toán lược đồ chữ ký số ở chương sau. 1.1. Giới thiệu về hệ mật mã khóa công khai các nguyên lý Mã hóa bất đối xứng thường được hiểu là mã hoá sử dụng khóa công khai. Mã hóa bất đối xứng sử dụng một cặp khóa: khóa bí mật và khóa công khai, được miêu tả như hình 1.1. Mỗi quá trình truyền tin sử dụng một cặp khóa duy nhất và có thể sử dụng linh hoạt. Khóa bí mật cần phải lưu trữ riêng và đảm bảo tính bảo mật, không được truyền trên mạng. Khóa công khai có thể được cung cấp miễn phí và công bố tới mọi người. Hình 1.1 Hệ thống sử dụng mã hóa khóa công khai Tương tự như mã hoá khoá bí mật, phương pháp này cũng có các thành phần chính như sau: - Plaintext: bản tin gốc. - Encryption Algorithm: Thuật toán mã hóa. - Public/Private keys: cặp khóa công khai/bí mật. - Ciphertext: bản tin đã mã hóa. - Decryption Algorithm: Thuật toán giải mã. Quá trình sử dụng mã hóa khóa công khai:
  13. 4 - Bên nhận sinh cặp khóa. - Khóa công khai thường được chứng thực bởi một bên thứ ba tin cậy và chuyển cho người gửi theo các phương thức truyền thông thông thường. - Bên gửi nhận được khóa công khai, kiểm tra các thông tin chứng thực khoá và dùng khóa này để mã hóa thông điệp và gửi cho bên nhận. - Bên nhận sử dụng khoá bí mật để giải mã thông điệp. - Thông điệp có thể bị bên thứ ba lấy trộm, nhưng không thể đọc được nội dung. 1.2. Các khái niệm cơ bản 1.2.1 Hệ khoá công khai RSA RSA là hệ mật mã khóa công khai phổ biến và cũng đa năng nhất trong thực tế, phát minh bởi Rivest, Shamir & Adleman (1977). Nó là chuẩn mật mã bất thành văn đối với PKC, cung cấp đảm bảo tính mật, xác thực và chữ ký điện tử. Cơ sở thuật toán RSA dựa trên tính khó của bài toán phân tích các số lớn ra thừa số nguyên tố: không tồn tại thuật toán thời gian đa thức (theo độ dài của biểu diễn nhị phân của số đó) cho bài toán này. Chẳng hạn, việc phân tích một hợp số là tích của 2 số nguyên tố lớn hàng trăm chữ số sẽ mất hàng ngàn năm tính toán với một máy PC trung bình có cấu hình CPU khoảng trên 2Ghz. Ý tưởng (Motivation) Các nhà phát minh có lựa chọn khá giản dị là xây dựng thuật toán sinh/giải mã trên cơ sở phép toán lấy luỹ thừa đồng dư trên trường Zn = {0,1,2,..n-1}. Chẳng hạn, việc sinh mã cho tin X sẽ được thực hiện qua: Y = Xe n Ở đây ta dùng ký hiệu a = b n nghĩa là a = b k* n với a  Zn còn k = 1,2,3,..., ví dụ 7 = 33 10) còn việc giải mã:
  14. 5 X = Yd n (e – khóa sinh mã, d – khóa giải mã) Như vậy để hai hàm sinh mã và giải mã này là hàm ngược của nhau, e và d phải được chọn sao cho: Xed = X n Người ta đã tìm được cách xây dựng cặp số (e,d) này trên cơ sở công thức như sau: X(n) = 1 n (định lý Ơ - le) Trong đó (n) hàm số cho biết số lượng các số thuộc Zn mà nguyên tố cùng nhau với n. Người ta cần chọn e*d sao cho chia (n) dư 1, hay d= e-1 (n), khi đó ta sẽ có điều cần thiết: Xed = Xk(n) +1 =( X(n))d * X = 1*X =X (n) có thể tính được khi đã biết công thức phân tích thừa số nguyên tố của n, cụ thể là nếu đã biết n = p*q (p.q là số nguyên tố) thì (n) = (p-1) (q- 1). Nói cách khác nếu như cho trước một số e thì nếu đã biết công thức phân tích thừa số nguyên tố của n ta có thể dễ dàng tìm được d sao cho d= e-1 (n) hay là Xed = X n, còn nếu không biết thì rất khó. Vừa rồi là phần trình bày dẫn dắt về cội nguồn của thuật toán, sau đây là thuật toán cụ thể. 1.2.2 Khái niệm chữ ký số Chữ ký số : Là một thể chứng thực được mã hóa bởi khoá bí mật của người gửi. Chữ ký số là thông tin đi kèm theo dữ liệu (văn bản, hình ảnh, video...) nhằm mục đích xác định chủ thể của dữ liệu đó. Quá trình tạo và xác thực chữ ký số được mô tả như Hình 1.2.
  15. 6 Hình 1.2 Chữ ký số 1.2.2.1 Vai trò của chữ ký số Chữ ký số dùng cho các văn bản số, cho biết toàn bộ văn bản đã được ký bởi người ký. Và người khác có thể xác minh điều này. Chữ ký số tương tự như chữ ký thông thường, đảm bảo nội dung tài liệu là đáng tin cậy, chính xác, không hề thay đổi trên đường truyền và cho biết người tạo ra tài liệu là ai. Tuy nhiên, chữ ký số khác chữ ký thường, vì nó tuỳ thuộc vào văn bản. Chữ ký số sẽ thay đổi theo văn bản còn chữ ký thường thì không hề thay đổi. Chữ ký số được sử dụng để cung cấp chứng thực chủ sở hữu, tính toàn vẹn dữ liệu và chống chối bỏ nguồn gốc trong rất nhiều các lĩnh vực. 1.2.2.2. Ứng dụng của chữ ký số Giải pháp dùng chữ ký số là tối ưu vì nó có hiệu lực pháp luật, do đó không cần in ấn tài liệu mà vẫn có thể xác nhận được tài liệu, đảm bảo tính toàn vẹn và không chối bỏ. Chữ ký số được phát hành bởi bên thứ ba là cơ quan chứng thực có thẩm quyền cấp phát, thu hồi, quản lý chứng chỉ số cho các thực thể thực hiện các giao dịch an toàn ( Certificate Authority hoặc CA) nên đảm bảo tính khách quan. Như vậy, quá trình tạo chữ ký số, xác nhận các
  16. 7 yêu cầu pháp lý, bao gồm xác thực người ký, xác thực tin nhắn, là thành công và hiệu quả. Chính vì những ưu điểm của chữ ký số, nó được dùng trong nhiều ứng dụng: Đảm bảo an ninh truyền thông, ngân hàng trực tuyến, thương mại điện tử, đảm bảo an ninh cho thư điện tử, … 1.2.3 Các bước tạo và kiểm tra chữ ký điện tử Quá trình sử dụng chữ ký số được thực hiện theo 2 giai đoạn: Tạo chữ ký và kiểm tra chữ ký số. Có thể dùng khoá công khai hoặc khoá bí mật để thực hiện các khâu trên. Hai quá trình tạo và kiểm tra sẽ được trình bày cụ thể tiếp sau đây. Các bước tạo chữ ký: - Dùng giải thuật băm để tính message digest của thông điệp cần truyền đi. Kết quả ta được một message digest. - Sử dụng khóa bí mật của người gửi để mã hóa message digest thu được ở bước 1. Thông thường ở bước này ta dùng giải thuật RSA. Kết quả thu được gọi là digital signature của thông điệp ban đầu. Công việc này gọi là “ký” vào thông điệp. Sau khi đã ký vào thông điệp, mọi sự thay đổi trên thông điệp sẽ bị phát hiện trong giai đoạn kiểm tra. Ngoài ra, việc ký này đảm bảo người nhận tin tưởng thông điệp này xuất phát từ người gửi chứ không phải là ai khác. - Gộp digital signature vào thông điệp ban đầu và gửi đến người nhận. Các bước kiểm tra: - Tách message ban đầu và chữ ký số. - Dùng khóa công khai của người gửi (khóa này được thông báo đến mọi người) để giải mã chữ ký số của thông điệp. - Dùng giải thuật (MD5 hoặc SHA) băm thông điệp ban đầu.
  17. 8 - So sánh 2 chuỗi băm kết quả thu được ở 2 bước trên. Nếu trùng nhau, ta kết luận thông điệp này không bị thay đổi trong quá trình truyền và thông điệp này là của người gửi. 1.2.4 Định nghĩa lược đồ chữ ký số Một lược đồ chữ ký số là bộ 5( M, A, K, S, V ) thỏa mãn các điều kiện sau: 1. M là tập hữu hạn các bản tin. 2. S là tập hữu hạn các chữ ký. 3. K là tập hữu hạn các khóa bí mật. 4. A là tập hữu hạn các thuật toán ký. 5. V là tập hữu hạn các thuật toán xác minh. 6. Với mỗi k ∈ K tồn tại một thuật toán ký sigk ∈ A và một thuật toán xác minh verk ∈ V tương ứng, mỗi sigk : M → S và verk: M × S → { true, false} là hàm sao cho với mỗi m ∈ M và s ∈ S thỏa mãn phương trình sau: 𝑡𝑟𝑢𝑒, 𝑠 = 𝑠𝑖𝑔𝑘(𝑚) 𝑉𝑒𝑟(𝑠, 𝑚) = { 𝑓𝑎𝑠𝑒 , 𝑠 ≠ 𝑠𝑖𝑔𝑘(𝑚) 1.2.5 Chức năng của chữ ký số - Non-repudiation: Giúp cho người nhận khi kiểm tra nội dung đã được ký chữ ký số kèm theo sẽ biết chắc người ký không thể chối cãi về những gì đã tạo ra ở thời điểm bắt đầu tạo chữ kí số. - Integrity: Chữ ký số giúp kiểm tra tính toàn vẹn dữ liệu của nội dung được gửi đi là không bị thay đổi hay chỉnh sửa kể từ lúc khởi tạo chữ ký số và ký vào văn bản gửi đi. - Authenticity: Chữ ký số cũng dùng để chứng thực nguồn gửi nội dung thông điệp đi. Thường thì thông tin về người chủ của chữ ký sẽ được thêm vào kèm với nội dung chữ ký số để giúp người nhận chứng thực được ai đã
  18. 9 gửi thông điệp đi. Chữ ký số ứng dụng nhiều trong các hoạt động cấp chứng chỉ Certificate SSL,… Chữ ký số cũng có có thể sử dụng trong các giao dịch thư điện tử, để mua bán hàng trực tuyến, đầu tư chứng khoán trực tuyến, chuyển tiền ngân hàng, thanh toán trực tuyến mà không sợ bị đánh cắp tiền như với các tài khoản Visa, Master. 1.2.6 Các yêu cầu thành phần để tạo ra được chữ ký số Chữ ký số dựa trên công nghệ mã hoá khóa công khai (RSA): Mỗi người dùng phải có 1 cặp khóa (key pair) bao gồm khóa công khai (public key) và khóa bí mật (private key). + Private key: Là một khóa trong cặp khóa thuộc hệ thống mật mã không đối xứng, được dùng để tạo chữ ký số. + Public key: Là một khóa trong cặp khóa thuộc hệ thống mật mã không đối xứng, được sử dụng để giả mã kiểm tra chữ ký số được tạo bởi khóa bí mật tương ứng trong cặp khóa. + Digital Sign (ký số): Là việc đưa khóa bí mật vào một chương trình phần mềm để tự động tạo và gắn chữ ký số vào thông điệp dữ liệu. Khi đọc các tài liệu chuyên ngành, bạn sẽ gặp nhiều cụm từ “sign” hoặc “signed " thì bạn phải hiểu là liên quan đến hoạt động của chữ ký số. + Signer (người ký): Là đối tượng dùng đúng khóa bí mật của mình để tạo chữ ký số và ký vào một thông điệp dữ liệu dưới tên của mình. + Recipient (người nhận): Là tổ chức, cá nhân nhận được thông điệp dữ liệu được ký số bởi người ký, sử dụng chứng thư số (digital certificate) của người ký đó để kiểm tra chữ ký số trong thông điệp dữ liệu nhận được và tiến hành các hoạt động, giao dịch có liên quan. 1.2.7 Ưu, nhược điểm của chữ ký số
  19. 10 Bảng 1.1. Ưu, nhược điểm của chữ ký số Ưu/ nhược điểm Chữ ký viết tay Chữ ký số Việc giả mạo chữ Vẫn có thể diễn ra trong Hầu như không thực hiện ký thực tế. được (trừ bị lợi dụng). Chữ ký ở các tài Gần giống nhau và Khác nhau và phụ thuộc liệu khác nhau không phụ thuộc vào tài vào từng tài liệu ký và thời liệu và thời điểm ký điểm ký. Đảm bảo tính toàn Yếu (dễ sửa đổi nội Mạnh (Phát hiện được) vẹn dung tài liệu) Thời hạn kiểm tra Gần như không có giới Bị giới hạn phụ thuộc vào chữ ký hạn. công nghệ. Tính đơn giản Dễ chứng minh, dễ hiểu Rất phức tạp, khó khi chứng với bên thứ ba (thẩm minh và khó hiểu với bên phán, trọng tài,…) thứ ba. 1.3 Các hệ chữ ký số điển hình 1.3.1 Cở sở toán học 1.3.1.1 Bài toán phân tích số Bài toán phân tích số về cơ bản có thể được phát biểu như sau: Cho số n∈ N , hãy tìm biểu diễn: n = P1e1. P1e1. P2e2… Pkek với ei ≥ 1 và Pi là các số nguyên tố. Trong hệ mật RSA, bài toán phân tích số được sử dụng làm cơ sở để hình thành cặp khóa công khai (e)/bí mật (d) cho mỗi thực thể k ý và có thể phát biểu như sau:
  20. 11 - Cho p, q là 2 số nguyên tố lớn và mạnh; - Từ p và q dễ dàng tính được: n = p × q ; - Từ n rất khó tìm được p và q. Với việc giữ bí mật các tham số p, q thì khả năng tính được khóa mật (d) từ khóa công khai (e) và modulo n là rất khó thực hiện, nếu p, q được chọn đủ lớn và mạnh. Hiện tại, bài toán trên vẫn được coi là bài toán khó do chưa có giải thuật thời gian đa thức cho nó và hệ mật RSA là một chứng minh thực tế cho tính khó giải của bài toán này. 1.3.1.2 Bài toán logarit rời rạc Cho p là một số nguyên tố và g là phần tử sinh của nhóm ZP*. Khi đó bài toán logarit rời rạc - DLP (Discrete Logarithm Problem) trên trường ZP hay còn gọi là bài toán DLP( p, g ) được phát biểu như sau: Bài toán DLP(p,g): Với mỗi số nguyên dương y( ℤ p*), hãy tìm x thỏa mãn phương trình sau: gx mod p = y Giải thuật cho bài toán logarit rời rạc với các tham số {p, g} công khai có thể được viết như một thuật toán tính hàm DLP( p, g ) (.)với biến đầu vào là y còn giá trị hàm là nghiệm x của phương trình trên: x = DLP( p, g )(y) Trong một hệ thống giao dịch điện tử ứng dụng chứng thực số để xác thực nguồn gốc và tính toàn vẹn thông tin cho các thông điệp dữ liệu, bài DLP( p, g ) là khó theo nghĩa không thể thực hiện được trong thời gian thực. Ở đó, mỗi thành viên U của hệ thống tự chọn cho mình khóa bí mật x thỏa mãn: 1 < x < ( p- 1) , tính và công khai tham số: y = g x mod p
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0