1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên Cứu Xây Dựng Ứng Dụng Chứng Thực Số Dựa Trên Kỹ Thuật Rsa.pdf

61 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

CÁC BIỂU MẪU QUẢN LÝ i LỜI CAM ĐOAN Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy giáo hướng dẫn TS Trịnh Viết Cường Các tài liệu tham khảo dùng trong luận[.]

i LỜI CAM ĐOAN Những nội dung luận văn thực hướng dẫn trực tiếp thầy giáo hướng dẫn TS Trịnh Viết Cường Các tài liệu tham khảo dùng luận văn trích dẫn rõ ràng tên tác giả, tên cơng trình, thời gian, địa điểm cơng bố Tơi xin cam đoan luận văn không trùng lặp với khóa luận, luận văn, luận án cơng trình nghiên cứu công bố Ngƣời cam đoan Nguyễn Đức Thuần ii LỜI CẢM ƠN Đề tài “Nghiên cứu xây dựng ứng dụng chứng thực số dựa kỹ thuật RSA” nội dung chọn để nghiên cứu làm luận văn tốt nghiệp sau hai năm theo học chương trình cao học chun ngành Khoa học máy tính trường Đại học Hồng Đức Để hoàn thành trình nghiên cứu hồn thiện luận văn này, lời xin chân thành cảm ơn sâu sắc đến thầy giáo TS Trịnh Viết Cường thuộc Khoa Công Nghệ thông tin Truyền thông – Trường Đại học Hồng Đức, thầy trực tiếp bảo hướng dẫn tơi suốt q trình nghiên cứu để tơi hồn thiện luận văn Nhân dịp này, tơi xin cảm ơn Khoa Công Nghệ thông tin Truyền thông, Trường Đại học Hồng Đức, lãnh đạo anh chị công tác khoa tạo điều kiện thời gian cho tơi suốt q trình nghiên cứu Cuối cùng, xin cảm ơn người thân, bạn bè bên tôi, động viên hồn thành khóa học luận văn Trân trọng cảm ơn! Tác giả Nguyễn Đức Thuần iii MỤC LỤC MỞ ĐẦU CHƢƠNG TỔNG QUAN CHỮ KÝ ĐIỆN TỬ VÀ HỆ CHỮ KÝ RSA 1.1 Giới thiệu chữ ký điện tử công cụ liên quan 1.1.1 Giới thiệu chung 1.1.2 Khái niệm chữ ký điện tử 1.1.3 So sánh chữ ký điện tử với chữ ký truyền thống 1.1.4 Sơ đồ tổng quan hệ thống chữ ký điện tử 1.2 Hàm băm mật mã 1.2.1 Các khái niệm định nghĩa 1.2.2 Cấu trúc thuật toán băm 10 1.2.3 Giải thuật MD4 11 1.2.4 Giải thuật SHA-1 12 1.3 Hệ chữ ký RSA 13 1.3.1 Cơ sở toán học hệ chữ ký RSA 14 1.3.2 Chữ ký RSA 15 1.3.3 Sơ đồ chữ ký RSA 19 1.4 Một số hệ chữ ký thông dụng khác 22 1.4.1 Chuẩn chữ ký số DSS (Digital Signature Standard) 22 1.4.2 Chữ ký Elgamal 24 1.4.3 Chữ ký ECDSA 26 CHƢƠNG CHỨNG THỰC SỐ 30 2.1 Đặt vấn đề 30 2.1.1 Vấn đề xác thực 30 2.1.2 Vấn đề chữ ký điện tử 31 2.2 Chứng thực số 31 2.2.1 Khái niệm chứng thực số 31 2.2.2 Mơ hình chứng thực số 32 CHƢƠNG XÂY DỰNG ỨNG DỤNG CHỨNG THỰC SỐ 38 iv 3.1 Đặt vấn đề 38 3.1.1 Vấn đề khơng phụ thuộc nước ngồi 38 3.1.2 Vấn đề bên thứ ba tin cậy(CA) 38 3.2 Hệ thống chứng thực số khác 39 3.3 Ứng dụng chứng thực số đề xuất 40 CHƢƠNG MÔ TẢ CÀI ĐẶT HỆ THỐNG THỬ NGHIỆM 44 4.1 Các chương trình 44 4.1.1 Chương trình cấp chứng thực số 44 4.1.2 Chương trình cài đặt chứng thực số gốc 44 4.1.3 Chương trình ký xác thực 44 4.2 Chương trình 1: Cấp chứng thực số 45 4.3 Chương trình 2: Chương trình cài đặt chứng thực số gốc 47 4.4 Chương trình 3: Ký xác thực tài liệu 47 4.5 Chương trình thử nghiệm 49 4.5.1 Giao diện chương trình 49 4.5.2 Chạy thử nghiệm 51 4.5.3 Nhận xét kết 53 KẾT LUẬN 54 TÀI LIỆU THAM KHẢO 55 v DANH MỤC CÁC HÌNH VẼ Hình 1.1: Giải thuật SHA-1 13 Hình 1.2: Sơ đồ ký kiểm tra 20 Hình 1.3: Sơ đồ ký kiểm tra thực tế 21 Hình 2.1: Mơ hình chức thực số 34 Hình 2.2: Mơ hình hoạt động người dùng, CA, RA VA 36 Hình 2.3: Mơ hình phân cấp CA 37 Hình 3.1 : Mơ hình chứng thực GlobalSign 39 Hình 3.2: Hệ thống đề xuất 41 Hình 3.3: Một chứng thư số thực tế 43 Hình 4.3 : Giao diện cấp chứng thực số 49 Hình 4.2: Giao diện cài đặt chứng thư số gốc 49 Hình 4.3: Giao diện phần mềm ký xác thực 50 Hình 4.4: Cấp chứng thực số thành công 51 Hình 4.5: Cài đặt chứng thực số gốc HDU thành cơng 52 Hình 4.6: Ký xác thực thành công 52 vi DANH MỤC CÁC KÍ HIỆU, CHỮ VIẾT TẮT Các từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt PKI Public key infrastructure Cơ sở hạ tầng khố cơng khai CA Certification Authority Tổ chức chứng thực RA Rigistration Authority Tổ chức đăng ký GCD Greatest Common Divisor Ước chung lớn RSA Rivest, Shamir Adleman Hệ mã hóa cơng khai xây dựng, phát triển Ron Rivest, Adi Shamir Leonard Adleman AES Advanced standard Chuẩn mã hoá nâng cao PKCS Public key standards MD Message Digest Tóm lược thơng điệp SHA Secure hash algorithm Thuật tốn băm an tồn encryption cryptography Chuẩn mã hố khố cơng khai UCLN Ước chung lớn BCNN Bội chung nhỏ MỞ ĐẦU Tính cấp thiết đề tài Song song với tốc độ phát triển ngành công nghệ thông tin, lượng liệu phát sinh giây phút ngày lớn ngày vượt qua tầm kiểm soát người phương tiện thông thường, lực xử lý hệ thống máy tính ngày trở nên mạnh mẽ vượt trội đồng thời với nhu cầu đảm bảo tồn vẹn bí mật thông tin nhạy cảm liệu tài chính, ngân hàng, giao dịch điện tử, trao đổi thư tín, hệ thống thơng tin, giao dịch điện tử trước nguy cơ, rủi ro an tồn thơng tin Chứng thực số nhằm giúp gia tăng tin cậy đảm bảo an toàn thông tin môi trường số, tạo tiền đề cho tốc độ phát triển mạnh mẽ công nghệ thông tin với thơng tin tin cậy tiền đề hình thành phủ điện tử với văn hành có hiệu lực tương đương văn giấy Giảm gánh nặng, thời gian phát hành văn bản, nghị định, giúp văn pháp quy có hiệu lực tốc độ phổ biến nhanh Thanh Hố tỉnh mạnh việc áp dụng công nghệ thông tin vào công tác quản lý, giảm thủ tục hành chính, tăng tính kết nối cho người dân quyền Hiện UBND Tỉnh ban hành nhiều định nhằm tạo nên khung pháp lý tạo sở pháp lý để tổ chức, cá nhân tham gia vào q trình xây dựng quyền điện tử dịch vụ thành phố thông minh - Quyết định 2538/QĐ-UBND phê duyệt đề án xây dựng Chính quyền điện tử phát triển dịch vụ thành phố thơng minh tỉnh Thanh Hóa, giai đoạn 2017 – 2020 - Quyết định 3089/QĐ-UBND ngày 22/8/2017 phê duyệt Kiến trúc Chính quyền điện tử tỉnh Thanh Hóa - Quyết định 1025/QĐ-UBND ngày 04/4/2017, ban hành Kế hoạch hành động đẩy mạnh cải cách hành chính, cải thiện mạnh mẽ môi trường đầu tư kinh doanh, hỗ trợ phát triển doanh nghiệp nâng cao lực cạnh tranh tỉnh Thanh Hóa giai đoạn 2016 – 2020 Tuy nhiên, tất loại công văn giấy tờ đường thông thường gây lãng phí tốn Chính phủ điện tử phải cho phép loại cơng văn giấy tờ chuyển dạng file điện tử qua mạng Internet Ứng dụng chứng thực số thành phần quan trọng để xây dựng nên phủ điện tử Mã hóa khóa cơng khai chữ ký điện tử giới thiệu vào thập niên 70, ngày đóng vai trị khơng thể thiếu việc đảm bảo an tồn thơng tin cho giao dịch mạng, phủ điện tử, lưu trữ liệu an toàn,… , cụ thể kết hợp hai lại với xây dựng ứng dụng chứng thực số hoàn chỉnh Tại Việt Nam, chứng thực số áp dụng rộng rãi lĩnh vực kê khai thuếcũng có hiệu lực tờ khai hải quan giúp việc lưu thông hàng hoá thuận lợichũng tiết kiệm thời gian, tiền bạc cho doanh nghiệp Có đơn vị Việt Namhiện cung cấp giải pháp chứng thực số FPT, VNPT, Viettel, Về mặt triển khai thực tế số quốc gia, chứng thực số cung cấp nhiều trung tâm chứng thực tiếng Symantec, GlobalSign, VeriSign, Comodo, Geotrust, Digicert, Thawte, Godady, Network Solution Ngồi cịn có:  Hệ thống quản lý chứng thực Red Hat  Computer Associate eTrust PKI  Microsoft  OpenCA (Một mô hình PKI mã nguồn mở)  RSA Security  IDX-PKI  Simple CA Về mặt triển khai ứng dụng Việt Nam, nhiều trung tâm, đơn vị, công ty triển khai cài đặt PKI thực tế, khó khăn tốn sở hạ tầng Ví dụ tập đồn bưu viễn thông Việt Nam (VNPT) trở thành nhà cung cấp dịch vụ Chứng thực chữ ký số (CTCKS) Việt Nam sau nhận Giấy phép cung cấp dịch vụ Chứng thực chữ ký số công cộng Bộ TT&TT vào ngày 15/9/2009 Theo giấy phép này, VNPT cung cấp dịch vụ CTCKS cho quan, tổ chức, cá nhân sử dụng hoạt động công cộng Các loại chứng thư số VNPT cung cấp bao gồm: Chứng thư số cá nhân cho quan, tổ chức, cá nhân; Chứng thư số SSL (chứng thư số dành cho website); Chứng thư số cho CodeSigning (chứng thư số dành cho ứng dụng).Trước cấp giấy phép, VNPT ký thỏa thuận cung cấp dịch vụ CKS cơng cộng cho ngành tài chính, đồng thời hợp tác hỗ trợ triển khai thành công Dự án thí điểm “Người nộp thuế nộp hồ sơ khai thuế qua mạng internet” áp dụng CKS vào thủ tục hải quan điện tử giai đoạn 2009-2010 Tiếp đến, VNPT tiếp tục cung cấp dịch vụ cho ngân hàng, thương mại điện tử Tiếp theo kể đến cơng ty Cơng ty Cổ phần cơng nghệ thẻ NacencommSCT thức nhà cung cấp dịch vụ CTCKS công cộng thứ Việt Nam từ ngày 2/3/2010 Công ty An ninh mạng Bkav nhà cung cấp dịch vụ CTCKS công cộng thứ kể từ ngày 8/4/2010, với tên giao dịch BkavCA Viettel trở thành nhà cung cấp chứng thực chữ ký số thứ 4, vào ngày22/6/2010 Bộ TT&TT trao giấy phép cung cấp dịch vụ CTCKS công cộng cho Viettel Công ty cổ phần Hệ thống thông tin FPT (FPT IS) gia nhập thị trường cung cấp dịch vụ CTCKS công cộng từ ngày 10/8/2010 nhà cung cấp CKS thứ Việt Nam Chứng thực số cịn hạ tầng đảm bảo an tồn thông tin hệ thốngthông tin điển giao thức truyền tin an tồn https với tiêu chuẩnđược tổ chức IEEE đưa ra, sở đảm bảo an tồn thơng tin cho giao dịch, thư tínquan trọng mơi trường Internet Mật mã học vấn đề vô quan trọng lĩnh vực bảo mật an tồn thơng tin Trên giới, mật mã học đời từ sớm đặc biệt phát triển mạnh mẽ chiến tranh mà an tồn bảo mật thơng tin vấn đề sống Cho đến ngày nay, mật mã học ngày nghiên cứu, phát triển đạt thành tựu to lớn Trong mật mã học, vấn đề bảo mật đôi với vấn đề xác thực thông tin, đặc biệt hệ thống mã hoá khoá công khai vấn đề xác thực vô quan trọng Để giải vấn đề người ta đưa cách giải hiệu chữ ký điện tử chứng thực số Với bùng nổ Internet, cơng nghệ điện tốn máy tính nay, vấn đề tồn vẹn bảo mật thơng tin lại đặt lên hàng đầu vai trò thiết yếu nó, nhấn mạnh ứng dụng công nghệ thông tin Việt Nam ngày phát triển mạnh mẽ ấn tượng năm qua, đặc biệt ngày 12 tháng 03 năm 2019 phủ thức khai trương “Trục liên thơng văn quốc gia” sở tiền đề cho phủ điện tử hình thành Việc sử dụng chữ ký điện tử giải pháp hữu hiệu, ngày ứng dụng nhiều thực tế không giới hạn trục liên thông văn ngành công nghệ thơng tin mà cịn áp dụng nhiều lĩnh vực khác ngân hàng, viễn thông, thuế, hải quan, thương mại, Trong hoạt động giao dịch trực tuyến, thư tín điện tử, duyệt web an toàn, kê khai thuế, khai báo hải quan, hay gần trục liên thông văn quốc gia, chữ ký điện tử hệ thống chứng thực số phần khơng thể thiếu, cho phép giao dịch thực nhanh chóng, tức thời, xác mà khơng tốn nhiều chi phí lại, thời gian, kiểm tra tính xác thực văn bản, giấy tờ địi hỏi có chữ ký xác nhận hai bên Tuy nhiên, việc sử dụng chữ ký điện tử cịn hạn chế tổ chức, doanh nghiệp phải xin cấp phép chứng thực số công nhận rộng rãi từ tổ chức chứng thực nước ngồi, phủ điện tử công văn quan trọng u cầu tính bảo mật sử dụng trung tâm chứng thực nước tác động lớn đến an tồn an ninh quốc gia, chi phí chi trả dịch vụ chứng thực hàng tháng cho đơn vị chứng thực nước lớn nên cần hệ chứng thực số nước có khả đảm bảo an tồn tiết kiệm chi phí Ngồi ra, hầu hết hoạt động nghiệp vụ quan công sở tin học hóa, nhiên mức độ hiểu biết ứng dụng cơng nghệ chữ ký điện tử cịn hạn chế Hầu hết hệ thống thông tin đơn vị sử 41 Hình 3.2: Hệ thống đề xuất Trong đó, hệ thống bao gồm: - CA Server: Sử dụng chứng thư gốc(HDUSign Root CA) ký lên khoá công khai thực thể tham gia hệ thống xác nhận khố thuộc thực thể - RootCA Installer: Hỗ trợ thực thể tham gia hệ thống cài đặt chứng thư gốc(HDUSign Root CA) mặc định lên thiết bị, làm sở đảm bảo xác thực - HDUSigner: Ký-mã hố xác thực-giải mã cơng văn, tài liệu, liệu - Server: Demo sử dụng chứng thư số HDUSign Root CA cấp để khởi tạo kết nối an tồn Trong hệ thống hình 3.2, ta có thực thể gồm ơng Nguyễn Xn Phúc, ông Nguyễn Đình Xứng trung tâm chứng thực số HDUSign Hệ thống chứng thực hoạt động sau: - Nguyễn Đình Xứng, Nguyễn Xuân Phúc, HDUSign CA - Các thực thể tham gia hệ thống sử dụng RootCA Installer cài đặt chứng thư gốc HDUSign Root CA làm sở đảm bảo tính xác thực 42 - Ông Nguyễn Xuân Phúc gửi yêu cầu cấp chứng thực đến trung tâm chứng thực HDUSign - Trung tâm chứng thực HDUSign thông qua CAServer gửi chứng thư số cho ông Nguyễn Xuân Phúc - Ông Nguyễn Xuân Phúc sử dụng HDUSigner chứng thư số cấp ký mã hố lên cơng văn, giấy tờ gửi đến ơng Nguyễn Đình Xứng - Ơng Nguyễn Đình Xứng sử dụng HDUSigner xác thực giải mã công văn ông Nguyễn Xuân Phúc gửi đến(HDUSigner tự động tải chứng thư số ông Nguyễn Xuân Phúc) Một hệ thống chứng thực số hồn chỉnh cịn kèm theo hệ mã hóa khóa cơng khai để đảm bảo việc truyền lưu trữ liệu an tồn Ở dùng hệ mã hóa RSA chương trước trình bày Hệ thống hoàn toàn đảm bảo trách nhiệm tính xác thực người ký lên tài liệu tự chủ xây dựng hệ thống chứng thực phân cấp hệ thống tự xây dựng sở hữu riêng chứng thư gốc có khả cấp phát chứng thư trung gian Hình 3.3 mơ tả chứng thư số cấp thực tế : 43 Hình 3.3 : Một chứng thư số thực tế 44 Chƣơng MÔ TẢ CÀI ĐẶT HỆ THỐNG THỬ NGHIỆM 4.1 Các chƣơng trình 4.1.1 Chƣơng trình cấp chứng thực số Đoạn mã giả cấp chứng thực số cho đơn vị sử dụng chứng thực : Đọc chứng thư gốc vào rootCA Khởi tạo chứng thư sCert Thêm thông tin định danh CommonName, DNS, Email, City, CountryName, Organization Thêm cờ vào sCert cho KeyEncipherment, NonRepudiation phép DigitalSignature, KeyCertSign, vào sCert Thêm chứng thư ID chứng thư gốc rootCA vào chứng thư sCert Sử dụng khố bí mật rootCA ký lên tồn thơng tin chứng thư sCert Thêm chữ ký vào sCert Băm sCert hàm băm base64, xuất tệp tin lưu trữ máy chủ CA Trả tệp tin chứng thư sCert 4.1.2 Chƣơng trình cài đặt chứng thực số gốc Đoạn mã giả chương trình hỗ trợ cài đặt chứng thư gốc : Tìm tệp chứng thư gốc rootCA WindowCertStore Nếu chứng thư tồn : thông báo chứng thư tồn kết thúc Nếu không : Thêm chứng thư gốc rootCA vào WindowCertStore Thông báo thêm chứng thư thành cơng kết thúc 4.1.3 Chƣơng trình ký xác thực Đoạn mã giả chương trình ký : Đọc vào liệu, công văn cần ký Sử dụng thuật toán băm SHA-256 băm liệu thành 256 bytes, lưu vào 45 Data Tính chữ ký sig = Datad (mod n), lưu sig id chứng thư vào tệp tin Signature Đoạn mã giả chương trình xác thực chữ ký : Đọc vào liệu, công văn chữ ký, id chứng thư ký Tải chứng thư ký thông qua id đọc vào sCert, tính p = PK sCertPkca (mod n) Nếu p != SigsCert : Thông báo chứng thư không hợp lệ Nếu khơng : Tới bước 3 Sử dụng thuật tốn băm SHA-256 băm liệu, công văn thành 256 bytes, lưu vào Data Sử dụng khố cơng khai chứng thư tính m = Signaturee (mod n) Nếu m = Data : Thông báo chữ ký Nếu không : Thơng báo liệu bị thay đổi 4.2 Chƣơng trình 1: Cấp chứng thực số Input: Chứng thực số gốc khố bí mật Output: Chứng thực số ký Mã nguồn: 46 var rootCA = CertUtil.getInstance().getRootCA(); var rsa = RSA.Create(); var request = new CertificateRequest( dName.getX509DistinguishedName(), rsa, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1); var subjectANB = new SubjectAlternativeNameBuilder(); subjectANB.AddDnsName(dName.DNS); subjectANB.AddEmailAddress(dName.E); request.CertificateExtensions.Add(subjectANB.Build()); request.CertificateExtensions.Add( new X509BasicConstraintsExtension( false, false, 0, false)); request.CertificateExtensions.Add(new X509KeyUsageExtension( X509KeyUsageFlags.DigitalSignature | X509KeyUsageFlags.KeyCertSign | X509KeyUsageFlags.KeyEncipherment | X509KeyUsageFlags.DataEncipherment | X509KeyUsageFlags.NonRepudiation, false) ); var issuerSubjectKey = rootCA.Extensions["Subject Key Identifier"].RawData; var segment = newbyte[issuerSubjectKey.Length - 2]; Buffer.BlockCopy( issuerSubjectKey, 2, segment, 0, issuerSubjectKey.Length - 2); var authorityKeyIdentifer = newbyte[segment.Length + 4]; var KeyID = newbyte[] { 0x30, 0x16, 0x80, 0x14 }; KeyID.CopyTo(authorityKeyIdentifer, 0); segment.CopyTo(authorityKeyIdentifer, 4); request.CertificateExtensions.Add(new X509Extension( "2.5.29.35", authorityKeyIdentifer, false)); request.CertificateExtensions.Add(new X509EnhancedKeyUsageExtension( new OidCollection { new Oid("1.3.6.1.5.5.7.3.8"), // Timestamping new Oid("1.3.6.1.5.5.7.3.2"), // TLS Client auth new Oid("1.3.6.1.5.5.7.3.1") // TLS Server auth }, false) ); 47 X509Store store = new X509Store(StoreName.Root, StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); var certificates = store.Certificates.Find( X509FindType.FindBySubjectName, lbIssuedTo.Text, false); if (certificates != null&& certificates.Count > 0) { MessageBox.Show("Certificate already exists", "Information"); } else { store.Add(cert); MessageBox.Show("Certificate installed successful ", "Information"); 4.3 Chƣơng trình } 2: Chƣơng trình cài đặt chứng thực số gốc Input: Chứngstore.Close(); thực số gốc Output: Thông báo kết cài đặt Mã nguồn: X509Store store = new X509Store(StoreName.Root, StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); var certificates = store.Certificates.Find( X509FindType.FindBySubjectName, lbIssuedTo.Text, false); if (certificates != null&& certificates.Count > 0){ MessageBox.Show("Chứng thực số thực tồn hệ thống", "Infor"); }else{ 4.4 Chƣơng trình 3: Ký xác thực tài liệu store.Add(cert); Ký MessageBox.Show("Cài đặt chứng thực số thành công ", "Infor"); Input: }Tài liệu cần ký, khố bí mật Output:store.Close(); Tệp tin chữ ký số (*.sig) Mã nguồn: 48 byte[] data = File.ReadAllBytes(txtDocPath.Text); byte[] signedData = Utils.Sign(data, txtCertPath.Text, txtPass.Text); byte[] certid = Encoding.ASCII.GetBytes(getFileName(txtCertPath.Text)); byte[] signature = newbyte[signedData.Length + certid.Length]; System.Buffer.BlockCopy(signedData, 0, signature, 0, signedData.Length); System.Buffer.BlockCopy(certid, 0, signature, signedData.Length, certid.Length); string sigPath = txtDocPath.Text + ".sign"; File.WriteAllBytes(sigPath, signature); Xác thực MessageBox.Show("Ký thành công"); Input: Tài liệu ký, khố cơng khai, chữ ký Output: Thơng báo kết xác thực Mã nguồn: byte[] data = File.ReadAllBytes(txtDocPath.Text); string sigPath = txtDocPath.Text + ".sign"; byte[] signature = File.ReadAllBytes(sigPath); byte[] signedData = newbyte[256]; byte[] certid = newbyte[18]; System.Buffer.BlockCopy(signature, 0, signedData, 0, 256); System.Buffer.BlockCopy(signature, 256, certid, 0, certid.Length); string certName = Encoding.ASCII.GetString(certid); txtCertId.Text = certName; string cerPath = sigPath.Substring(0, txtDocPath.Text.LastIndexOf("\\")) + "\\" + certName + ".cer"; if (!File.Exists(cerPath)) { try{ using (WebClient wc = new WebClient()){ wc.DownloadFile( // Param1 = Link of file new System.Uri("http://localhost:8081/cert/get_public_cert/" + certName), // Param2 = Path to save cerPath); } }catch (Exception caServerOffline) { 49 4.5 Chƣơng trình thử nghiệm 4.5.1 Giao diện chƣơng trình 4.5.1.1 Giao diện cấp chứng thực số Hình 4.1 : Giao diện cấp chứng thực số 4.5.1.2 Giao diện cài đặt chứng thực số gốc Hình 4.2: Giao diện cài đặt chứng thư số gốc 50 4.5.1.3 Giao diện ký xác thực tài liệu Hình 4.3 : Giao diện phần mềm ký xác thực 51 4.5.2 Chạy thử nghiệm 4.5.2.1 Thử nghiệm cấp chứng thực số Hình 4.4 : Cấp chứng thực số thành công 52 4.5.2.2 Thử nghiệm cài đặt chứng thực số gốc Hình 4.5 : Cài đặt chứng thực số gốc HDU thành công 4.5.2.3 Thử nghiệm ký xác thực tài liệu Hình 4.6 : Ký xác thực thành công 53 4.5.3 Nhận xét kết Chương trình chạy tốt cho việc cấp chứng thực số, ký kiểm tra chữ ký xác Giao diện thân thiện tương đối dễ sử dụng, đảm bảo độ an tồn cao Chương trình cso thể móng để xây dựng nên hệ thống lớn 54 KẾT LUẬN Kết đạt đƣợc Trong thời gian tìm hiểu, xây dựng ứng dụng, đề tài hoàn thành nhiệm vụ đặt ra, cụ thể là: Về mặt lý thuyết: Đề tài nghiên cứu tìm hiểu hệ thống chứng thực số gồm: - Cơ sở lý thuyết hệ chữ ký khóa cơng khai RSA, chữ ký số hàm băm làm sở cho việc tìm hiểu hệ thống chứng thực số - Hệ thống chứng thực số, thành phần cách thức hoạt động, chức hệ thống chứng thực số, mơ hình chứng thực số Về ứng dụng : Kết xây dựng ứng dụng chứng thực số dựa kỹ thuật RSA Hƣớng phát triển Đề tài giới thiệu ứng dụng chứng thực số cụ thể tương tự trục liên thông văn quốc gia, phát triển để áp dụng cho đơn vị nhỏ ví dụ hệ thống công văn trường Đại học Hồng Đức Kết khoa học đề tài: - Ứng dụng chứng thực số dựa kỹ thuật RSA vào thực tế xây dựng chương trình mẫu cho tốn cụ thể - Tài liệu tham khảo hệ chữ ký khóa cơng khai RSA, chữ ký số hàm băm làm sở cho việc tìm hiểu hệ thống chứng thực số Khuyến nghị Kết đề tài đưa sở lý thuyết ứng dụng thử nghiệm, sử dụng làm tiền đề-xương sống để phát triển hệ thống chứng thực số quy mô lớn nghiệp vụ phức tạp Tuy nhiên, để hệ thống chứng thực số đưa vào vận hành cần nghiên cứu, ban hành quy định, sách, chế tài, luật pháp để hệ thống trở nên có giá trị pháp lý làm chứng hệ thống điện tử 55 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Trịnh Viết Cường, Trịnh Thị Phú, Lê Xuân Lâm Nghiên cứu, xây dựng giải thuật chứng thực chữ ký số dựa kỹ thuật Certificateless [2] Phan Huy Khánh, Hồ Phan Hiếu (2009), Giải pháp ứng dụng chữ ký điện tử q trình gửi nhận văn bản, Tạp chí khoa học công nghệ, Đại học Đà Nẵng – số 5(34) [3] Trịnh Nhật Tiến, ”An toàn liệu”, Đại học Công Nghệ-ĐHQGHN Tiếng Anh [4] Bart Van Rompay Analysis and Design of Cryptographic Hash Functions, MAC Algorithms and Block Ciphers, Juni 2004, tr 27-28 [5] Whitfield Diffie and Martin E Hellman, New Directions in Cryptography, 1976 Website [6] Trang Web : http://vi.wikipedia.org/wiki/Chữ_ký_số, tr

Ngày đăng: 17/07/2023, 23:24