Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
2,03 MB
Nội dung
MỤC LỤC LỜI CẢM ƠN Error! Bookmark not defined LỜI CAM ĐOAN Error! Bookmark not defined MỤC LỤC DANH MỤC TỪ VIẾT TẮT VÀ THUẬT NGỮ TIẾNG ANH DANH MỤC HÌNH VẼ LỜI NÓI ĐẦU Chương I: Cơ sở lý thuyết 1.1 Tổng quan mã hóa 1.1.1 Giới thiệu chung 1.1.2 Hệ mã hóa công khai 1.2 Mã hóa MD5 1.2.1 Khái niệm mã hóa MD5 .9 1.2.2 Thuật toán mã hóa MD5 .9 1.2.3 Sự khác thuật toán mã hóa MD4 MD5 13 1.2.4 Tính bảo mật mã hóa MD5 13 1.3 Chữ kí điện tử 14 1.3.1 Khái niệm chữ kí điện tử 14 1.3.2 Sự khác biệt chữ ký điện tử chữ ký thường 14 1.3.3 Đặc điểm điều kiện đảm bảo chữ ký điện tử 16 1.3.4 Tính pháp lý chữ ký điện tử 17 1.3.5 Quy trình tạo xác thực chữ kí điện tử 19 1.3.6 Phương pháp kí RSA 21 Chương II: Chứng số 25 2.1 Khái niệm chứng số 25 2.2 Xây dựng hệ thống cung cấp chứng số 30 2.2.1 Tổ chức chứng thực (CA) 30 2.2.2 Trung tâm đăng ký (Registration Authorities) 30 2.2.3 Thực thể cuối (Người giữ chứng Clients) .31 2.2.4 Hệ thống lưu trữ (Repositories) 32 2.2.5 Chính sách chứng số 32 2.3 Chứng số hạ tầng mã hóa công khai PKI 34 2.3.1 Khái quát hạ tầng mã hóa công khai PKI .34 2.3.2 Các thành phần PKI .34 2.3.3 Chức PKI 35 2.3.4 Mô hình tin cậy PKI 38 2.4 Tầm quan trọng chứng số .43 2.5 Hiện trạng sử dụng chứng số giới Việt Nam 46 Chương III: Xây dựng hệ thống chứng số ứng dụng 48 3.1 Hệ thống dự kiến xây dựng .48 3.1.1 Mô hình hệ thống mức khung cảnh 49 3.1.2 Biểu đồ phân cấp chức 49 3.2 Phân tích thiết kế xây dựng chương trình ứng dụng .53 3.2.1 Phân tích thiết kế thành phần chương trình 54 3.2.2 Demo cách sử dụng hệ thống 58 DANH MỤC TỪ VIẾT TẮT VÀ THUẬT NGỮ TIẾNG ANH CA Certificate Authority CP Certificate Polices CPS Certificate Practise Statement CRL Certificate Revocation List DES Data Encrytion Standard DSA Digital Signature Algorithm PGP Pretty Good Privacy PKI Public Key Infrastructure PKIX Public Key Infrastructure X.509 group RA Registration Authority RSA Rivest Sharmir Adleman RSA_PSS Probalistic Signature Scheme for RSA SSL Secure Socket Layer OAEP Optimal Asymmetric Encryption Padding DANH MỤC HÌNH VẼ Hình 1.1: Sơ đồ mã hóa giải mã Hình 1.2: Sơ đồ mã hóa giải mã với khóa công khai Hình 1.3: Sơ đồ thuật toán mã hóa MD5 Hình 1.4: Quy trình tạo xác thực chữ ký điện tử Hình 2.1: Khuôn dạng chứng số X.509 Hình 2.2: Các thành phần PKI Hình 2.3: Mô hình CA đơn Hình 2.4: Mô hình CA phân cấp Hình 2.5: Mô hình mạng lưới CA Hình 2.6: Mô hình Web CA Hình 3.1: Mô hình hệ thống mức khung cảnh Hình 3.2: Biểu đồ phân cấp chức CA Operator Hình 3.3: Biểu đồ phân cấp chức RA Hình 3.4: Biểu đồ phân cấp chức Ứng dụng người dùng Hình 3.5: Biểu đồ Usercase chương trình xây dựng Hình 3.6: Biểu đồ trình tự chức ký văn Hình 3.7: Biểu đồ cộng tác chức ký văn Hình 3.8: Biểu đồ trình tự chức mã hóa văn Hình 3.9: Biểu đồ cộng tác chức mã hóa văn Hình 3.10: Biểu đồ trình tự chức xác thực Hình 3.11: Biểu đồ cộng tác chức xác thực Hình 3.12: Form Đăng nhập hệ thống Hình 3.13: Form Nhập văn Hình 3.14: Form Gửi văn Hình 3.15: Form Xác thực văn Hình 3.16: Form Nhập thông tin tạo chứng số Hình 3.17: Form Lưu trữ sở liệu chứng số LỜI NÓI ĐẦU Trong năm gần đây, hạ tầng truyền thông Công nghệ thông tin ngày mở rộng người sử dụng dựa tảng để truyền thông giao dịch với đồng nghiệp, đối tác kinh doanh việc khách hàng dùng email mạng công cộng Nhu cầu trao đổi thông tin ngày tăng kéo theo yêu cầu cấp thiết bảo đảm an toàn việc truyền tin mạng, đặc biệt với thông tin nhạy cảm quan trọng lưu trữ trao đổi hình thức điện tử quan văn phòng, doanh nghiệp Người ta trao đổi thông tin mạng máy tính công khai (thỏa thuận hợp tác, hợp đồng, văn bản, nghị quyết,…) mà yên tâm họ làm việc với đối tác mà người thứ ba Một lời giải toán đề tài thực hiện: “Chứng số Ứng dụng” Chứng số tệp tin điện tử dùng để xác minh danh tính cá nhân, máy chủ, công ty, Internet Đồ án xây dựng chương trình cung cấp chứng số thao tác truyền văn với chữ ký điện tử mã hóa MD5 để kiểm tra tính toàn vẹn văn bản; có thông tin truy nhập người liên quan: tài khoản cá nhân, hồ sơ sức khỏe,… Nhiều dịch vụ cần biết xác người gửi/nhận hay nội dung thông tin có bị thay đổi gửi/nhận không như: ký kết hợp đồng qua mạng, hồ sơ lực… Ở Việt Nam, chứng thực điện tử giai đoạn đầu phát triển trọng tâm ngành ngân hàng Song có nhiều ngành khác có nhu cầu cấp thiết cần có chứng thực điện tử giao dịch mạng Đó lý mà chọn đề tài dựa tảng kiến thức báo cáo thực tập chuyên ngành tốt nghiệp hoàn thành, nhằm xây dựng ứng dụng văn phòng điện tử, góp phần thay đổi thói quen làm việc, tiến tới điện tử hóa công văn, giấy tờ công tác văn nhà nước Chương I: Cơ sở lý thuyết 1.1 Tổng quan mã hóa 1.1.1 Giới thiệu chung Từ lâu đời mật mã người khám phá sử dụng Các hình thức mật mã sơ khai tìm thấy từ khoảng bốn nghìn năm trước văn minh Ai Cập cổ đại Trải qua hàng nghìn năm lịch sử, mật mã sử dụng rộng rãi khắp nơi giới từ Đông sang Tây để giữ bí mật cho việc giao lưu thông tin nhiều lĩnh vực hoạt động người quốc gia, đặc biệt lĩnh vực quan sự, trị, ngoại giao Mật mã trước hết lại hoạt động thực tiễn, nội dung để giữ bí mật thông tin Ví dụ A muốn gửi văn đến người nhận B, A phải tạo cho văn mã tương ứng, thay gửi văn rõ A gửi cho B mã, B nhận mã khôi phục lại thành rõ để hiểu thông tin mà A muốn gửi cho Do văn gửi thường chuyển qua đường công khai nên người “lấy trộm” được, mã nên hiểu Còn A tạo mã cho B B giải mã thành rõ để hiểu hai người có chung thỏa thuận khóa chung, với khóa chung A tạo mã từ mật từ rõ B khôi phục rõ từ mã Và, khóa chung gọi khóa mật mã Để thực phép mật mã, ta cần thuật toán biến mã với khóa mã thành văn thuật toán ngược lại để biến mã khóa thành rõ tương ứng, gọi thuật toán mã hóa Hệ mật mã cổ điển hay gọi mã khóa bí mật, hệ mã có từ năm 1975 trở trước Những hệ mã có tính chất chung nếu biết khóa lập mã ek dễ dàng tìm hàm giải mã dk, nên chúng gọi hệ mã đối xứng Việc giữ bí mật khóa trở thành vấn đề sống hệ mã Bản rõ Bản mã Bản rõ gốc Giải mã Mã hóa Hình 1.1: Quá trình mã hóa giải mã Các hệ mã cổ điển: - Hệ mã đẩy - Hệ mã Keyword_Ceasar - Mã hình vuông - Mã hoán vị - Mã Affine - Mã Vigenere - Mã dòng Một số ưu nhược điểm hệ mã hóa cổ điển: - Ưu điểm bật hệ mã xây dựng hệ mật mã có độ bảo mật cao mà dễ dàng mặt lý thuyết Nhưng việc phân phối, lưu trữ bảo mật thỏa thuận khóa vấn đề khó chấp nhận mạng truyền thông ngày Trong mạng có n người dùng, cần khóa cho cặp cần n(n+1)/2 khóa - Hệ mã đối xứng không bảo vệ an toàn xác suất bị lộ khóa người gửi cao Trong hệ khóa phải gửi kênh truyền an toàn kẻ địch công kênh truyền phát khóa - Vấn đề quản lý phân phối khóa khó khăn phức tạp sử dụng hệ mã cổ điển Người gửi người nhận luôn thống với vấn đề khóa Việc thay đổi khóa khó dễ bị lộ 1.1.2 Hệ mã hóa công khai Vào năm 1970 Diffie Hellman phát minh hệ mã hóa gọi hệ mã hóa công khai hay hệ mã hóa phi đối xứng Thuật toán mã hóa công khai khác biệt so với thuật toán đối xứng Chúng thiết kế cho khóa sử dụng vào việc mã hóa khác so với khóa giải mã Hơn khóa giải mã tính toán từ khóa mã hóa Chúng gọi với tên hệ thống mã hóa công khai để mã hóa công khai, người sử dụng khóa công khai để mã hóa thông báo, vài người có khóa giải mã có khả giải mã Trong nhiều hệ thống, khóa mã hóa gọi khóa công khai (public key), khóa giải mã thường gọi khóa riêng (private key) K1 K2 Bản mã Bản Bản rõ Giải mã Mã hóa Hình 1.2: Sơ đồ mã hóa giải mã với khóa công khai Có nhiều hệ thống khóa công khai triển khai rộng rãi hệ RSA, hệ ElGamal sử dụng giao thức trao đổi khóa Trong hệ mật mã hệ RSA hệ cộng đồng chuẩn quốc tế công nghiệp chấp nhận rộng rãi thực thi mật mã khóa công khai, sử dụng rộng rãi thực tiễn đặc biệt cho mục đích bảo mật xác thực liệu số Tính bảo mật an toàn chúng bảo đảm độ phức tạp số toán số học, tiếng toán phân tích số nguyên thành thừa số nguyên tố Một số ưu nhược điểm hệ mật mã công khai: Vấn đề tồn đọng hệ mật mã khóa đối xứng giải nhờ vào hệ mật mã khóa công khai Chính ưu điểm thu hút nhiều trí tuệ vào việc đề xuất, đánh giá hệ mật mã công khai Nhưng thân hệ mật mã khóa công khai dựa vào giả thiết liên quan đến toán khó nên đa số hệ mật mã có tốc độ mã dịch không nhanh Chính nhược điểm làm cho hệ mật mã khóa công khai khó dùng cách độc lập Một vấn đề khóa mã hóa công khai công bố cách công khai mạng nên việc đảm bảo “khóa công bố có đối tượng cần liên lạc hay không?” kẽ hở bị lợi dụng Một ưu điểm hệ mật mã khóa công khai ứng dụng lĩnh vực chữ ký số, với kết hàm băm, thủ tục ký để đảm bảo tính toàn vẹn văn giải 1.2 Mã hóa MD5 1.2.1 Khái niệm mã hóa MD5 MD5 (Message - Digest algorithm 5) thiết kế Ronald Rivest vào năm 1991 để thay cho hàm băm mã hóa MD4 trước MD5 hàm băm mật mã sử dụng phổ biến với giá trị băm dài 128 bít, chuẩn Internet (RFC 1321), MD5 dùng nhiều ứng dụng bảo mật, dùng phổ biến để kiểm tra tính toàn vẹn tệp tin MD5 có ứng dụng quan trọng: - MD5 sử dụng rộng rãi giới phần mềm để đảm bảo tập tin tải không bị hỏng Người sử dụng so sánh thông số kiểm tra phần mềm MD5 công bố với thông số kiểm tra phần mềm tải MD5 Hệ điều hành Unix sử dụng MD5 để kiểm tra gói mà phân phối hệ điều hành Window phải sử dụng phần mềm thứ - MD5 dùng để mã hóa mật Mục đích việc mã hóa biến đổi chuỗi mật thành đoạn mã khác, cho từ đoạn mã lần trở lại mật Có nghĩa việc giải mã phải khoảng thời gian vô tận 1.2.2 Thuật toán mã hóa MD5 MD5 biến đổi thông điệp có chiều dài thành khối có kích thước cố định 128 bít Thông điệp đưa vào cắt thành khối 512 bít, sau đưa vào đệm để chiều dài chia hết cho 512 Sau bước trình mã hóa: Bước 1: Thêm bít đệm Thông điệp mở rộng cách thêm bít vào cuối thông điệp cho độ dài (tính theo bít) đồng dư với 448 theo môđun 512 Nghĩa thông điệp mở rộng cho thiếu 64 bít có độ dài chia hết cho 512 Việc thực thân độ dài thông điệp đồng dư với 448 theo môdun 512 Việc thêm bít thực sau: bít “1” thêm vào sau thông điệp, sau thêm bít “0” để có độ dài thông điệp đồng dư với 448 theo môđun 512 Như vậy, có bít nhiều 512 bít thêm vào Bước 2: Gắn thêm bít độ dài Biểu diễn độ dài chuỗi ban đầu b dạng 64 bít thêm vào phía sau kết bước Trong trường hợp b lớn 264 có 64 bít thấp b sử dụng Bước 3: Khởi tạo đệm MD Một đệm word (A, B, C, D) dùng để tính mã số thông điệp Ở A, B, C, D ghi 32 bít Những ghi khởi tạo theo giá trị Hex sau (các byte thấp trước): Word A: 01 23 45 67 Word B: 89 ab cd ef Word C: fe dc ba 98 Word D: 76 54 32 10 Bước 4: Xử lý thông điệp theo khối 16 word với word lượng 32 bít F (X, Y, Z) = XY v not (X) Z F (X, Y, Z) = XZ v Y not (Z) H (X, Y, Z) = X xor Y xor Z I (X, Y, Z) = Y xor (X v not (Z)) Với bít, F hoạt động điều kiện: X Y không Z Hàm F định nghĩa phép “+” thay phép “v” XY not(X)Z bít “1” vị trí bít Các hàm G, H I tương tự 10 Ở Châu Á, Hàn Quốc coi quốc gia áp dụng Chính phủ điện tử hiệu cao Một yếu tố giúp cho thành công Chính phủ điện tử chứng thực điện tử Hàn Quốc có hệ thống mạng lưới thông tin thông suốt từ Chính phủ đến thành phố, quận huyện, làng mạc Thông tin cá nhân thông nhiều lĩnh vực, việc áp dụng chứng thực điện tử Hàn Quốc có hiệu cao Ở Việt Nam, việc xây dựng Hệ thống Chứng thực điện tử số nhân tố quan trọng Chính phủ điện tử giao dịch thương mại Chúng ta bước xây dựng hệ thống này, luật pháp, ta có Luật giao dịch điện tử (2005), Nghị định 26 (Quy định chi tiết thi hành Luật Giao dịch điện tử chữ ký số dịch vụ chứng thực chữ ký số), Nghị định 27 (về Giao dịch điện tử hoạt động tài chính) Các đơn vị Nhà nước, tổ chức doanh nghiệp xây dựng hệ thống chứng thực chuyên dùng, đáp ứng cho yêu cầu nội Trung tâm Chứng thực điện tử Quốc gia Bộ Thông tin Truyền thông (MIC) xây dựng có tên RootCA (CA gốc) Với Luật Nghị định ban hành, việc áp dụng chữ ký số, chứng số có hành lang pháp lý đầy đủ để áp dụng Nhìn khía cạnh khác, Luật Nghị định tạo sức ép lên việc áp dụng chữ ký số, chứng số nhằm đảm bảo an toàn giao dịch điện tử Tạo bước chuyển biến từ “cần thiết áp dụng” sang “bắt buộc áp dụng” nhằm nâng cao tính pháp lý giao dịch điện tử, đặc biệt với giao dịch điện tử Ngân hàng Theo nhận định Tiến sĩ Mai Anh - Giám đốc Trung tâm Tin học - Bộ Khoa học Công nghệ: “Chữ ký điện tử có độ an toàn cao nhiều so với chữ ký tay, chữ ký điện tử chứng thực Việc giám định chữ ký điện tử thuận lợi hơn, công nghệ có nhà cung cấp dịch vụ chứng thực chữ ký điện tử làm việc trước cần đến quan bảo vệ pháp luật Từ trước đến ta chưa có đăng ký chữ ký tay (trừ số công chức cao cấp), người nhận kiểm tra tính xác thực chữ ký văn Khi xảy cố có quan Công an giám định được.” 47 Chương III: Xây dựng hệ thống chứng số ứng dụng 3.1 Hệ thống dự kiến xây dựng Hệ thống gồm thành phần phân tích chương 2: a CA - CA Database: sở liệu lưu trữ liệu khởi tạo hoạt động CA - CA Operator: công cụ quản trị người điều hành CA, nơi phát hành chứng (còn gọi chứng thư số theo thuật ngữ văn pháp lý) CA kết nối với máy chủ, cung cấp ứng dụng cho phép người điều hành CA nhập thông tin yêu cầu vào sở liệu + Quản lý yêu cầu, quản lý sách phát hành chứng + Cung cấp giao diện cho phép người điều hành CA quản trị yêu cầu, từ phát hành chứng số b RA - RA Database: sở liệu RA - RA: bao gồm hai phận: + Bộ phận phát hành chứng chỉ: cung cấp dịch vụ chứng chỉ: Phát hành chứng Hủy chứng theo yêu cầu Cấp chứng + Bộ phận cung cấp dịch vụ cho phép người sử dụng chứng thao tác với ứng dụng cụ thể: Dịch vụ xác thực chứng chỉ: kiểm tra thông tin, tính hợp lệ chứng chỉ,… Dịch vụ cung cấp chứng theo mã số (serial number),… c User Application (Ứng dụng người dùng) Đây ứng dụng cho phép người dùng truy cập đến trung tâm dịch vụ chứng RA để sử dụng chứng vào số ứng dụng mà hệ thống cung cấp như: mã hóa thông điệp, chữ ký số,… Chức hệ thống xây dựng phần nội dung chương trình ứng dụng đồ án 48 3.1.1 Mô hình hệ thống mức khung cảnh CA RA User Application User Application User Application Hình 3.1: Mô hình hệ thống mức khung cảnh 3.1.2 Biểu đồ phân cấp chức Dựa vào phân tích yêu cầu quy trình trên, ta có biểu đồ phân cấp chức cho khối thành phần hệ thống sau: - Biểu đồ phân cấp chức CA Operator CA Oprerator Giao dịch với CA Giao dịch với RA Cấp chứng thư số Cấp chứng số Nhận yêu cầu Nhận yêu cầu Trả chứng Lấy chứng Hủy chứng số Hủy chứng số Nhận yêu cầu Nhận yêu cầu Trả lời Cập nhật hủy Cấp lại chứng Cấp lại chứng Hủy chứng Hủy Cấp chứng Cập nhật CSDL Hình 3.2: Biểu đồ phân cấp chức CA Operator 49 - Giao dịch với RA: + Cấp chứng mới: nhận yêu cầu từ RA, chấp chứng chỉ, ghi chứng trả lại cho RA + Hủy chứng số: nhận yêu cầu từ RA, đánh dấu hủy cập nhật vào sở liệu, trả lời RA + Cấp lại chứng số: hủy chứng số cũ, cấp lại chứng số Giao tiếp với CA: + Cấp chứng mới: nhận yêu cầu từ CA (submit request thông qua giao diện web) Lấy chứng số từ sở liệu CA, ghi file trả lại cho RA + Hủy chứng số: cập nhật vào sở liệu hủy bỏ chứng số + Cấp lại chứng số: Trước tiên hủy chứng số cũ cấp lại chứng số b Biểu đồ phân cấp chức RA: RA có chức biểu đồ sau: RA Giao tiếp với CA Setup hệ thống Sử dụng dịch vụ chứng số Cấp chứng Nhận yêu cầu Nhận yêu cầu Trả chứng Nhận yêu cầu Trả chứng Trả chứng Hủy chứng Nhận yêu cầu Trả lời Cấp lại chứng Hủy chứng Cấp chứng Hình 3.3: Biểu đồ phân cấp chức RA 50 Giao tiếp với CA Operator: + Cấp chứng mới: gửi thông tin xin cấp chứng lên cho CA Operator, nhận chứng (có thể trao đổi trực tiếp CA Operator qua hệ thống thứ ba - hệ thống phát hành thẻ lưu chứng số) + Hủy chứng số: tạo yêu cầu hủy chứng số, gửi lên cho CA Operator nhận lại kết từ CA Operator + Cấp lại chứng số: bao gồm hai thao tác hủy chứng cũ cấp chứng Setup hệ thống: + Kiểm tra đường truyền, giao tiếp với CA Operator, với ứng dụng người dùng + Kết nối với CA Operator: offline, cần ký lên thông tin gửi cho CA Operator xác thực thông tin nhận từ CA Operator + Kết nối với ứng dụng: mở cổng cho ứng dụng truy cập sử dụng dịch vụ chứng số Cung cấp dịch vụ sử dụng chứng số: + Xác thực chứng số: Kiểm tra chứng số có hệ thống hiệu lực hay không + Download chứng số: cho phép ứng dụng download chứng số người dùng để thực giao dịch điện tử 51 c Biểu đồ phân cấp chức Application User Application User Giao tiếp với RA Ứng dụng thực tiễn người dùng Cấp chứng số Mã hóa Gửi yêu cầu cấp thông tin Ký số Nhận chứng Giao dịch (văn bản, thương Hủy chứng số mại điện tử, …) Gửi yêu cầu hủy Nhận thông tin trả lời Cấp lại chứng Hủy chứng Cấp chứng Hình 3.4: Biểu đồ phân cấp chức Ứng dụng người dùng Giao tiếp với RA: + Cấp chứng số mới: Gửi yêu cầu cấp chứng số (submit request), sau nhận thông tin phản hồi từ RA để cung cấp thông tin cá nhân RA yêu cầu Nhận trả lời, chứng từ RA + Hủy chứng số: gửi yêu cầu hủy chứng số đợi trả lời RA + Cấp lại chứng số: Gửi yêu cầu cấp lại chứng số cho RA, cung cấp thông tin RA yêu cầu nhận trả lời, chứng số từ RA Ứng dụng thực tiễn người dùng: 52 Người dùng chứng số thực thể cuối hệ thống, sử dụng trực tiếp chứng số vào ứng dụng thực tiễn (mã hóa thông điệp, chữ ký số, xử lý văn bản, giao dịch thương mại điện tử,…) 3.2 Phân tích thiết kế xây dựng chương trình ứng dụng Hệ thống xây dựng nhằm mục đích ứng dụng chứng số vào soạn thảo gửi văn quan doanh nghiệp đảm bảo tính xác thực kiểm tra tính toàn vẹn liệu Để sử dụng hệ thống người sử dụng cấp chứng số từ RA, chứng số bao gồm thông tin người dùng, khóa bí mật khóa công khai để sử dụng việc ký tài liệu gửi Khi hai người dùng hệ thống tham gia vào giao dịch thông điệp có sử dụng chữ ký số Cụ thể A B: A gửi cho B thông điệp M (văn bản), A đồng thời dùng chứng thư số để tạo chữ ký số Chính xác A dùng khóa riêng Private key A (nằm chứng số A cấp phát) để ký lên M tạo chữ ký số tương ứng kèm theo thông điệp M Cả M, chữ ký số kèm theo kết mã hóa MD5 gửi cho B Khi B nhận file ký B muốn kiểm tra chữ ký có không trước tiên, hệ thống tách nội dung file ký thông tin liên quan tới chữ kí Tiếp theo B dùng dịch vụ hệ thống cung cấp, kết nối đến chức chứng thực để xác định chứng có hợp lệ hay không: B dùng khóa công khai A để kiểm tra lại chữ ký file M để xác thực xem có phải A ký chữ ký không Đồng thời sử dụng chức tóm lược tin MD5 để kiểm tra tính toàn vẹn file Nếu chứng không hợp lệ M không toàn vẹn chữ ký A kết việc xác thực biết Trái lại Trái lại chữ ký hợp lệ file M không bị thay đổi đường truyền 53 3.2.1 Phân tích thiết kế thành phần chương trình Chương trình thành phần ứng dụng thực tiễn người dùng, chương trình cần phải hoàn thành nhiệm vụ sau: - Giao tiếp với RA Gửi thông tin cấp chứng số đến RA (Chức nhận chứng số từ RA không xây dựng đề tài không xây dựng chương trình hoạt động RA, nên coi việc nhận chứng số từ RA theo phương pháp phân phối cá nhân với chế chuyển giao tay, chứng lưu thiết bị lưu trữ: USB, CD,…) Sử dụng chứng số vào thao tác với văn bản: + Mã hóa liệu văn + Ký số văn + Xác thực văn a Xây dựng kịch chương trình cài đặt - Biểu đồ UseCase: Hình 3.5: Biểu đồ Usercase chương trình xây dựng 54 - Biểu đồ biểu diễn trình ký: Hình 3.6: Biểu đồ trình tự chức ký văn Hình 3.7: Biểu đồ cộng tác chức ký văn 55 - Biểu đồ biểu diễn trình mã hóa MD5 liệu văn Hình 3.8: Biểu đồ trình tự chức mã hóa văn Hình 3.9: Biểu đồ cộng tác chức mã hóa văn 56 - Biểu đồ biểu diễn trình xác thực văn Hình 3.10: Biểu đồ trình tự chức xác thực Hình 3.11: Biểu đồ cộng tác chức xác thực 57 3.2.2 Demo cách sử dụng hệ thống Chức đăng nhập hệ thống Hình 3.12: Form Đăng nhập hệ thống Người sử dụng phải đăng nhập vào để bắt đầu chương trình Với User password người quản trị cấp Để sử dụng chạy chương trình thực đồ án ta nhập User: chứng số password: “123456” Chức soạn thảo văn bản: Hình 3.13: Form Nhập văn 58 Chức soạn thảo văn cho phép người sử dụng nhập văn trực tiếp để tiếp tục thực mục đích gửi văn hay xác thực văn Chức gửi văn Hình 3.14: Form gửi văn Để gửi văn cần nhập đầy đủ thông tin: khóa mã hóa, địa chỉ, thông tin chủ khoản (User, password), sau thực mã hóa MD5 ký văn trước gửi 59 Chức xác thực văn Hình 3.15: Form Xác thực văn Chức hệ thống giúp ta kiểm tra kết tính toàn vẹn liệu cách so sánh hai kết mã hóa MD5 Nhập thông tin tạo chứng số Với chứng số cấp phát cho người sử dụng người quản trị cần nhập đầy đủ thông tin người dùng lưu trữ vào Cơ sở liệu trước cấp phát chứng Khóa công khai khóa bí mật nhập trực tiếp chọn chức tạo khóa để chương trình tự động nhập khóa 60 Hình 3.16: Form Nhập thông tin tạo chứng số Lưu trữ sở liệu chứng số Hình 3.17: Form Lưu trữ sở liệu chứng số 61