Tiểu luận môn an toàn bảo mật thông tin: TÌM HIỂU HẠ TẦNG KHÓA CÔNG KHAI PKI

28 882 2
Tiểu luận môn an toàn bảo mật thông tin: TÌM HIỂU HẠ TẦNG KHÓA CÔNG KHAI PKI

Đ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

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN Tel (84-511) 736 949, Website: itf.ud.edu.vn, E-mail: cntt@edu.ud.vn TIỂU LUẬN MÔN HỌC AN TOÀN THÔNG TIN MẠNG NGÀNH KHOA HỌC MÁY TÍNH ĐỀ TÀI : TÌM HIỂU HẠ TẦNG KHÓA CÔNG KHAI PKI (PUBLIC KEY INFRASTRUCTURE) VÀ ỨNG DỤNG GVHD : TS Nguyễn Tấn Khôi HVTH : Trần Hữu Phước Hoàng Tiến Sơn Lớp Cao học KHMT Khóa 31 (2015 − 2017) ĐÀ NẴNG, 5/2016 MỤC LỤC Chương 1: Giới Thiệu 1.1 Hạ tầng khóa công khai (PKI) .1 1.1.1 PKI 1.1.2 Cở sở hạ tầng khóa công khai 1.2 Một vài kiến trúc công nghệ PKI hành 1.2.1 Một số ứng dụng 1.2.2 Một số hệ thống PKI Chương 2: Xây dựng hạ tầng khóa công khai(PKI), vấn đề cấp phát chứng thực số ứng dụng thương mại điện tử 2.1 Hàm băm mật mã học 2.1.1 Hàm băm 2.1.2 Hàm băm mật mã học 2.1.3 Đảm bảo tính toàn vẹn liệu .4 2.1.4 Một số hàm băm thông dụng 2.2 Mã hóa thông tin .6 2.3 Chữ ký số 2.3.1 Chữ ký số .7 2.3.2 Tạo kiểm tra chữ ký số 2.4 Chứng thực số 11 2.5 Cấu trúc phân tầng hệ thống PKI .12 2.6 Cấp phát xác thực chứng thực số 13 2.6.1 Cấp phát chứng thực số 13 2.6.2 Xác thực chứng thực số 14 2.7 Ứng dụng hạ tầng khóa công khai cấp phát chứng thực .14 2.7.1 Mã hóa 14 2.7.2 Chống giả mạo .14 2.7.3 Xác thực .14 2.7.4 Chống chối bỏ nguồn gốc 15 2.7.5 Chữ ký điện tử 15 2.7.6 Bảo mật website 15 2.7.7 Đảm bảo phần mềm .15 2.8 OpenCA hệ thống hạ tầng khóa công khai thực tế 16 2.8.1 Định nghĩa : 16 2.8.2 Đánh giá hệ OpenCA 16 2.9 Các ứng dụng PKI thực tiễn 16 2.9.1 Mô hình phân cấp thứ bậc - 16 2.9.2 Mô hình chứng thực chéo .17 2.9.3 Mô hình CA cầu nối .17 2.9.4 Các sản phẩm .17 2.9.5 Định hướng nghiên cứu phục vụ hệ thống PKI chuyên dùng Chính phủ 17 Chương 3: Triển khai cài đặt ứng dụng OpenSSL 19 3.1 Triển khai cài đặt 19 3.2 Kịch sử dụng opensl để mã hóa tin file 19 3.2.1 Mã hóa thông điệp với cú pháp 19 3.2.2 Giải mã cú pháp 20 3.2.3 Khóa công khai khóa cá nhân 20 KẾT LUẬN 22 Về mặt lý thuyết 22 Về mặt thực tiễn 22 Hướng phát triển 22 DANH MỤC TỪ VIẾT TẮT PKI Public Key Infrastructure CA Certificate Authority RSA Rivest Shamir Adleman DSA Digital Signature Algorithm MD5 Message Digest RA Registration Authority SHA Secure Hash Algorithm SHS Secure Hash Standard H Hash function RFC Request For Comments DANH MỤC HÌNH VẼ VÀ BẢNG Hình 1.1: Mô hình xây dựng PKI Hình 1.2: Sơ đồ gửi nhận tin nhắn sử dụng PKI Bảng 1.3: Bảng mô tả chi tiết hoạt động PKI Bảng 2.1 : Đặc điểm thuật toán băm SHA Bảng 2.2 : So sánh thời gian tạo khóa, tạo chữ ký xác nhận chữ ký RSA với DSA Hình 2.3 : Thời gian tạo khóa RSA DSA Hình 2.4 : Thời gian tạo chữ ký RSA DSA Hình 2.5 : Thời gian xác nhận chữ ký RSA DSA Hình 2.6 : Mô hình phân cấp Hình 3.1 : Cài đặt Opensl Hình 3.2 : Mã hóa thông điệp Hình 3.3 : Giải mã thông điệp Hình 3.4 : Tạo khóa cá nhân Hình 3.5 : Tạo khóa công khai từ khóa cá nhân Chương 1: Giới Thiệu 1.1 Hạ tầng khóa công khai (PKI) 1.1.1 PKI - PKI: viết tắt Public Key Infrastructure tức hạ tầng sở khóa công khai Là chế bên thứ (thường nhà cung cấp chứng thực số) cung cấp xác thực định danh bên tham gia vào trình trao đổi thông tin Cơ chế cho phép gán cho người sử dụng hệ thống cặp khóa công khai/khóa bí mật Trong kỷ nguyên bùng nổ công nghệ thông tin, giao dịch từ xa thông qua internet Tuy nhiên, mặt khác khó mà bảo đảm giao dịch Internet an toàn Cơ sở hạ tầng khóa công khai (PKI) đáp ứng yêu cầu cấp thiết Dựa cách sử dụng chìa khóa mật mã công cộng chữ ký điện tử, PKI khung sách, dịch vụ phần mềm mã hóa, đáp ứng nhu cầu bảo mật người sử dụng 1.1.2 Cở sở hạ tầng khóa công khai Hình 1.1: Mô hình xây dựng PKI - PKI cung cấp cặp chìa khóa, có chìa chìa khóa công khai (Public key) để sử dụng dịch vụ, chìa lại chìa khóa bí mật (Private key) mà người sử dụng phải giữ bí mật Hai chìa khóa có liên quan mật thiết đến nhau, cho thông điệp mã hóa chìa khóa mật mã công khai giải mã chìa khóa bí mật tương ứng - Ví dụ mô hình xử dụng xác thực : Giả sử có người dùng Bob Alice muốn chuyển thư điện tử cho để đảm bảo tính xác thực bảo mật họ dùng phần mềm PKI Các hoạt động mô tả hình 1.1 Hình 1.2 Sơ đồ gửi nhận tin nhắn sử dụng PKI Chi tiết hoạt động PKI mô tả qua bảng 1.3 Hành động Trạng thái hệ thống PKI Bob muốn chuyển thư điện tử đến cho Phần mềm PKI dùng chìa khóa cá Alice, với yêu cầu giao dịch phải chứng nhân Bob tạo chữ ký điện minh anh gởi nội tử cho thư dung thư không bị thay đổi Bob muốn chắn không Phần mềm PKI Bob dùng chìa Alice đọc thư khóa công cộng Alice để mã hóa thông điệp Bob Alice muốn đọc thư Bob gởi Phần mềm PKI dùng chìa khóa cá nhân Alice để để giải mã thông điệp Alice muốn kiểm chứng Bob Phần mềm PKI Alice dùng chìa gởi thông điệp nội dung thông điệp khóa công cộng Bob để kiểm không bị chỉnh sửa chứng chữ ký điện tử Bảng 1.3: Bảng mô tả chi tiết hoạt động PKI 1.2 Một vài kiến trúc công nghệ PKI hành 1.2.1 Một số ứng dụng - Mục tiêu PKI cung cấp khóa công khai xác định mối liên hệ khóa định dạng người dùng Nhờ người dùng sử dụng số ứng dụng như: + Mã hoá Email xác thực người gửi Email (OpenPGP hay S/MIME) + Mã hóa nhận thực văn (Các tiêu chuẩn Chữ ký XML* mã hoá XML* văn thể duới dạng XML) + Xác thực người dùng ứng dụng (Đăng nhập thẻ thông minh - smartcard, nhận thực người dùng SSL) + Các giao thức truyền thông an toàn dùng kỹ thuật Bootstrapping (IKE, SSL): trao đổi khóa khóa bất đối xứng, mã hóa khóa đối xứng 1.2.2 Một số hệ thống PKI - Dưới danh sách số hệ thống PKI, số nhà cung cấp chứng thực số hàng đầu (ví dụ VeriSign) không liệt kê phần mềm họ không công bố công khai: + Hệ thống quản lý chứng thực Red Hat + Cơmputer Associate eTrust PKI + Microsoft + OpenCA (Một mô hình PKI mã nguồn mở) + RSA Security + IDX-PKI + Simple CA Chương 2: Xây dựng hạ tầng khóa công khai(PKI), vấn đề cấp phát chứng thực số ứng dụng thương mại điện tử 2.1 Hàm băm mật mã học 2.1.1 Hàm băm Hàm băm (tiếng Anh: hash function) hàm sinh giá trị băm tương ứng với khối liệu (có thể chuỗi kí tự, đoạn tin nhắn ) Giá trị băm đóng vai trò gần khóa để phân biệt khối liệu, nhiên, người ta chấp nhận tượng trùng khóa hay gọi đụng độ cố gắng cải thiện giải thuật để giảm thiểu đụng độ Hàm băm thường dùng bảng băm nhằm giảm chi phí tính toán tìm khối liệu tập hợp (nhờ việc so sánh giá trị băm nhanh việc so sánh khối liệu có kích thước lớn) 2.1.2 Hàm băm mật mã học Trong ngành mật mã học, hàm băm mật mã học (tiếng Anh: Cryptographic hash function) hàm băm với số tính chất bảo mật định để phù hợp việc sử dụng nhiều ứng dụng bảo mật thông tin đa dạng, chẳng hạn chứng thực (authentication) kiểm tra tính nguyên vẹn thông điệp (message integrity) Một hàm băm nhận đầu vào xâu ký tự dài (hay thông điệp) có độ dài tùy ý tạo kết xâu ký tự có độ dài cố định, gọi tóm tắt thông điệp (message digest) chữ ký số (digital fingerprint).[4] 2.1.3 Đảm bảo tính toàn vẹn liệu Hàm băm mật mã học hàm bam có tính chất hàm chiều Từ khối liệu hay giá trị băm đầu vào đưa giá trị băm Như biết tính chất hàm chiều Một người dù bắt giá trị băm họ suy ngược lại giá trị, đoạn tin nhắn băm khởi điểm - Hàm băm thường dùng bảng băm nhằm giảm chi phí tính toán tìm khối liệu tập hợp Giá trị băm đóng vai trò gần khóa để phân biệt khối liệu Giá trị đầu vào(tin nhắn, liệu ) bị thay đổi tương ứng giá trị băm bị thay đổi Do kẻ công phá hoại, chỉnh sửa liệu server biết 2.1.4 Một số hàm băm thông dụng 2.1.4.1 Thuật toán hàm băm MD5 a Thuật toán hàm băm MD5 - MD5 (Message-Digest algorithm 5) hàm băm mật mã sử dụng phổ biến, thiết kể Giáo sư Ronald L Rivest trường MIT vào năm 1991 để thay cho hàm băm trước MD4 (1990) Là 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 Cũng hàm băm khác MD4 SHS (Secure Hash Standard), MD5 phương pháp có ưu điểm tốc độ xử lý nhanh, thích hợp với thông điệp dài cho giá trị băm dài 128 bit - Trong MD5, thông điệp ban đầu X mở rộng thành dãy bit X có độ dài bội 512 Dãy bit X gồm thành phần thứ tự sau: Dãy bit X ban đầu, bit 1, dãy d bit (d tính cho dãy X cuối bội 512), dãy 64 bit biểu diễn chiều dài thông điệp Đơn vị xử lý MD5 từ 32-bit, nên dãy bit X biểu diễn thành dãy từ X[i] 32-bit sau: X=X[0] X[l] X[2] ,X[N-1] , với N bội 16.[5] b Phương pháp MD5 có ưu điểm sau so với phương pháp MD4 - Thay có chu kỳ biến đổi MD4, MD5 bổ sung thêm chu kỳ thứ để tăng mức độ an toàn - Trong thao tác chu kỳ, MD5 sử dụng số ti phân biệt, MD4 sử dụng số chung cho thao tác chu kỳ biến đổi - Hàm G chu kỳ MD4: G(X,Y,Z) = ((X A Z) V (X A Y) V (Y AZ)) thay G(X,Y,Z) = (XAZ) V (YA(-,Z)) để giảm tính đối xứng - Mỗi bước biến đổi chu kỳ chịu ảnh hưởng kết bước biến đổi trước, làm tăng nhanh tốc độ hiệu ứng lan truyền (avalanche) - Các hệ số dịch chuyển xoay vòng chu kỳ tối ưu hóa nhằm tăng tốc độ hiệu ứng lan truyền Ngoài ra, chu kỳ sử dụng hệ số dịch chuyển khác - Lý MD5 thiết kế thay cho MD4 phân tích phương pháp MD4 không an toàn Den Boer Bosselaers điểm yếu MD4 báo đăng vào năm 1991 công xung đột tìm thấy Han Dobbertin vào năm 1996 - Tuy nhiên, nỗ lực công, phân tích nhà nghiên cứu cho thấy MD5 không an toàn cần thay thuật toán băm khác công bố Den Boer Bosselaers năm 1993; Hans Dobbertin năm 1996; nhóm tác giả Xiaoyun Wang, Dengguo Feng, Xuejia Lai, Hongbo ngày 19/8/2004; Arjen Lenstra, Xiaoyun Wang, Benne de Weger ngày 1/3/2005; Vlastimil Klima, 2.1.4.2 Chuẩn băm an toàn SHS - SHS (Secure Hash Standard) chuẩn gồm tập hợp thuật toán băm mật mã an toàn (Secure Hash Algorithm - SHA) SHA-1, SHA-224, SHA- 256, SHA-384, SHA-512 doNIST2 vàNSA3 xây dựng - Phương pháp SHA-1 (cũng SHA-0) xây dựng sở với phương pháp MD4 MD5 Tuy nhiên, phương pháp SHA-1 sử dụng hệ thống Big-endian5 thay Little-endian6 phương pháp MD4 MD5 Ngoài ra, hàm băm SHA-1 tạo thông điệp rút gọn kết có độ dài 160 bit nên thường sử dụng - Phương pháp SHA-1 giống với MD5 (cải tiến từ MD4) thông điệp tóm tắt tạo có độ dài 160 bit Dưới số điểm so sánh MD5 SHA1: + Giống MD5, SHA-1 thêm chu kỳ thứ để tăng mức độ an toàn cho thuật toán Tuy nhiên, chu kỳ SHA-1 sử dụng lại hàm f chu kỳ thứ - Để xác nhận chữ ký, người nhận thực bước sau: + Loại bỏ chữ ký < r < q < s < q không thỏa mãn + Tính w= s-1 mod q + Tính u1=( (m) x w) mod q + Tính u2 =(r x w) mod q + Tính v=( (gu1 x yu2 ) mod p) mod q + Chữ ký có hiệu lực v = r Tính đắn giải thuật chứng minh sau: + Đầu tiên, g = h(p-1)/q mod p suy gp= hp-1 -1 = 1(mod p) theo định lý Fermat nhỏ Bởi g > l q số nguyên tố nên g có bậc q + Người ký tính s = k-1 (H(m) + xr)) mod q + Như k = H (m)s-1 + xrs-1 = H (m)w+xrw (mod q) + Bởi g có bậc q nên ta có: gk =gH(m)w gxrw = gH(m)w yrw =gu1 yu2 (mod p) + Cuối cùng, tính đắn DSA suy từ: r= (gk mod p) mod q = (gu1 yu2 mod p) mod q = v - Phương pháp DSA giải vấn đề cách sử dụng chữ ký 320 bit cho văn 160 bit với phép tính thực tập có 2160 phần tử với p số nguyên tố 512 bit 2.3.2.4 Kết thử nghiệm nhận xét - So sánh RSA DSA + Để so sánh tốc độ hai thuật toán chữ ký số RSA DSA, Thử nghiệm 2.2 tiến hành ghi nhận + Thử nghiệm 2.2: DSS chuẩn ràng buộc độ dài khóa L bội số 64 512 < L < 1024 để an toàn lâu dài độ dài khóa L đề nghị 2048 3072 Do độ dài khóa thử nghiệm cho RSA DSA 576, 640, 704, 768, 832, 896, 960, 1024, 2048, 3072 (bit), ứng với độ dài khóa, cho RSA DSA phát sinh khóa, ký văn ngẫu nhiên (kích thước MB) kiểm tra chữ ký tạo Để thuận tiện so sánh, hàm băm mật mã SHA-1 chọn để sử dụng cho RSA DSA Thử nghiệm lặp lại 50.000 lần Kết nhận sau: Kích Tạo khóa (giây) thước DSA/ Tạo chữ ký (giây) (bit) 512 0,0408 0,5676 13,93 0,0351 0,0011 32,60 0,0320 0,0017 19,32 576 0,0568 0,8030 14,14 0,0361 0,0013 27,24 0,0321 0,0022 14,60 640 0,0757 1,2464 16,47 0,0371 0,0015 24,53 0,0319 0,0025 12,57 DSA RSA DSA RSA/ DSA DSA RSA/ RSA RSA RSA Xác nhận chữ ký (giây) DSA 704 0,0994 1,7948 18,06 0,0387 0,0019 20,25 0,0320 0,0031 10,16 768 0,1278 2,3668 18,52 0,0408 0,0016 25,29 0,0321 0,0040 7,94 832 0,1609 3,0526 18,97 0,0428 0,0021 20,31 0,0322 0,0044 7,34 896 0,2026 4,2369 20,92 0,0454 0,0027 16,58 0,0321 0,0050 6,36 960 0,2446 5,4622 22,33 0,0480 0,0026 18,45 0,0321 0,0061 5,29 1024 0,2734 7,1210 26,05 0,0515 0,0035 14,86 0,0318 0,0068 4,69 2048 2,4876 103,1124 41,45 0,1749 0,0124 14,16 0,0325 0,0240 1,35 3072 11,1882 508,2395 45,43 0,5056 0,0278 18,19 0,0341 0,0539 0,63 Bảng 2.2: So sánh thời gian tạo khóa, tạo chữ ký xác nhận chữ ký RSA với DSA Hình 2.3: Thời gian tạo khóa RSA DSA + Kết Thử nghiệm 2.5 cho thấy tốc độ tạo khóa RSA nhanh nhiều so với DSA kích thuớc khóa tăng lên tỷ lệ ngày gia tăng Hơn nữa, tăng kích thuớc L DSA tương ứng với hàm băm SHA có đầu lớn DSA chậm nhiều Hình 2.4 : Thời gian tạo chữ ký RSA DSA 10 + Kết Thử nghiệm 2.2 cho thấy tốc độ tạo chữ ký RSA chậm DSA tỷ lệ có xu hướng giảm kích thước khóa tăng lên Nguyên nhân số mũ khóa công khai e cố định số mũ khóa bí mật d tăng kích thước n tăng Mặt khác, phép tính chiếm thời gian nhiều quy trình ký phép lũy thừa modulo nên số mũ tăng thời gian thực tăng Tuy nhiên, kích thước khóa sử dụng phổ biến 1024 2048 nên thời gian ký lúc không vấn đề đáng lo ngại toàn quy trình 0,2 giây Hình 2.5 : Thời gian xác nhận chữ ký RSA DSA Thử nghiệm môi trường Windows XP, xử lý Pentium 4, 3.00 GHz, nhớ 512 MB + Kết Thử nghiệm 2.2 cho thấy tốc độ xác nhận chữ ký RSA không thay đổi đáng kể kích thước khóa tăng số mũ công khai e sử dụng số nhỏ (giá trị phổ biến 65537) tốc độ thực phép lũy thừa modulo (phép toán quy trình xác nhận chữ ký) tăng không nhiều Ngược lại, tốc độ xác nhận chữ ký DSA thấp RSA ngày tăng kích khóa tăng lên Nguyên nhân quy trình xác nhận chữ ký DSA gồm nhiều phép tính tốn chi phí cao (phép lũy thừa modulo phép nhân) nên kích thước khóa tăng dần điều trở thành gánh nặng Mặc khác, kích thước L chọn lớn tốc độ xác nhận chữ ký chậm Với thử nghiệm ta dễ dàng nhận thấy RSA tốt DSA mặt, đặc biệt tốc độ phát sinh khóa RSA nhanh DSA nhiều Ngoài ra, tốc độ ký xác nhận chữ ký có chậm DSA thời gian không đáng kể [8] 2.4 Chứng thực số - Trong mật mã học, chứng thực khóa công khai (còn gọi chứng thực số / chứng thực điện tử) chứng thực sử dụng chữ ký số để gắn khóa công khai với thực thể (cá nhân, máy chủ công ty ) Một chứng thực khóa công khai tiêu biểu thường bao gồm khóa công khai thông tin (tên, địa ) thực thể sở hữu khóa Chứng thực điện tử sử dụng để kiểm tra khóa công khai thuộc - CA phát hành chứng thực khóa công khai thể CA chứng nhận khóa công khai nằm chứng thực thuộc cá nhân, tổ chức, máy 11 chủ hay thực thể ghi chứng thực Nhiệm vụ CA kiểm tra tính xác thông tin liên quan tới thực thể cấp chứng thực Khi người sử dụng tin tưởng vào CA kiểm tra chữ ký số CA họ tin tưởng vào khóa công khai thực thể ghi chứng thực [9] 2.5 Cấu trúc phân tầng hệ thống PKI Hình 2.6 : Mô hình phân cấp - Mô hình tương ứng với cấu trúc phân cấp với CA gốc CA cấp CA gốc xác nhận CA cấp dưới, CA lại xác nhận CA cấp thấp Các CA cấp không cần xác nhận CA cấp - Mô hình phân cấp minh hoạ hình Trong mô hình này, thực thể giữ khoá công khai root CA kiểm tra đường dẫn chứng thư chữ ký CA gốc Đây mô hình PKI tin cậy sớm sử dụng PEM * Ưu điểm mô hình: - Mô hình dùng trực tiếp cho doanh nghiệp phân cấp độc lập, tổ chức phủ quân đội - Cho phép thực thi sách chuẩn thông qua hạ tầng sở - Dễ vận hành tổ chức khác * Nhược điểm: - Có thể không thích hợp môi trường mà miền khác cần có sách giải pháp PKI khác - Các tổ chức không tự nguyện tin vào tổ chức khác - Có thể không thích hợp cho mối quan hệ ngang hàng Chính phủ doanh nghiệp - Những tổ chức thiết lập CA trước không muốn trở thành phần mô hình - Có thể gây trội sản phẩm vấn đề khả tương tác 12 - Chỉ có CA gốc nên gây số vấn đề thiếu khả hoạt động Thêm vào đó, trường hợp khóa cá nhân CA bị xâm phạm, khóa công khai CA gốc phải phân phối đến tất người sử dụng cuối hệ thống theo số chế khác - Mặc dù có nhược điểm, song mô hình thích hợp với yêu cầu tổ chức Chính phủ cấu trúc phân cấp tự nhiên sẵn có 2.6 Cấp phát xác thực chứng thực số 2.6.1 Cấp phát chứng thực số 2.6.1.1 Sinh cặp khóa ngẫu nhiên (PKI client) - Tại Client hệ thống PKI cấp phát cặp khóa riêng khóa công khai - Hệ thống PKI(cụ thể PKI client) sử dụng thuật toán hợp lý chọn lựa để sinh cặp khóa ngẫu nhiên - Chẳng hạn thuật tóa RSA Cặp khóa ngẫu nhiên sinh từ số nguyên tố ngẫu nhiên lập đủ lớn Cặp khóa ngẫu nhiên : + Khóa công khai: (n,e) + Khóa bí mật : (n,d) 2.6.1.2 Tạo chữ ký số - Sau tạo cặp khóa ngẫu nhiên, hệ thống PKI client tạo chữ ký số tương ứng với cặp khóa ngẫu nhiên client ký theo văn ngẫu nhiên 2.6.1.3 Cấp phát chứng thực số Sau PKI client tạo cặp khóa riêng khóa công khai đồng thời tạo chữ ký số cho client tương ứng Thông tin bảo mật gửi đến server - Tại server, server xác thực thông tin mà client gửi đến có xác đắn Nếu thông tin xác thực đắn(khóa công khai, chữ ký số, giá trị băm văn bản, tin nhắn) server cấp phát cho client chứng thực số bao gồm thông tin sau : tên, tuổi, địa chỉ., thông tin cá nhân khác, khóa công khai, ngày tạo, ngày hết hạn, ID chứng thực số ID chứng thực số có tính với client 2.6.1.4 Thu hồi cấp phát lại chứng thực số - Một chứng thực số bị thu hồi : + Khi mà chứng thực số hết hạn sử dụng, chứng thực bị thu hồi để hạn cấp chứng thực số + Khi client phát khóa bí mật người bị lộ server phát thấy hằm băm mật mã bị lộ thông tin bảo mật khác client bị rò rỉ + Cấp phát lại chứng thực số : + Client gửi yêu cầu đến server yêu cầu thông tin(địa chỉ, khóa công khai,khóa riêng ) client đăng ký chứng thực số 13 2.6.2 Xác thực chứng thực số - Khi bạn gửi thông tin kèm chứng số, người nhận - đối tác kinh doanh, tổ chức quan quyền - xác định rõ danh tính bạn Có nghĩa dù không nhìn thấy bạn, nhung qua hệ thống chứng số mà bạn người nhận sử dụng, người nhận biết chắn bạn người khác Xác thực tính quan trọng việc thực giao dịch điện tử qua mạng, thủ tục hành với quan pháp quyền Các hoạt động cần phải xác minh rõ người gửi thông tin để sử dụng tư cách pháp nhân Đây tảng Chính phủ điện tử, môi trường cho phép công dân giao tiếp, thực công việc hành với quan nhà nước hoàn toàn qua mạng Có thể nói, chứng số phần thiếu, phần cốt lõi Chính phủ điện tử - Một người thứ (Có thể client khác, khách chưa đăng ký chứng thực số) kiểm tra tính đắn chứng thực số Bằng cách PKI client cung cấp dịch vụ xác thực Người dùng nhập vào ID chứng thực số cần kiểm tra gửi thông tin lên server Neu chứng thực số tồn server trả lại thông báo cho client vừa kiểm tra 2.7 Ứng dụng hạ tầng khóa công khai cấp phát chứng thực 2.7.1 Mã hóa - Lợi ích chứng số tính bảo mật thông tin Khi người gửi mã hóa thông tin khóa công khai bạn, chắn có bạn giải mã dược thông tin để đọc Trong qúa trình truyền thông tin qua Internet, dù có đọc gói tin mã hóa này, kẻ xấu biết gói tin có thông tin Đây tính quan trọng, giúp người sử dụng hoàn toàn tin cậy khả bảo mật thông tin Những trao đổi thông tin cần bảo mật cao, chẳng hạn giao dịch liên ngân hàng, ngân hàng điện tử, toán thẻ tín dụng, cần phải có chứng số để đảm bảo an toàn 2.7.2 Chống giả mạo - Khi bạn gửi thông tin, liệu Email, có sử dụng chứng số, người nhận kiểm tra thông tin bạn có bị thay đổi hay không Bất kỳ sửa đổi hay thay nội dung thông điệp gốc bị phát Địa mail, tên domain bị kẻ xấu làm giả để đánh lừa người nhận lây lan virus, ăn cắp thông tin quan trọng Tuy nhiên , chứng số làm giả, nên việc trao đổi thông tin có kèm chứng số đảm bảo an toàn 2.7.3 Xác thực - Khi sử dụng chứng số, người nhận - đối tác kinh doanh, tổ chức quan quyền- xác định rõ danh tính bạn Có nghĩa dù không nhìn thấy bạn, qua hệ thống chứng số mà bạn người nhận sử dụng, người nhận biết chắn bạn khác Xác thực tính quan trọng việc giao dịch điện tử qua mạng, thủ tục hành với quan với quan pháp quyền Các hoạt động cần phải xác minh rõ người gửi thông tin để sử dụng tư cách pháp nhân Đây tảng phủ điện tử, môi trường cho phép công dân giao tiếp Có thể nói, chứng số phần thiếu, phần cốt lõi phủ điện tử 14 2.7.4 Chống chối bỏ nguồn gốc - Khi sử dụng chứng số, bạn phải chịu trách nhiệm hoàn toàn thông tin mà chứng số kèm Trong trường hợp người gửi chối cãi, phủ nhận thông tin gửi(chẳng hạn qua mạng) chứng số mà người nhận có chứng khẳng định người gửi tác giả thông tin Trong trường hợp chối bỏ, CA cung cấp chứng số cho hai bên chịu trách nhiệm xác minh nguồn gốc thông tin, chứng tỏ nguồn gốc thông tin gửi 2.7.5 Chữ ký điện tử - Email đóng vai trò quan trọng trao đổi thông tin hàng ngày ưu điểm nhanh, rẻ dễ sử dụng Những thông điệp gửi nhanh chóng qua internet đến khách hàng đồng nghiệp, nhà cung cấp đối tác Tuy nhiên, email dễ bị đọc Hacker Những thông điệp bị đọc hay bị giả mạo trước đến người nhận - Bằng việc sử dụng chứng cá nhân, bạn ngăn ngừa nguy mà không làm giảm lợi thể Email Với chứng số cá nhân, bạn tạo thêm chữ ký điện tử vào email chứng xác nhận minh Chữ ký điện tử có tính xác thực thông tin, toàn vẹn liệu chống chối bỏ nguồn gốc - Ngoài ra, chứng số cá nhân cho phép người dùng chứng thực với web server thông qua giao thức bảo mật SSL Phương pháp chứng thực dựa chứng số đánh giá tốt, an toàn bảo mật hon phương pháp chứng thực truyền thống dựa mật 2.7.6 Bảo mật website - Khi website bạn sử dụng cho mục đích thương mại điện tử hay cho mục đích quan trọng khác, thông tin trao đổi bạn khách hàng bị lộ Đe tránh nguy này, bạn dùng chứng so SSL server để bảo mật cho Website - Chứng số SSL server cho phép bạn lập cấu hình website theo giao thức bảo mật SSL(Secure Sockets Layer) Các tính bật: + Thực mua bán thẻ tín dụng + Bảo vệ thông tin cá nhân nhạy cảm xủa khách hàng + Đảm bảo hacker dò tìm mật 2.7.7 Đảm bảo phần mềm - Chứng số nhà phát triển phần mềm cho phép bạn ký vào applet, script, Java software, ActiveX cơntrol, file định dạng EXE, CAB, DLL Như vậy, thông qua chứng số bạn đảm bảo tính hợp pháp nguồn gốc xuất xứ sản phẩm Hơn người dùng xác thực bạn nhà cung cấp, phát thay đổi chương trình(virus, crack, lậu ) 15 2.8 OpenCA hệ thống hạ tầng khóa công khai thực tế 2.8.1 Định nghĩa : - OpenCA hệ thống mã nguồn mở, xây dựng phát triển nhiều nhà lập trình giới OpenCA xây dựng với mục đích tạo hệ thống công cụ nhằm hỗ trợ cho dự án bảo mật.OpenCA hồ trợ từ mức độ thấp mã hoá liệu,tạo chữ ký số hệ thống an toàn liệu cao cấp Mã nguồn OpenCA cung cấp rộng rãi www.openca.org Từ đặc điểm thấy OpenCA công cụ hiệu để xây dựng ứng dụng theo mô hình hạ tầng khoá công khai PKI OpenCA hồ trợ xây dựng tất thủ tục lõi cho ứng dụng PKI từ việc sinh khoá mã hoá giải mã liệu thủ tục cấp phát,thu hồi chứng thư,tạo chữ ký số Với tất đó,ta xây dựng ứng dụng theo mô hình PKI sở, phần mở rộng lại xây dựng định hướng nhà phát triển - Các thành phần OpenCA bao gồm thành phần hệ thống thư viện OpenSSL, sở liệu giao diện web Trong giao diện web xây dựng ngôn ngữ Perl Thư viện OpenSSL thực tiến trình mã hoá [10] 2.8.2 Đánh giá hệ OpenCA 2.8.2.1 Ưu điểm hệ thống - OpenCA thiết kế xây dựng theo nguyên lý mô hình PKI đảm bảo đầy đủ chức sở hệ PKI cần phải có: cấp phát, gia hạn, thu hồi chứng thư số, đảm bảo tính xác thực, an toàn tin cậy - Với kịch thử nghiệm thời gian dài hệ thống hoạt động ổn định không xảy lỗi nghiêm trọng dẫn đến từ chối dịch vụ - Hệ mã nguồn mở OpenCA hoàn toàn tương thích với môi trường Linux không gây xung đột với hệ thống khác cài đặt hệ điều hành - Hệ thống OpenCA sử dụng nhiều chuẩn công nghiệp( chuẩn chứng thư số X509) Vì chấp nhận sử dụng rộng rãi thực tế 2.8.2.2 Những điểm hạn chế hệ thống - Lỗi không xác định RA ký lên yêu cầu gửi lên cho CA - Không làm việc với thiết bị sử dụng chuẩn USB 2.0 - Khó khăn việc cài đặt thay đổi [11] 2.9 Các ứng dụng PKI thực tiễn 2.9.1 Mô hình phân cấp thứ bậc - Mô hình phân cấp thứ bậc bao gồm RootCA chung cho miền PKI với CA (certificate authority) cấp thấp Các CA cấp thấp không cần phải chứng nhận CA cấp cao phân cấp Mỗi bên tham gia phải có hiểu biết khóa công khai RootCA coi tin cậy cho tất bên tham gia 16 2.9.2 Mô hình chứng thực chéo Mô hình quy định miền PKI RootCA chứng thực chéo với nhau, tương ứng cặp RootCA ngược lại để người sử dụng thuộc hai miền PKI đề có mỏ neo để tin cậy giao dịch điện tử Khi đó, muốn kiểm tra chứng thư số miền PKI miền thứ 2, người sử dụng PKI thứ phải kiểm tra theo chuỗi móc xích tin cậy Điểm bật mô hình chứng thực chéo các miền PKI tồn riêng rẽ với mối quan hệ tin cậy bên mà không ảnh hưởng đến mối quan hệ tin cậy bên 2.9.3 Mô hình CA cầu nối Trong mô hình này, có nhiều miền PKI RootCA tương ứng có nhu cầu liên lạc, người ta thiết lập thêm CertificateAuthority trung gian bình đẳng để làm cầu nối CA cầu nối chứng thực chéo với RootCA miền PKI tương ứng để tạo liên tác Những người sử dụng có mỏ neo tin cậy thông qua Chứng thư số CertificateAuthority cầu nối Mô hình ví hình ảnh bánh xe, CertificateAuthority cầu nối trục bánh xe, chứng thực chéo nan hoa, RootCA miền PKI nằm vành bánh xe Thực tế phát triển hạ tầng PKI làm xuất nhiều miền PKI đứng riêng biệt ốc đảo Các miền PKI cung cấp dịch vụ chữ ký điện tử cho người sử dụng hệ thống trì cung cấp dịch vụ cần thiết Điều dẫn đến việc, thực thể đầu cuối có chứng thư số cấp phát miền PKI giao dịch Chứng thư điện tử với Các thực thể đầu cuối thuộc miền PKI khác muốn giao dịch với cần phải cấp phát Chứng thư số khác tương ứng 2.9.4 Các sản phẩm - Đảm bảo chứng thư số cho người sử dụng quan thuộc hệ thống trị để tích hợp chữ ký số vào văn điện tử, thư điện tử, ứng dụng phần mềm điều hành tác nghiệp (Chứng thư số cho công chức) - Đảm bảo tính xác thực hệ thống trang thông tin điện tử quan Nhà nước (Chứng thư số cho Web Server) - Đảm bảo chứng thư số cho hệ thống dịch vụ mạng bảo mật Nhà nước (Chứng thư số cho Mail Server, VPN Server) - Gói sản phẩm xác thực bảo mật cho người dùng cuối: xác thực bảo mật tài liệu điện tử, thư điện tử, tài liệu Ms Office như: (Ms Word, Excel) xác thực, bảo mật tài liệu định dạng PDF, bảo mật ổ đĩa lưu trữ - Bộ PKI Toolkit nhằm trợ giúp quan, đơn vị tự tích hợp chữ ký số, chứng thư số vào ứng dụng chuyên ngành - Bộ phần mềm ký web nhằm trợ giúp tích hợp chữ ký số vào ứng dụng web- based quan thuộc hệ thống trị 2.9.5 Định hướng nghiên cứu phục vụ hệ thống PKI chuyên dùng Chính phủ - MobilePKI 17 Ngày thiết bị di động (máy tính bảng, điện thoại di động, ) phát triển mạnh trở thành loại thiết bị thiếu xã hội đại Khái niệm Mobile PKI, có từ năm 2001, nhiên, ứng dụng quy mô rộng Mobile PKI chủ yếu phát triển năm 2008 - 2009 Nhiều công nghệ giao thức sử dụng Mobile PKI công bố công khai Việc nghiên cứu MobilePKI Ban Cơ yếu Chính phủ quan tâm nhằm ứng dụng chữ ký số thiết bị di động cầm tay quan Đảng Nhà nước thời gian tới - e-Passport (hộ chiếu điện tử) Trên giới, nhiều quốc gia triển khai hệ thống hộ chiếu điện tử để kiểm soát xuất nhập cảnh với mục đích chống giả mạo hộ chiếu, thuận tiện cho việc quản lý Ở Việt Nam, triển khai hộ chiếu điện tử cần thiết trình hội nhập phát triển Chương trình xây dựng triển khai hộ chiếu điện tử để phù hợp với nhu cầu phát triển xã hội, tăng tính an toàn/an ninh chống giả mạo hộ chiếu/thị thực cần thiết Những nghiên cứu hộ chiếu điện tử số quan dầu tư nghiên cứu - Giấy phép lái xe điện tử Mẫu giấy phép lái xe (thẻ nhựa) Tổng cục Đường Việt Nam nghiên cứu triển khai đưa vào sử dụng năm 2012 Trong trình xây dựng phần mềm quản lý cấp phép lái xe mới, Tổng cục ĐBVN Ban Cơ yếu Chính phủ hỗ trợ tích hợp chữ ký số vào phần mềm Như vậy, giấy phép lái xe thời gian tới tích hợp chip điện tử phải tích hợp chứng thư số - Chứng minh thư điện tử Chứng minh thư điện tử sử dụng rộng rãi nước phát triển Việt Nam có dự án triển khai chứng minh thư điện tử Việc tích hợp chứng thư số chứng minh thư điện tử số nước phát triển ứng dụng mang nhiều tiện lợi, định hướng nghiên cứu triển khai chứng minh thư điện tử 18 Chương 3: Triển khai cài đặt ứng dụng OpenSSL 3.1 Triển khai cài đặt Cài đặt opensl ubuntu với câu lệnh từ Terminal sudo apt-get install openssl Làm theo hướng dẫn từ Terminal để cài đặt Hình 3.1 : Cài đặt opensl 3.2 Kịch sử dụng opensl để mã hóa tin file 3.2.1 Mã hóa thông điệp với cú pháp echo "thong diep can ma hoa" | openssl enc -base64 Hình 3.2: Mã hóa thông điệp 19 3.2.2 Giải mã cú pháp echo "V2VsY29tZSB0byB1cHdvcmtmb2xsb3cuY29tCg==" | openssl enc -base64 –d Hình 3.3 : Giải mã thông điệp 3.2.3 Khóa công khai khóa cá nhân Cú pháp tạo khóa cá nhân: openssl genrsa -out private_key.pem 1024 Hình 3.4 : Tạo khóa cá nhân 20 Từ khóa cá nhân tạo khóa công khai với cú pháp openssl rsa -in private_key.pem -out public_key.pem -outform PEM –pubout Hình 3.5 : Tạo khóa công khai từ khóa cá nhân 21 KẾT LUẬN Về mặt lý thuyết - Tìm hiểu hạ tầng khóa công khai (PKI) - Tìm hiểu xây dựng hạ tầng khóa công khai + Các ứng dụng hạ tầng khóa công khai (Mã hóa, xác thực chữ ký,…) Về mặt thực tiễn Từ kết cho thấy dùng thuật toán RSA để mã hóa thông tin chứng thực giao dịch điện tử, với mục đích bảo mật đảm bảo tính xác thực thì: - Đỡ tốn công sức đầu tư cho hạ tầng bảo mật - Độ bảo mật thông tin tỉ lệ thuận với độ dài khóa - Tận dụng tốc độ máy tính việc mã hóa, giả mã xác thực Hướng phát triển - Ứng dụng Hạ tầng khóa công khai vào công tác quản lý với yêu cầu bảo mật thông tin mức độ cao: truyền tải công văn mật, mã hóa đề thi, … 22 CÁC TÀI LIỆU THAM KHẢO [1] William Stallings Cryptography and Network Security’: Principles and Practice, Fourth Edition Prentice Hall, 2005 TS.Nguyễn Đại Thọ Bộ môn Mạng & Truyền thông Máy tính Khoa Công nghệ Thông tin Slide giảng AN TOÀN MẠNG - (Chương - trang 96) http://vi.wikinedia.org/wiki/M%E1%BA%ADt m%C3%A3 h%C3%B3a kh%C3%B3a c%C3%B4ng khai [2] , [3] Đinh Mạnh Tường - Giáo trình “Cấu trúc liệu giải thuật” (Chương trang 12-16) [4] TS.Nguyễn Đại Thọ Bộ môn Mạng & Truyền thông Máy tính Khoa Công nghệ Thông tin Slide giảng AN TOÀN MẠNG - (Chương - trang 116) http://vi.wikipedia.org/wiki/H%C3%A0m b%C4%83m m%E %BA%ADt m %C3%A3 h%El%BB%8Dc [5] ,[8] Đặng Bình Phương Luận văn cao học - Đại học khoa học tự nhiên TP.HỒ Chí Minh - Nghiên cứu kiến trúc xây dựng hệ thống chứng thực tập trung (trang 8-11) [6] http://ptic.com.vn/chuvende chitiet.asp?stuff id=7 [7] Chứng thực điện tử&Chữ ký điện tử(HÀ NỘI -IT Week 2004) - VASC CA [9] Carlisle Adams, Steve Lloyd Understanding PKI: Concepts, Standards, and Deployment Considerations, Second Edition November 06, 2002 (Chương Certificates and Certification) [10] ,[11] ĐỒ ÁN TÓT NGHIỆP Trần Hoàn Vũ hệ Kỹ Sư Chất Lượng Cao K49 môn Truyền Thông Mạng Máy Tính, khoa Công Nghệ Thông Tin trường Đại Học Bách Khoa Hà Nội http://www.openca.org 23

