Phân loại thương mại điện tử TMĐT có thể được phân loại theo tính cách của người tham gia: Người tiêu dùng C2C Consumer-To-Comsumer: Người tiêu dùng với người tiêu dùng C2B Consumer
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đào Minh Ngọc
NGHIÊN CỨU ỨNG DỤNG SINH TRẮC HỌC
TRONG VIỆC ĐẢM BẢO AN TOÀN
CHO HỆ THỐNG GIAO DỊCH ĐIỆN TỬ
LUẬN VĂN THẠC SĨ
Hà Nội - 2009
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đào Minh Ngọc
NGHIÊN CỨU ỨNG DỤNG SINH TRẮC HỌC
TRONG VIỆC ĐẢM BẢO AN TOÀN
CHO HỆ THỐNG GIAO DỊCH ĐIỆN TỬ
Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin
Trang 3MỤC LỤC
LỜI CAM ĐOAN
LỜI CẢM ƠN
MỤC LỤC
DANH MỤC HÌNH
DANH MỤC CÁC CHỮ VIẾT TẮT
MỞ ĐẦU 1
Chương 1: TỔNG QUAN VỀ AN TOÀN, BẢO MẬT THÔNG TIN VÀ CƠ SỞ LÝ THUYẾT MẬT MÃ 2
1.1 Thương mại điện tử 2
1.1.1 Giới thiệu về thương mại điện tử 2
1.1.2 Khảo sát tình hình thương mại điện tử ở Việt Nam 3
1.2 Nhu cầu bảo mật và an toàn thông tin cho TMĐT 6
1.2.1 Khảo sát thực trạng PKI trên thế giới và tại Việt Nam 8
1.2.2 Khảo sát thực trạng PKI ở một số nước trên thế giới 8
1.2.3 Khảo sát thực trạng PKI ở Việt Nam 9
1.3 Cơ sở lý thuyết mật mã 10
1.3.1 Khái niệm về mã hóa 10
1.3.2 Định nghĩa hệ mã hóa 10
1.3.3 Những yêu cầu đối với hệ mã hóa 11
1.3.4 Mã hóa khóa đối xứng 11
1.3.5 Mã hóa khóa công khai 12
1.3.6 Thuật toán băm 14
1.4 Chữ ký số 15
1.4.1 Khái niệm chữ ký số 15
1.4.2 Sơ đồ chữ ký số 16
1.4.3 Các cách tấn công chữ ký điện tử 18
1.5 Kết chương 19
Chương 2: CƠ SỞ HẠ TẦNG KHÓA CÔNG KHAI VÀ MẬT MÃ SINH TRẮC 20
2.1 Cơ sở hạ tầng khóa công khai 20
2.1.1 Khái niệm PKI 20
2.1.2 Các dịch vụ và phạm vi ứng dụng của PKI 20
2.1.3 Các thành phần của PKI 20
2.1.4 Mô hình của hệ thống PKI 21
2.1.5 Các chức năng và thuộc tính yêu cầu của PKI 21
2.1.6 Hệ thống cung cấp và quản lý chứng thư 26
2.1.7 Các mô hình triển khai hệ thống CA 29
2.1.8 Đánh giá và phân tích 34
Trang 42.2 Mật mã sinh trắc học 35
2.2.1 Sinh trắc học 35
2.2.2 Các khái niệm sinh trắc học về vân tay 36
2.2.3 Nhận dạng sinh trắc học 42
2.3 Thuật toán mã hóa sinh trắc học 43
2.3.1 Xử lý hình ảnh nhận dạng 43
2.3.2 Sự tương quan 43
2.3.3 Những yêu cầu của hệ thống 44
2.3.4 Thiết kế hàm lọc 45
2.3.5 Độ an toàn của hàm lọc 47
2.3.6 Bộ lọc tạm thời 47
2.3.7 Thiết kế bộ lọc an toàn 49
2.3.8 Quá trình đăng ký/xác thực 51
2.4 Kết chương 58
Chương 3: ỨNG DỤNG SINH TRẮC TRONG ĐẢM BẢO AN TOÀN CHO HỆ THỐNG GIAO DỊCH ĐIỆN TỬ 59
3.1 Khảo sát thực trạng của việc bảo vệ khóa bí mật hiện nay 59
3.1.1 Các thiết bị Token 59
3.1.2 Các thiết bị SafeNet iKey 59
3.1.3 Biostik 60
3.2 Các cách ứng dụng sinh trắc học vào PKI 60
3.2.1 Ứng dụng sinh trắc để thẩm định người dùng 60
3.2.2 Ứng dụng khóa cá nhân từ sinh trắc học 61
3.2.3 Ứng dụng sinh trắc học để bảo vệ khóa cá nhân 61
3.3 Các giải pháp tích hợp sinh trắc học vào PKI 61
3.3.1 Tích hợp đặc trưng sinh trắc của người dùng trong chứng thư số X509 62
3.3.2 Giải pháp dùng mật mã sinh trắc để bảo vệ khóa bí mật 68
3.4 Đề xuất mô hình BioPKI 69
3.5 Các pha làm việc của BioPKI 71
3.5.1 Quá trình đăng ký 71
3.5.2 Quá trình ứng dụng chữ ký số 73
3.6 Phương hướng triển khai 75
KẾT LUẬN 78
TÀI LIỆU THAM KHẢO 79
PHỤ LỤC 81
Trang 5DANH MỤC HÌNH
Hình 2-4 Sơ đồ tạo chữ ký 17
Hình 2-5 Sơ đồ xác thực chữ ký 17
Hình 2-7 Mô hình của hệ thống PKI 21
Hình 2-6 Mô hình chứng thư số 23
Hình 2-8 Mô hình kiến trúc phân cấp 30
Hình 2-9 Mô hình kiến trúc mạng lưới 31
Hình 2-10 Mô hình kiến trúc Cầu liên kết 33
Hình 2-15 Các đặc trưng tổng thể: đường chuẩn và số đếm đường vân 39
Hình 2-16 Đặc trưng hướng của vân tay 39
Hình 2-17 Một số ảnh vân tay 40
Hình 2-19 Biểu diễn các điểm minutiae 42
Hình 2-20 Tổng quan quá trình đăng ký của mã hóa sinh trắc học 51
Hình 2-21 Tổng quan quá trình xác thực của mã hóa sinh trắc học 52
Hình 2-22 Xử lý ảnh trong quá trình đăng ký 53
Hình 2-23 Giải thuật liên kết khóa 54
Hình 2-24 Xử lý ảnh ở trong quá trình xác thực 56
Hình 2-25 Giải thuật khôi phục khóa 57
Hình 3-1 Hệ thống PKI 62
Hình 3-2 Cấu trúc chứng thư X509 63
Hình 3-3 Giải pháp tích hợp đặc trưng sinh trắc vào X509 65
Hình 3-4 Biểu đồ làm việc của PKI khi chưa kết hợp hệ thống sinh trắc 67
Hình 3-5 Biểu đồ làm việc của PKI khi kết hợp hệ thống sinh trắc 67
Hình 3-6 Giải pháp dùng mật mã sinh trắc để bảo vệ khóa bí mật 69
Hình 3-7 Mô hình tích hợp sinh trắc vào hệ thống PKI 70
Hình 3-8 Quá trình đăng ký 72
Hình 3-9 Etoken và dữ liệu lưu trữ 72
Hình 3-10 Sơ đồ tạo chữ ký khi sử dụng dấu vân tay để xác thực 73
Hình 3-11 Sơ đồ xác thực chữ ký của BIOPKI 74
Hình 3-12 Quá trình khởi tạo CA 76
Trang 65 5 HSM High Security Module
6 6 LDAP Leightweight Directory Access Protocol
7 7 PKI Public Key Infrastructure
Trang 7MỞ ĐẦU
Ngày nay, hệ thống cơ sở hạ tầng khóa công khai (PKI – Public Key Infrastructure) đang là một cơ sở quan trọng để triển khai các giao dịch điện tử trên mạng PKI cùng các tiêu chuẩn và công nghệ ứng dụng của nó có thể được coi là một giải pháp tổng hợp giải quyết bài toán đảm bảo an toàn thông tin trong xã hội hiện đại Tuy nhiên, nhược điểm lớn của PKI chính là vấn đề đảm bảo an toàn cho khóa bí mật của người dùng trong khi lưu trữ cũng như sử dụng Nền tảng của hệ thống PKI chính
là hệ thống mật mã khóa công khai: tức là một cặp khóa công khai và khóa bí mật để thực hiện các quá trình xác thực Song quyền truy cập đến khóa bí mật lại chủ yếu chỉ được bảo vệ bằng mật khẩu, mà trên thực tế mật khẩu rất có nguy cơ bị lộ, mất cũng như bị đánh cắp bằng các chương trình virus, mã độc hại Hơn nữa, PKI còn bị hạn chế là khong có đấu hiệu đặc trưng để nhận biết chủ sở hữu của chứng thư số và việc xác thực chứng thư số chỉ dựa vào số serialnumber do cơ quan chứng thực (CA) cấp Tất cả những vấn đề này có thể được giải quyết bằng một cách đơn giản hơn, đó là kết hợp đặc điểm sinh trắc của chủ sở hữu khóa vào hệ thống PKI Việc làm này tạo nên một cơ chế xác thực định danh mạnh hơn mật khẩu truyền thống Về nguyên tắc, đây là giải pháp tương đối hoàn thiện cho vấn đề bảo vệ an toàn và sử dụng khóa bí mật Hệ thống kết hợp này sẽ là hệ thống PKI sinh trắc hay còn gọi là BioPKI
Để hiện thực hóa ý tưởng này, luận văn tập trung tìm hiểu nghiên cứu về cơ sở hạ tầng khóa công khai sinh trắc
Nội dung của luận văn “Nghiên cứu ứng dụng sinh trắc học trong việc đảm bảo
an toàn cho hệ thống giao dịch điện tử” gồm có phần mở đầu, ba chương và phần
kết luận
Chương 1: Tổng quan về an toàn, bảo mật thông tin và cơ sở lý thuyết mật mã
Giới thiệu thương mại điện tử, thực trạng thương mại điện tử ở Việt Nam và nhu cầu cấp thiết về bảo mật và an toàn thông tin Sau đó giới thiệu về cơ sở lý thuyết mật
mã
Chương 2: Cơ sở hạ tầng khóa công khai và mật mã sinh trắc học
Chương này trình bày về cơ sở hạ tầng khóa công khai và mật mã sinh trắc học
Chương 3: Ứng dụng sinh trắc trong đảm bảo an toàn thông tin trong giao dịch
điện tử
Đề xuất giải pháp tích hợp sinh trắc vào hệ thống PKI và đưa ra mô hình hoạt động cho hệ thống BioPKI
Trang 8Chương 1: TỔNG QUAN VỀ AN TOÀN, BẢO MẬT THÔNG TIN
VÀ CƠ SỞ LÝ THUYẾT MẬT MÃ
1.1 Thương mại điện tử
1.1.1 Giới thiệu về thương mại điện tử
Sự phát triển như vũ bão của CNTT đã tác động mạnh mẽ và to lớn đến mọi mặt đời sống kinh tế xã hội Ngày nay, CNTT đã trở thành một trong những động lực quan trọng nhất của sự phát triển Cùng với sự phát triển của máy tính điện tử, truyền thông phát triển kéo theo sự ra đời của mạng máy tính, từ các mạng cục bộ, mạng diện rộng cho tới mạng toàn cầu Internet và xa lộ thông tin Việc thông tin chuyển sang dạng số
và nối mạng đã làm thay đổi sự chuyển hoá của nền kinh tế, các dạng thể chế, các mối quan hệ và bản chất của hoạt động kinh tế xã hội và có ảnh hưởng sâu sắc đến hầu hết các lĩnh vực hoạt động và đời sống con người, trong đó có các hoạt động thương mại Người ta đã có thể tiến hành các hoạt động thương mại nhờ các phương tiện điện tử,
đó chính là thương mại điện tử(TMĐT)
Theo nghĩa hẹp, TMĐT là việc mua bán hàng hoá và dịch vụ thông qua các phương tiện điện tử, nhất là Internet và các mạng viễn thông khác
Theo nghĩa rộng thì TMĐT có thể được hiểu là các giao dịch tài chính và thương mại bằng phương tiện điện tử như: trao đổi dữ liệu điện tử; chuyển tiền điện tử và các hoạt động gửi rút tiền bằng thẻ tín dụng
Trên thực tế, chính các hoạt động thương mại thông qua mạng Internet đã làm phát sinh thuật ngữ TMĐT
Trong hoạt động giao dịch TMĐT đều có sự tham ra của ít nhất ba chủ thể, trong đó có một bên không thể thiếu được là người cung cấp dịch vụ mạng, các cơ quan chứng thực
Đối với thương mại truyền thống thì mạng lưới thông tin chỉ là phương tiện để trao đổi dữ liệu, còn đối với TMĐT thì mạng lưới thông tin chính là thị trường
Trang 9Phân loại thương mại điện tử
TMĐT có thể được phân loại theo tính cách của người tham gia:
Người tiêu dùng
C2C (Consumer-To-Comsumer): Người tiêu dùng với người tiêu dùng
C2B (Consumer-To-Business): Người tiêu dùng với doanh nghiệp
C2G (Consumer-To-Government): Người tiêu dùng với chính phủ
Doanh nghiệp
B2C (Business-To-Consumer): Doanh nghiệp với người tiêu dùng
B2B (Business-To-Business): Doanh nghiệp với doanh nghiệp
B2G (Business-To-Government): Doanh nghiệp với chính phủ
B2E (Business-To-Employee): Doanh nghiệp với nhân viên
Chính phủ
G2C (Government-To-Consumer): Chính phủ với người tiêu dùng
G2B (Government-To-Business): Chính phủ với doanh nghiệp
G2G (Government-To-Government): Chính phủ với chính phủ
Các hình thức hoạt động của TMĐT chủ yếu là thư điện tử, thanh toán điện tử (trao đổi dữ liệu điện tử tài chính, tiền mặt Internet, túi tiền điện tử, giao dịch ngân hàng số hóa ), trao đổi dữ liệu điện tử, truyền nội dung, bán lẻ hàng hóa hữu hình
1.1.2 Khảo sát tình hình thương mại điện tử ở Việt Nam
Thương mại điện tử đã được ứng dụng rộng rãi trong các doanh nghiệp với hiệu quả ngày càng tăng
Kết quả điều tra với 1600 doanh nghiệp trên cả nước của Bộ Công Thương trong năm 2008 cho thấy, hầu hết các doanh nghiệp đã triển khai ứng dụng thương mại điện
tử ở những mức độ khác nhau Đầu tư cho thương mại điện tử đã được chú trọng và mang lại hiệu quả rõ ràng cho doanh nghiệp[1]
Một trong những điểm sáng nhất về ứng dụng thương mại điện tử của doanh nghiệp là tỷ lệ đầu tư cho phần mềm tăng trưởng nhanh, chiếm 46% trong tổng đầu tư cho công nghệ thông tin của doanh nghiệp năm 2008, tăng gấp 2 lần so với năm 2007 Trong khi đó, đầu tư cho phần cứng giảm từ 55,5% năm 2007 xuống còn 39% vào năm 2008 Sự dịch chuyển cơ cấu đầu tư này cho thấy doanh nghiệp đã bắt đầu chú trọng đầu tư cho các phần mềm ứng dụng để triển khai thương mại điện tử sau khi ổn định hạ tầng công nghệ thông tin Doanh thu từ thương mại điện tử đã rõ ràng và có xu hướng tăng đều qua các năm 75% doanh nghiệp có tỷ trọng doanh thu từ thương mại điện tử chiếm trên 5% tổng doanh thu trong năm 2008 Nhiều doanh nghiệp đã quan tâm bố trí cán bộ chuyên trách về thương mại điện tử
Các con số thống kê này cho thấy, đến thời điểm cuối năm 2008 nhiều doanh nghiệp Việt Nam đã nhận thức rõ về tầm quan trọng của thương mại điện tử đối với
Trang 10hoạt động sản xuất kinh doanh và sẵn sàng ứng dụng thương mại điện tử ở mức cao hơn trong thời gian tới
Các tổ chức đào tạo chính quy đẩy mạnh giảng dạy thương mại điện tử
Kết quả cuộc điều tra cho thấy đến thời điểm cuối năm 2008, tại Việt Nam có 49 trường triển khai hoạt động đào tạo về thương mại điện tử, gồm 30 trường đại học và
19 trường cao đẳng Trong số 30 trường đại học đã giảng dạy thương mại điện tử, 1 trường thành lập khoa thương mại điện tử, 19 trường giao cho khoa kinh tế – quản trị kinh doanh phụ trách giảng dạy thương mại điện tử và 10 trường giao cho khoa công nghệ thông tin phụ trách giảng dạy môn học này, 8 trường thành lập bộ môn thương mại điện tử Trong số 19 trường cao đẳng đã giảng dạy thương mại điện tử, 1 trường thành lập khoa thương mại điện tử, 9 trường giao cho khoa kinh tế phụ trách giảng dạy thương mại điện tử và 9 trường giao cho khoa công nghệ thông tin phụ trách dạy môn học này, có 3 trường cao đẳng đã thành lập bộ môn thương mại điện tử
Vấn đề bảo vệ dữ liệu cá nhân bước đầu được quan tâm
Bên cạnh những nét nổi bật trên, năm 2008 còn chứng kiến những chuyển biến có
ý nghĩa lớn đối với sự phát triển của thương mại điện tử Việt Nam giai đoạn tới
Trong thương mại điện tử, các giao dịch được thực hiện hoàn toàn trên môi trường mạng, các đối tác không cần phải gặp mặt trực tiếp, nên nhu cầu về thông tin cá nhân
là rất lớn Giao dịch thương mại điện tử của các doanh nghiệp Việt Nam thời gian gần đây tăng nhanh, khối lượng thông tin trao đổi ngày càng nhiều Tuy nhiên, những vi phạm liên quan đến thông tin cá nhân cũng ngày một nhiều hơn, gây tâm lý e ngại cho các cá nhân, tổ chức khi tham gia giao dịch thương mại điện tử
Thanh toán điện tử tiếp tục phát triển nhanh và đang đi vào cuộc sống
Nếu như năm 2007 được đánh giá là năm đánh dấu bước phát triển nhanh chóng
và toàn diện của thanh toán điện tử, thì năm 2008 là năm thanh toán điện tử khởi sắc
và thực sự đi vào cuộc sống
Đối với hệ thống thanh toán ở tầm quốc gia, sau nhiều năm tích cực triển khai, ngày 8 tháng 11 năm 2008 Ngân hàng Nhà nước Việt Nam đã chính thức đưa vào vận hành Hệ thống thanh toán điện tử liên ngân hàng giai đoạn II Hiện nay, Ngân hàng Nhà nước Việt Nam đang đẩy mạnh công tác kết nạp thành viên mới, mở rộng phạm
vi hoạt động của Hệ thống
Dịch vụ thanh toán thẻ cũng có một năm phát triển tích cực Đến hết năm 2008, các tổ chức ngân hàng đã phát hành khoảng 13,4 triệu thẻ thanh toán, tăng 46% so với năm 2007 Toàn hệ thống ngân hàng đã lắp đặt và đưa vào sử dụng 7.051 máy ATM, tăng trên 46% so với năm 2007, số lượng máy POS đạt trên 24.000 chiếc Hệ thống thanh toán của hai liên minh thẻ lớn nhất cả nước là Banknetvn và Smartlink với trên 90% thị trường thẻ toàn quốc đã được kết nối liên thông
Trang 11Với sự năng động, tích cực của các ngân hàng và doanh nghiệp, một loạt dịch vụ thanh toán điện tử với những giải pháp khác nhau đã xuất hiện Đặc biệt số lượng website thương mại điện tử cung cấp dịch vụ thanh toán trực tuyến có sự phát triển nhảy vọt Nếu năm 2007 chỉ có một vài website thương mại điện tử cung cấp dịch vụ này thì năm 2008 đã có trên 50 website của các doanh nghiệp thuộc nhiều lĩnh vực kinh doanh khác nhau như ngân hàng, hàng không, du lịch, siêu thị bán hàng tổng hợp, v.v… triển khai thành công việc cung cấp dịch vụ thanh toán trực tuyến cho khách hàng
Theo Báo cáo của Ngân hàng Nhà nước Việt Nam, với sự phát triển nhanh chóng của các dịch vụ thanh toán không dùng tiền mặt, tỷ lệ thanh toán bằng tiền mặt trong tổng phương tiện thanh toán đã giảm xuống còn 14% vào thời điểm cuối năm 2008, so với mức 18% của năm 2007
Về mặt pháp lý, hiện tại chúng ta đang có bốn văn bản pháp lý liên quan đến hoạt động chứng thực điện tử, đó là :
- Luật Giao dịch điện tử do Uỷ ban Khoa học Công nghệ và Môi trường của Quốc hội chủ trì ban hành năm 2005
- Nghị định 26 của Chính phủ về quản lý, cung cấp và sử dụng dịch vụ chứng thực điện tử do Bộ Bưu chính, Viễn thông chủ trì, ban hành ngày 15 tháng 2 năm 2007, trong đó quy định Ban cơ yếu Chính phủ tành lập và duy trì hoạt động của Tổ chức cung cấp dịch vụ chứng thực chữ ký ố chuyên dùng phục vụ các cơ quan thuộc hệ thống chính trị, còn lại các hệ thống cung cấp dịch vụ chứng thực khác do Bộ Thông tin và Truyền thông quản lý
- Nghị định số 73/2007/NĐ-CP ngày 8 tháng 5 năm 2007 của chính phủ về hoạt động nghiên cứu, sản xuất, kinh doanh và sử dụng mật mã để bảo vệ thông tin không thuộc phạm vi bí mật Nhà nước
- Quyết định 59 ngày 31 tháng 12 năm 2008 của bộ Thông tin và Truyền thông ban hành danh mục tiêu chuẩn bắt buộc áp dụng về chữ ký số và dịch vụ chứng thực chữ ký số Quyết định này đã đưa ra 6 loại tiêu chuẩn trong giao dịch điện tử được quy định bắt buộc phải áp dụng chữ ký số và chứng thực số, bao gồm:
Chuẩn bảo mật cho HSM (thiết bị lưu trữ bảo mật)
Chuẩn mã hóa
Chuẩn yêu cầu và trao đổi chứng thư số
Chuẩn về chính sách và quy chế chứng thực chữ ký số
Chuẩn về lưu trữ và truy xuất chứng thư số
Chuẩn về kiểm tra trạng thái chứng thư số
Trang 12Ba trong bốn văn bản pháp lý đã nêu ở trên dù ít hay nhiều đều có đề cập đến tính pháp lý của chữ ký số cũng như quy định một số điều liên quan đến việc quản lý, cung cấp, sử dụng dịch vụ chứng thực điện tử Văn bản còn lại liên quan đến việc sử dụng mật mã trong chứng thực điện tử Các hệ thống PKI ở Việt Nam đang còn ở thời kỳ đầu, để có thể cung cấp dịch vụ chứng thực điện tử một cách tốt nhất, chúng ta cần quan tâm đến các vấn đề sau trong việc xây dựng hệ thống cung cấp dịch vụ này :
- Xây dựng hành lang pháp lý
- Xây dựng hệ thống tiêu chuẩn về chứng thực điện tử
- Triển khai xây dựng hệ thống CA
- Giám sát đánh giá hoạt động của các CA
- Tuyên truyền hướng dẫn người sử dụng và đào tạo đội ngũ kỹ thuật
- Khuyến khích xây dựng các phần mềm hỗ trợ chứng thực điện tử
- Chứng thực chéo
- Hợp tác quốc tế về chứng thực điện tử
Như vậy, TMĐT ở Việt Nam đã có những bước phát triển nhất định Kết quả đó
có được là do hai nguyên nhân chính là người tiêu dùng đã tin tưởng hơn vào việc bán hàng điện tử trực tuyến và các doanh nghiệp đã chú trọng nâng cao hiệu quả hoạt động của website bằng những chính sách cụ thể để thu hút người tiêu dùng tham gia mua hàng trực tuyến
1.2 Nhu cầu bảo mật và an toàn thông tin cho TMĐT
Hẳn chúng ta còn nhớ cuộc tấn công từ chối dịch vụ ồ ạt vào các trang web TMĐT lớn nhất trên thế giới như Yahoo.com, Amazon.com, Buy.com Các 'siêu thị' điện tử khổng lồ này đột nhiên bị hàng triệu khách 'ma' xông vào khiến tắc nghẽn và ngừng hoạt động vài ngày, gây thiệt hại khoảng 1,5 tỷ USD Người có tài điểu khiển những mày tính “ma” này chỉ là một cậu bé chưa đến tuổi trưởng thành đã bị bắt vài tháng sau đó Đã rất nhiều lần các thông tin về thẻ tín dụng bị đánh cắp trong các kho dữ liệu của các hệ thống TMĐT Những kẻ trộm 'ác' thì sử dụng thẻ tín dụng đánh cắp để thực hiện một giao dịch nào đó nhằm rút tiền đút vào túi mình, còn một số không ít kẻ trộm 'lành' thì đưa thông tin lên một trang web và thêm vài lời bình luận Một trong những
kẻ trộm 'lành' có tên lóng là Curador đã làm như vậy sau khi ăn cắp được 5000 mã số thẻ từ các website như: www.shoppingthailand.com và đăng kèm thêm một lời cám ơn Bill Gates vì đã tạo ra phần mềm SQL Server với quyền "cho cả thế giới đọc" trong cấu hình mặc định Các CSDL mà Curador đột nhập đã sử dụng SQL Server mà không sửa đổi gì cấu hình 'nguyên bản từ Bill Gates' này Một công ty Nga đã có một pha trình diễn ấn tượng trước giới báo chí nước ngoài khi họ dễ dàng chui lọt vào 20 trang web TMĐT để chứng tỏ là họ có thể lấy cắp 25.000 số thẻ tín dụng và các thông tin đi
Trang 13kèm Những lỗ hổng mà họ lợi dụng để chui vào là do những người phát triển trang web đã tạo ra lỗi trong chương trình ứng dụng của mình Điều này làm cho khách hàng thực hiện giao dịch điện tử mất lòng tin trước tình hình bảo mật và an toàn của TMĐT
Mà sự tin tưởng là nền tảng của mọi giao dịch thương mại thành công, điều này càng đúng đối với TMĐT Nhiều cuộc điều tra cho thấy một trong những trở ngại chính cho TMĐT chính là thiếu sự tin tưởng giữa hai hay nhiều bên giao dịch 'ảo' trên mạng Sự việc còn bị làm xấu đi khi các kẻ phá hoại cố tình hạ thấp uy tín của 'cửa hàng' TMĐT của bạn bằng đủ mọi cách khác nhau: sửa chữa nội dung trang web, đưa vào các thông tin xấu, tạo các trang web có địa chỉ gần giống để làm lạc hướng khách hàng, đưa các thông tin bí mật của khách hàng ra ngoài, chuyển khách hàng đến một trang web khác khi họ định truy cập vào trang chủ của website TMĐT (kỹ thuật Defacing), dùng kỹ thuật Cross-site scripting và tạo website giả nhằm ăn cắp thông tin thẻ và thông tin cá nhân của khách hàng trong khi khách hàng vẫn tưởng đang giao dịch với trang web TMĐT của bạn
Từ trên cho thấy, nhu cầu bảo mật và an toàn thông tin cho TMĐT là rất lớn và chính an toàn TMĐT là một phần không thể thiếu được của TMĐT Để bảo mật và an toàn thông tin trong giao dịch TMĐT có hai vấn đề: một là, phải xác định được chính xác phía đang giao dịch qua mạng; hai là, người tiêu dùng phải có cơ sở để tin vào hệ thống TMĐT mà họ đang giao dịch có độ an toàn cao (ví dụ, thông tin giao dịch được
mã hoá trên đường truyền bằng SSL) Cả hai khía cạnh trên thường được giải quyết bằng kỹ thuật chứng thư số và chữ ký điện tử
Vậy bảo vệ hệ thống TMĐT như thế nào? Thông thường, các giải pháp bảo vệ hệ thống TMĐT có thể được chia làm 3 loại
Thứ nhất: bảo vệ hệ thống cung cấp dịch vụ (hệ thống máy chủ Front- End và Back- End), bao gồm:
Bảo vệ mạng: sử dụng tường lửa hai lớp, áp dụng thiết bị phát hiện xâm nhập cho mạng và cho máy chủ
Bảo vệ ứng dụng và hệ thống: kiểm soát các lỗ hổng ứng dụng, nhất là ứng dụng web Ứng dụng tường lửa thế hệ mới có chống tấn công tầng ứng dụng, chống virus, kiểm soát truy cập hệ thống, mã hóa dữ liệu trên server,
Thứ hai: bảo vệ các giao dịch bao gồm: Mã hoá nội dung giao dịch, bảo đảm giữ
bí mật; Bảo đảm tính toàn vẹn của giao dịch, mọi thay đổi phải được phát hiện; Xác định được nguồn gốc của giao dịch, bảo đảm chống từ chối giao dịch hay giao dịch từ nguồn giả Các biện pháp kỹ thuật bảo vệ các giao dịch này là kỹ thuật mã hoá, chứng thực số và chữ ký số
Thứ ba: bảo vệ các khách hàng giao dịch Sử dụng thẻ cứng để xác thực, chống virus và Trojan, sử dụng tường lửa cá nhân
Trang 14Tuy nhiên trong luận văn này chỉ đề cập và tập trung giải quyết vào khía cạnh thứ hai Và để giải quyết vấn đề này, người ta thường dùng giải pháp xây dựng hệ thống PKI Trước hết chúng ta sẽ đi nghiên cứu khảo sát về thực trạng PKI trên thế giới và tại Việt Nam
1.2.1 Khảo sát thực trạng PKI trên thế giới và tại Việt Nam
1.2.2 Khảo sát thực trạng PKI ở một số nước trên thế giới
Trong vài năm gần đây dịch vụ chứng thực điện tử đã ra đời và ngày càng phát triển ở nhiều nước trên thế giới Đây là dịch vụ được cung cấp bởi các đơn vị có thẩm quyền chứng thực Rất nhiều quốc gia trên thế giới đã cung cấp dịch vụ chứng thực điện tử Một số CA nổi tiếng trên thế giới có thể kể đến như CA của các công ty VeriSign, WISeKey, eTrust, có chi nhánh tại rất nhiều nước trên thế giới
Để hỗ trợ phát triển dịch vụ chứng thực điện tử, nhiều nước đã ban hành các văn bản pháp lý về hoạt động chứng thực điện tử, cấp phép cho các CA và tổ chức hệ thống CA Về cấu trúc hệ thống cung cấp dịch vụ chứng thực điện tử, có nước tổ chức theo sơ đồ hình cây trong đó mức cao nhất là root CA quốc gia, mức dưới là các CA cấp dưới Bên cạnh đó cũng có quốc gia không thành lập root CA mà tổ chức các CA theo dạng mắt lưới hoặc riêng rẽ
Một số nước trong khu vực đã phát triển khá mạnh dịch vụ chứng thực điện tử Nhật Bản đã ban hành Luật về chữ ký điện tử và các dịch vụ chứng thực vào năm
2001 Hàn Quốc ban hành luật chữ ký điện tử vào năm 1999 và ban hành bản sửa đổi vào năm 2001 Hồng Kông ban hành sắc lệnh về giao dịch điện tử vào năm 2000 Đài Loan ban hành luật chữ ký số vào năm 2001 Malaysia ban hành luật chữ ký số vào năm 1997 Singapore ban hành luật giao dịch điện tử vào năm 1998 và Quy định về giao dịch điện tử cho các CA vào năm 1999 Thái Lan ban hành luật giao dịch điện tử năm 2001
Tuy chứng thực điện tử phát triển khá nhanh và được sử dụng khá hiệu quả trong rất nhiều ứng dụng như vậy nhưng không phải không có những yếu tố cản trở sự phát triển của nó Ở đây có thể nêu lên một số yếu tố chính cản trở sự phát triển của chứng thực điện tử, đó là :
Còn ít phần mềm ứng dụng hỗ trợ sử dụng chứng thực điện tử
Giá thành hệ thống CA cũng như phí cung cấp dịch vụ cao
Thiếu hiểu biết về PKI
Có quá nhiều công nghệ được sử dụng
Khó sử dụng đối với người dùng
Khả năng kết hợp làm việc giữa các hệ thống chưa tốt
Trang 15 Thiếu việc hỗ trợ quản lý
Tóm lại việc phát triển chứng thực điện tử là một xu hướng tất yếu trên thế giới nhưng trong quá trình phát triển cũng gặp những rào cản nhất định Các nước hầu hết
đã triển khai cung cấp dịch vụ chứng thực điện tử đặc biệt là những nước có các ứng dụng trên mạng phát triển
1.2.3 Khảo sát thực trạng PKI ở Việt Nam
Sau gần 5 năm, việc triển khai PKI và chứng thực điện tử ở Việt Nam được đánh giá là đã đi đúng hướng và bài bản, nhưng tiến độ còn quá chậm Hiện nay, có hai hạ tầng chính phát triển hệ thống PKI Quốc gia là Bộ TT&TT và Ban Cơ yếu Chính phủ Tới thời điểm hiện tại, thống kê của Bộ TT&TT cho thấy giao dịch điện tử B2C, B2B chiếm tới 2,5% GDP với những con số rõ nét là 9.300 website với doanh thu từ mua sắm trực tuyến, điện thoại lên tới 450 triệu USD và 3000 DN có doanh thu khoảng 1,5 tỷ USD Song song với việc đó, nhiều dịch vụ hành chính công nay đã từng bước
áp dụng công cụ trực tuyến có sử dụng chữ ký số như Tax của Tổng cục thuế, Banking của Ngân hàng Nhà nước
E-Ban Cơ yếu Chính phủ là tổ chức đầu tiên của nhà nước áp dụng và đưa ra các giải pháp quản lý PKI nhằm mục đích phục vụ cho các cơ quan thuộc hệ thống chính trị Cho tới nay, đã triển khai được trên nhiều bộ, ban, ngành như Bộ Công an, Bộ Ngoại giao và các cơ quan đảng Mục tiêu phấn đấu trong thời gian tới, đơn vị này sẽ triển khai áp dụng lên toàn bộ các đơn vị hành chính, tạo tiền đề phát triển cho chính phủ điện tử
Đến nay, Bộ Tài chính đã ra quyết định sử dụng hệ thống chứng thực chữ ký số của VNPT cho giai đoạn thí điểm "Người nộp thuế nộp hồ sơ khai thuế qua mạng Internet" Ngoài ra, ngày 14/08/2009 vừa qua, Tổng cục Thuế cũng bắt đầu triển khai thí điểm chương trình này tại TP Hồ Chí Minh, áp dụng ban đầu cho 100 DN lựa chọn, sau đó sẽ mở rộng cho phép tất cả các DN trên địa bàn thành phố được đăng ký sử dụng Tiếp đó sẽ triển khai tại Hà Nội, Đà Nẵng và sẽ có báo cáo tổng kết vào cuối năm nay để từ đó chuẩn bị mở rộng hệ thống ra cả nước trong năm 2010
Về phía khối hệ thống ngân hàng, Cục CNTT NH Nhà nước cũng đang phát triển, nâng cấp và hoàn thiện phần mềm CA Bên cạnh đó tích hợp các nghiệp vụ khác như
Kế toán giao dịch; Thị trường mở và Hệ thống báo cáo thống kê Từ đó hoàn thiện hệ thống của khối ngân hàng theo cơ sở pháp lý
Nhìn chung, việc phát triển PKI cũng như chứng thực điện tử đang triển khai đúng hướng và bài bản Tuy nhiên bên cạnh đó cũng không tránh khỏi những rào cản
về pháp lý, nhận thức dẫn tới việc tiến độ triển khai đại trà mô hình này vẫn còn chậm Trong thời gian tới, cần có sự kết hợp chặt chẽ giữa các bộ, ban ngành, các tổ chức chính phủ và các DN để từ đó thắt chặt sự liên kết, giao dịch, hình thành một hạ tầng vững chắc, tạo tiền đề thúc đẩy thương mại điện tử và chính phủ điện tử phát triển
Trang 16Từ những kết quả ứng dụng PKI trong nước và trên thế giới như trên, ta có thể khẳng định PKI là một cơ sở hạ tầng về mật mã khóa công khai tin tưởng để lựa chọn cho mục đích xây dựng lên những hệ thống thông tin lớn an toàn
Tóm lại, trong phần này chúng ta đã tìm hiểu tổng quan về TMĐT và nhu cầu bảo mật và an toàn thông tin cho TMĐT Qua đó khảo sát thực trạng các hệ thống PKI dùng để đáp ứng nhu cầu bảo mật và an toàn thông tin trong nước cũng như nước ngoài Sau đây chúng ta sẽ đi nghiên cứu một số cơ sở lý thuyết mật mã
1.3 Cơ sở lý thuyết mật mã
1.3.1 Khái niệm về mã hóa
Mã hóa là công cụ cơ bản của việc đảm bảo an toàn dữ liệu Ban đầu, mật mã học được sử dụng phổ biến cho quân đội, qua nhiều cuộc chiến tranh, vai trò của mật mã ngày càng quan trọng và mang lại nhiều thành quả không nhỏ như các hệ mã cổ điển Caeser, Playfair,… Chúng đã là nền tảng cho mật mã học ngày nay
Ngày nay, khi toán học được áp dụng cho mật mã học thì lịch sử của mật mã học
đã sang trang mới Việc ra đời các hệ mã hóa đối xứng không làm mất đi vai trò của các hệ mật mã cổ điển mà còn bổ sung cho ngành mật mã nhiều phương pháp mã hóa mới Từ năm 1976, khi hệ mật mã phi đối xứng ra đời, nhiều khái niệm mới gắn với mật mã học ra đời: chữ ký số, hàm băm, mã đại diện, chứng thư số Mật mã học không chỉ áp dụng cho quân sự mà còn cho các lĩnh vực kinh tế xã hội khác
Hiện nay có nhiều phương pháp mã hóa khác nhau, mỗi phương pháp có ưu, nhược điểm riêng Tùy theo yêu cầu của môi trường ứng dụng nào người ta có thể dùng phương pháp này hay phương pháp kia Có những môi trường cần phải an toàn tuyệt đối bất kể thời gian và chi phí Có những môi trường lại cần giải pháp dung hòa giữa bảo mật và chi phí
Các thông điệp cần chuyển đi và cần được bảo vệ an toàn gọi là bản rõ và được ký hiệu là P Nó có thể là một dòng vào các bit, các file, âm thanh, số hóa,… Bản rõ được dùng để lưu trữ hoặc để truyền đạt thông tin Trong mọi trường hợp bản rõ là thông điệp cần mã hóa Quá trình xử lý một thông điệp trước khi gửi được gọi là quá trình
mã hóa Một thông điệp đã được mã hóa được gọi là bản mã và được ký hiệu là C Quá trình xử lý ngược lại từ bản mã thành bản rõ gọi là quá trình giải mã
Trang 17 K (Key) là tập hợp các bản khóa có thể
E (Encryption) là tập hợp các qui tắc mã hóa có thể
D (Decryption) là tập hợp các qui tắc giải mã có thể
Với mỗi k є K có một hàm lập mã Ek є E (Ek : P C) và một hàm giải mã Dk є
D (Dk : C P) sao cho Dk(Ek(x)) = x, với mọi x є P
Hiện nay các hệ mã hóa được phân làm hai loại chính là: Hệ mã hóa khóa đối xứng và hệ mã hóa phi đối xứng hay còn gọi là hệ mã hóa khóa công khai
Một số hệ mã hóa khóa đối xứng là: Caesar, IDEA, DES, Triple DES…
Một số hệ mã hóa phi đối xứng là: RSA, Elgamal, ECC…
1.3.3 Những yêu cầu đối với hệ mã hóa
Hệ mã hóa phải cung cấp một mức cao về độ tin cậy, tính toàn vẹn, sự không từ chối và sự xác thực
Độ tin cậy: Cung cấp sự bí mật cho các thông báo và dữ liệu được lưu bằng
việc che dấu thông tin sử dụng các kỹ thuật mã hóa
Tính toàn vẹn: Cung cấp sự bảo đảm với tất cả các bên rằng thông báo còn lại
không thay đổi từ khi tạo ra cho đến khi người nhận mở nó
Tính không từ chối: Có thể cung cấp một cách xác nhận rằng tài liệu đã đến từ
ai đó ngay cả khi họ cố gắng từ chối nó
Tính xác thực: Cung cấp hai dịch vụ: đầu tiên là nhận dạng nguồn gốc của một
thông báo và cung cấp một vài sự bảo đảm rằng nó là đúng sự thực Thứ hai là kiểm tra đặc tính của người đang logon một hệ thống và sau đó tiếp tục kiểm tra đặc tính của
họ trong trường hợp ai đó cố gắng đột nhiên kết nối và giả dạng là người sử dụng
1.3.4 Mã hóa khóa đối xứng
Hệ mã hóa khóa đối xứng hay là hệ mã hóa mà khóa mã hóa có thể “dễ” tính toán
ra được từ khóa giải mã và ngược lại Trong nhiều trường hợp, khóa mã hóa và khóa giải mã là giống nhau Hệ mã hóa này còn gọi là hệ mã hóa khóa bí mật
Khóa sử dụng trong hệ mã hóa này phải được giữ bí mật và phải được gửi đi trên kênh an toàn Độ an toàn của hệ mã hóa này phụ thuộc vào sự bí mật của khóa
Có hai loại mã hóa khóa đối xứng: Mã hóa theo từng khối (DES, IDEA, RC2,…)
và mã hóa theo các bit dữ liệu (RC4)
Ưu điểm của mã hóa khóa đối xứng
Tốc độ mã hóa nhanh
Trang 18 Sử dụng đơn giản
Nhược điểm của hệ mã hóa khóa đối xứng
Hệ mã hóa khóa đối xứng không an toàn nếu có xác suất cao khóa người gửi bị lộ
Vấn đề quản lý và phân phối khóa là khó khăn và phức tạp Người gửi và người nhận phải luôn thống nhất với nhau về khóa Việc thay đổi khóa là khó và dễ bị lộ
Có khuynh hướng cung cấp khóa dài mà nó phải được thay đổi thường xuyên cho mọi người, trong khi vẫn duy trì cả tính an toàn lẫn hiệu quả chi phí, điều này sẽ cản trở nhiều tới việc phát triển hệ mã hóa khóa đối xứng
Nơi ứng dụng:
Sử dụng trong môi trường mà khóa dễ dàng được trao đổi như là trong cùng một văn phòng
Mã hóa các thông tin để lưu trên các thiết bị lưu trữ
Hiện nay có một số loại mã hóa khóa đối xứng như DES, Triple DES, DESX, GDES, RDES, RC2, RC4, RC5, IDEA, Blowfish
Để khắc phục điểm hạn chế của phương pháp mã hóa khóa đối xứng, trong quá trình trao đổi khóa bí mật, người ta sử dụng phương pháp mã hóa phi đối xứng
1.3.5 Mã hóa khóa công khai
Vào những năm 1970 Diffie và Hellman đã phát minh ra một hệ mã hóa mới được gọi
là hệ mã hóa công khai hay hệ mã hóa không đối xứng Hiện nay có một số loại mã
hóa công khai như RSA, ElGamal
Thuật toán mã hóa công khai là khác biệt so với thuật toán đối xứng Chúng được
thiết kế sao cho khóa sử dụng vào việc mã hóa là khác so với khóa giải mã Hơn nữa
khóa giải mã không thể tính toán được từ khóa mã hóa Chúng được gọi với tên là mã hóa công khai bởi vì khóa để mã hóa có thể công khai, một người bất kỳ có thể sử dụng khóa công khai để mã hóa thông báo, nhưng chỉ một vài người có đúng khóa giải
mã thì mới có khả năng giải mã Trong nhiều hệ thống, khóa mã hóa gọi là khóa công
khai (public key), khóa giải mã thường được gọi là khóa riêng (private key)
Khóa mã hóa và khóa giải mã tương ứng có quan hệ toán học với nhau và được sinh ra sau khi thực hiện các hàm toán học Nhưng các hàm toán học này luôn thỏa mãn điều kiện là nếu kẻ xấu biết Public Key và cố gắng tính toán ra Private Key, thì sẽ phải đương đầu với trường hợp nan giải, không khả thi về thời gian
Một cặp khóa gồm Public Key và Private Key được gọi là Key Pair
Trang 19Một thông điệp được mã hóa bằng Public Key, chỉ có thể giải mã được bằng Private Key tương ứng Một thông điệp được mã hóa bằng Private Key, chỉ có thể giải
mã được bằng Public Key tương ứng của nó
Kẻ xấu muốn tính toán ra thông điệp ban đầu dựa vào Public Key và bản mã, thì phải giải quyết bài toán “khó” với số phép thử là vô cùng lớn, do đó không khả thi Giả sử A muốn gửi cho B một thông điệp: Đầu tiên B phải sinh cặp khóa Public Key – Private Key Nếu A muốn gửi cho B một thông điệp được mã hóa, A yêu cầu Public Key của B B gửi cho A Public Key của B trên mạng không an toàn và A dùng khóa này để mã hóa thông điệp A gửi thông điệp được mã hóa cho B và B giải mã bằng Private Key của B
Để thực hiện được phương thức mã hóa dùng khóa công khai, có một số vấn đề cần giải quyết như sau:
Làm thế nào để A có thể biết chính xác Public Key mà A sử dụng đúng là Public Key của B ?
Làm thế nào để B biết được chính xác là thông điệp được gửi đi từ A?
Chúng ta xem xét các tình huống có thể bị tấn công đối với phương thức mã hóa khóa công khai như sau:
Trường hợp có kẻ nghe trộm thông tin trao đổi trên mạng:
C là một người nghe trộm, C có thể lấy được bản mã chuyển từ A đến B, nhưng không thể giải mã được bản mã này vì C không có Private Key của B
Trường hợp giả mạo khóa công khai:
Vấn đề đặt ra là làm thế nào để A có thể biết chính xác Public Key mà A sử dụng đúng là Public Key của B Trong trường hợp này, nếu D giải mạo B gửi Public Key của D đến A (A nhận được Public Key của D mà không phải là của B), và A vẫn mã hóa thông điệp của mình; khi đó thông điệp đến D sẽ vẫn giải mã được do D có Private Key của mình Để khắc phục hạn chế này, người ta xây dựng một hệ thống các tổ chức thứ ba đóng vai trò trung gian trong việc xác thực tính đúng đắn của một Public Key
Đó là các tổ chức xây dựng hệ thống chứng thực điện tử (trong những phần sau sẽ trình bày kỹ hơn về Certificate)
Trường hợp sử dụng Private Key để mã hóa:
Nếu như A sử dụng Private Key của mình để mã hóa một thông điệp và gửi tới B Khi đó, B có thể sử dụng Public Key của A để giải mã thông điệp từ A Một người thứ
ba C cũng có Public Key của A nên nếu nhận được thông điệp gửi từ A cũng có thể giải mã được và đọc nó Do đó, A không thể sử dụng Private Key của mình để mã hóa một thông điệp Tuy nhiên dựa vào đặc điểm ánh xạ 1 : 1 giữa Private Key và Public
Trang 20Key ta có thể thấy rằng thông điệp được mã hóa là được gửi từ A mà không phải là
một người khác Điều này cũng trả lời cho câu hỏi 2
Một hạn chế của phương thức mã hóa khóa công khai là làm giảm tốc độ thực hiện thao tác xuống từ 100 đến 1000 lần so với phương thức mã hóa khóa đối xứng Do đó, phương thức mã hóa này ít được sử dụng để mã hóa dữ liệu kích thước lớn Phương thức này thường được sử dụng cho giai đoạn khởi đầu của kết nối giữa hai thực thể cần giao tiếp với nhau, và sau đó một khóa bí mật được tạo để thực hiện quá trình trao đổi
dữ liệu (khóa bí mật này chỉ tồn tại trong một phiên làm việc duy nhất) Việc sử dụng
kỹ thuật mã hóa khóa công khai cho quá trình bắt tay giữa hai thực thể cần trao đổi thông tin có yêu cầu bảo mật, kết hợp với dùng hệ mã hóa khóa bí mật cho quá trình trao đổi dữ liệu tạo thành một phương thức mã hóa lai Để thực hiện được phương thức
mã hóa lai, Netscape đã đưa ra giao thức SSL thực hiện các quá trình trên[5]
Qua các phân tích trên, chúng ta thấy rằng có hai vấn đề cần phải khắc phục khi sử dụng phương thức mã hóa dựa trên nền tảng khóa công khai đó là:
Nếu sử dụng Public Key để mã hóa một thông điệp, thì đảm bảo thông điệp đó
là hoàn toàn bảo mật, nhưng cần phải kiểm tra tính xác thực của Public Key
Nếu sử dụng Private Key để mã hóa một thông điệp, thì có thể giải mã được bởi nhiều người có được Public Key, nhưng lại có thể sử dụng phương thức này để kiểm tra tính xác thực của người gửi thông điệp
Nơi ứng dụng:
Sử dụng chủ yếu trên các mạng công khai như Internet Ví dụ sử dụng khóa công khai trong các giao dịch điện tử
1.3.6 Thuật toán băm
Để đảm bảo tính toàn vẹn của dữ liệu (không bị thay đổi so với dữ liệu ban đầu),
người ta đưa ra các phương thức mã hóa một chiều sử dụng các thuật toán Băm
Hoạt động của phương thức mã hóa một chiều dựa trên nguyên lý của hàm băm (hashing function) Theo đó, đầu ra của phương thức này là một đại diện thông điệp (Message Digest) có chiều dài cố định (message này còn gọi là Digest hoặc Hash, và thông thường có kích thước nhỏ hơn message ban đầu) Vì Message Digest được tạo ra thường ngắn, nên phương thức này còn được gọi là phương thức tóm lược thông điệp Với mỗi đầu vào Plaintext sẽ chỉ có duy nhất 1 kết quả đầu ra tương ứng và từ Message Digest “khó” tìm ra message dạng Plaintext ban đầu Message (dạng Plaintext) sau khi thực hiện hàm hashing sẽ tạo ra một chuỗi các ký tự - đặc trưng cho message đầu vào Giải thuật tạo Message Digest là thuật toán một chiều hay thường gọi là thuật toán hash
Thuật toán hashing có 2 đặc điểm chính như sau:
Trang 21 “Khó” tạo ra message ban đầu dựa trên digest của nó (nói cách khác là thuật toán hashing phải đảm bảo có tính một chiều, “khó” thực hiện theo chiều ngược lại)
Không tồn tại 2 message khác nhau mà có cùng digest giống nhau
Nếu chiều dài của digest là m bits, sẽ cần phải thử 2m message để tìm ra một message với digest mong muốn tương ứng và thực hiện 2m/2 message để tìm ra 2 message có cùng một digest Do đó các hàm thực hiện message-digest phải có đầu ra ít nhất là 128 bits, vì tối thiểu là 264 là không thể tính toán được với các khả năng tính toán hiện nay
Nơi ứng dụng:
Phương pháp này được sử dụng rộng rãi trong ngành khoa học máy tính như để tăng tốc quá trình đánh chỉ mục của cơ sở dữ liệu, kiểm tra sự toàn vẹn về nội dung của thông tin được lưu trữ hay truyền trên đường truyền…
Một ứng dụng điển hình của phương pháp tóm lược thông điệp là phương pháp kiểm tra CRC (cyclic redundancy check), được sử dụng trong hầu hết các cơ chế truyền/nhận dữ liệu
Phương pháp này là nền tảng của việc tạo và kiểm tra chữ ký số
Hiện nay phương pháp này được sử dụng nhiều trong các ứng dụng TMĐT Nhiều hệ thống ngân hàng trên thế giới sử dụng phương pháp này nhằm đảm bảo tính toàn vẹn cho các giao dịch điện tử
1.4 Chữ ký số
1.4.1 Khái niệm chữ ký số
Với những thỏa thuận thông thường, hai đối tác xác nhận sự đồng ý bằng cách kí tay vào cuối các hợp đồng Và bằng cách nào đó người ta phải thể hiện đó là chữ ký của họ và kẻ khác không thể giả mạo Mọi cách sao chép trên văn bản thường dễ bị phát hiện vì bản sao có thể phân biệt được với bản gốc
Các giao dịch trên mạng cũng được thực hiện theo cách tương tự như vậy Nghĩa
là người gửi và người nhận cũng phải ký vào hợp đồng Việc ký trên các văn bản truyền qua mạng khác với văn bản giấy bình thường bởi nội dung của văn bản đều được biểu diễn dưới dạng số hóa (chỉ dùng hai số 0 và 1, ta gọi văn bản này là văn bản số) Việc giả mạo và sao chép lại đối với văn bản số là việc hoàn toàn dễ dàng và không thể phân biệt được bản gốc với bản sao Vậy một chữ ký ở cuối văn bản loại này không thể chịu trách nhiệm đối với toàn bộ nội dung văn bản Chữ ký thể hiện trách nhiệm đối với toàn bộ văn bản là chữ ký được ký trên từng bit văn bản
Trang 22Thứ hai là vấn đề về kiểm tra Chữ ký thông thường được kiểm tra bằng cách so sánh nó với các chữ ký xác thực khác Ví dụ, ai đó ký một tấm séc để mua hàng, người bán phải so sánh chữ ký trên mảnh giấy với chữ ký nằm ở mặt sau của thẻ tín dụng để kiểm tra Dĩ nhiên, đây không phải là phương pháp an toàn vì nó dễ dàng bị giả mạo Chữ ký số có thể được kiểm tra nhờ dùng một thuật toán kiểm tra công khai Như vậy, bất kỳ ai cũng có thể kiểm tra được chữ ký số
3 K không gian khoá là tập hữu hạn các khoá có thể
4 Với mỗi K thuộc K tồn tại một thuật toán kí sigk S và là một thuật toán xác minh verk V Mỗi sigk : PA và ver
k: P×a {true,false} là những hàm sao cho
mỗi thông điệp xP và mối chữ kí ya thoả mãn phương trình dưới đây
Với mỗi k thuộc K hàm sigk và verk là các hàm có thời gian đa thức verk sẽ là hàm công khai, sigk là bí mật Không thể dể dàng tính toán để giả mạo chữ kí của Bob trên thông điệp x Nghĩa là x cho trước, chỉ có Bob mới có thể tính được y để verk = True Một sơ đồ chữ kí không thể an toàn vô điều kiện vì Oscar có thể kiểm tra tất cả các chữ số y có thể có trên thông điệp x nhờ dùng thuật toán verk công khai cho đến khi anh ta tìm thấy một chữ kí đúng Vì thế, nếu có đủ thời gian Oscar luôn luôn có thể giả mạo chữ kí của Bob Như vậy, giống như trường hợp hệ thống mã khoá công khai, mục đích của chúng ta là tìm các sơ đồ chữ kí số an toàn về mặt tính toán
Các bước để tạo ra chữ ký điện tử như sau:
Đưa thông điệp D cần gửi qua hàm băm, tạo ra Digest là d
Mã hóa d bằng khóa Private của người gửi, để tạo ra chữ ký điện tử d 1
Mã hóa thông điệp và chữ ký bằng khóa Public key của người nhận và gửi đi
True nếu y=sig(x) False nếu y≠sig(x)
False nếu y≠sig(x) verk =
Trang 23Thuật toán Hash
Dữ liệu D
d
Chữ ký d 1
Mã hóa
Sender’s Private Key
Hình 1-1 Sơ đồ tạo chữ ký
Người nhận sẽ giải mã thông điệp và chữ ký bằng khóa Private key của mình, giả
sử thu được thông điệp D‟ và chữ ký d1‟ Sau đó, giải mã chữ ký d1‟ bằng khóa Public key của người gửi để lấy d‟ ra Sau đó cho thông điệp D‟ qua hàm băm để tạo ra d‟‟ mới Đem so sánh d‟‟ này với d‟ nhận được Nếu chúng giống nhau nghĩa là D‟ chính
là D (không bị thay đổi, và do đúng người A gửi tới) Nếu D‟ khác D có nghĩa là thông điệp gốc đã bị thay đổi, điều này cũng có thể xảy ra khi khóa công khai và khóa bí mật không tương ứng
- Nếu d’=d” : Dữ liệu D không bị thay đổi.
- Nếu d’≠ d” : Dữ liệu D bị thay đổi.
So sánh
Dữ liệu nhận được d1'
Giải mã
Sender’s Public Key
Kết quả d’
Thuật toán Hash
Dữ liệu nhận được D’
Trang 24Như vậy, việc sử dụng chữ ký số theo cách trên vừa đảm bảo được tính bảo mật
(thông điệp và chữ ký được mã hóa bởi khóa công khai của người nhận trước khi gửi),
vừa đảm bảo tính toàn vẹn của thông điệp (vì kết quả băm là duy nhất, một chiều), vừa đảm bảo tính xác thực và tính chống chối bỏ (thông điệp nhận được là do chính người
A gửi đi vì chỉ duy nhất anh ta mới có khóa bí mật phù hợp với khóa công khai đã được sử dụng để giải mã) [5]
1.4.3 Các cách tấn công chữ ký điện tử
Khi nói đến chữ ký điện tử, chúng ta luôn mục tiêu an toàn lên hàng đầu Một chữ
ký điện tử chỉ thực sự được áp dụng trong thực tế nếu như nó được chứng minh là
không thể giả mạo Mục tiêu lớn nhất của kẻ tấn công các sơ đồ chữ ký chính là giả mạo chữ ký; điều này có nghĩa là kẻ tấn công sẽ sinh ra được chữ ký của người ký lên
thông điệp mà chữ ký này sẽ được chấp nhận bởi người xác nhận Trong thực tế các hành vi tấn công chữ ký điện tử hết sức đa dạng, để dễ dàng phân tích một sơ đồ chữ
ký là an toàn hay không người ta tiến hành kiểm nghiệm độ an toàn của chữ ký trước các sự tấn công sau:
Total break: Một kẻ giả mạo không những tính được thông tin về khoá riêng
còn có thể sử dụng một thuật toán sinh chữ ký tương ứng tạo ra được chữ ký cho thông điệp
Selective forgert: Kẻ tấn công có khả năng tạo ra được một tập hợp các chữ ký
cho một lớp các thông điệp nhất định, các thông điệp này được ký mà không cần phải
có khoá mật của người ký
Existential forgery: Kẻ tấn công có khả năng giả mạo chữ ký cho một thông
điệp, kẻ tấn công không thể hoặc có rất ít khả năng kiểm soát thông điệp được giả mạo này
Ngoài ra, hầu hết các chữ ký điện tử đều dựa vào cơ chế mã hoá khoá công khai, các chữ ký điện tử dựa trên cơ chế này có thể bị tấn công theo các phương thức sau:
Key-only attacks: Kẻ tấn công chỉ biết khóa chung của người ký
Message attacks: ở đây kẻ tấn công có khả năng kiểm tra các chữ ký khác nhau
có phù hợp với một thông điệp có trước hay không Ðây là kiểu tấn công rất thông dụng trong thực tế nó thường được chia làm 3 lớp:
o Known-message attack: Kẻ tấn công có chữ ký cho một lớp các thông
điệp
o Chosen-message attack: Kẻ tấn công dành được các chữ ký đúng cho
một danh sách các thông điệp trước khi tiến hành hoạt động phá huỷ chữ
ký, cách tấn công này là non-adaptive (không mang tính phù hợp) bởi vì thông điệp được chọn trước khi bất kỳ một chữ ký nào được gửi đi
Trang 25o Adaptive-chosen message attack: Kẻ tấn công được phép sử dụng người
ký như là một bên đáng tin cậy, kẻ tấn công có thể yêu cầu chữ ký cho các thông điệp mà các thông điệp này phụ thuộc vào khoá công khai của người ký, như vậy kẻ tấn công có thể yêu cầu chữ ký của các thông điệp phụ thuộc vào chữ ký và thông điệp dành được trước đây và qua đó tính toán được chữ ký
1.5 Kết chương
Trong chương này chúng ta đã tìm hiểu tổng quan về TMĐT, nhu cầu bảo mật và
an toàn thông tin cho TMĐT, khảo sát thực trạng các hệ thống PKI và tìm hiểu về kỹ thuật mật mã, chữ ký số… Sau đây chúng ta sẽ nghiên cứu cơ sở hạ tầng khóa công khai và mật mã sinh trắc nhằm xây dựng một hệ thống đảm bảo an toàn và bảo mật cho hệ thống thông tin
Trang 26Chương 2: CƠ SỞ HẠ TẦNG KHÓA CÔNG KHAI
VÀ MẬT MÃ SINH TRẮC
2.1 Cơ sở hạ tầng khóa công khai
2.1.1 Khái niệm PKI
Cơ sở hạ tầng khóa công khai có thể hiểu là: tập hợp các công cụ, phương tiện
cùng các giao thức bảo đảm an toàn truyền tin cho các giao dịch trên mạng máy tính công khai Đó là nền móng mà trên đó các ứng dụng, các hệ thống an toàn bảo mật
thông tin được thiết lập
2.1.2 Các dịch vụ và phạm vi ứng dụng của PKI
Các dịch vụ sử dụng PKI có khả năng đảm bảo bốn yêu cầu sau:
Bảo mật thông tin:
Các thực thể không được cấp quyền thì “khó” xem trộm bản tin
Toàn vẹn thông tin:
Đảm bảo cho thông tin “khó” bị thay đổi bởi những thực thể không được cấp quyền
Nhờ những khả năng đó, trên hệ thống PKI, các thực thể không biết mặt nhau, từ
xa có thể tiến hành các giao dịch trong sự tin cậy lẫn nhau
Theo nghĩa đầy đủ, PKI gồm ba phần chính:
Phần 1: Tập hợp các công cụ, phương tiện, các giao thức bảo đảm an toàn thông
tin
Trang 27Phần 2: Hành lang pháp lý: Luật giao dịch điện tử, các Qui định dưới luật
Phần 3: Các tổ chức điều hành (CA, RA, )
Ba thành phần trên thiết lập một hệ thống tin cậy trên mạng máy tính công khai Trong phạm vi luận văn này, tôi chỉ giới thiệu phần các tổ chức điều hành bao gồm giới thiệu về CA, RA và các chức năng của CA, RA; kho chứa chứng thư; các mô hình triển khai hệ thống CA
2.1.4 Mô hình của hệ thống PKI
Trong sơ đồ dưới đây là một ví dụ về mô hình của hệ thống PKI bao gồm các đối tượng của hệ thống PKI và mối quan hệ giữa chúng trên cơ sở các hoạt động quản lý PKI Mối liên hệ được thể hiện bằng các thông điệp được truyền đi giữa các đối tượng trong hệ thống
Hình 2-1 Mô hình của hệ thống PKI
2.1.5 Các chức năng và thuộc tính yêu cầu của PKI
1 Quản lý vòng đời của khóa -Key Lifecycle Management
Thông thường việc quản lý khóa được CA thực hiện thông qua việc quản lý chứng thư Vòng đời thực của một khóa phụ thuộc vào việc nó được sử dụng cho mục đích
mã hóa đảm bảo tính bí mật hay cho mục đích ký PKI phải hỗ trợ các chức năng quản
lý khóa sau
Trang 28Sinh khóa
Quá trình sinh khóa được thực hiện như thế nào tùy thuộc vào chính sách của từng
hệ thống PKI Các khóa được sinh ra phải được đảm bảo về chất lượng, tính duy nhất, tính bí mật, và có khả năng phục hồi Việc sinh một cặp khóa thường đi kèm với việc phát hành một chứng thư cho cặp khóa đó Các chính sách an ninh của các ứng dụng
có thể áp đặt các qui định riêng đối với các cặp khóa Tuy nhiên có một yêu cầu thiết yếu cho tất cả các hệ thống đảm bảo an ninh là tất cả các khóa bí mật chỉ nên được biết bởi người sở hữu chúng
Tùy thuộc vào cơ sở hạ tầng và các chính sách của các CA mà các cặp khóa có thể được sinh ra theo một trong ba cách sau:
a) Người sử dụng tự sinh cặp khóa của mình Phương pháp này có ưu điểm là khóa bí mật của người sử dụng không bao giờ bị biết đến bởi người khác nhưng lại yêu cầu một mức độ năng lực nào đó từ người sử dụng
b) Cặp khóa được tính toán bởi một bên thứ ba Bên thứ ba này gửi khóa bí mật cho người sử dụng theo một con đường tin cậy sau đó xóa bỏ hết các thông tin liên quan trong quá trình sinh khóa, bao gồm cả khóa bí mật Trong trường hợp này các thiết bị an ninh (vật lý) phù hợp nên được sử dụng để đảm bảo rằng bên thứ ba và quá trình thao tác dữ liệu an toàn
c) Cặp khóa được tính toán bởi CA, đây là một trường hợp riêng của b)
Các hệ thống mã hóa khác nhau cũng có các qui định riêng cho việc sinh cặp khóa
Phân phối, thu hồi, treo, chống chối bỏ và lưu trữ khóa
Thông thường, các chức năng quản lý khóa này được đồng nhất với các chức năng quản lý chứng thư và được thực hiện bởi các CA Tuy nhiên, trong nhiều trường hợp khóa và chứng thư lại có các yêu cầu được quản lý khác nhau, ví dụ như, một cặp khóa
có thể được sử dụng trong nhiều chứng thư khác nhau (trường hợp cấp lại chứng thư) Chính vì vậy, PKI phải hỗ trợ được các chức năng sau:
Phân phối khóa thông qua các thiết bị lưu trữ và dịch vụ thư mục thích hợp
Cung cấp cho các CA khả năng thu hồi, đình chỉ việc sử dụng các chứng thư và các khóa cá nhân dựa vào các chính sách
Cho phép người sử dụng yêu cầu thu hồi và đình chỉ khóa công khai của chính mình
Cho phép người sử dụng tiếp cận với thông tin về các khóa/chứng thư hết hạn,
bị thu hồi, hay đình chỉ
Cho phép lưu trữ và phục hồi các chứng thư để hỗ trợ phục hồi và kiểm tra các
dữ liệu sau thời gian dài
Trang 29Phục hồi khóa
Một hệ thống PKI phải có chức năng phục hồi khóa bao gồm cả các chính sách bảo vệ và phục hồi khóa bằng một trung tâm lưu trữ các khóa Trung tâm phục hồi khóa phải có khả năng kiểm tra tính hợp pháp của khóa được đưa đến để lưu trữ Một người sử dụng cũng có thể kiểm tra kho lưu trữ khóa phục hồi xem liệu nó có phải là một kho hợp pháp hay không
2 Quản lý chứng thư
Trước tiên chúng ta sẽ tìm hiểu khái niệm chứng thư số
Khái niệm chứng thư số
Chứng thư số là một “chứng nhận” khóa công khai của thực thể nào đó Nó bao
gồm khoá công khai của thực thể và các thông tin định danh của thực thể Hai thành phần này gắn kết với nhau thông qua chữ ký của nhà phát hành chứng thư
Hình 2-2 Mô hình chứng thư số
Chứng thư số hay còn được gọi là chứng thư khóa công khai, ID số, hay đơn giản
là chứng thư Ở luận văn này chúng ta sử dụng từ "chứng thư số" để chỉ khái niệm phía trên đã trình bày
Một chứng thư số tương tự như một chiếc bằng lái xe Mỗi chiếc bằng lái gồm ảnh của người sở hữu với các thông tin định danh của người đó ( như tên, địa chỉ, chữ ký ) Hai thông tin này được xác thực có mối quan hệ với nhau thông qua con dấu của
cơ quan phát hành bằng lái Thông qua con dấu của cơ quan phát hành bằng lái mà bất
kỳ ai cũng biết được đối tượng sở hữu nó có đủ khả năng để vận hành một chiếc xe
Thông tin định danh của thực thể Khóa công khai của thực thể
Chữ ký của nhà phát hành chứng thư
Thuật toán ký Khóa bí mật của nhà phát hành chứng thư
Trang 30Chứng thư số cũng thế Nó đảm bảo một cách chính xác đối tượng với những thông tin định danh tường minh trên, nó sở hữu một khoá bí mật tương ứng Dựa vào điều kiện trên mà đối tượng có thể truy cập vào các hệ thống xác thực, hoặc thực hiện các kết nối an toàn
Chứng thư số chỉ có ý nghĩa khi nó đựơc ký bởi nhà phát hành chứng thư Bởi nếu không có chữ ký của nhà phát hành chứng thư thì không có mối liên hệ giữa khoá công khai của thực thể và thông tin định danh; đồng nghĩa chứng thư số vô giá trị Như vậy chứng thư số phải tồn tại trong một hệ thống mà ở đó nhà phát hành chứng thư là một nhân tố quan trọng Mặt khác chứng thư cũng có thời gian sử dụng nhất định nên nó cần được thu hồi khi cần thiết và trạng thái thu hồi của chứng thư cũng phải được công
bố rộng rãi cho toàn bộ hệ thống thông qua danh sách thu hồi chứng thư
Ngoài khóa công khai, một chứng thư số còn chứa thêm thông tin về đối tượng mà
nó nhận diện, hạn dùng, tên của CA cấp chứng thư số, số serial,
Khi một người (người gửi) thông báo muốn sử dụng phương pháp mã hóa khóa công khai để mã hóa một thông điệp và gửi cho người nhận, người gửi cần một bản sao khóa công khai của người nhận Khi một thành viên bất kỳ muốn kiểm tra chữ ký
số - chữ ký số này được thành viên khác sinh ra, thành viên kiểm tra cần một bản sao khóa công khai của thành viên ký Chúng ta gọi cả hai thành viên mã hóa thông điệp
và thành viên kiểm tra chữ ký số là những người sử dụng khóa công khai Các chứng thư khóa công khai giúp cho việc phân phối khóa công khai trở nên có hệ thống
Nếu người sử dụng khóa công khai cần khóa công khai của một trong các thuê bao của CA, người đó có thể lấy một bản sao chứng thư của thuê bao, lấy ra giá trị khóa công khai, kiểm tra chữ ký của CA có trên chứng thư hay không bằng cách sử dụng khóa công khai của CA
Phân loại chứng thư số
Chứng thư số không mang tính chất đa năng, cũng tương tự như việc một người
có bằng lái xe máy, không đồng nghĩa với việc anh ta có thể lái được ô tô Mỗi chứng thư số chỉ có tác dụng trong một phạm vi xác định Dựa vào mục đích sử dụng người
ta chia chứng thư số ra làm các loại sau:
Cá nhân: Sử dụng bởi một con người cụ thể Chứng thư loại này được sử
dụng chủ yếu cho mục đích đảm bảo an toàn trong các kết nối với môi trường internet như bảo vệ mail, hay các giao dịch web
Tổ chức: Đây là loại chứng thư sử dụng cho mục đích xác thực là chính
Trong các tổ chức, công ty sử dụng công nghệ chứng thư số đảm bảo xác thực người sử dụng một cách chính xác dựa trên yếu tố: các thông tin định danh của người sử dụng được nhà phát hành chứng thư xác nhận thông qua chữ ký của mình
Trang 31 Máy chủ: Chứng minh quyền sở hữu một tên miền, cung cấp một phiên
kết nối https an toàn giữa server và client Trong mô hình một mạng LAN, thì chứng thư số đảm bảo việc xác thực và các kết nối an toàn giữa các host
Người phát triển: Chứng thư số còn cung cấp giải pháp chứng minh
quyền tác giả, nguồn gốc phần mềm và đảm bảo tính toàn vẹn của chương trình phần mềm được cung cấp trên mạng internet công khai
PKI phải cung cấp các chức năng quản lý chứng thư sau:
Các chức năng này đảm bảo cho việc sử dụng chứng thư được an toàn và thuận lợi
Đăng ký và xác nhận ban đầu
Trong quá trình này, trước tiên, đối tượng đăng ký phải thông báo cho CA hoặc
RA biết về sự hiện diện của CA sẽ cấp phát cho đối tượng đăng ký này một chứng thư
số khi nó chấp nhận yêu cầu
Kết quả của quá trình này là CA sẽ tạo ra một chứng thư số cho đối tượng đăng ký ứng với cặp khoá (công khai/bí mật) của đối tượng đó Đồng thời, CA này cũng gửi chứng thư số này đến cho hệ thống lưu trữ
Trong một hệ PKI lớn, hệ thống lưu trữ có vai trò quan trọng và có tính độc lập cao đối với CA
Cập nhật thông tin về chứng thư số
Mỗi chứng thư số được cấp phát cho các đối tượng sử dụng chỉ có tác dụng trong một khoảng thời gian đã định Khi các chứng thư số này hết hạn và đối tượng sử dụng muốn tiếp tục có được chứng thư số của mình thì CA quản lý đối tượng ấy sẽ tạo ra một chứng thư số mới cho đối tượng và phải làm nhiệm vụ cập nhật thông tin về chứng thư số này
Phát hành chứng thư và danh sách chứng thư bị hủy bỏ
Có những hoạt động của hệ thống quản lý PKI sẽ dẫn đến việc tạo ra các chứng thư số hoặc danh sách các chứng thư số bị huỷ bỏ Ta có hai hoạt động tiêu biểu thuộc loại này là: phát hành chứng thư số và phát hành danh sách chứng thư số bị huỷ bỏ Khi CA phát hành một chứng thư số, trước tiên, nó cần phải dựa trên định dạng của chứng thư số cần cấp Sau khi có được các thông tin về chính sách quản trị, CA sẽ
tổ chức chúng theo định dạng đã biết, khi đó, chứng thư số đã hoàn thiện Tuy nhiên, việc phát hành chứng thư số chỉ hoàn tất sau khi CA gửi thông tin về chứng thư số này đến đối tượng sử dụng và lưu chứng thư này vào hệ thống lưu trữ
Việc phát hành danh sách chứng thư số bị huỷ bỏ cũng được tiến hành như với danh sách chứng thư số Tuy nhiên, thông tin về danh sách này chỉ được truyền cho hệ thống lưu trữ
Trang 32Hủy bỏ chứng thư số
Trong một số trường hợp, hệ thống PKI sẽ thực hiện hủy bỏ chứng thư số Ví dụ, nếu một đối tượng sử dụng chứng thư số bị phát hiện có những biểu hiện không bình thường, có dấu hiệu phạm pháp, hoặc những thông tin về đối tượng này có một số bất hợp lý thì CA quản lý đối tượng ấy có thể huỷ bỏ chứng thư số đã cấp cho đối tượng
sử dụng đó
3 Dịch vụ về thời gian
Thời gian trong hệ thống PKI phải có tính nhất quán, đồng bộ giữa tất cả các thành phần Rất nhiều thành phần của PKI chỉ có được sự tin tưởng trong một thời gian cụ thể (chứng thư hay CRL) Rõ ràng PKI phải quản lý cả vấn đề thời gian trong hệ thống Nếu dịch vụ thời gian của PKI không được đảm bảo, thì bất kỳ thành phần nào trong hệ thống PKI đều có thể lạm dụng sử dụng những thành phần phụ thuộc vào thời gian, thực hiện những hành động không an toàn và chối bỏ về mặt thời gian trong các phiên kết nối
4 Giao tiếp giữa các PKI
Các hệ thống PKI cung cấp bởi các nhà sản xuất khác nhau phải tương thích, để hỗ trợ thao tác lẫn nhau các thành phần PKI phải:
Hỗ trợ các chuẩn quốc tế cho chứng thư và các dữ liệu liên quan
Hỗ trợ các chuẩn quốc tế cho các dịch vụ chứng thư
Hỗ trợ sự quốc tế hóa tất cả các chứng thư và các dữ liệu liên quan
Hỗ trợ sự quốc tế hóa tất cả các dịch vụ chứng thư
Các hỗ trợ này làm cho chứng thư có thể được chấp nhận rộng rãi trên nhiều khu vực địa lý cũng như trên nhiều lĩnh vực hoạt động Sự hộ trợ các chuẩn quốc tế được chấp nhận rộng rãi sẽ nâng cao tính an toàn và tính tương thích của các chứng thư
2.1.6 Hệ thống cung cấp và quản lý chứng thư
Nhà phát hành chứng thư
Nhà phát hành chứng thư gọi tắt là CA (Certification Authority), là hạt nhân của
hệ thống PKI Chỉ có CA mới có quyền phát hành chứng thư cho một đối tượng sau khi kiểm tra những thông tin về đối tượng đó CA có trách nhiệm đảm bảo sự tương ứng giữa cặp khóa (công khai/bí mật) với các thông tin mô tả về đối tượng CA không nhất thiết phải là một bên thứ ba thực sự, nếu xét dưới góc độ của các đối tượng trong một tổ chức Nghĩa là, CA có thể lại thuộc về cùng một tổ chức chứa các đối tượng sử dụng mà nó hỗ trợ Ngoài ra, ta cũng sử dụng khái niệm CA để chỉ đối tượng được nêu
tên trong trường issuer của chứng thư số
Trang 33Ta sử dụng khái niệm CA gốc để chỉ một CA được đối tượng sử dụng nào đó tin
cậy một cách trực tiếp Ta hiểu khái niệm trực tiếp có nghĩa là việc tin cậy có thể được đảm bảo mà không cần thêm một CA nào nữa CA gốc không nhất thiết phải nằm trên đỉnh của một cây phân cấp biểu diễn hệ thống Điều cần quan tâm là CA gốc được tin cậy trực tiếp bởi một hoặc một số đối tượng sử dụng
Một CA thứ cấp nếu xét trên phương diện của các đối tượng sử dụng thì là bất kỳ
CA nào khác với CA gốc
CA không những quản lý chứng thư khi nó được khởi tạo mà CA còn phải quản lý
cả chứng thư trong quá trình sử dụng CA có các chức năng như sau:
Xác thực yêu cầu cấp phát chứng thư
Đây là quá trình kiểm tra thông tin định danh, cũng như cặp khoá (công khai/bí mật) của đối tượng yêu cầu cấp phát chứng thư Quy trình diễn ra tuỳ thuộc hệ thống
mà ta xây dựng Việc xác minh này có thể được thực hiện gián tiếp thông qua một bên trung gian, như các trung tâm đăng ký RA, hoặc xác minh thông qua tiếp xúc trực tiếp với đối tượng
Phát hành chứng thư
Sau khi xác minh thông tin định danh, cặp khoá của đối tượng yêu cầu chứng thư, hoặc nhận được yều cầu từ một RA, CA tiến hành cấp phát chứng thư cho đối tượng Chứng thư được ký bằng khóa riêng của CA sau đó được chuyển tới cho đối tượng đó Bản sao của chứng thư có thể được đưa tới kho chứa chứng thư để công bố hay được
CA lưu giữ
Phân phối chứng thư
CA còn cung cấp các dịch vụ để các hệ thống sử dụng chứng thư truy cập và lấy
về các chứng thư mà nó cần Các dịch vụ này rất đa dạng nhưng sử dụng phổ biến nhất
là dịch vụ email và dịch vụ thư mục Chuẩn thư mục X500 được ITU phát triển và chuẩn hóa phục vụ cho việc phân phối chứng thư khóa công khai Một giao thức tương thích với mô hình thư mục X500 phổ biến nhất hiện nay là LDAP
Các hệ thống thư mục độc quyền cũng được sử dụng để phân phối các chứng chỉ khóa công khai , ví dụ như các thư mục Microsoft Exchange , Lotus Notes và Netware Directory Service
Thu hồi chứng thư
Khi một chứng thư được yêu cầu huỷ bỏ, hoặc do một nguyên nhân nào đó mà việc sử dụng chứng thư không còn an toàn, thì CA phải thu hồi chứng thư đó và phải thông báo cho toàn bộ hệ thống biết danh sách các chứng thư bị thu hồi thông qua các CRL
Trang 34Một CRL là một danh sách các chứng thư bị thu hồi được dán nhãn thời gian, danh sách này được CA ký số và làm cho nó trở nên có hiệu lực đối với những người
sử dụng chứng thư CRL có thể được phân tán, ví dụ bằng cách gửi nó đến một địa chỉ Web xác định hoặc thông qua đầu vào hệ thống thư mục X.500 của CA Mỗi chứng thư bị thu hồi được CRL nhận dạng thông qua số hiệu chứng thư, mỗi chứng thư có một số hiệu duy nhất, số hiệu này do CA phát hành sinh ra và nó nằm trong chứng thư
Treo chứng thư
Trong trường hợp CA phát hiện ra các dấu hiệu khả nghi việc sử dụng chứng thư
là không còn an toàn nữa thì CA sẽ phải treo chứng thư, tức là chứng thư đó bị thu hồi tạm thời, nhưng nếu CA tìm được thông tin chứng minh rằng việc sử dụng chứng thư vẫn đảm bảo an toàn thì chứng thư sẽ được đổi lại trạng thái hoạt động bình thường
Gia hạn chứng thư
Trong trường hợp chứng thư hết thời hạn sử dụng, nhưng chứng thư vẫn đảm bảo tính bí mật khi sử dụng, thì nó có thể được cấp lại( tùy thuộc vào yêu cầu của chủ thể chứng thư) Tức là gia hạn thêm thời gian sử dụng cho chứng thư Chứng thư được cấp mới không có gì thay đổi, ngoại trừ trường thời gian hết hạn được thay, tất nhiên là kéo theo cả chữ ký của nhà phát hành chứng thư cũng thay đổi
Cơ quan đăng ký chứng thư
Trong các hệ thống với phạm vi vật lý rộng lớn, việc CA chứng nhận thông tin định danh của đối tượng là rất khó khăn Một giải pháp cho vấn đề này là CA sử dụng các cơ quan đăng ký chứng thư - RA làm đại diện cho CA trong một cộng đồng nhỏ Các RA không trực tiếp phát hành chứng thư, hay quản lý chứng thư mà nó chỉ thực hiện công việc xác nhận những thông tin người dùng cho CA Đồng thời RA cũng có thể thay mặt người sử dụng yêu cầu CA phát hành, thu hồi, thay đổi thông tin trên chứng thư
Không giống CA, mỗi RA sẽ thường xuyên vận hành bởi một người, và mỗi CA
sẽ quản lý một nhóm RA tin cậy CA sẽ nhận biết và quản lý RA thông qua tên và khoá công khai của nó Thông qua việc xác thực chữ ký số của RA trên những thông
tin, CA có thể thừa nhận tính đúng đắn của RA
Trang 35Kho chứa chứng thư
Các chứng thư, các bản CRL và các thông tin liên quan đến chúng cần được lưu trữ công khai để các chương trình sử dụng chứng thư truy cập và lấy về những thông tin cần thiết Như vậy kho chứa chứng thư cũng là một thành phần trong hệ thống PKI Kho chứa chứng thư còn đảm bảo những thông tin được lưu trữ trên nó là hoàn toàn chính xác và tính nhất quán (ví dụ như đảm bảo CRL phát hành đúng hạn)
Từ năm 1984, tổ chức viễn thông quốc tế - ITU (đôi khi được gọi là CCITT) đã nghiên cứu, phát triển các chuẩn nhằm xây dựng một hệ thống chỉ mục cho phép đáp ứng các nhu cầu tích hợp nhiều ứng dụng trên cùng một hệ thống, cho phép đồng bộ
dữ liệu trong hệ thống và trao đổi thông tin với các hệ thống ngoài khác Hệ thống này được gọi là hệ thống chỉ mục (Directory) tuân theo chuẩn X.500 Tuy nhiên hệ thống chỉ mục X.500 nguyên gốc tỏ ra cồng kềnh và yếu kém trong việc thiết kế các giao diện lập trình ứng dụng – APIs
Sau đó, các nhà khoa học đã tiếp tục nghiên cứu và phát triển thành giao thức LDAP (Lightweight Directory Access Protocol) nhằm khắc phục các nhược điểm trên Giao thức này bổ sung các chuẩn:
Information Model (Các cách hiển thị thông tin)
APIs (Cách các ứng dụng lấy thông tin)
Replication (Cách các máy chủ đồng bộ thông tin)
Access Control (Kiểm soát truy cập)
Hiện nay giao thức này đã được cập nhật tới phiên bản V3 Trong những năm gần đây các hệ thống thư mục LDAP là một giải pháp hữu hiệu cho kho chứa chứng thư có cấu trúc cây thông tin thư mục (Directory Information Tree) Mỗi một nút thư mục trong cây đại diện cho một chứng thư trong PKI Nội dung của thư mục chính là con trỏ tới chứng thư và CRL tương ứng được lưu trữ trong hệ thống LDAP Các thuộc tính của thư mục chỉ ra các thông tin liên quan tới chứng thư mà nó đại diện ví dụ như
các chính sách chứng thư, đường dẫn chứng thực
2.1.7 Các mô hình triển khai hệ thống CA
Hệ thống CA khi được triển khai ở bất kỳ phạm vi nào đều cần có một kiến trúc phù hợp Thông thường, ta dựa trên đặc điểm tổ chức của hệ thống các dịch vụ sử dụng CA để định ra kiến trúc phù hợp Sau đây, ta sẽ tìm hiểu những kiến trúc hệ thống CA tiêu biểu trên thế giới
1) Kiến trúc phân cấp
Trong kiến trúc này, các CA đều nằm dưới một CA gốc (RootCA) Root CA cấp chứng thư cho các CA thứ cấp (SubCA), user SubCA cấp chứng thư cho user thuộc tổ
Trang 36chức của mình Trong mô hình này, tất cả các đối tượng trong hệ thống đều phải biết khoá công khai của RootCA Tất cả các chứng thư số đều có thể được kiểm chứng bằng cách kiểm tra đường dẫn của chứng thư số đó đến RootCA
Hình 2-3 Mô hình kiến trúc phân cấp
Trong kiến trúc này, các CA đều nằm dưới một CA gốc (RootCA) Root CA cấp chứng thư cho các CA thứ cấp (SubCA), user SubCA cấp chứng thư cho user thuộc tổ chức của mình Trong mô hình này, tất cả các đối tượng trong hệ thống đều phải biết khoá công khai của RootCA Tất cả các chứng thư số đều có thể được kiểm chứng bằng cách kiểm tra đường dẫn của chứng thư số đó đến RootCA
Trong kiến trúc của hệ thống CA này, tất cả các đối tượng đều dựa trên sự tin cậy đối với CA gốc duy nhất Khoá công khai của RootCA phải được phân phát cho các đối tượng đã được xác thực để đảm bảo sự tin cậy trong hệ thống Sự tin cậy này được hình thành theo các cấp từ RootCA đến các SubCA và đến các đối tượng sử dụng
Ưu điểm của kiến trúc phân cấp
- Chặt chẽ, thống nhất về mặt kiến trúc
- Các mối quan hệ trong kiến trúc hệ thống CA phân cấp cũng khá giống với các quan hệ trong hầu hết các tổ chức Vì vậy, ta có thể coi các nhánh của quá trình xác thực đối tượng giống với các nhánh trong cấu trúc của tổ chức
- Có thể dễ dàng đưa các chính sách quản lý hành chính vào trong các ứng dụng tích hợp CA
- Dễ dàng thêm các SubCA khi có nhu cầu
- Kiến trúc phân cấp này cũng gần giống với hình thức phân cấp trong việc tổ chức thư mục Do vậy, ta có thể dễ dàng làm quen hơn
- Cách thức tìm ra một nhánh xác thực là theo một hướng nhất định, không có hiện tượng vòng lặp Do vậy, việc xác thực được thực hiện đơn giản và nhanh chóng
- Dễ xây dựng đường chứng thư
Trang 37 Chỉ cần tìm ngược đường chứng thư dựa vào trường issuer trong chứng thư của thực thể con sẽ tìm đến root CA
Thuật toán đơn giản, dễ tích hợp với các ứng dụng và các thiết bị
- Chi phí mua License cho phần mềm CA thấp
Cùng một số chứng thư, càng ít root CA, giá thành càng thấp
Nhược điểm của kiến trúc phân cấp
- Trên một phạm vi lớn thì kiến trúc này không phù hợp, vì không thể chỉ có một CA duy nhất để đảm nhận tất cả các quá trình xác thực
- Các quan hệ kinh doanh, thương mại không phải lúc nào cũng có dạng phân cấp
- Khó khăn khi tích hợp với hệ thống CA đã có
Không thể chuyển một Root CA đã có thành sub CA của một CA khác
- Khi khoá riêng của RootCA bị lộ thì sẽ rất nguy hiểm, toàn bộ hệ thống bị mất điểm tin cậy Nếu có khắc phục bằng cách thay cặp khoá mới thì thông tin về khoá công khai của RootCA phải được truyền đến cho tất cả các đối tượng trong hệ thống Điều này đòi hỏi thời gian và một lưu lượng truyền thông rất lớn
2) Kiến trúc mạng lưới
Hình 2-4 Mô hình kiến trúc mạng lưới
Mô hình này được thiết kế từ các CA ngang hàng nhau, kết quả tạo ra một mạng lưới CA có sự tin cậy lẫn nhau Việc kiểm tra chứng thư trong giao dịch được thực hiện bằng cách kiểm tra chéo Các CA sẽ chứng thực chéo bằng cách cấp chứng thư
Trang 38cho nhau để tạo ra một chuỗi tin cậy Trong mô hình này mỗi tổ chức CA sẽ trao cho nhau khoá công khai của mình và tổ chức kia sẽ tạo ra một chứng thư xác thực chéo chứa khoá công khai đó và ký vào chứng thư này Người dùng tại tổ chức CAn biết khoá công khai của CAn Người dùng kiểm chứng một chứng thư số bằng cách kiểm tra quá trình xác thực với đích là CA đã phát hành chứng thư số đó
Ví dụ: khi một người dùng A1 nào đó trong tổ chức CA1 cần xác thực chứng thư của người dùng A2 trong CA2 người dùng A1 cần tìm được đường dẫn chứng thực thích hợp Theo hình vẽ trên thì A1 có thể xác thực A2 theo nhiều nhánh khác nhau Theo nhánh ngắn nhất, A2 được CA2 cấp chứng thư nên nó được xác thực bởi CA2
CA2 lại được xác thực ngang hàng bởi CA1 A1 được CA1 cấp phát chứng thư và biết được khoá công khai của CA1 nên nó có thể xác thực trực tiếp với CA1
Mô hình này thích hợp với các tổ chức có nhiều đơn vị với quyền hạn, cơ cấu tổ chức nhân sự, trách nhiệm pháp lý độc lập
Ưu điểm của kiến trúc mạng lưới
- Đây là một kiến trúc linh động, nó thích hợp với các mối quan hệ tin cậy lẫn nhau trong thực tế của công việc kinh doanh
- Kiến trúc này cho phép các CA có thể xác thực ngang hàng một cách trực tiếp trong trường hợp các đối tượng sử dụng của chúng liên lạc với nhau thường xuyên
để giảm tải lượng đường truyền và thao tác xử lý
- Việc khôi phục hệ thống do khoá riêng của một CA bị lộ sẽ chỉ gồm việc phân phát một cách an toàn khoá công khai mới của CA đến các đối tượng mà CA này cấp phát chứng thư số
Nhược điểm của kiến trúc mạng lưới
- Do cấu trúc của mạng có thể rất phức tạp nên việc tìm kiếm các đối tượng rất khó khăn Trong trường hợp có nhiều đường truyền đến một đối tượng khác thì bài toán tìm đường đi ngắn nhất đến đối tượng đó có thể rất phức tạp
- Một đối tượng không thể đưa ra một nhánh xác thực duy nhất mà có thể đảm bảo tất cả các đối tượng khác trong hệ thống có thể thực hiện được
Trang 393) Kiến trúc cầu liên kết
CA
User
CA
CA User
User
User
CA User
CA
Hình 2-5 Mô hình kiến trúc Cầu liên kết
Trong mô hình kiến trúc này một CA trung gian được thiết kế để kết nối các hệ thống CA khác với nhau (các hệ thống CA này có thể có kiến trúc phân cấp hoặc kiến trúc mạng lưới) Do tính chất đó CA trung gian còn được gọi là cầu liên kết (Bridge) Không giống CA trong mô hình kiến trúc mạng lưới, Bridge CA không cấp chứng thư trực tiếp cho người dùng Không giống RootCA trong mô hình kiến trúc phân cấp, Bridge CA không được sử dụng như một điểm tin cậy gốc Trong mô hình này Bridge
CA thực hiện thiết lập liên kết điểm - điểm (xác thực chéo) với các hệ thống CA khác
và hình thành cầu liên kết tin cậy cho người dùng trong các hệ thống CA khác nhau Nếu hệ thống CA kết nối có kiến trúc phân cấp, Bridge CA sẽ thiết lập liên kết với Root CA Nếu CA kết nối có kiến trúc mạng lưới, Bridge CA sẽ thiết lập liên kết với một trong số các CA của mạng lưới đó
Ưu điểm của kiến trúc cầu liên kết
- Hỗ trợ rất tốt khi cần thiết lập quan hệ tin cậy giữa nhiều hệ thống CA đã có Các hệ thống CA này chỉ cần được xác thực chéo với Bridge CA
- Bridge CA có thể đưa ra một số ràng buộc để các CA được Bridge CA ký chéo
- Khi cần xác thực một chứng thư ở ngoài nhánh thì xác thực qua Bridge CA
- Các nhánh CA có thể phát triển và hoàn thiện dần
- Khả năng cách ly khi xảy ra nguy cơ tốt
Khi một nhánh CA bị lỗi, bridge CA chỉ cần cắt liên kết với CA nhánh
đó, các CA khác sẽ được an toàn
Khi Bridge CA bị lỗi, các nhánh đều cắt liên kết với Bridge CA
Trang 40- Khả năng phục hồi nhanh chóng
Nhờ cách ly nhanh chóng, khi một phần nào bị tấn công, chỉ cần phục hồi phần đó và tích hợp lại vào hệ thống
Nhược điểm của kiến trúc cầu liên kết
- Việc xử lý ở Bridge CA rất phức tạp:
Bridge CA phải thay mặt các CA để xử lý các yêu cầu về chứng thư một cách thông suốt
Chi phí cho việc thiết kế, triển khai rất lớn
- Khó khăn hơn trong cấu hình Directory
Các Directory cần được cấu hình để có thể thiết lập liên kết tới Bridge
- Sử dụng nhiều root CA nên chi phí cho license sẽ cao
- Mô hình này có thể dễ dàng trong những năm đầu phát triển những về sau rất tốn kém và phức tạp trong quản lý cũng như điều hành khi số lựong CA và số người dùng phát triển
2.1.8 Đánh giá và phân tích
PKI là một kiến trúc an ninh được sử dụng để cung cấp và nâng cao tính tin cậy trong việc trao đổi thông tin trên các mạng mở PKI sử dụng các chứng thư số để cung cấp các dịch vụ xác thực người dùng, điều khiển truy cập, mã hóa dữ liệu Trong hệ thống này, người sử dụng có thể ký các văn bản điện tử với private key của mình và mọi người đều có thể kiểm tra với public key của người đó PKI cho phép các giao dịch điện tử được diễn ra đảm bảo tính bí mật, toàn vẹn và xác thực lẫn nhau mà không cần phải trao đổi các thông tin mật từ trước
Như đã trình bày ở trên, an toàn bảo mật trong hạ tầng khóa công khai PKI dựa trên độ bảo mật của các khóa cá nhân của người dùng Xác thực chủ thể người dùng trong hệ thống PKI phụ thuộc vào độ bảo mật khóa cá nhân của chủ thể sở hữu, trên thực tế khóa cá nhân là chuỗi số được lưu trữ riêng và được bảo mật tại một nơi nào đó như thẻ, etoken USB, hay ngay trên máy người dùng Khóa cá nhân có thể bị đánh cắp bằng nhiều cách khác nhau và cũng có thể bị giả mạo Khi khóa cá nhân/token bị lấy mất thì người tấn công hoàn toàn có thể giả mạo người dùng(chủ thể sở hữu của khóa
cá nhân/token) để thực hiện các giao dịch Trong trường hợp khóa cá nhân của một CA
bị mất thì toàn bộ các CA và người dùng cấp dưới của nó sẽ không đảm bảo độ tin cậy,
vì người lấy được khóa cá nhân đó có thể cấp chứng thư số cho bất kỳ một CA hay người dùng giả mạo nào đó nhân danh CA này Nếu CA gốc bị mất khóa cá nhân thì toàn bộ hệ thống PKI trở nên vô nghĩa và sụp đổ Có thể thấy, vấn đề bảo vệ khóa cá nhân mang ý nghĩa rất lớn Đồng thời hệ thống PKI không có dấu hiệu đặc trưng để nhận biết chủ sở hữu của chứng thư số[5]