1.3.2 Các đòi hỏi về trang thiết bị .
Các trang thiết bị VPN thì được tạo thành các server VPN, các client VPN và các thiết bị phần cứng khác, như là routers và concentrators.
a. VPN Servers:
Tổng quát, VPN servers là các thiết bị mạng chuyên dụng chạy phần mềm server. Phụ thuộc vào các yêu ầu của tổ chức, có thể có một hay nhiều VPN server. Bởi vì một server VPN phải cung cấp các dịch vụ cho các khách hàng VPN ở xa cũng như ở địa phương, chúng luôn sẵn sàng và sẵn sàng chấp nhận các yêu cầu.
Chức năng chính của các VPN server bao gồm các nhiệm vụ sau :
Lắng nghe các yêu cầu kết nối cho VPN
Dàn xếp các yêu cầu và thông số kết nối, như là kỹ thuật mật mã và kỹ thuật xác nhận
Sự xác nhận và sự cấp phép cho khách hàng VPN
Chấp nhận dữ liệu từ khách hàng hoặc chuyển tiếp dữ liệu yêu cầu bởi khách hàng
Như là điểm cuối của đường hầm và kết nối VPN. Một điểm cuối khác được cung cấp bởi người cuối cùng yêu cầu phiên VPN
VPN Severs có thể hỗ trợ hai hay nhiều card mạng. Một hay nhiều card được sử dụng để kết nối chung vào mạng nội bộ của tổ chức, trong khi các cái khác thường được sử dụng để kết nối chúng vào internet. Trong trường hợp sau cùng, VPN servers giống như VPN gateway hay router.
Lưu ý Một VPN Server có thể hoạt động như một gateway hay một router chỉ nếu số lượng yêu cầu hoặc số người sử dụng thấp ( cho tới 20). Nếu VPN server phải hỗ trợ một lượng lớn các users và hoạt động như là một router hoặc một gateway, gánh nặng của đường hầm, mã hóa, xác nhận, tường lửa và định tuyến sẽ làm cho server chạy chậm, kéo theo hiệu suất của toàn hệ thống giảm Thêm vào đó, rất khó để bảo vệ thông tin được lưu trữ trên server. Vì thế VPN Sever phải thật chuyên nghiệp để chỉ phục vụ khách VPN và các yêu cầu
b. VPN Clients
VPN Clients là các máy cục bộ hay ở xa khởi tạo một kết nối VPN với VPN Server và vào mạng từ xa sau khi chúng đã được xác nhận tại cuối của mạng từ xa. Chỉ sau khi đăng nhập thành công VPN server và client có thể giao tiếp với nhau. Tổng quát, một VPN Client là một phần mềm. Tuy nhiên nó cũng có thể là phần cứng chuyên dụng. Một router phần cứng VPN với khả năng định tuyến cuộc gọi theo yêu cầu, cái mà quay số tới router phần cứng VPN khác, là một ví dụ của thiết bị phần cứng chuyên dụng
Với sự gia tăng lực lượng lao động của một tổ chức, rất nhiều người dùng (VPN clients) có các dữ liệu không đồng bộ. Các người dùng này có thể sử dụng VPN để trao đổi một cách an toàn tới mạng nội bộ của tổ chức. Các mô tả tiểu biểu của một VPN client bao gồm các phần sau ( hình 2-4)
Các người giao tiếp từ xa sử dụng Internet hoặc mạng công cộng để kết nối nguồn tài nguyên của tổ chức từ nhà
Những người sử dụng laptops, palmyops và notebooks, những người mà sử dụng mạng công cộng để kết nối với mạng nội bộ của tổ chức để truy cập mail và các tài nguyên nội bộ khác.
Các nhà quản trị từ xa, những người sử dụng mạng công cộng trung gian, như là internet, để kết nối với các nơi ở xa để quản lý giám sát, khắc phục sự cố, hoặc cấu hình các dịch vụ và thiết bị
c. VPN Routers, Concentrators và gateways
Trong trường hợp các thiết lập VPN nhỏ, VPN server có thể thực hiện nhiệm vụ định tuyến. Tuy nhiên, kiểu làm này không hiệu quả trong trường hợp các thiết lập VPN lớn bao gồm số lượng khổng lồ các yêu cầu. Trong các trường hợp như vậy, một thiết bị định tuyến VPN riêng được sử dụng. Tổng quát một router là một điểm cuối của mạng cá nhân nếu nó không có tường lửa phía sau. Nhiệm vụ của VPN router là làm cho các phần ở xa trong mạng nội bộ có thể liên lạc được với nhau. Vì thế, các router có nhiệm vụ chính là tìm tất cả các đường đi có thể đến điểm đích trong mạng và chọn đường ngắn nhất trong tập các đường có thể như trong trường hợp của mạng truyền thống.
Mặc dù các routers thông thường có thể được sử dụng trong VPN, các chuyên gia đề nghị nên sử dụng các router tối ưu cho VPN. Các router này, khác với các router thường ở chỗ, cung cấp luôn các giải pháp bảo mật, tính khả chuyển và chất lượng dịch vụ dưới dạng dư thừa các đường đi. Router Cisco 1750 Modular Access là một ví dụ tiêu biểu.
Lưu ý : Các đặc tính thêm vào router thì khá phổ biến trong VPN. Routers với các đặc tính thêm vào không phải là các router thật sự nhưng là một sự cải tiến các router truyền thống làm cho chúng làm việc trong môi trường VPN. Router add-ons được cài đặt hoặc tại giao diện của LAN hoặc tại giao diện của WAN của một router thông thường và cung cấp các khả năng xác nhận, mã hóa và đường hầm cho router. Sử dụng các đặc tính thêm vào này có thể giảm giá thành của VPN đáng kể bởi vì tổ chức có thể năng cấp các router hiện có của họ. Tuy nhiên, ban đầu có một ít khó khăn và tốn nhiều thời gian để cài đặt, cấu hình và kiểm tra lỗi
Giống như hubs được sử dụng trong các mạng truyền thống, VPN concentrator được sử dụng để thiết lập các truy cập từ xa quy mô nhỏ vào VPN. Bên cạnh việc gia tăng dung lượng và throughput của VPN, các thiết bị này thường cung cấp một hiệu suất sẵn sàng cao, và khả năng mật mã tiên tiến và khả năng xác nhận. Concentrator Cisco Series 3000 và 5000 và VPN Altiga là một vài các concentrator thông dụng
IP gateways, như đã thảo luận ở phần đầu, chuyển các giao thức không IP thành các giao thức IP và ngược lại. Kết quả là các gateways này cho phép các mạng cá nhân hỗ trợ các giao dịch dựa trên IP. Các thiết bị này có thể hoặc là các thiết bị chuyên dụng hoặc là các giải pháp dựa trên phần mềm.Nếu sử dụng các thiết bị phần cứng, IP gateways được thực hiện ở rìa mạng nội bộ của tổ chức. Nếu sử dụng giải pháp dựa trên phần mềm, IP gateways được cài đặt trên mỗi server và được sử dụng để chuyển các luồng lưu thông từ không IP thành IP. IP gateways Novell Border Manager là các ví dụ tiêu biểu.
1.3.3. Nguyên tắc bảo mật và an toàn mạng thông tin.
Mạng intermet luôn bị xem là môi trường truyền tải thông tin có tính bảo mật kém, dữ liệu tải đi trên đường truyền có nguy cơ xâm hại, truy xuất trái phép rất lớn. Sự phát triển của kỹ thuật VPN, dựa trên cơ sở cơ chế tunnel có thể tăng tính bảo mật của đường truyền.
1.3.3.1. Xác nhận người dùng và quản lý truy cập
Dữ liệu được lưu trữ trên tài nguyên mạng khác nhau có thể bị nhiều kiểu tấn công. Có thể phân loại các dạng tấn công dữ liệu theo sau:
Ngắt dịch vụ mạng: Thỉnh thoảng, do bị tấn công từ bên ngoài hay bên trong mạng, một số tài nguyên mạng không thể truy cập trong khoảng thời gian dài. Trong trường hợp tấn công server, có thể toàn bộ mạng sẽ bị ngắt và các user không thể truy cập được.
Ngăn chặn dữ liệu: Khi truyền tải, dữ liệu có thể bị ngăn chặn trái phép bởi cá nhân nào đó. Kết quả là những thông thi quan trọng có thể bị mất. Trong trường hợp này, các tổ chức cơ quan sẽ thiệt hại rất lớn (các hợp đồng thương mại và tiền bạc) nếu các thông tin nhạy cảm này rơi vào tay kẻ xấu.
Thay đổi dữ liệu: Sự ngăn chặn dữ liệu có thể nhằm mục đích thay đổi. Trong trường hợp tấn công này, người nhận thông tin có thể nhận dữ liệu đã bị thay đổi, bóp méo. Nó có thể gây thiệt hại lớn cho tổ chức, đặc biệt nếu dữ liệu này rất quan trọng thì thiệt hại sẽ rất lớn.
Dữ liệu giả: Trong trường hợp tấn công này, người sử dụng trái phép có thể gửi thông tin đến các người sử dụng khác của mạng. Sau khi giành được quyền truy xuất mạng, cá nhân này có thể gửi các thông tin giả mạo và nguy hiểm đến người sử dụng khác trong mạng. Điều này có thể dẫn đến sự kết thúc của một phần hay toàn bộ mạng, hay ngưng dịch vụ.
Xác nhận người sử dụng và quản lý truy cập là 2 bước cơ bản nhất để chúng ta có thể ngăn các nguy cơ bảo mật này và các dữ liệu quan trọng và nhạy cảm có thể được lưu giữ an toàn trên mạng. Quá trình kiểm tra xác nhận người sử dụng được gọi là “user authentication”. Sự cho phép truy cập các tài nguyên mạng hay từ chối truy cập gọi là “access control”. Kết hợp 2 cơ chế này có thể giảm thiểu được các nguy cơ về vấn đề bảo mật.
a. Xác nhận người dùng
Cơ chế xác nhận người sử dụng là khi người sử dụng ở các điểm VPN muốn truy xuất tài nguyên trong mạng thì phải được xác nhận cho phép truy cập. Do đó chỉ có những người sử dụng được cho phép mới truy xuất tài nguyên mạng, giảm thiểu sự truy xuất trái phép các tài nguyên mạng.
Sự xác nhận có thể bao gồm các thành phần sau hoạt động riêng biệt hay kết hợp với nhau:
Đăng nhập ID và password: Người sử dụng dùng ID và password để xác nhận truy cập từ các nút VPN.
S/Key password: Người dùng thiết lập S/KEY bằng cách chọn một password bí mật và một số nguyên n. Số nguyên này có ý nghĩa là số lần mà hàm mã hóa ( hiện tại là MD4) được áp dụng đối với password. Kết quả được lưu lại trên server tương ứng. Khi người sử dụng đăng nhập tạm thời, server yêu cầu. Phần mềm trên máy người sử dụng sẽ yêu cầu password bí mật và áp dụng lặp lại n-1 lần hàm mã hóa và gửi kết quả về server. Server sẽ áp dụng hàm này thêm 1 lần nữa lên kết quả vừa nhận được. Nếu kết quả nó đưa ra trùng lặp với giá trị được lưu trước đó thì người sử dụng xác nhận thành công. Người sử dụng được cho phép truy cập mạng, server sẽ thay thế và lưu giữ giá trị nhận được từ máy khách và giảm password counter.
Remote Access Dial-In User Service (RADIUS). RADIUS là giao thức bảo mật Internet dựa trên mô hình máy chủ/máy khách. Máy truy cập vào mạng là máy khách và server RADIUS ở cuối mạng xác nhận máy khách. Tổng quát, server RADIUS xác nhận người sử dụng bằng danh sách username/password được lưu. RADIUS cũng có thể hoạt động như một máy khách để xác nhận người sử dụng của các hệ điều hành như UNIX, NT hay Netware. Thêm vào đó, server RADIUS cũng có thể hoạt động như một máy khách cho các server RADIUS khác. Để bảo mật cho các thông tin trên đường truyền giữa các máy khách và server RADIUS thì có thể sử dụng mã hóa sử dụng cơ chế xác nhận (authentication mechanisms) ví dụ như Password Authentication Protocol (PAP) và Challenge Handshake Authentication Protocol (CHAP).
Two-factor token-based technique. Yêu cầu xác nhận bằng dấu hiệu (token) và password. Trong quá trình xác nhận, phần cứng (thiết bị điện) được sử dụng như các dấu hiệu và duy nhất như Personal Identification Number (PIN) được sử dụng làm password. Theo truyền thống thì các dấu hiệu là các thiết bị phần cứng (có thể là card), nhưng hiện nay thì một số nhà cung cấp sử dụng dấu hiệu dựa trên phần mềm
b. Quản lý truy cập
Sau khi người sử dụng xác nhận thành công thì mặc định người đó có thể truy cập đến tất cả các tài nguyên, dịch vụ và các ứng dụng trong nội bộ mạng. Nó có thể tăng các nguy cơ bảo mật cho người sử dụng bởi vì người sử dụng có thể cố ý hay không cố ý xáo trộn dữ liệu trên các thiết bị khác nhau. Bằng cách phân loại các loại dữ liệu quan trọng và các dữ liệu không quan trọng mà người sử dụng làm việc hằng ngày, chúng ta có thể ngăn chặn hiệu quả điều đó. Kết quả là sự truy cập có thể bị ngăn cấm đến thiết bị lưu trữ những thông tin quan trọng này
Phân quyền quản lý truy cập cũng là 1 phần của quản lý truy cập. Nguy cơ bảo mật này có thể được giảm bằng cách giới hạn quyền truy cập của người sử dụng. Ví dụ, dữ liệu có thể được bảo vệ bằng cách cho phép các người sử dụng bình thường chỉ được phép đọc dữ liệu. Và một số người sử dụng đặc biệt mới có khả năng thay đổi hay xóa dữ liệu đó.
Quản lý truy cập dựa trên mã xác nhận người sử dụng (ví dụ ID). Tuy nhiên một số thông số khác như địa chỉ IP nơi gửi hay nơi đến, địa chỉ cổng, và các nhóm có thể đóng vai trò quan trọng trong phương pháp quản lý truy cập truyền thống. Cơ chế quản lý truy cập hiện đại cũng dựa trên các thông số như thời gian, ngày, phần mềm ứng dụng, dịch vụ hay phương pháp xác nhận URL và cơ chế mã hóa
1.3.3.2. Mã hóa dữ liệu
Mã hóa dữ liệu hay mật mã là một phần quan trọng trong vấn đề bảo mật VPN và đóng vai trò quan trọng khi truyền dữ liệu quan trọng. Đó là cơ chế chuyển đổi dữ liệu sang định dạng khác mà không có khả năng đọc được gọi là ciphertex, do đó các truy xuất trái phép vào dữ liệu có thể ngăn được khi dữ liệu truyền qua môi trường trung gian không an toàn.
Mã hóa dữ liệu có thể ngăn được các nguy cơ sau:
Xem dữ liệu trái phép
Thay đổi dữ liệu
Dữ liệu giả
Ngắt dịch vụ mạng
Ở dữ liệu nhận được, người nhận phải giải mã trở lại định dạng ban đầu. Trong trường hợp ciphertext bị ngăn chặn trong quá trình truyền đi thì người có dữ liệu đó cũng không thể biết phương pháp để chuyển đổi nó về dạng ban đầu, do đó nó cũng trở nên vô dụng với người đó. Hình 3-2 mô phỏng mô hình phương pháp mã hóa truyền thống:
Người gửi và nhận trong tiến trình mã hóa gọi là hệ thống mã hóa(cryptosystem). Cryptosystem thuộc một trong 2 dạng sau:
Đồng bộ
Không đồng bộ
Cryptosystem được phân loại dựa theo số khóa (key) được sử dụng. Khóa có thể là số, từ hay đoạn cú pháp được sử dụng nhằm mã hóa và giải mã
a.Hệ thống mã hóa đồng bộ
Hệ thống mã hóa đồng bộ dựa trên một khóa duy nhất, đó là một chuỗi bit cố định độ dài. Nên cơ chế mã hóa này cũng được gọi là mã hóa khóa duy nhất. Khóa là cá nhân (bi mật) và được sử dụng cho mã hóa cũng như giải mã.
Symmetric cryptosystems are based on a single key, which is a bit string of fixed length. Therefore, this encryption mechanism is also referred to as single-key encryption. The key is private (or secret) and is used for encryption as well as decryption.
Trước khi truyền tải thông tin giữa 2 thành phần, khóa phải được chia sẻ với nhau. Người mã hóa thông tin gốc sử dụng khóa cá nhân và gửi đến cho người nhận. Khi nhận được dữ liệu đã được mã hóa, người nhận sử dụng cùng khóa đó để giải mã.
Như đã đề cập ơ trên, người nhận và nguời gửi cần phải chia sẻ cùng một khóa. Một phương pháp chia sẻ khóa là người nhận cung cấp khóa bí mật hóa đối với người nhận bằng cách gặp trực tiếp. Tuy nhiên điều này làm lãng phí thời gian và cũng mất đi ý nghĩa của truyền thông tin bằng mạng. Một phương pháp khác để chuyển khóa cho người nhận là bằng cách điện thoại. Nhưng phương pháp này có thể bị nghe trộm. Một cách khác nữa là gửi bằng thư hay email. Và cũng như các phương pháp trước, nguy cơ bị lấy mất thông tin là rất lớn.
Bởi vì các phương pháp gửi khóa đều không an toàn, một giải pháp khả thi cho vấn đề này là làm cho độ dài khóa đủ lớn. Bất cứ người nào cũng cần phải “phá vỡ” hay giải mã khóa trước nếu muốn xem thông tinh gốc. Tuy nhiên với khóa có độ dài lớn thì việc giải mã khóa sẽ rất khó khăn. Phụ thuộc vào độ dài khóa, nhiều thuật toán mã hóa đồng bộ đã được phát triển qua nhiều năm, một số thuật toán phổ biến sử dụng mã hóa đồng bộ trong VPN là:
Data Encryption Standard (DES). DES đề xuất độ dài khóa đến 128bit. Tuy nhiên kích thước khóa đã giảm xuống còn 56bits bởi chính phủ Mĩ nhằm tăng tốc độ thuật toán. Tuy nhiên với độ dài khóa được rút ngắn như vây thì thuật toán mã hóa này bảo mật không tốt, có thể bi tấn công ví dụ như tấn công Brute Force. Tong tấn công Brute Force thì khóa sẽ được tạo ra ngẫu nhiên và được ghép vào file text cho đến khi khóa đúng được xác định. Với độ dài khóa nhỏ hơn có thể dễ dàng tạo ra khóa đúng và hệ thống mã hóa mất tác dụng
Triple Data Encryption Standard (3DES). Giống như hệ thống DES, 3DES cũng sử dụng khóa 56bit. Tuy nhiên, nó bảo mật tốt hơn do sử dụng 3 khóa khác nhau để mã hóa dữ liệu. Tiến trình thực hiện: Sử dụng khóa thứ nhất để mã hóa dữ liệu, sử dụng khóa thứ 2 để giải mã dữ liệu mã hóa bước 1 và cuối cùng sử dụng khóa 3 để mã hóa lần 2. Do đó nó tăng tính bảo mật nhưng cũng đồng thời do tính phức tạp của thuật toán nên chậm hơn gấp 3 lần so với DES.
Ron's Code 4 (RC4). Phát triển bởi Ron Rivest, sử dụng khóa có độ dài thay đổi đến 256bit. Vì độ dài của khóa nên RC4 được xếp vào một trong các cơ chế mã hóa tốt nhất, nhưng cũng hoạt động nhanh. RC4 tạo một chuỗi byte ngẫu nhiên và XOR chúng với file văn vản gốc. Vì byte được tạo ngẫu nhiên nên RC4 yêu cầu khóa mới cho mỗi lần gửi đi thông tin.
Hệ thống mã hóa xuất hiện 2 vấn đề chính. Đầu tiên là chỉ sử dụng một khóa cho mã hóa và giải mã. Nếu một người ngoài mà biết được khóa này thì tất cả thông tin truyền đạt sử dụng khóa này đều gặp nguy hiểm, nguy cơ mất mát cao. Di đó khóa cần được thay đổi theo chu kì. Vấn đề thứ 2 là số lượng thông tin lớn, quản lý khóa trở nên nhiệm vụ phức tạp. Thêm vào đó tổng chi phí cho thiết lập khóa ban đầu, phân phối hay thay thế các khóa chu kì là rất đắt và lãng phí thời gian.
Hệ thống mã hóa không đồng bộ có thể giải quyết các vấn đề của hệ thống mã hóa đồng bộ.
b.Hệ thống mã không đồng bộ
Thay thế cho khóa duy nhất của hệ thống mã hóa đồng bộ, hệ thống mã hóa không đồng bộ sử dụng một cặp khóa liên quan toán học với nhau. Một khóa là cá nhân và chỉ được biết bởi chủ của cặp khóa này. Khóa thứ 2 là khóa chung và được phân phối tự do. Khóa chung được sử dụng cho mã hóa còn mã cá nhân được sử dụng cho giải mã thông tin.
Trong giải pháp VPN, 2 hệ thống mã hóa không đồng bộ được sử dụng phổ biến nhất là Diffie-Hellman (DH) algorithm và the Rivest Shamir Adleman (RSA) algorithm.
Thuật toán Diffie-Hellman
Trong thuật toán Diffie-Hellman, mỗi thực thể giao tiếp cần 2 khóa, một để phân phối cho các thực thể khác và một khóa cá nhân. Thuật toán Diffie-Hellman thực hiện theo các bước:
1. Người gửi nhận mã chung của nơi cần gửi đến, cái này được phân phối cho tất cả những ai càn giao tiếp.
2. Người gửi phải thực hiện tính toán dựa trên khóa riêng của mình và khóa chung của nơi đến. Phép tính cho ra kết quả khóa chia sẻ bí mật (shared secret key)
3. Thông tin được mã hóa bằng khóa chia sẻ bí mật này
4. Thông tin được mã hóa sẽ gửi đến người nhận
5. Bên nhận sẽ tái tạo khóa chia sẻ bí mật bằng phép tính tương tự sử dụng khóa riêng của mình và khóa chung của người gửi
Nếu có bất cứ ai có thể lấy được thông tin mã hóa thì cũng không thể khôi phục lại thông tin ban đầu bởi vì họ không có khóa riêng của người nhận. Mô hình truyền dữ liệu sử dụng thuật toán Diffie-Hellman như hình 3-4
Dữ liệu chuyển đổi dựa trên thuật toán Diffie-Hellman được đánh giá là an toàn bởi vì chỉ có một khả năng rất nhỏ là dữ liệu có thể bị xem trộm hay thay đổi trong suốt quá trình truyền tải. Thêm vào đó, vì không có khóa bí mật (private) truyền tải nên xác suất có một người khác biết được khóa riêng là rất thấp. Và việc quản lý khóa sẽ không tốn nhiều thời gian như hệ thống mã hóa đồng bộ trong trường hợp lượng thông tin giao tiếp lớn.
Thuật toán Diffie-Hellman không cung cấp tính bảo mật hơn hệ thống mã hóa đồng bộ, có một vấn đề cũ liên quan đến nó là việc bảo đảm khoa chung được truyền đạt phải thật chính xác. Vi dụ, nếu 2 người giao tiếp truyền khóa chung qua môi trường trung gian không an toàn như internet. Khả năng có người thứ 3 chặn được yêu cầu khóa chung của 2 bên và gửi khóa chung của mình cho cả 2 đầu giao tiếp. Trong trường hợp này, người thứ 3 này sẽ dễ dàng ghi lại giao tiếp của 2 người này vì thông tin 2 đầu gửi đi được mã hóa bởi khóa chung người thư 3 này. Đây là kiểu tấn công Man-in-the-Middle.
Thuật toán The Rivest Shamir Adleman (RSA)
RSA là cơ chế mã hóa mạnh, là chuẩn trong hệ thống mã hóa không đồng bộ. Không giống như Diffie-Hellman, thông tin gốc được mã hóa sử dụng khóa chung của người nhận, Người nhận sẽ khôi phục lại thông tin ban đầu bằng khóa chung của người gửi. Các bước thực hiện thuật toán sử dụng tín hiệu số như sau:
1. Khóa chung được trao đổi với nhau giữa 2 người giao tiếp
2. Người gửi sử dụng hàm băm (hash function) để giảm kích thước dữ liệu gốc. Dữ liệu thu được gọi là message digest (MD).
3. Người gửi mã hóa message digest với khóa riêng tạo thành tín hiệu số duy nhất.
4. Dữ liệu và tín hiệu số kết hợp với nhau và gửi đến người nhận
5. Khi nhận được dữ liệu đã được mã hóa, người nhận sẽ khôi phục message digest bằng cách sử dụng hàm băm như bên người gửi.
6. Người nhận sẽ giải mã tín hiệu số bằng cách sử dụng khóa chung của người gửi
7. Người nhận sẽ so sánh 2 dữ liệu là message digest (bước 5) và message digest khôi phục từ tín hiệu số (bước 6). Nếu 2 dữ liệu này giống nhau thì thong tin không bị ngăn chặn, thay đổi trên suốt quá trình truyền tải, nếu không giống thì dữ liệu sẽ bị loại bỏ. Dữ liệu được gửi dựa trên cơ sở thuât toán RSA mô ta như hình sau:
RSA bảo vệ an toàn dữ liệu bởi vì người người nhận sẽ kiểm tra tính xác thực của dữ liệu 3 lần (các bước 5, 6, 7). RSA cũng đơn giản trong việc quản lý khóa. Tong mã hóa đồng bộ, n2 yêu cầu nếu có n thực thể liên quan. So sánh với mã hóa không đồng bộ chỉ yêu cầu 2*n key.
1.3.3.3.Cơ sở hạ tầng khóa chung (Public Key Infrastructure - PKI)
PKI là một bộ khung của các chính sách d0ể quản lý các khóa và thiết lập mộ phương pháp bảo mật cho việc trao đổi dữ liệu. Các sự trao đổi dữ liệu sử dụng PKI có thể xảy ra trong một tổ chức, một quốc gia, một khu công nghiệp hay một vùng. Để nâng cao sự quản lý khóa và bảo đảm các giao dịch dữ liệu có độ an toàn cao, một khung dựa trên PKI bao gồm các chính sách và thủ tục được hỗ trợ bởi các tài nguyên phần cứng và phần mềm. Chức năng chính của PKI như sau :
Tạo ra các cặp khóa cá nhân và công cộng cho khách hàng PKI
Tạo và xác nhận chữ ký số
Đăng ký và xác nhận người sử dụng mới
Cấp phát các sự chứng nhận cho người sử dụng
Bám theo các khóa đã được cấp phát và lưu trữ lịch sử của mỗi khóa ( dùng để tham khảo trong tương lai)
Thu hồi rút lại các giấy chứng nhận không hợp lệ hoặc quá hạn
Xác nhận người sử dụng PKI
Trước khi cố tìm hiểu công việc của PKI, chúng ta hãy tìm hiểu các thành phần tạo thành khung PKI
1. Các thành phần PKI
Các thành phần chính tạo thành khung PKI là
Khách hàng PKI
Người cấp giấy chứng nhận (CA)
Người cấp giấy đăng ký (RA)
Các giấy chứng nhận số
Hệ thống phân phối các giấy chứng nhận (CDS)
a. Khách hàng PKI
Một khách hàng PKI là thực thể mà yêu cầu giấy chứng nhận số từ CA hoặc RA. Trườc khi một khách hàng PKI tham gia cvào các sự giao dịch dữ liệu, nó phải có được một giầy chứng nhận số. Để làm được điều này, khách hàng phát ra một yêu cầu về một giầy chứng nhận từ CA hoặc RA được chỉ định cho tổ chức. Khi một khách hàng được xác nhận thành công, nó nhận được giấy xác nhận mà nó yêu cầu. Sau khi nhận được giấy xác nhận, khách hàng sử dụng nó để nhận dạng mình. Tuy nhiên trách nhiệm duy nhất của khách hàng là bảo vệ giữ gìn giấy chứng nhận
b. Certification Authority (CA)
CA là một người thứ ba tin cậy cấp phát các gấiy chứng nhận số đến khách hàng PKI. Trườc khi cấp phát một xác nhận số, CA kiểm tra tính đồng nhất và tính xác thực của khách hàng PKI
CA sử dụng các thủ tục và các nguyên tắc thực hiện riêng của nó để cấp phát các giấy chứng nhận số. Như chúng ta kỳ vọng, quá trình cấp giấy chứng nhận thay đổi phụ thuộc vào cơ sở hạ tầng hợp lệ được hỗ trợ bởi CA, các chính sách tổ chức của nó, mứ độ của giấy chứng nhận được yêu cầu. Quá trình có thể yêu cầu một vài thông tin, như bằng lái xe, notarization hoặc dấu vân tay.
Một ví dụ của một CA nổi tiếng là Verisign,Inc
c. Registration Authority ( RA)
Trước khi thỏa mãn một yêu cầu về giấy chứng nhận số, CA phải xác nhận và kiểm tra tính hợp lệ của yêu cầu. Tuy nhiên, bởi vì số lượng lớn các yêu cầu cho giấy chứng nhận số, CA ủy quyền trách nhiệm kiểm tra tính hợp lệ của yêu cầu cho RA. RA nhận tất cả các yêu cầu cấp giấy chứng nhận và kiểm tra chúng
Sau khi một RA kiểm tra một yêu cầu thành công, nó chuyển yêu cầu tới CA. CA phát giấy chứng nhận yêu cầu và chuyển nó tới cho RA. Ra sau đ1o chuyển giấy chứng nhận tới khách hàng yêu cầu. Trong cách thực hiện này, RA đóng vai trò như một gnười trung gian giữa các khách hàng PKI và CA.
d. Các giấy chứng nhận số
Một giấy chứng nhận số là một tương đương về mặt điện tử của một thẻ xác nhận và được sử dụng để xác định duy nhất một thực thể trong suốt quá trình truyền. Bên cạnh việc xác định định dan của người chủ, các giấy chứng nhận số cũng loại bỏ cơ may của sự làm giả, vì thế giảm được nguy cơ của sự tạo ra dữ liệu, các giấy chứng nhận số cũng ngăn chặn có hiệu quả người gởi từ các thông tin không xác nhận
Một giấy chứng nhận số bao gồm các thông tin giúp xác nhận tính hợp lệ của người gửi và bao gồm các thông tin sau :
Dãy số của giấy chứng nhận
Hạn sử dụng của giấy chứng nhận
Chữ ký số của CA
Khóa công cộng của khách hàng PKI
Trong suốt một giao dịch, người gửi phải gửi giấy chứng nhận số của anh ấy hoặc cô ấy theo với tín hiệu đã mã hóa để xác nhận anh ấy hay cô ấy. Người nhận sử dụng khóa công cộng của CA để xác nhận tính hợp lệ của khóa công cộng của người gửi, cái mà được gắn vào thông tin gửi. Như trong trường hợp các khóa công cộng, khóa công công của CA được phổ biến rộng rãi và sẵn sàng cho tất cả. Khi người nhận đã đảm bào được định danh đúng của người gửi, người sử dụng dùng khóa công cộng của người gửi để giải mã thông tin thực sự
e. Hệ thông phân phối giấy chứng nhận
Hệ thống phân phối giấy chứng nhận là một kho chứa các giấy chứng nhận được cấp cho người sử dụng và tổ chức. Thêm nữa CDS sinh ra và lưu trữ các cặp khóa, mật hiệu các khóa công cộng sau khi đã xác nhận chúng, lưu trữ và thu hồi các khóa bị mất hay hết hạn.CDS cũng chịu trách nhiệm cho việc xuất các khóa công cộng tới các server dịch vụ thư mục
2. Các giao dịch dựa trên PKI
Như đã đề cập phía trên, PKI cung cấp bốn chức năng bo mật chính : sự cẩn mật, sự toàn vẹn, sự xác nhận và không có sự từ chối. Mỗi bước trong một giao dịch VPN được lặp lại một hay nhiều trong số các tính năng bảo mật này. Các bước trong một giao dịch dựa trên PKI là :
Sự sinh ra cặp khóa. Trườc khi người gởi chuyển dữ liệu đến người nhận mong muốn, nó báo cho người nhận biết mục đích của nó về việc trao đổi dữ liệu. Như vậy thì, cà hai đầu sinh ra một cặp khóa tạo bởi khóa riw6ng và khóa công cộng. Đầu tiên, khóa cá nhân được tạo ra. Sau đó, khóa công cộng tương ứng được tạo bằng cách áp dụng một hàm băm một chiều đối với khóa riêng.
Sự tạo ra chữ ký số. Sau khi cặp khóa được tạo ra, một chữ ký số duy nhất được tạo ra. Chữ ký số này dùng để định danh người gửi dữ liệu. Để tạo ra chữ ký số, đầu tiên thông tin gốc bị băm. Nói một cách khác, một hàm băm được áp dụng vào tín hiệu gốc. Quá trình băm cho kết quả là một tập thông tin, cái mà sau đó được mã hóa với khóa các nhân của người gửi. Kết quả được gọi là chữ ký số
Áp dụng mã hóa dữ liệu và chữ ký số.Sau khi một chữ ký số được tạo ra, thông tin gốc được mã hóa với khóa công cộng của người gửi. Kế tiếp, chữ ký số được tạo ợ trân được gắn vào thông tin đã mã hóa.
Thông tin đã mã hóa và khóa công cộng của người gửi được chuyển tới người nhận. Thông tin được mã hóa sau ứo được truyền đến người nhận cùng với khóa công cộng của người gửi. Thay vì chuyển khóa công cộng dưới dạng văn bản rõ nghĩa thì khóa công cộng đầu tiên được mã hóa bởi khóa công cộng của người nhận. Để giải mã khó công cộng được mã hóa này, người sử dụng phải sử dụng khóa riêng của mình. Bởi vì khóa riêng của người nhận chỉ có người nhận biết, cơ hội để cho các người xâm phạm phá khóa công cộng là rất thấp. Khóa công cộng của người gửi còn được xem như là khóa phiên
Nhận thông tin và xác nhận định danh người gửi. Trong lúc nhận thông tin mã hóa và khóa công cộng, người nhận có thể yêu cấu CA kiểm tra danh tính người gửi. CA làm được điều đó bằng cách kiểm tra chữ ký số được gắn với thông tin và báo kết quả cho người nhận biết. Nếu chữ ký số được kiểm tra thành công, người nhận tiếp tục qua 1trình giải mã thông tin. Nếu không người nhận sẽ từ chối và giao dịch sẽ kết thúc
Sự giải mã thông tin. Sau khi định danh người gửi được xác nhận thành công, người nhận mã hóa thông tin. Để làm được như vậy người nhận đầu tiên phải giải mã khóa công cộng của người gửi bằng cách sử dụng khóa riêng của nó. Khi khóa công cộng của người gửi được ciết xuất thành công thì người nhận sẽ dùng nó để giải mã thông tin
Sự xác nhận nội dung thông tin Cuối cùng, người nhận xác nhận kiểm tra nội dung của thông tin nhận được. Đầu tiên, chữ ký số được giải mã sử dụng khóa công cộng của người gửi và thông tin được chiết xuất ra. Thông tin mã hóa sẽ được băm qua một hàm băm và một tập thông tin mới được rút ra. tập thông tin nhận được va tập thông tin mới sinh ra được so sánh với nhau.nếu chúng phù hợp, dữ liệu không bị chặn đứng hoặc can thiệp vào trong quá trình truyền
Ở phần kế, chúng ta sẽ được biết về các cách thực hiện PKI đa dạng được sử dụng phần lớn bởi các tổ chức trên thế giới
3. Hiện thực PKI
Như chúng ta đã biết, CAs giúp thiết lập định danh đúng của các thực thể giao tiếp. Tuy nhiên, CAs không những chứng thực các khách hàng PKI, mà còn các CAs khác bằng cách phát giấy chứng nhận số tới chúng. Cas được kiểm tra, xoay vòng, kiểm tra các CAs khác và chuỗi tiếp tục cho tới khi mỗi thực thể các thể tin tưởng các thực thể khác liên quan đến một giao dịch. Chuỗi chứng nhận này được biết đến như là đường đi của sự chứng nhận, và sự sắp xếp của CAs trong đường đi chứng nhận này được xem như cấu trúc của PKI
Các loại chính của cấu trúc PKI bao gồm
Cấu trúc CA đơn
Cấu trúc danh sách tin cậy
Cấu trúc có thứ bậc
Cấu trúc mắt lưới
Cấu trúc hỗn hợp
a. Cấu trúc CA đơn
Cấu trúc CA đơn là cấu trúc PKI đơn giản nhất. Như tên gọi của nó, cấu trúc này được dựa trên CA đơn, cái mà cấp phát các giấy chứng nhận, và khi cần thiết truy hồi các giấy chứng nhận. Tất cả các thực thể bên dưới có một mối quan hệ tin cậy đối với CA này. Bởi vì sự vắng mặt của các CA khác trong mô hình, cấu trúc này không hỗ trợ mối quan hệ tin cậy CA
Hình 3-7 miêu tả cấu trúc của một CA đơn
Cấu trúc CA đơn phù hợp với các tổ chức nhỏ bởi vì số lượng khách hàng PKI tương đối thấp và sự quản lý các khách hàng này không phải là một nhiệm vụ tiêu thụ thời gian
b. Cấu trúc danh sách tin cậy
Vì số lượng khách hàng PKI trong một tổ chức tăng, sự quản lý xác nhận và kiểm tra định danh trở nên phức tạp và tiêu tốn nhiều thời gian đối với một CA đơn. Tình huống này có thể được đơn giản bằng cách dùng nhiều CAs trong một cấu trúc.
Với nhiều Cas, một khách hàng PKI đơn có thể yêu cầu các gấiy chứng nhận từ nhiều hơn một CA. Kết quả là, mỗi khách hàng phải lưu trữ một danh sách các mối liên hệ tin cậy với tất cả các CAs trong một cấu trúc – do đó có tên là cấu trúc danh sách tin cậy
c. Cấu trúc có thứ bậc
Cấu trúc có thứ bậc là cấu trúc PKI được hiện thực phổ biến nhất và được sử dụng trong các tổ chức có quy mô lớn. Không giống các cấu trúc ở trên, mô hình này dựa trên các mối quan hệ tin cậy giữa các Cas khác nhau trong mô hình.
Như tên gọi của nó, Cas được sắp xếp một cách có thứ bậc và chia xe một loại “cấp trên - cấp dưới ” của mối quan hệ tin cậy. CA cao nhất được xem như đỉnh CA và được xem như điểm bắt đầu của mô hình. Nó cấp phát giấy chứng nhận và kiểm tra định danh của các CAs cấp dưới của nó. Các CAs cấp dưới, xoay vòng, có thể cấp giấy chứng nhận tới các cấp dưới của chúng và khách hàng PKI. Tuy nhiên chúng không thể c6áp giấy chứng nhận cho cấp trên
d. Cấu trúc mắt lưới
Không giống như cấu trúc thứ bậc, trong một cấu trúc mắt lứơi các Cas chia sẻ một mối qun hệ tin cậy ngang hàng với các Cas khác. Kết quả là, chúng có thể cấp phát các giầy chứng nhận số lẫn nhau, điều này có nghĩa là, mối quan hệ tin cậy giữa các Cas là hai chiều. Các Cas cũng cấp phát giấy chứng nhận tới khách hàng PKi của chúng
e. Cấu trúc PKI hỗn hợp
Các cấu trúc trên phục vụ cho các yêu cầu của một tổ chức đơn. Tuy nhiên, viễn cảnh và sự hiện thực của cơ sở hạ tầng PKI trở nên phức tạp khi một tổ chức phải tác động tới các tổ chức khác, như là trương hợp với hầu hết các tổ chức ngày nay. vấn đề nằm ở khả năng của sự khác nhau trong mỗi cấu trúc PKI của mỗi tổ chức. Ví dụ, một tổ chức có thể sử dụng cấu trúc mắt lưới trong khi các tổ chức khác sử dụng cấu trúc CA đơn. Trong tình huống như vậy, một cấu trúc hỗn hợp chứng mính sự hữu ích vì nó cho phép sự tương tác thành công giữa hai tổ chức
Có ba loại cấu trúc hỗn hợp. Bao gồm
Cấu trúc danh sách tin cậy mở rộng. Trong cấu trúc này, tất cả các khách hàng PKI giữ một danh sách mở rộng tất cả các điểm tin cậy trong cấu trúc của tổ chức khác thêm vào các điểm tin cậy trong tổ chức của chúng. Một điểm tin cậy trong cấu trúc của các hệ thông khác có thề hoặc là một CA đơn, nhiều hơn một CA, hợac tất cả các Cas của tổ chức khác.
Cấu trúc xác nhận chéo. Trong cấu trúc hỗn hợp này, gốc CA của một cơ sở hạ tầng của một tổ chức lưu trữ một mối quan hệ ngang hàng với các Cas gốc của các tổ chức khác.