Ngày đăng: 20/11/2016, 17:19

Từ khóa liên quan

Mục lục

  • Chương 1: Giới Thiệu

    • 1.1. Hạ tầng khóa công khai (PKI)

      • 1.1.1. PKI là gì

      • 1.1.2. Cở sở hạ tầng khóa công khai

      • 1.2. Một vài kiến trúc và công nghệ PKI hiện hành

        • 1.2.1. Một số ứng dụng

        • 1.2.2. Một số hệ thống PKI

        • Chương 2: Xây dựng hạ tầng khóa công khai(PKI), vấn đề cấp phát chứng thực số và ứng dụng trong thương mại điện tử

          • 2.1. Hàm băm mật mã học

            • 2.1.1. Hàm băm

            • 2.1.2. Hàm băm mật mã học

            • 2.1.3. Đảm bảo tính toàn vẹn dữ liệu

            • 2.1.4. Một số hàm băm thông dụng

              • 2.1.4.1. Thuật toán hàm băm MD5

              • 2.1.4.2. Chuẩn băm an toàn SHS

              • 2.2. Mã hóa thông tin

              • 2.3. Chữ ký số

                • 2.3.1. Chữ ký số

                • 2.3.2. Tạo và kiểm tra chữ ký số

                  • 2.3.2.1. Các thuật toán chữ ký số thông dụng

                  • 2.3.2.2. Thuật toán chữ ký số RSA

                  • 2.3.2.3. Thuật toán chữ ký số DSA

                  • 2.3.2.4. Kết quả thử nghiệm và nhận xét

                  • 2.4. Chứng thực số

                  • 2.5. Cấu trúc phân tầng của hệ thống PKI

                  • 2.6. Cấp phát và xác thực chứng thực số

                    • 2.6.1. Cấp phát chứng thực số

                      • 2.6.1.1. Sinh cặp khóa ngẫu nhiên (PKI client)

                      • 2.6.1.2. Tạo chữ ký số

                      • 2.6.1.3. Cấp phát chứng thực số

Tài liệu cùng người dùng

Tài liệu liên quan