Đăng ký Đăng nhập
Trang chủ Chữ ký số trong thẻ thông minh và ứng dụng xác thực...

Tài liệu Chữ ký số trong thẻ thông minh và ứng dụng xác thực

.PDF
168
309
74

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ === === LƯƠNG VIỆT NGUYÊN CHỮ KÝ SỐ TRONG THẺ THÔNG MINH VÀ ỨNG DỤNG XÁC THỰC LUẬN VĂN THẠC SỸ HÀ NỘI – 2008 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ === === LƯƠNG VIỆT NGUYÊN CHỮ KÝ SỐ TRONG THẺ THÔNG MINH VÀ ỨNG DỤNG XÁC THỰC Ngành: Công nghệ thông tin Mã số: 1.01.10 LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC PGS. TS. TRỊNH NHẬT TIẾN HÀ NỘI - 2008 LỜI CAM ĐOAN Tôi xin cam đoan toàn bộ nội dung bản luận văn này là do tôi tự sưu tầm, tra cứu và phát triển đáp ứng nội dung yêu cầu của đề tài. Nội dung bản luận văn chưa từng được công bố hay xuất bản dưới bất kỳ hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu nào. Toàn bộ ứng dụng thử nghiệm đều do tôi tự thiết kế và xây dựng. Nếu sai tôi xin hoàn toàn chịu trách nhiệm. Hà nội, tháng 11 năm 2008 Người cam đoan Lương Việt Nguyên i LỜI CẢM ƠN Lời đầu tiên, tôi xin được gửi lời cảm ơn chân thành nhất tới thầy giáo PGS.TS. Trịnh Nhật Tiến - người luôn chỉ bảo, hướng dẫn tôi hết sức nghiêm khắc và tận tình, cung cấp những tài liệu quý báu, giúp đỡ tôi trong suốt quá trình học tập và xây dựng luận văn. Tôi xin chân thành cảm ơn các Thầy, Cô giáo và các bạn đồng nghiệp trong khoa Công nghệ thông tin và Ban giám hiệu, các cán bộ trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã luôn nhiệt tình giúp đỡ và tạo điều kiện tốt nhất cho tôi trong suốt quá trình học tập. Xin chân thành cảm ơn các anh, các chị và các bạn học viên lớp Cao học K11T3 - Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội đã luôn động viên, giúp đỡ và nhiệt tình chia sẻ với tôi những kinh nghiệm học tập, công tác trong suốt khóa học. Mặc dù đã có nhiều cố gắng, song do sự hạn hẹp về thời gian, điều kiện nghiên cứu và trình độ, luận văn không tránh khỏi những khiếm khuyết. Tôi chân thành mong nhận được sự đóng góp ý kiến của các thầy, cô giáo và đồng nghiệp gần xa. Hà nội, tháng 11 năm 2008 Người thực hiện luận văn Lương Việt Nguyên ii MỤC LỤC TỔNG QUAN VỀ THẺ THÔNG MINH.......................................................1 Chng 1: 1.1. GIỚI THIỆU THẺ THÔNG MINH .......................................................................... 1 1.1.1. Ưu nhược điểm và tính khả thi thẻ thông minh ......................................3 1.1.1.1. Ưu điểm: ....................................................................................................... 3 1.1.1.2. Nhược điểm: ................................................................................................. 4 1.1.1.3. Tính khả thi: ................................................................................................. 4 1.1.2. Phân loại thẻ.............................................................................................5 1.1.3. Các chuẩn cho Smart Card......................................................................8 1.2. CẤU TẠO THẺ THÔNG MINH............................................................................. 10 1.2.1. Cấu trúc vật lý........................................................................................10 1.2.1.1. Các điểm tiếp xúc ........................................................................................ 10 1.2.1.2. Bộ xử lý trung tâm trong thẻ thông minh .................................................... 11 1.2.1.3. Bộ đồng xử lý trong thẻ thông minh............................................................ 11 1.2.1.4. Hệ thống bộ nhớ của thẻ thông minh.......................................................... 12 1.2.2. Giao tiếp truyền thông với thẻ thông minh ...........................................12 1.2.2.1. Thiết bị chấp nhận thẻ và các ứng dụng máy chủ ....................................... 12 1.2.2.2. Mô hình truyền thông với thẻ thông minh................................................... 13 1.2.2.3. Giao thức APDU ......................................................................................... 13 1.2.2.4. Mã hoá bit (bit encoding) ............................................................................ 15 1.2.2.5. Giao thức TPDU ......................................................................................... 15 1.2.2.6. Thông điệp trả lời để xác lập lại (ATR) ....................................................... 17 1.2.3. Hệ điều hành thẻ thông minh ................................................................17 1.2.4. Các File hệ thống trong thẻ thông minh................................................17 1.2.4.1. Thư mục gốc (Master File - MF) ................................................................ 17 1.2.4.2. Thư mục chuyên dụng (Dedicated File - DF).............................................. 18 1.2.4.3. File cơ bản (Elementary File - EF) ............................................................. 18 1.2.5. Truy cập File ..........................................................................................19 1.2.5.1. Định danh file............................................................................................. 19 1.2.5.2. Các phương thức lựa chọn file.................................................................... 19 1.2.5.3. Điều kiện truy cập file................................................................................. 20 1.2.5.4. Lệnh thao tác với thẻ................................................................................... 21 1.2.6. Quá trình sản xuất một Smart Card .....................................................24 iii 1.3. ỨNG DỤNG THẺ THÔNG MINH ......................................................................... 25 1.3.1. 1.3.1.1. Quy trình phát triển ứng dụng cho Smart Card........................................... 25 1.3.1.2. Các công cụ phát triển ứng dụng cho Smart Card ...................................... 26 1.3.1.3. Công cụ cho ứng dụng phía thẻ .................................................................. 26 1.3.2. Ứng dụng phía thiết bị đọc thẻ (reader) ................................................27 1.3.2.1. Các giao diện ứng dụng chuẩn phía reader................................................. 27 1.3.2.2. Chuẩn PC/SC.............................................................................................. 28 1.3.2.3. Kiến trúc PC/SC.......................................................................................... 28 1.3.2.4. ICC Resource Manager............................................................................... 30 1.3.2.5. ICCSP ......................................................................................................... 32 1.3.2.6. Các chuẩn khác........................................................................................... 33 1.3.3. Ứng dụng phía thẻ..................................................................................34 1.3.3.1. Các khía cạnh trong phát triển ứng dụng.................................................... 34 1.3.3.2. Tập các hàm API......................................................................................... 35 1.3.4. 1.4. Phát triển ứng dụng cho Smart Card....................................................25 Một số ứng dụng trong thẻ thông minh.................................................37 1.3.4.1. Thẻ thông minh trong hệ thống thu lệ phí (cầu, đường) điện tử.................. 37 1.3.4.2. Thẻ thông minh trong chữ ký số (Digital Signature) ................................... 38 1.3.4.3. Thẻ thông minh trong hệ thống trả tiền điện tử .......................................... 40 TÓM TẮT CHƯƠNG ............................................................................................. 42 TỔNG QUAN VỀ HẠ TẦNG MẬT MÃ KHÓA CÔNG KHAI (PKI) ...........43 Chng 2: 2.1. KHÁI NIỆM VỀ PKI .............................................................................................. 43 2.2. CƠ SỞ KHOA HỌC VỀ PKI .................................................................................. 44 2.2.1. Các thành phần kỹ thuật cơ bản của PKI.............................................44 2.2.1.1. Mã hóa........................................................................................................ 44 2.2.1.2. Ký số ........................................................................................................... 48 2.2.1.3. Chứng chỉ số ............................................................................................... 59 2.2.2. Lợi ích của chứng chỉ số.........................................................................61 2.2.2.1. Đảm bảo tính xác thực ................................................................................ 61 2.2.2.2. Mã hóa........................................................................................................ 62 2.2.2.3. Chống giả mạo ............................................................................................ 62 2.2.2.4. Chống chối cãi nguồn gốc........................................................................... 62 2.2.2.5. Đảm bảo phần mềm .................................................................................... 62 2.2.2.6. Phân phối khóa an toàn .............................................................................. 63 2.2.2.7. Bảo mật Website.......................................................................................... 64 2.2.2.8. Xử lý độc lập tại máy khách ........................................................................ 64 iv 2.2.3. 2.3. Công nghệ để xây dựng PKI và giao thức ............................................65 2.2.3.1. Công nghệ OpenCA .................................................................................... 65 2.2.3.2. Công nghệ SSL ........................................................................................... 66 2.2.3.3. Giao thức truyền tin an toàn tầng liên kết dữ liệu (Data Link).................... 70 2.2.3.4. Giao thức truyền tin an toàn tầng ứng dụng(Application)........................... 72 2.2.3.5. Một số công nghệ bảo mật và an toàn thông tin trên thế giới ...................... 74 GIẢI PHÁP XÂY DỰNG PKI................................................................................. 75 2.3.1. Hành lang pháp lý để xây dựng và ứng dụng PKI. ...............................75 2.3.2. Giải pháp công nghệ xây dựng PKI hiện nay........................................77 2.4. CÁC ĐỐI TƯỢNG CƠ BẢN CỦA HỆ THỐNG PKI ............................................. 78 2.4.1. Chủ thể và các đối tượng sử dụng .........................................................78 2.4.2. Đối tượng quản lý thẻ xác thực..............................................................79 2.4.3. Đối tượng quản lý đăng ký thẻ xác thực................................................80 2.5. CÁC HOẠT ĐỘNG CƠ BẢN TRONG HỆ THỐNG PKI ...................................... 81 2.5.1. Mô hình tổng quát của hệ thống PKI ....................................................81 2.5.1.1. Thiết lập các thẻ xác thực............................................................................ 81 2.5.1.2. Khởi tạo các EE .......................................................................................... 82 2.5.2. Các hoạt động liên quan đến thẻ xác thực.............................................82 2.5.2.1. Đăng ký và xác thực ban đầu ...................................................................... 82 2.5.2.2. Cập nhật thông tin về cặp khóa................................................................... 82 2.5.2.3. Cập nhật thông tin về thẻ xác thực.............................................................. 83 2.5.2.4. Cập nhật thông tin về cặp khóa của CA ...................................................... 83 2.5.2.5. Yêu cầu xác thực ngang hàng ..................................................................... 83 2.5.2.6. Cập nhật thẻ xác thực ngang hàng.............................................................. 83 2.5.3. Phát hành thẻ và danh sách thẻ bị hủy bỏ.............................................84 2.5.4. Các hoạt động phục hồi..........................................................................84 2.5.5. Các hoạt động hủy bỏ ............................................................................84 2.6. NHỮNG VẤN ĐỀ CƠ BẢN TRONG XÂY DỰNG HỆ THỐNG PKI.................... 85 2.6.1. Các mô hình tổ chức hệ thống CA.........................................................85 2.6.1.1. Kiến trúc phân cấp ...................................................................................... 85 2.6.1.2. Kiến trúc hệ thống PKI mạng lưới .............................................................. 87 2.6.1.3. Kiến trúc danh sách tin cậy......................................................................... 88 2.6.2. Những chức năng bắt buộc trong quản lý PKI .....................................90 2.6.2.1. Khởi tạo CA gốc.......................................................................................... 90 2.6.2.2. Khởi tạo các CA thứ cấp.............................................................................. 90 v 2.7. 2.6.2.3. Cập nhật khóa của CA gốc.......................................................................... 91 2.6.2.4. Tạo lập CRL................................................................................................ 91 2.6.2.5. Yêu cầu về thông tin hệ thống PKI.............................................................. 91 2.6.2.6. Xác thực ngang hàng .................................................................................. 91 2.6.2.7. Khởi tạo các EE .......................................................................................... 92 2.6.2.8. Yêu cầu xác thực......................................................................................... 92 2.6.2.9. Cập nhật khóa............................................................................................. 92 THẺ XÁC NHẬN THEO CHUẨN X.509................................................................ 93 2.7.1. Khuôn Dạng Chứng Chỉ X.509..............................................................93 2.7.2. Các trường cơ bản của thẻ xác thực ......................................................94 2.7.2.1. Trường tbsCertificate .................................................................................. 94 2.7.2.2. Trường signatureAlgorithm ........................................................................ 95 2.7.2.3. Trường signatureValue ............................................................................... 95 2.7.3. Cấu trúc TBSCertificate ........................................................................96 2.7.3.1. Trường version............................................................................................ 96 2.7.3.2. Trường serialNumber.................................................................................. 96 2.7.3.3. Trường signature ........................................................................................ 97 2.7.3.4. Trường issuer.............................................................................................. 97 2.7.3.5. Trường validity............................................................................................ 98 2.7.3.6. Trường subject ............................................................................................ 98 2.7.3.7. Trường subjectPublicKeyInfo ..................................................................... 99 2.7.3.8. Trường uniqueIdentifiers............................................................................ 99 2.7.3.9. Trường extensions....................................................................................... 99 2.7.4. Các phần mở rộng của thẻ xác thực X.509............................................99 2.7.4.1. Phần mở rộng Authority Key Identifier....................................................... 99 2.7.4.2. Phần mở rộng Subject Key Identifier ........................................................ 100 2.7.4.3. Phần mở rộng Key Usage.......................................................................... 100 2.7.4.4. Mục đích sử dụng khóa mở rộng (Extended Key Usage)........................... 102 2.7.4.5. Phần mở rộng Private Key Usage Period................................................... 102 2.7.4.6. Phần mở rộng Certificate Policies............................................................. 102 2.7.4.7. Phần mở rộng Policy Mappings ................................................................ 103 2.7.4.8. Phần mở rộng Subject Alternative Name .................................................. 104 2.7.4.9. Phần mở rộng Issuer Alternative Names................................................... 105 2.7.4.10. Phần mở rộng Subject Directory Attributes ............................................. 105 2.7.4.11. Phần mở rộng Basic Constraints............................................................. 105 2.7.4.12. Phần mở rộng Name Constraints ............................................................ 106 vi 2.8. 2.7.4.13. Phần mở rộng Policy Constraints............................................................ 106 2.7.4.14. Phần mở rộng Extended key usage field.................................................. 107 2.7.4.15. Phần mở rộng CRL Distribution Points .................................................. 108 2.7.4.16. Các trường mở rộng cho Internet ............................................................ 109 PKI VÀ THẺ THÔNG MINH............................................................................... 109 2.8.1. Luật pháp .............................................................................................109 2.8.2. Mối quan hệ giữa công nghệ, ứng dụng và luật pháp .........................110 2.9. TÓM TẮT CHƯƠNG ........................................................................................... 111 ỨNG DỤNG THẺ THÔNG MINH TRONG ĐÀO TẠO TRỰC TUYẾN ...112 Chng 3: 3.1. GIỚI THIỆU ......................................................................................................... 112 3.2. TỔNG QUAN HỆ THỐNG HỌC TRỰC TUYẾN (E-LEARNING)........................ 113 3.3. RỦI RO LIÊN QUAN VỚI HỆ THỐNG E-LEARNING ......................................... 115 3.4. VẤN ĐỀ AN TOÀN TRONG MÔI TRƯỜNG HỌC TRỰC TUYẾN?................. 116 3.5. GIAO DỊCH AN TOÀN TRÊN INTERNET ........................................................ 116 3.6. CÁC CHỦ THỂ THAM GIA VÀO HỆ THỐNG THẺ THÔNG MINH................ 119 3.7. GIẢI PHÁP TÍCH HỢP THẺ THÔNG MINH TRONG HỌC TRỰC TUYẾN.... 119 3.7.1. Mô hình kết hợp ngoài và mô hình kết hợp trong...............................119 3.7.2. Mô hình cấp chứng chỉ đơn giản .........................................................121 3.7.3. Mô hình sử dụng thẻ thông minh phân bố rộng..................................121 3.8. XÁC THỰC SỬ DỤNG THẺ THÔNG MINH VÀ GIAO THỨC SSL TRONG ĐÀO TẠO TRỰC TUYẾN...................................................................................................................... 122 3.8.1. Thiết kế hệ thống đảm bảo tính bảo mật thông tin với chữ ký số kết hợp giao thức SSL .........................................................................................................122 3.8.2. Nâng cấp thiết kế SSL bằng thẻ thông minh thương mại (Commercial Smart Card Token) .......................................................................................................126 3.8.3. Quy trình xác thực sử dụng Ikey 2000 Token trong đào tạo trực tuyến 126 3.8.4. Sơ đồ chuyển chế độ của LMS và CMS trong quy trình xác thực......130 3.9. TÓM TẮT CHƯƠNG ........................................................................................... 134 THỬ NGHIỆM GIẢI PHÁP....................................................................135 Chng 4: 4.1. CÁC CÔNG CỤ DÙNG TRONG HỆ THỐNG..................................................... 135 4.1.1. Các công cụ quản trị hệ thống .............................................................135 4.1.1.1. Công cụ quản lý người sử dụng ................................................................ 135 4.1.1.2. Công cụ tạo và quản lý chính sách............................................................ 135 4.1.1.3. Công cụ quản lý danh sách thẻ xác nhận.................................................. 136 4.1.1.4. Công cụ quản lý các sự kiện đối với hệ thống ........................................... 136 vii 4.1.2. Lưu trữ dữ liệu.....................................................................................137 4.1.2.1. Lưu thông tin quản lý đối tượng sử dụng chương trình ............................ 137 4.1.2.2. Lưu thông tin chính sách về thẻ xác nhận ................................................ 137 4.1.2.3. Lưu trữ thông tin về thẻ xác nhận............................................................. 138 4.1.3. Chức năng mã hoá dữ liệu ...................................................................138 4.1.3.1. Sự cần thiết của chức năng....................................................................... 138 4.1.3.2. Định hướng xây dựng ............................................................................... 138 4.1.3.3. Lưu đồ thuật toán thực hiện...................................................................... 139 4.1.4. Các thành phần của PKI/Smartcard...................................................140 4.1.4.1. Đầu đọc thẻ thông minh............................................................................ 140 4.1.4.2. Thẻ Mifare dùng trong hệ thống ............................................................... 141 4.1.4.3. 4.1.5. Giải pháp ứng dụng trong hệ thống đào tạo trực tuyến.......................... 142 Những yêu cầu về sử dụng hệ thống thẻ thông minh ..........................144 4.2. ĐÁNH GIÁ MÔ HÌNH KẾT HỢP........................................................................ 145 4.3. MỘT SỐ KẾT QUẢ THỬ NGHIỆM.................................................................... 147 4.4. TÓM TẮT CHƯƠNG ........................................................................................... 150 viii DANH MỤC HÌNH VẼ Hình 1-1 Sơ đồ phân loại thẻ ......................................................................................................5 Hình 1-2 Thẻ không tiếp xúc (Contacless Card) ..........................................................................7 Hình 1-3 Thẻ tiếp xúc (Contact Card) ..........................................................................................7 Hình 1-4 Cấu trúc vật lý của thẻ thông minh ..............................................................................10 Hình 1-5 Cấu trúc bộ xử lý trong thẻ thông minh........................................................................11 Hình 1-6 Hệ thống bộ nhớ thẻ thông minh.................................................................................12 Hình 1-7 Cấu trúc file trong thẻ thông minh ...............................................................................18 Hình 1-8 Kiến trúc PC/SC .........................................................................................................29 Hình 1-9 Các lớp giao diện........................................................................................................32 Hình 1-10 Thủ tục cơ bản cho việc ký và kiểm tra .....................................................................39 Hình 2-1 Hệ mã hóa khóa đối xứng...........................................................................................46 Hình 2-2 Hệ mã hóa khóa công khai .........................................................................................47 Hình 2-3 Mô hình quá trình ký có sử dụng hàm băm .................................................................51 Hình 2-4 Quá trình kiểm thử......................................................................................................51 Hình 2-5 Mô hình ký của loại chữ ký khôi phục thông điệp ........................................................51 Hình 2-6 Vị trí SSL trong mô hình OSI.......................................................................................66 Hình 2-7 Các đối tượng và hoạt động cơ bản trong hệ thống PKI ..............................................81 Hình 2-8 Kiến trúc PKI phân cấp ...............................................................................................85 Hình 2-9 Kiến trúc PKI mạng lưới..............................................................................................87 Hình 2-10 Kiến trúc PKI danh sách tin cậy.................................................................................88 Hình 2-11 Quan hệ giữa công nghệ, ứng dụng và luật pháp....................................................110 Hình 3-1 Các thành phần máy chủ của hệ thống E-learning và khách. ....................................114 Hình 3-3 Những vấn đề về quản lý khoá cá nhân ....................................................................117 Hình 3-4 Xác thực thẻ thông minh không dùng PKI .................................................................118 Hình 3-5 Xác thực thẻ thông minh với PKI...............................................................................118 Hình 3-6 Mô hình tích hợp thẻ thông minh ngoài .....................................................................120 Hình 3-7 Mô hình tích hợp thẻ thông minh trong......................................................................120 Hình 3-9 Kết hợp giữa không gian ảo và không gian vật lý ......................................................122 Hình 3-10 Giai đoạn cấp chứng chỉ. ........................................................................................123 Hình 3-11 Giai đoạn đăng ký và xác thực lẫn nhau giữa LMS và học viên ...............................124 Hình 3-12 Sơ đồ trình tự thời gian đăng ký khóa học trong hệ thống E-learning.......................125 Hình 3-13 Sơ đồ trình tự thời gian giai đoạn theo dõi hoạt động của hệ thống E-learning .......125 Hình 3-14 Giai đoạn khởi động đầu sử dụng Ikey 2000 token..................................................127 Hình 3-15 Giai đoạn khởi động đầu sử dụng Ikey 2000 token (tiếp theo) .................................128 Hình 3-16 Quy trình xác thực khóa học ...................................................................................129 Hình 3-17 Biểu đồ trạng thái LMS............................................................................................130 Hình 3-18 Biểu đồ chuyển chế độ của CMS ở phía máy chủ ...................................................131 Hình 3-19 Biểu đồ trạng thái người học (tại điểm cuối/kết thúc). ..............................................132 Hình 4-1 Lưu đồ thuật toán mã hóa thông điệp........................................................................139 ix Hình 4-2 Thiết bị đọc thẻ ACR120 ...........................................................................................140 Hình 4-3 Thiết bị đọc thẻ giao tiếp cổng USB ..........................................................................140 Hình 4-4 Java Applet nhúng trong trang login. .........................................................................143 Hình 4-5 Java Applet cho phép User thay đổi số PIN...............................................................143 Hình 4-6 Java Applet hiện tự động trong mỗi lần thực hiện giao dịch.......................................144 Hình 4-7 Tạo chứng chỉ Request cho thẻ của màn hình cấp phát chứng chỉ............................144 Hình 4-8 Lệnh yêu cầu chứng nhận (giai đoạn khởi động).......................................................147 Hình 4-9 Lựa chọn loại chứng nhận (giai đoạn khởi động). .....................................................147 Hình 4-10 Nhập vào các thông tin cần thiết sẽ được nhập vào bản chứng chỉ (giai đoạn khởi động)...............................................................................................................................148 Hình 4-11 Kiểm tra lại tình trạng bản chứng nhận (giai đoạn khởi động). .................................148 Hình 4-12 Lựa chọn bản chứng nhận cần kiểm tra (giai đoạn khởi động). ...............................148 Hình 4-13 Cài đặt bản chứng chỉ trên hệ thống (máy tính cá nhân -PC terminal) (giai đoạn khởi động)...............................................................................................................................148 Hình 4-14 Copy bản chứng nhận từ thẻ vào hệ thống (giai đoạn khởi động)............................149 Hình 4-15 Nhập vào mật khẩu theo yêu cầu (giai đoạn khởi động). .........................................149 Hình 4-16 Truy nhập trang Web (Giai đoạn đăng ký khóa học và theo dõi hoạt động)..............149 Hình 4-17 Lệnh yêu cầu chứng chỉ người sử dụng (Giai đoạn đăng ký khóa học và theo dõi hoạt động)...............................................................................................................................149 x DANH SÁCH BẢNG Bảng 1-1 Các đặc tả thuộc chuẩn ISO 7816................................................................................9 Bảng 1-2 Các chuẩn giao diện ứng dụng (API)..........................................................................28 Bảng 2-1 Sơ đồ chữ ký mù .......................................................................................................58 Bảng 2-2 Sơ đồ chữ ký mù dựa trên chữ ký RSA......................................................................58 Bảng 3-1 So sánh một số phương pháp nhận dạng và xác thực khác nhau.............................116 Bảng 3-1 Bảng chế độ LMS. ...................................................................................................130 Bảng 3-2 Thuyết minh các chế độ LMS. ..................................................................................131 Bảng 3-3 Bảng thuyết minh các chế độ CMS...........................................................................131 Bảng 3-4 Bảng các chế độ CMS .............................................................................................131 Bảng 3-5 Thuyết minh trạng thái kết thúc của người sử dụng..................................................132 Bảng 3-6 Bảng trạng thái kết thúc của người sử dụng. ............................................................133 xi KÝ HIỆU VÀ VIẾT TẮT KÝ HIỆU TỪ VIẾT TẮT MÔ TẢ API Application Programming Interface CA Certificate authority CC Chứng chỉ CD Compaq Disk CDROM Compaq Disk Read Only Memory CSDL Cơ sở dữ liệu CSP Cooperative software program CHV Card Holder Value CMS Content Manager System DB DataBase DSS Digital Signature Standard DMS Document Management System E- Learning Electronic Learning IC Intergated Circuit ID Indentity Card LDAP Leightweight Directory Access Protocol LMS Learning Management System PC Personal Computer PCMCIA Personal Computer Memory International Association PIN Personal indentity number PKI Public key infracture RA Registration Authority FRID Radio Frequency Identification SSL Secure Socket Layer TTM Thẻ thông minh WORM Write One Read Multi Time xii Card CÁC THUẬT NGỮ An toàn an ninh thông tin (Information Security) Là các biện pháp tác động lện hệ thống thông tin và bản thân thông tin để đảm bảo thông tin không bị thay đổi, phá huỷ. Đồng thời, kiểm soát được các đối tượng truyền và nhận thông tin. Bí mật thông tin (Confidentiality) Thông tin không được tiết lộ cho các đối tượng không được cho phép. CA cấp dưới (Subordinate CA) Là những CA mà trong một mô hình PKI phân cấp, thẻ xác nhận của nó được xác nhận bởi một CA khác. Những hoạt động của CA này chịu sự giám sát của chính CA đó. CA cấp trên (Superior CA) Là những CA chứng nhận những thẻ xác nhận và giám sát hoạt động của các CA khác. CA gốc (Root CA) Trong một sơ đồ PKI phân cấp, đây là CA với khoá công khai được tin tưởng ở mức độ cao nhất bởi các đối tượng của một domain. Cặp khoá (Key Pair) Hai khoá có liên quan đến nhau về mặt toán học với hai thuộc tính: (i) Một khoá có thể được dùng để mã hoá và việc giải mã chỉ được thực hiện khi có khoá còn lại. (ii) Khi biết một trong hai khoá thì việc tính toán để tìm ra khoá còn lại là không thể thực hiện được. Chính sách thẻ xác nhận (Certificate Policy) Là một dạng chính sách quản trị các giao tác điện tử được thực hiện trong quá trình quản lý thẻ xác nhận. Chính sách này đáp ứng tất cả các yêu cầu của quá trình tạo, phân phát, thống kê, phục hồi và quản trị các thẻ xác nhận số. Chữ ký số (Digital Signature) Là kết quả của phép chuyển đổi một thông điệp bằng một hệ thống các phép mã hoá có sử dụng các khoá mà một đối tượng nhận được thông tin có thể xác định được: (i) Dữ liệu được gửi đến có phải được tạo ra với khoá riêng ứng với khoá công khai trong thẻ xác nhận của đối tượng gửi hay không. (ii) Thông tin nhận được có bị thay đổi sau khi phép chuyển đổi được thực hiện không. Thông tin bị coi là đã thay đổi nếu ta không thể kiểm chứng được chữ ký số với khoá công khai tương ứng của đối tượng đã tạo chữ ký số. Danh sách tin cậy (Trust List) Tập hợp các thẻ xác nhận đã được một đối tượng sử dụng tin cậy và dùng để xác thực những thẻ xác nhận khác. Danh sách thẻ xác nhận bị huỷ bỏ (Certificate Revocation List - CRL) Một danh sách do CA quản lý bao gồm các thẻ xác nhận bị huỷ bỏ trước khi chúng hết hạn. Dữ liệu chưa mã hóa (Plaintext) Dữ liệu ở đầu vào của một thủ tục mã hoá bảo mật Dữ liệu đã mã hóa (Ciphertext) Dữ liệu ở đầu ra của một thủ tục mã hoá bảo mật. Định danh đối tượng (Object Identifier – OID) Là một só có định dạng riêng và đã được đăng ký với một tổ chức được công nhận trên phạm vi quốc tế. Đối tượng quản lý đăng ký (Registration Authority - RA) Là đối tượng có vai trò phân biệt và xác thực các đối tượng của thẻ xác nhận nhưng không ký và cấp các thẻ xác nhận. Đối tượng quản lý xác nhận (Certification Authority – CA) Là đối tượng được tin cậy bởi một nhóm người sử dụng nhất định với chức năng phát hành và quản lý các thẻ xác nhận và danh sách thẻ xác nhận bị huỷ bỏ. xiii Hạ tầng khoá công khai (Public Key Infrastructure - PKI) Một tập các chính sách, các tiến trình xử lý, các máy chủ dịch vụ, các máy trạm cùng với các phần mềm được sử dụng để quản lý các thẻ xác nhận cùng với các cặp khoá công khai/khoá riêng. Trong đó, các tính năng chính bao gồm việc phát hành, duy trì và huỷ bỏ các thẻ xác nhận chứa khoá công khai. Kênh truyền thông riêng (Out-of-band) Quá trình truyền thông giữa các đối tượng thông qua các phương tiện khác với các phương tiện được sử dụng để duy trì liên lạc thông thường giữa các đối tượng trong hệ thống. Khoá công khai (Public Key) (i) Khoá thuộc về một cặp khoá tạo chữ ký số được sử dụng để kiểm chứng một chữ ký số. (ii) Khoá thuộc về một cặp khoá mã hóa được sử dụng để mã hóa thông tin bí mật. Trong cả hai trường hợp, khoá này thường được phổ biến với các thẻ xác nhận. Khoá riêng (Private Key) (i) Khoá thuộc về một cặp khóa được sử dụng để tạo chữ ký số. (ii) Khoá thuộc về một cặp khoá mã hóa được sử dụng để giải mã các thông tin bí mật. Trong cả hai trường hợp, khoá này phải được giữ bí mật. Không thể bác bỏ (Non-repudiation) Tính năng này đề cập tới việc: nếu một đối tượng có thể kiểm chứng một chữ ký số bằng một khoá công khai nào đó thì điều đó chứng tỏ đối tượng đang nắm giữ khoá riêng tương ứng đã tạo ra chữ ký số này. Mã hoá bảo mật (Encrypt) Quá trình biến đổi thông tin ban đầu thành thông tin có dạng trực quan là ngẫu nhiên và vô nghĩa. Mã hoá dữ liệu (Encode) Quá trình đóng gói thông tin thành các khuôn dạng phù hợp để truyền thông hoặc lưu trữ. Mã xác thực thông điệp (Message Authentication Code MAC) Là chuỗi các bit được tạo ra thông qua các thuật toán tạo mã xác thực thông điệp dựa trên các hàm phân tách. Mã này được sử dụng để giúp đối tượng nhận có thể đảm bảo mình nhận được đúng thông tin mình cần. Phương tiện lưu trữ (Repository) Một hệ thống với phần cốt lõi là cơ sở dữ liệu chứa thông tin về thẻ xác nhận và danh sách thẻ xác nhận bị huỷ bỏ. Tấn công phát lại gói tin (Replay Attack) Là hình thức tấn công dựa trên việc bắt gói tin truyền đến, thực hiện các chỉnh sửa theo ý muốn và phát đi trong các thời điểm sau này tới các đối tượng nhận. Tin cậy (Trust) Là việc chấp nhận một hành động hoặc một thể hiện của đối tượng nào đó là đúng. Toàn vẹn dữ liệu (Data Integerity) Là việc đảm bảo thông tin không bị thay đổi mà không bị phát hiện trong quá trình truyền từ đối tượng tạo thông tin đến đối tượng nhận. Thẻ xác nhận (Certificate) Là hình thức biểu diễn thông tin dưới dạng số với các thông tin tối thiểu sau: (i) CA phát hành thẻ này. (ii) Định danh của đối tượng sử dụng. (iii) Khoá công khai của đối tượng sử dụng. (iv) Thời gian hiệu lực của thẻ. Thẻ này phải được ký bởi CA tạo ra nó. Thẻ xác nhận ngang hàng (Cross-Certificate) Là thẻ xác nhận được dùng để thiết lập mối quan hệ tin cậy giữa các CA. Trao đổi khoá (Key Exchange) Là quá trình trao đổi các khoá để có thể thiết lập một kênh liên lạc an toàn. Xác thực (Authenticate) Khẳng định những thông tin về định danh của một đối tượng khi đối tượng đó trình diện. xiv Chương 1: TỔNG QUAN VỀ THẺ THÔNG MINH Chương này nhằm giới thiệu các kiến thức cơ bản vể Thẻ thông minh. Kiến thức được đề cập trong chương này không đi quá sâu vào chi tiết các khía cạnh vật lý của Thẻ thông minh mà chỉ nhằm mục đích cung cấp cho những người phát triển ứng dụng kiến thức cần thiết để xây dựng các ứng dụng Thẻ thông minh. Các khái niệm và định nghĩa trong chương này được tham khảo trong cuốn “Smart Card Handbook” và “Smart Card Developer’s Kit”. Thẻ thông minh có kích thước và hình dáng tương tự như thẻ tín dụng. Thẻ thông minh có bộ nhớ để lưu trữ dữ liệu và bộ vi xử lý để xử lý dữ liệu. Dữ liệu của Thẻ thông minh gồm có hệ điều hành, các chương trình ứng dụng, các file dữ liệu,… Tuy nhiên một trong những ưu điểm lớn nhất của Thẻ thông minh là dữ liệu lưu trữ có thể được bảo vệ khỏi sự truy nhập trái phép từ bên ngoài. Vì dữ liệu chỉ có thể được truy nhập thông qua các giao diện nối tiếp điều khiển bởi hệ điều hành nên dữ liệu bí mật có thể được ghi vào trong Thẻ theo cách mà bên ngoài không thể đọc được. Dữ liệu như vậy chỉ có thể được đọc bởi CPU của Thẻ. Chính nhờ vào khả năng lưu trữ dữ liệu an toàn và bộ vi xử lý có khả năng tính toán, Thẻ thông minh được ứng dụng rất rộng rãi. Có thể kể đến như trong việc trả tiền cho các cuộc gọi điện thoại, trả tiền cho việc đỗ xe, truy nhập vào các hệ thống ti vi vệ tinh… 1.1. GIỚI THIỆU THẺ THÔNG MINH Thẻ thông minh là một tấm thẻ nhựa gắn chip vi xử lý. Thẻ thông minh có bề ngoài giống thẻ tín dụng thông thường ngoại trừ phần tiếp xúc bằng kim loại (chỉ có ở thẻ contact), nhưng những ứng dụng của thẻ lại hoàn toàn khác. Không giống như những chức năng ở thẻ ngân hàng và thẻ tín dụng thông thường, thẻ thông minh có thể được dùng làm ví điện tử để giữ tiền điện tử. Với một phần mềm phù hợp, nó còn có thể được dùng làm thẻ kiểm soát truy nhập an toàn từ việc ra vào cửa cho đến việc truy cập máy tính. Thẻ thông minh được định nghĩa là “thẻ tín dụng” có gắn thêm một “bộ não”, mà bộ não là một con chip máy tính nhỏ. Nhờ “bộ não được gắn thêm” này mà thẻ thông minh còn được gọi bằng cái tên thẻ chip hoặc thẻ mạch tích hợp (IC). 1 Dù là loại thẻ thông minh nào, dung lượng bộ nhớ cũng đều lớn hơn nhiều so với thẻ vạch từ. Tổng dung lượng bộ nhớ của thẻ vạch từ chỉ là 125bytes, trong khi dung lượng của thẻ thông minh có thể từ 1KB cho tới 64KB. Nói cách khác, dung lượng bộ nhớ của thẻ thông minh có thể lớn gấp 500 lần thẻ vạch từ. Rõ ràng dung lượng bộ nhớ lớn là một trong những ưu điểm của thẻ thông minh, nhưng đặc điểm quan trọng bậc nhất của thẻ lại nằm ở chỗ dữ liệu lưu giữ trong thẻ được bảo vệ an toàn khỏi sự truy cập hoặc thay đổi trái phép.Trong thẻ thông minh, việc truy cập vào nội dung bộ nhớ do một mạch logic an toàn gắn trong thẻ kiểm soát. Vì việc truy cập vào dữ liệu chỉ có thể được thực hiện thông qua một giao diện liên hoàn do hệ điều hành và hệ logic an toàn kiểm soát, nên dữ liệu mật được lưu trong thẻ sẽ tránh được sự truy cập trái phép từ bên ngoài. Dữ liệu mật này chỉ có thể được xử lý nội bộ thông qua bộ vi xử lý. Nhờ đặc tính kết nối không liên tục và tính bảo mật cao của thẻ thông minh, nên khó có thể lấy dữ liệu của thẻ hoặc chèn thông tin trái phép vào thẻ. Chính vì vậy thẻ thông minh rất thích hợp cho việc lưu trữ dữ liệu tiện lợi và an toàn. Nếu không được phép của chủ sở hữu, không thể lấy hoặc thay đổi dữ liệu trong thẻ. Có thể nói thẻ thông minh giúp nâng cao tính bảo mật và riêng tư cho người sử dụng. Như vậy, thẻ thông minh không chỉ đơn thuần là nơi lưu trữ dữ liệu mà là nơi lưu trữ dữ liệu an toàn, có thể lập trình và tiện lợi. Microsoft coi thẻ thông minh là cánh tay nối dài của máy tính cá nhân và là nhân tố chủ chốt trong cơ sở hạ tầng khóa công khai. Thẻ gắn bộ vi xử lý lần đầu tiên do 2 kỹ sư người Đức phát minh vào năm 1967. Chỉ đến khi Roland Moreno, một nhà báo người Pháp, công bố Bằng sáng chế Thẻ thông minh tại Pháp năm 1974 thẻ mới được biết đến rộng rãi. Với những tiến bộ trong công nghệ sản xuất bộ vi xử lý, phí nghiên cứu và sản xuất thẻ thông minh gần đây đã giảm đi đáng kể. Năm 1984 đánh dấu một bước phát triển vượt bậc khi Bộ Bưu chính Viễn thông Pháp tiến hành thử nghiệm thành công trên thẻ điện thoại. Kể từ đó thẻ thông minh không còn bị ràng buộc vào thị trường thẻ ngân hàng truyền thống cho dù vào năm 1997 thẻ điện thoại vẫn chiếm thị phần lớn nhất của thẻ thông minh. Nhờ vào bộ quy chuẩn ISO-7816 được ban hành năm 1987 (quy định tiêu chuẩn giao diện thẻ thông minh áp dụng trên toàn cầu), định dạng thẻ thông minh hiện nay đã được chuẩn hóa. Thẻ do các nhà phát hành khác nhau đưa ra đều có thể giao tiếp với máy chủ sử dụng một bộ ngôn ngữ chung. 2 1.1.1. 1.1.1.1. Ưu nhược điểm và tính khả thi thẻ thông minh u đim: Về vấn đề an toàn và bảo mật thông tin, giải pháp này đã hạn chế rất nhiều các nguy cơ mất an toàn bởi kiến trúc vật lý cũng như logic của thẻ. Sự an toàn về mặt logic của thẻ có được là do trên thực tế mọi hoạt động của thẻ đều được kiểm soát bởi hệ điều hành. Như vậy, các thông tin được coi là cần giữ bí mật sẽ không thể lấy được ra từ thẻ. Sự an toàn về mặt vật lý liên quan tới cấu trúc của chip thẻ thông minh. Ý định truy nhập trái phép vào bên trong của chip là không thể hoặc ít ra là rất tốn kém. Địa chỉ và dữ liệu (vốn liên hệ với nhau) được trộn lẫn trong các lớp khác nhau. Các transitor ảo được nhúng trong bản mạch làm cho việc truy nhập trở nên khó khăn hơn. Ngoài ra, giới hạn cho cận trên và cận dưới của tần số đồng hồ cũng gây trở ngại cho việc truy nhập trái phép. Như vậy, các thông tin bên trong thẻ là không thể bị “hack” như các thông tin được lưu trong các phần mềm hệ quản trị CSDL thông thường. Các khóa bí mật dùng cho chữ ký điện tử và nhận dạng đều được lưu giữ bên trong thẻ. Kể cả nhà sản xuất thẻ lẫn người sở hữu thẻ cũng không thể biết được các khóa này. Do đó, chúng không thể bị sao chép. Để tránh việc thẻ bị đánh cắp và được kẻ xấu sử dụng, mỗi chiếc thẻ đều có số nhận dạng (PIN). Trước khi sử dụng thẻ, người dùng phải nhập vào đó số PIN của thẻ. Cơ chế quản lý số PIN của thẻ cũng rất an toàn bởi vì số PIN gần như không thể đoán ra được. Hơn nữa, nếu số lần nhập sai liên tục lên đến một con số nào đó thì thẻ sẽ tự động khóa. Muốn mở khóa, người dùng phải nhập một số dùng để mở khóa của thẻ. Và cũng tương tự, nếu số lần nhập sai liên tiếp lên đến con số nào đó thì lúc này, thẻ sẽ bị khóa vĩnh viễn, không thể sử dụng lại nữa. Trừ những dữ liệu về cá nhân người dùng (lý lịch…), các thông tin khác dùng cho việc xác thực trong thẻ sẽ không thể lấy lại được. Như vậy, việc sử dụng thẻ trở nên an toàn và dễ dàng hơn vì người dùng thay vì phải nhớ nhiều số (mỗi số chỉ dùng một lần như trong giải pháp one-time passwords) như trước đây, nay chỉ phải nhớ một số, còn các thông tin nhận dạng đều ở trong thẻ. Trong khi nếu bị mất thẻ thì kẻ đánh cắp cũng không thể sử dụng được thẻ vì không có số PIN. Hiện nay trên thế giới, một số nhà sản xuất đã thay thế số PIN bằng các cơ chế nhận dạng sinh trắc học như dấu vân tay, võng mạc… để nâng cao tính an toàn của thẻ. Tuy nhiên, giải pháp này đòi hỏi nhiều thiết bị hiện đại và do đó giá thành của thẻ là rất cao. Và thực tế hiện nay, sự kết hợp này chưa được sử dụng nhiều. 3 1.1.1.2. Nhc đim: Chưa giải quyết triệt để được vấn đề về sự mất an toàn từ bản thân người dùng, đó là vẫn bắt người dùng phải nhớ số PIN và phải có thêm công cụ là chiếc thẻ mới có thể thực hiện việc xác thực. Tuy rằng đã hạn chế được sự mất cắp thẻ bằng cách kết hợp thẻ với một số PIN nhưng không thể loại trừ trường hợp cả số PIN và thẻ đều bị đánh cắp. Thứ hai, các tổ chức phải trang bị thêm các thiết bị phần cứng để có thể ứng dụng giải pháp này. Số lượng và chi phí của các thiết bị thêm (như thiết bị đọc, thiết bị ghi, các phần mềm hỗ trợ…) không phải là nhỏ và do đó, chắc chắn sẽ tốn kém hơn so với giải pháp chỉ dùng phần mềm. Thứ ba, các dịch vụ hỗ trợ phổ biến cho việc xác thực bằng thẻ là chưa đầy đủ. Hầu như các nhà cung cấp giải pháp xác thực bằng thẻ hiện nay đều phát triển các dịch vụ của riêng mình. Có thể kể ra một số hệ thống hỗ trợ xác thực qua thẻ như: công ty Microsoft với các phiên bản hệ điều hành từ Windows 98 đến nay đã hỗ trợ việc đăng nhập thông qua thẻ, ứng dụng Outlook Express của Windows cũng hỗ trợ giải pháp này[3]… Tuy nhiên hiện nay, hầu hết các ứng dụng cần đến xác thực trên Internet như dịch vụ thư điện tử, các dịch vụ thương mại điện tử phổ biến… đều chưa hỗ trợ xác thực bằng thẻ. Hầu hết các dịch vụ hỗ trợ xác thực thông qua thẻ thường được các công ty khác nhau phát triển theo những mô hình riêng, sử dụng những thiết bị riêng chưa thống nhất và do đó khả năng liên hệ giữa các hệ thống là hầu như không có. 1.1.1.3. Tính kh thi: Đây là giải pháp tương đối hoàn chỉnh và được nhận định là có tiềm năng lớn trong thời gian tới. Tổ chức chuẩn hoá quốc tế (ISO) đã và đang đưa ra những tiêu chuẩn thống nhất trong việc xây dựng và phát triển thẻ thông minh. Hiện nay, một số quốc gia đã sử dụng công nghệ này trong các hệ thống lớn của họ như làm chứng minh thư (Identity card), thẻ rút tiền ngân hàng (ATM card)...Ngoài ra, đã có rất nhiều công ty lớn trên thế giới đang phát triển những giải pháp xác thực hoàn thiện hơn về cả mức độ an toàn và khả năng linh động trong sử dụng. Cùng với sự phát triển về công nghệ, giá thành của thẻ và các thiết bị liên quan đã giảm đáng kể trong những năm qua. Do đó, các ứng dụng có hỗ trợ xác thực bằng thẻ thông minh cũng ngày một nhiều hơn.[3] Tuy nhiên, đối với thực tế ở nước ta, một nước đang phát triển thì giá thành thẻ cũng như chi phí xây dựng hệ thống hỗ trợ xác thực bằng thẻ hiện nay vẫn là quá cao, không phù hợp với đa số các cơ quan, tổ chức ở Việt Nam. Nếu các nhà sản xuất giảm được giá thành thẻ và các thiết bị liên quan hơn nữa đồng thời tăng cao được mức độ an toàn của thẻ thì việc đưa giải pháp này vào sử dụng đại trà cho các hệ thống của các cơ quan, tổ chức ở Việt Nam là rất khả thi. 4
- Xem thêm -

Tài liệu liên quan