Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
1,46 MB
Nội dung
LỜI CAM ĐOAN Em xin cam đoan: Bản khóa luận tốt nghiệp công trình nghiên cứu thực cá nhân, thực dựa sở nghiên cứu lý thuyết, kiến thức chuyên ngành hướng dẫn Thạc sỹ Trần Tuấn Vinh Các chương trình, kết luận nghiên cứu trình bày khóa luận trung thực ghi rõ nguồn gốc Một lần em xin khẳng định trung thực lời cam đoan Sinh viên thực Nguyễn Đức Linh LỜI CẢM ƠN Lời em muốn nói em xin chân thành cảm ơn hướng dẫn tận tình thầy Trần Tuấn Vinh, khoa Công nghệ thông tin Trường Đại học sư phạm Hà Nội Trong suốt thời gian thực khóa luận, bận rộn với công việc thầy dành nhiều thời gian tâm huyết việc hướng dẫn em Thầy cung cấp cho em nhiều hiểu biết lĩnh vực em bắt đầu bước vào thực khóa luận Trong trình thực khóa luận thầy định hướng, góp ý sửa chữa chỗ sai giúp em không bị lạc lối kiến thức mênh mông Cho đến hôm nay, khóa luận em hoàn thành, nhờ nhắc nhở, đôn đốc, giúp đỡ nhiệt tình thầy Em xin chân thành cám ơn thầy cô khoa Công nghệ thông tin, thầy cô trường giảng dạy, giúp đỡ chúng em năm học qua Chính thầy cô xây dựng cho chúng em kiến thức tảng kiến thức chuyên môn để em hoàn thành khóa luận công việc sau Em xin chân thành cảm ơn Sinh viên thực Nguyễn Đức Linh MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG 1: CƠ SỞ MẬT MÃ HỌC 1.1 Mật mã khoá bí mật 1.1.1 Giới thiệu mật mã khoá bí mật khái niệm có liên quan 1.1.2 Một vài thuật toán sử dụng mật mã khoá đối xứng 1.1.2.1 DES 1.1.2.2 IDEA 1.1.2.3 Triple DES 1.1.2.4 CAST-128 1.1.2.5 AES…………………………………………………… … 1.2 Mật mã khoá công khai 1.2.1 Khái niệm 1.2.2 Các thuật toán sử dụng mật mã khoá công khai 1.2.2.1 RSA 1.2.2.2 Phương thức trao đổi khoá Diffie Hellman 1.3 Chữ ký điện tử 1.3.1 Tổng quan chữ ký điện tử 1.3.2 Quy trình sử dụng chữ ký điện tử 1.3.3 Một số sơ đồ chữ ký điện tử phổ biến 11 1.4 Hàm hash 24 1.4.1 Khái niệm hàm hash .24 1.4.2 Tóm lược thông báo 24 1.5 Hàm băm kết hợp hàm băm vào chữ ký điện tử 25 1.6 Cài đặt minh họa sơ đồ ký số RSA kết hợp băm SHA 25 CHƯƠNG 2: TỔNG QUAN VỀ HẠ TẦNG KHÓA CÔNG KHAI - PKI .32 2.1 Lịch sử phát triển PKI ………………… ……………………………… .32 2.2.Tình hình PKI Việt Nam 34 2.3 Khái niệm PKI 36 2.4 Các khái niệm PKI 38 2.4.1 Chứng 38 2.4.2 Kho chứng 40 2.4.3 Thu hồi chứng 40 2.4.4 Công bố gửi thông báo thu hồi chứng 41 2.4.5 Sao lưu dự phòng khóa 42 2.4.6 Cập nhật khóa tự động 42 2.4.7 Lịch sử khóa 43 2.4.8 Chứng thực chéo 43 2.4.9 Hỗ trợ chống chối bỏ 43 2.4.10 Tem thời gian 44 2.4.11 Phần mềm phía người dùng 44 2.4.12 Chính sách chứng 45 2.5 Các thành phần hệ thống PKI 45 2.5.1 Tổ chức chứng thực (Certification Authority) 46 2.5.2 Trung tâm đăng ký (Registration Authorites) 47 2.5.3 Thực thể cuối (End entity) 47 2.5.4 Hệ thống lưu trữ (Repositories) 48 2.6 Chức PKI 48 2.6.1 Chứng thực (Certification) 48 2.6.2 Thẩm tra (Validation) 49 2.6.3 Một số chức khác 49 2.7 Mục tiêu PKI 53 CHƯƠNG 3: XÂY DỰNG HỆ THỐNG PKI VỚI OPENCA 55 3.1 OpenCA 55 3.1.1 Giới thiệu OpenCA 55 3.1.2 Mô hình hệ thống PKI với OpenCA 56 3.1.2.1 RootCA 56 3.1.2.2 Khởi tạo CA 57 3.1.2.3 Khởi tạo chứng cho người quản trị 62 3.1.3 SubCA 67 3.1.4 RA 67 3.2 Chữ ký điện tử 68 KẾT LUẬN 70 TÀI LIỆU THAM KHẢO 71 LỜI NÓI ĐẦU Ngày nay, việc giao tiếp qua mạng Internet trở thành nhu cầu cấp thiết Các thông tin truyền mạng quan trọng, mã số tài khoản, thông tin mật Tuy nhiên, với thủ đoạn tinh vi, nguy bị ăn cắp thông tin qua mạng ngày gia tăng Hiện giao tiếp qua Internet chủ yếu dựa vào giao thức TCP/IP Đây giao thức cho phép thông tin gửi từ máy tính tới máy tính khác thông qua loạt máy trung gian mạng riêng biệt Chính điều tạo hội cho kẻ trộm công nghệ cao thực hành động phi pháp Các thông tin truyền mạng bị nghe trộm (Ravesdropping), giả mạo (Tampering), mạo danh (Impersonation) Các biện pháp bảo mật nay, chẳng hạn dùng mật khẩu, không đảm bảo bị nghe trộm bị dò nhanh chóng Do vậy, thông tin truyền Internet ngày có xu hướng mã hóa để bảo mật Trước truyền qua mạng Internet, người gửi mã hóa thông tin, trình truyền, dù có “chặn” thông tin này, kẻ trộm đọc bị mã hóa Khi tới đích, người nhận sử dụng công cụ đặc biệt để giải mã Phương pháp mã hóa bảo mật phổ biến giới áp dụng chứng số (Digital Certificate) Với chứng số, người sử dụng mã hóa thông tin cách hiệu quả, chống giả mạo, xác thực, chống chối cãi nguồn gốc Một cách mã hóa liệu đảm bảo an toàn mã hóa khóa công khai Do đó, em chọn đề tài nghiên cứu “Tìm hiểu hạ tầng khóa công khai PKI xây dựng ứng dụng” để làm rõ vấn đề Để đạt thành ngày hôm nay, em xin chân thành cảm ơn thầy cô giáo dìu dắt truyền đạt kiến thức cho chúng em, đặc biệt thầy giáo Trần Tuấn Vinh nhiệt tình giúp đỡ để em hoàn thành tốt đề tài Trong trình thực đề tài không tránh khỏi thiếu sót, kính mong bảo đóng góp nhiệt tình thầy cô bạn để đề tài nghiên cứu hoàn thiện tốt Chương CƠ SỞ MẬT MÃ HỌC Mật mã sử dụng từ lâu đời 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 Mật mã tồn hàng nghìn năm lịch sử sử dụng rộng rãi để giữ bí mật truyền tin đặc biệt lĩnh vực quân sự, trị, an ninh quốc phòng Mật mã chia thành hai loại mật mã khóa bí mật (hay gọi mật mã đối xứng) mật mã khóa công khai (hay gọi mật mã phi đối xứng) Để truyền tin sử dụng mật mã hai bên truyền tin phải có khóa Một khóa mã hóa 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ã Mỗi khóa khác tạo văn mã hóa khác ta không chọn khóa mở liệu mã hóa, cho dù biết mã hóa văn dùng thuật toán Sử dụng khóa phức tạp, mã hóa mạnh Việc chuyển đổi từ tin ban đầu thành tin mã hoá gọi mã hoá, chuyển đổi ngược lại từ tin mã hoá thành tin ban đầu gọi giải mã Bản tin ban đầu gọi rõ, tin ban đầu mã hoá trở thành mã Toàn chế bí mật gọi mật mã 1.1 Mật mã khoá bí mật 1.1.1 Giới thiệu mật mã khoá bí mật khái niệm có liên quan Trong mật mã đối xứng bên tham gia liên lạc sử dụng khóa để mã hóa giải mã Trước truyền tin, hai thực thể A B thỏa thuận với khóa dùng chung (K) Thực thể A dùng khóa để mã hóa tin (eK) sau gửi cho thực thể B Thực thể B dùng khóa K, thực phép giải mã (dK) để giải mã mã nhận Khóa bí mật phải giữ bí mật 1.1.2 Một vài thuật toán sử dụng mật mã khoá đối xứng 1.1.2.1 DES Hệ mật DES xây dựng Mỹ năm 70 theo yêu cầu Văn phòng Quốc Gia chuẩn thẩm định an ninh quốc gia DES kết hợp hai phương pháp thay chuyển dịch DES mật mã khối Độ dài khối 64 bit Khoá dùng DES có độ dài tổng thể 64 bit, nhiên có 56 bit thực dùng, bit lại dùng cho việc kiểm tra Đây thuật toán mật mã sử dụng rộng rãi 1.1.2.2 IDEA IDEA thuật toán mã hoá khối IDEA tao thác khối 64 bit, mã khối 64bit plaintext thành khối 64bit ciphertext Độ dài khoá khoá dùng thuật toán IDEA 128 bit 1.1.2.3 Triple DES 3DES (Triple DES), thuật toán mã hóa khối khối thông tin 64 bit mã hóa lần thuật toán mã hóa DES với khoá khác Do đó, chiều dài khóa mã lớn độ an toàn cao so với DES 3DES dùng khóa khác để mã hóa liệu Bộ xử lý thực bước sau: Khóa dùng để mã hóa liệu Sau đó, khóa thứ hai dùng để giải mã liệu vừa mã hóa Cuối cùng, khóa thứ ba mã hóa lần thứ hai Toàn trình xử lý 3DES tạo thành thuật giải có độ an toàn cao Nhưng thuật giải phức tạp nên thời gian thực lâu hơn, gấp lần so với phương pháp DES 1.1.2.4 CAST-128 Là thuật toán mật mã đặt tên theo tên người phát triển Carlisle Adams Stafford Tavares Chiều dài khoá 128 bit 1.1.2.5 AES AES thuật toán mã hoá khối AES làm việc với khối liệu 128 bít khóa có độ dài 128, 192 256 bit Hình 1: Mật mã khoá bí mật 1.2 Mật mã khoá công khai 1.2.1 Khái niệm Mật mã khóa công khai dạng mật mã cho phép người sử dụng trao đổi thông tin mật mà không cần phải trao đổi khóa bí mật trước Trong mật mã khóa công khai sử dụng cặp khóa khóa công khai/ khóa riêng Khóa công khai dùng để mã hóa khóa riêng dùng để giải mã Điều quan trọng hệ thống tìm khóa bí mật biết khóa công khai Hình 2: Mật mã khoá công khai 1.2.2 Các thuật toán sử dụng mật mã khoá công khai 1.2.2.1 RSA Thuật toán RSA Ron Rivest, Adi Shamir Len Adleman mô tả lần vào năm 1977 Học viện Công nghệ Massachusetts (MIT) RSA thuật toán mã hóa khóa công khai Thuật toán phù hợp với việc tạo chữ ký điện tử đồng thời với việc mã hóa Nó đánh dấu tiến vượt bậc lĩnh vực mật mã việc sử dụng khóa công khai RSA sử dụng phổ biến thương mại điện tử cho đảm bảo an toàn với điều kiện độ dài khóa đủ lớn Độ an toàn hệ thống RSA dựa vấn đề toán học: toán phân tích thừa số nguyên tố số nguyên lớn toán RSA RSA có tốc độ thực chậm đáng kể so với DES thuật toán mã hóa đối xứng khác Trên thực tế, người ta sử dụng thuật toán mã hóa đối xứng để mã hóa văn cần gửi sử dụng RSA để mã hóa khóa để giải mã (thông thường khóa ngắn nhiều so với văn bản) 1.2.2.2 Phương thức trao đổi khoá Diffie Hellman Phương thức phát minh Whitfield Diffie Matty Hellman Standford Đây sơ đồ khoá công khai Tuy nhiên, sơ đồ mã hoá khoá công khai thực sự, mà dùng cho trao đổi khóa Các khoá bí mật trao đổi cách sử dụng trạm trung gian riêng tin cậy Phương pháp cho phép khoá bí mật truyền an toàn thông qua môi trường không bảo mật Trao đổi khoá Diffie-Hemall dựa tính hiệu toán logarit rời rạc Tính bảo mật trao đổi khoá Diffie-Hellman nằm chỗ: tính hàm mũ modulo số nguyên tố dễ dàng tính logarit rời rạc khó 1.3 Chữ ký điện tử 1.3.1 Tổng quan chữ ký điện tử Trong sống hàng ngày, ta cần dùng chữ ký để xác nhận văn tài liệu dùng dấu với giá trị pháp lý cao kèm với chữ ký Cùng với phát triển nhanh chóng công nghệ thông tin, văn tài liệu lưu dạng số, dễ dàng chép, sửa đổi Nếu ta sử dụng hình thức chữ ký truyền thống dễ dàng bị giả mạo chữ ký Vậy để ký vào văn bản, tài liệu số vậy? 3.1.2 Mô hình hệ thống PKI với OpenCA Trong báo cáo em xây dựng hệ thống PKI với đầy đủ thànhphần như: RootCA, SubCA, RA Repositories 3.1.2.1 RootCA RootCA xây dựng hệ điều hành CentOS, với thành phần cần thiếtnhư: apache, perl, openca-tools, openca-base, số thư viện cần thiết cho việc cài đặt Khi cài đặt gói openca-base thực chế độ install-offline Sau cài đặt xong RootCA Chúng ta truy cập vào trang web để cấu hình quản lý RootCA theo địa https://rootca.actvn.net/pki/ca Hình 8: Giao diện quản lý cấu hình RootCA Trong mục PKI Init & Config thực việc khởi tạo sở liệu, khởi tạo khóa riêng cho CA, tạo chứng CA , … 56 Hình 9: bước thiết lập CA 3.1.2.2 Khởi tạo CA Hình 10: Khởi tạo sở liệu, khóa CA, • Khởi tạo sở liệu: Bước tạo sở liệu dựa vào tham số thiết lập trình cài đặt openca Nếu có sở liệu trước ta chọn Upgrade Database để nâng cấp sở liệu, Re-init Database để khởi tạo lại sở liệu (Lưu ý: Nếu chọn thiết lập làm sở liệu có) 57 • Tạo khóa bí mật cho CA: Bước thực sinh khóa bí mật cho CA Để thực việc sinh khóa bí mật phải chọn thuật toán khóa, thuật toán mã hóa khóa độ dài khóa Hình 11: Tạo khóa bí mật cho CA Sau chọn xong thuật toán độ dài khóa, hệ thống sinh khóa bí mật cho CA hình Hoặc xem lại khóa lưu máy theo đường dẫn sau: /opt/OpenCA/var/openca/crypto/keys/cakey.pem ( /opt/OpenCA/ thư mục cài đặt OpenCA thiết lập trình cài đặt) • Tạo yêu cầu cấp chứng cho CA: Sau tạo khóa bí mật cho CA xong, tạo yêu cầu xin cấp chứng cho CA 58 Hình 12: Tạo yêu cầu cấp chứng cho CA Hình 13: Nội dung yêu cầu chứng 59 Hình 14: Lựa chọn Self Signed CA để tự chứng thực CA • Serial Number: số seri chứng Do chứng cấp cho CA nên để Serial Number 00 • Certificate Validity: Thời hạn sử dụng chứng chỉ, mặc định 730 ngày (2 năm) Chúng ta thay đổi giá trị tùy theo nhu cầu sử dụng hệ thống • Extensions: Phần mở rộng, để ký chứng cho CA, lựa chọn Self Signed CA Với lựa chọn hệ thống tự ký vào yêu cầu để tạo chứng CA cho Sau lựa chọn xong hệ thống tạo chứng hình Chúng ta xem lại chứng tại: /opt/OpenCA/var/openca/crypto/certs/00.pem 60 Hình 15: Chứng CA • Xây dựng lại chuỗi chứng CA: Sau xây dựng xong SubCA thêm chứng SubCA vào thư mục: /opt/OpenCA/var/openca/crypto/chain/ chọn Rebuild CA Chain Hình 16: Xây dựng lại chuỗi chứng CA 3.1.2.3 Khởi tạo chứng cho người quản trị Sau thiết lập CA xong, thực việc khởi tạo chứng cho người dùng (khuyến cáo nên khởi tạo cho người quản trị) 61 Hình 17: Tạo chứng cho người quản trị Hình 18: Khai báo thông tin 62 Hình 19: Khai báo chi tiết chứng Lựa chọn chứng theo mẫu User Mức độ bảo mật, chế độ sinh khóa Hình 20: Khai báo mã PIN 63 Chọn lược đồ ký, độ mạnh khóa đặt mã PIN Mã PIN quan trọng, chứng có mã PIN Hình 21: Thỏa thuận người dùng Hình 22: Tạo yêu cầu 64 Sau tạo xong yêu cầu, phải vào mục Issue the certificate để chấp thuận yêu cầu Trong sửa lại yêu cầu, tạo chứng xóa bỏ yêu cầu Hình 23: Ký chứng Hình 24: Chứng người dùng 65 Sau Issue certificate lấy chứng máy cách chọn mục Handle the certificate Tại thấy chứng cấp cho người dùng có serial number 53:CF:7A:A8:D6:E7:1E:42:3D:01( chứng lưu hệ thống /opt/OpenCA/var/openca/crypto/certs/53cf7aa8d6e71e423d01.pem) Chọn More info để xem chi tiết thông tin chứng lấy chứng máy người dùng Hình 25: Download chứng máy 3.1.3 SubCA Quá trình cài đặt SubCA tương tự cài đặt RootCA Chúng ta phải tạo khóa bí mật cho SubCA Khởi tạo yêu cầu cấp phát chứng Yêu cầu gửi cho RootCA để RootCA ký chứng thực sub CA Chứng sau ký xong gửi trả lại cho SubCA 3.1.4 RA Quá trình cài đặt RA tương tự RootCA SubCA Có điểm khác cài đặt gói openca-base chọn chế độ cài đặt installonline Sau cài đặt xong RA Người dùng đăng ký cấp chứng thư trực tiếp RA, sau yêu cầu cấp chứng thư gửi đến cho SubCA để SubCA ký Các chứng thư sau SubCA ký xong gửi trả lại cho RA để người dùng lấy về, đồng thời chứng thư công bố hệ thống kho lưu trữ (repositories) 66 3.2 Chữ ký điện tử - Giao diện chương trình: Ký: Hình 26: Giao diện ký văn 67 Xác nhận chữ ký: Hình 27: Giao diện xác nhận chữ ký 68 KẾT LUẬN Những kết đạt được: Trong thời gian thực đề tài, em nghiên cứu tìm hiểu hệ thống PKI thu số kết sau: - Về lý thuyết tìm hiểu nắm vững vấn đề sau: • Mật mã hóa khóa công khai • Chữ ký số • Các kiến thức sở hạ tầng khóa công khai - PKI (một mô hình sử dụng nhiều cho việc truyền thông qua mạng Internet gửi thư an toàn, chứng thực web an toàn, … ) - Về mặt thực nghiệm thực kết sau: + Với OpenCA • Xây dựng hệ thống PKI với OpenCA • Thử nghiệm xin cấp phát chứng thư cấp phát chứng thư • Lưu trữ chứng thư kho lưu trữ repositories Do giới hạn thời gian, sở vật chất Bên cạnh mặt đạt số mặt hạn chế: • Mô hình nhỏ phục vụ cho việc nghiên cứu, khả đáp ứng cho doanh nghiệp vừa nhỏ • Chưa nghiên cứu việc ứng dụng thẻ token, smart card, … + Với Chữ ký điện tử • Đã cài đặt thành công chương trình chữ ký điện tử Do lực thời gian có hạn nên trình nghiên cứu nhiều phần chưa thực chương trình chưa thực với số nguyên tố lớn, hàm băm sử dụng chương trình chưa cài đặt thuật toán • Chương trình cài đặt chưa có tính ứng dụng vào thực tế Hướng phát triển: Có thể nghiên cứu sâu vấn đề đưa thực hoàn thiện chức chương trình để ứng dụng vào đời sống, phục vụ nhu cầu mục đích người sử dụng 69 TÀI LIỆU THAM KHẢO [1] Giáo trình: An toàn bảo mật thông tin - ĐH Hàng Hải [2] Phan Đình Diệu - Lý thuyết mật mã an toàn thông tin - ĐH Quốc gia HN [3] Phan Huy Khánh, Hồ Phan Hiếu -Tạp chí khoa học công nghệ, Giải pháp ứng dụng chữ ký điện tử trình gửi nhận văn bản, Đại Học Đà Nẵng số 5(34) (2009) [4] Nguyễn Tiến Hoài Nam, Nguyễn Văn Huy, Hà Thị Hương - Báo cáo “Hội nghị sinh viên nghiên cứu khoa học” lần 6, Đại Học Đà Nẵng ,(2008) - Nghiên cứu kỹ thuật mã hóa công khai, cài đặt thuật toán mã hóa giải mã kỹ thuật mã hóa công khai [5] Th.s Nguyễn Văn Khang - Bài giảng “Truyền bảo mật thông tin Khoa Tin Học - ĐHSP Huế) [6] http://vi.wikipedia.org/wiki/RSA_%28m%C3%A3_h%C3%B3a%29#L E1.BB.8Bch_s.E1.BB.AD [7].http://vi.wikipedia.org/wiki/Ch%E1%BB%AF_k%C3%BD_%C4%91i%E 1%BB %87n_t%E1%BB%AD#L.E1.BB.8Bch_s.E1.BB.AD [8].http://vi.wikipedia.org/wiki/Thu%E1%BA%ADt_to%C3%A1n_kh%C3% B3a_%C4% 91%E1%BB%91i_x%E1%BB%A9ng 70 [...]... khóa công khai Hệ thống mã hóa này gồm hai khóa, khóa bí mật và khóa công khai Mỗi chủ thể có một cặp khóa như vậy, chủ thể đó sẽ giữ khóa bí mật, còn khóa công khai của chủ thể sẽ được đưa ra công cộng để bất kỳ ai cũng có thể biết Nguyên tắc của hệ thống mã hóa khóa công khai đó là, nếu mã hóa bằng khóa bí mật thì chỉ khóa công khai mới giải mã đúng thông tin được, và ngược lại, nếu mã hóa bằng khóa. .. chứng thực khóa công khai (digital certificate) hoặc các thành phần của hạ tầng khóa công khai (public key infrastructure - PKI) [6] * Tấn công dựa trên thời gian Vào năm 1995, Paul Kocher mô tả một dạng tấn công mới lên RSA: Nếu kẻ tấn công nắm đủ thông tin về phần cứng thực hiện mã hóa và xác định được thời gian giải mã đối với một số bản mã lựa chọn thì có thể nhanh chóng tìm ra khóa d Dạng tấn công. .. cách khác: Tìm số tự nhiên x sao cho d=(x(p-1)(q-1)+1)/e cũng là số tự nhiên Khi đó sử dụng giá trị: d mod (p-1)(q-1) Từ bước 3 sử dụng: £=BCNN(p-1)(q-1) thay cho Φ(n)=(p-1)(q-1) [5] * Khóa công khai bao gồm: n, môđun e, số mũ công khai * Khóa bí mật bao gồm: n, môđun, xuất hiện cả trong khóa công khai và khóa bí mật d, số mũ bí mật - Quy trình thực hiện ký và xác nhận văn bản Dựa vào ưu điểm... tr117] - Các dạng tấn công * Phân phối khóa Cũng giống như các thuật toán mã hóa khác, cách thức phân phối khóa công khai là một trong những yếu tố quyết định đối với độ an toàn của RSA Quá trình phân phối khóa cần chống lại được tấn công ứng giữa (man-in-the16 middle attack) Giả sử kẻ xấu (C) có thể gửi cho Người gửi thông tin(A) một khóa bất kỳ và khiến (A) tin rằng đó là khóa (công khai) của Đối tác(B)... chứng chỉ số của X có hợp lệ không, phần mềm sẽ kết hợp chứng chỉ số của nhà cung cấp CA và chứng chỉ của X để thông báo cho A về tính xác thực của đối tượng X Nếu phần mềm kiểm tra và thấy chứng chỉ của X là phù hợp với chứng chỉ CA, thì A có thể tin tưởng vào X Cơ chế chữ ký điện tử và chứng chỉ số sử dụng các thuật toán mã hóa đảm bảo không thể giả mạo CA để cấp chứng chỉ không hợp pháp, mọi chứng... chữ ký ElGammal Nó được công bố tại hội nghị Tiêu chuẩn xử lý thông tin Liên Bang (FIPS) vào 19/05/1994 và trở thành chuẩn vào 01/12/1994 DSS sử dụng một khoá công khai để kiểm tra tính toàn vẹn của dữ liệu nhận được và đồng nhất với dữ liệu của người gửi DSS cũng có thể sử dụng bởi người thứ ba để xác định tính 21 xác thực của chữ ký và dữ liệu trong nó Đầu tiên chúng ta hãy tìm hiểu động cơ của sự thay... đổi giữa (A) và (B) Khi đó, (C) sẽ gửi cho (A) khóa công khai của chính mình (mà (A) nghĩ rằng đó là khóa của (B)) Sau đó, (C) đọc tất cả văn bản mã hóa do (A) gửi, giải mã với khóa bí mật của mình, giữ 1 bản copy đồng thời mã hóa bằng khóa công khai của (B) và gửi cho (B) Về nguyên tắc, cả (A) và (B) đều không phát hiện ra sự can thiệp của người thứ ba Các phương pháp chống lại dạng tấn công này thường... công khai Giả sử A muốn gửi một bức điện đã được mã hoá và đã được ký đến cho B Với bản 14 rõ x cho trước, A sẽ tính toán chữ ký của mình y = SigA(m) và sau đó mã hoá cả x và y sử dụng khoá công khai eB của B, kết quả nhận được là z = eB(m, c) Bản mã z sẽ được gửi tới B, khi B nhận được z, đầu tiên anh ta giải mã với hàm giải mã dB của mình để nhận được (m, c) Sau đó anh ta dùng hàm xác minh công khai. .. tìm ra số mũ bí mật d từ khóa công khai và có thể giải mã theo đúng quy trình của thuật toán Nếu kẻ tấn công tìm được 2 số nguyên tố p và q sao cho: n = pq thì có thể dễ dàng tìm được giá trị (p-1)(q-1) và qua đó xác định d từ e Chưa có một phương pháp nào được tìm ra trên máy tính để giải bài toán này trong thời gian đa thức (polynomial-time) Tuy nhiên người ta cũng chưa chứng minh được điều ngược... trọng trong hệ thống chữ ký điện tử Trong trường hợp ví dụ trên, A có một cặp khóa để có thể ký trên văn bản, tài liệu số Tương tự như vậy, B hay bất cứ ai sử dụng chữ ký điện tử, đều có một cặp khóa như vậy Khóa bí mật được giữ riêng, còn khóa công khai được đưa ra công cộng Vậy vấn đề đặt ra là làm thế nào để biết một khóa công khai thuộc về A, B hay một người nào đó? Hơn nữa, giả sử trong môi trường ... khóa công khai dạng mật mã cho phép người sử dụng trao đổi thông tin mật mà không cần phải trao đổi khóa bí mật trước Trong mật mã khóa công khai sử dụng cặp khóa khóa công khai/ khóa riêng Khóa. .. Khóa công khai dùng để mã hóa khóa riêng dùng để giải mã Điều quan trọng hệ thống tìm khóa bí mật biết khóa công khai Hình 2: Mật mã khoá công khai 1.2.2 Các thuật toán sử dụng mật mã khoá công khai. .. mật, khóa công khai chủ thể đưa công cộng để biết Nguyên tắc hệ thống mã hóa khóa công khai là, mã hóa khóa bí mật khóa công khai giải mã thông tin được, ngược lại, mã hóa khóa công khai, có khóa