Xem mẫu

BỘ BẢO MẬT IP (IPSEC) TỐC ĐỘ CAO 10Gbgs
TRÊN FPGA
Lê Thị Thanh Bình1
Tóm tắt: Trong bài báo này, tôi đề xuất thực hiện một bộ bảo mật dữ liệu IPSec
trên FPGA Xilinx Virtex-6. Giao thức bảo mật IP (IPSec) là một giao thức quan trọng
trong giao thức bảo mật mạng được sử dụng trong lớp IP. Thông thường các bộ bảo
mật IPSec đều được thực hiện bằng phần mềm như trên Windows hoặc Linux, trong
IPSec các bộ xử lý, mã hóa và xác thực chiếm nhiều thời gian xử lý của CPU do đó rất
khó thực hiện hệ thống IPSec tốc độ cao. Vì vậy, tôi sẽ trình bày một bộ bảo mật IPSec
tốc độ cao bằng sự kết hợp xử lý giữa phần mềm và phần cứng. Phần mềm Racoon
với chức năng quản lý, đàm phán và trao đổi khóa IKEV2 được chạy trên lõi xử lý
Microblaze. Phần cứng thực hiện trên phần logic của FPGA với chức năng quan trọng
xử lý dữ liệu cho mã hóa AES và xác thực HMAC. Khi đó bộ IPSec trở thành bộ đồng
xử lý với CPU giúp hệ thống thực hiện với tốc độ xử lý cao - 10Gbps.
Từ khóa: IPSec, IP security, bộ bảo mật IP, Giao thức bảo mật IP, bảo mật mạng.
1. Mở đầu
Trong nhưng năm gần đây các cuộc tấn công mạng xảy ra ngày càng nhiều và ở
hầu hết các quốc gia trên thế giới, tính chất của các vụ tấn công ngày càng phức tạp và
khó lường. Như thông tin từ tờ báo NBC News đã đưa tin “Tin tặc của Trung Quốc đã
tiếp cận hộp thư điện tử cá nhân của các quan chức thương mại và các an ninh quốc gia
hàng đầu của Mỹ từ tháng 4/2010” và một số tờ báo đã đưa tin “Mỹ nghe lén điện thoại
của 35 nhà lãnh đạo trên thế giới” cũng đã làm cho các quốc gia lo ngại về sự đảm bảo
thông tin mạng và an ninh quốc gia.
Các cuộc tấn công mạng với các thiết bị được triển khai từ xa qua mạng Internet
như tấn công thụ động hoặc tấn công chủ đích. Khi hệ thống bị tấn công sẽ làm thay
đổi hành vi của hệ thống hoặc thậm chí làm tê liệt toàn bộ hệ thống. Những loại tấn
công phố biến bao gồm:
Nghe lén: Người sử dụng trái phép đã sử dụng mã độc gây hại để khai thác
mạng, sao chép phân tích dữ liệu. Nếu họ thấy được thông tin văn bản rõ và thông tin
cấu hình thì họ có thể phát hiện ra điểm yếu của hệ thông để tấn công.
Giả mạo: Người sử dụng trái phép có thể giành quyền kiểm soát các thiết bị từ
xa bằng cách phát hành các gói tin điều khiển giả. Loại tấn công này có thể làm thay
đổi hành vi của hệ thống hoặc làm tê liệt hệ thống.
1

CN, Trường Đại học Quảng Nam

15

BỘ BẢO MẬT IP (IPSEC) TỐC ĐỘ CAO 10Gbgs TRÊN FPGA
Tấn công truyền lại: Người sử dụng trái phép đứng chắn ngang việc truyền tin
hợp lệ và sử dụng lại nó để truyền lại, và có thể thay đổi hành vi của hệ thống bằng
cách thiết lập lại một số trạng thái trước đó của hệ thống.
Tấn công từ chối dịch vụ (DOS): Tấn công DOS làm giảm hiệu suất của hệ
thống bằng cách làm quá tải của hệ thống với một lưu lượng quá lớn. Nó là nguyên
nhân làm mất giao tiếp và từ chối dịch vụ.
Dịch vụ bảo vệ hệ thống có thể được chia bốn lại như sau:
Bí mật: Đảm bảo rằng chỉ những đơn vị có thẩm quyền mới có quyền xem nội
dung dữ liệu được bảo vệ bằng cách mã hóa dữ liệu như AES hoặc các thuật toán khác
để đảm bảo dữ liệu an toàn
Xác thực: Xác thực để đảm bảo chắc chắn thực thể truyền là một và nó là duy
nhất. Thực thể xác thực bao gồm xác thực ngang hàng và xác thực nguồn gốc dữ liệu.
Chữ ký số được tạo bởi các thuật toán công khai như RSA và El-Gaman là rất khó để
giả mạo.
Tính toàn vẹn: Đảm bảo rằng dữ liệu nhận được là chính xác giống như dữ
liệu gửi đi, đảm bảo không bị chỉnh sửa, chèn, xóa hay thay thế xảy ra trong quá trình
truyền dữ liệu. Message Authentication Code (MAC) được tính bằng cách băm khóa
bí mật với thông điệp nhằm cung cấp tính toàn vẹn trên văn bản ký.
Kiếm soát truy cập: Bảo vệ tài nguyên từ việc sử dụng trái phép. Các chính sách
an ninh tại điểm truy cập mạng được xác định để kiểm soát ai có thể được quyền truy
cập và có những điều kiện gì có quyền truy cập.
Bí mật khóa mã hóa và khóa hàm băm rất cần thiết cho các dịch vụ an ninh được
xác định ở trên. Giao thức trao đổi khóa, chẳng hạn IKEV cung cấp một cơ chế thương
lượng, đàm phán và trao đổi chia sẽ khóa bí mật giữa các thực thể truyền và nhận.
Sự đồng thuận chung về tầm quan trọng liên quan đến bảo mật mạng đã dẫn đến
sự phát triển của IPSec. IPSec đã cung cấp một tiêu chuẩn để đảm bảo thông tin liên
lạc trên mạng Internet. Nó được thiết kế tương thích với Ipv4 và Ipv6. Nhiều công ty,
như Cisco đã triển khai IPSec trong sản phẩm của họ. Trong bài báo này tôi trình bày
việc thực hiện IPSec trong chế độ đường hầm (tunnel) trên kit phát triển ML605 với
chíp FPGA Virtex 6.
2. Nội dung
2.1. IPSec Freamwork
Giao thức IPsec bao gồm Authentication Hearder (AH) và Encapsulating Security
Payload (ESP) tất cả AH và ESP đều sử dụng số sequence number để bảo vệ gói IP
chống tấn công lặp lại. Thêm vào đó AH cũng cấp xác thực dữ liệu còn ESP cung cấp
vừa xác thực vừa mã hoá dữ liệu. Mỗi giao thức cung cấp hai chế độ hoạt động đó là
16

LÊ THỊ THANH BÌNH
chế độ vận chuyển (transport) và chế độ đường hầm (tunnel). Transport mode là được
sử dụng giao tiếp cuối đến cuối (end-to-end) nơi mà hai host Ipsec là điểm cuối. Trong
chế độ đường hầm thường được sử dụng khi đích của gói dữ liệu khác từ cổng định
tuyến khác, chúng cung cấp dịch vụ IPSec cho gói dữ liệu chuyển tiếp. Trong bài báo
này, tôi tập trung mô tả chế độ đường hầm (turnnel mode). Chế độ đường hầm trong
giao thức ESP thêm phần header ESP vào trước IP header và thêm phần IP header mới
vào trước ESP. Thêm phần dữ liệu (trailer) vào phần cuối gói tin. Giao thức ESP hoạt
động trong chế độ đường hầm như hình sau:

Hình 1. Giao thức ESP ở chế độ đường hầm
Trong giao thức AH chế độ đường hầm phần header AH được chèn vào trước
IP header và IP header mới cũng được chèn vào trước AH header. Giao thức AH hoạt
động chế độ đường hầm như hình 2 sau:

Hình 2. Giao thức AH ở chế độ đường hầm
2.2. IPSec trên Xilinx board ML605 (Virtex-6)
Trong những năm gần đây, Field Programmable Gate Arrays (FPGA) đã đạt
được đầy đủ khả năng để thực hiện những tính năng phức tạp về xử lý mạng máy
tính trong việc lập trình phần cứng. Các thiết bị mạng sử dụng FPGA cho thấy sự
cân bằng giữa hiệu suất và tính linh hoạt, chúng làm cho FPGA thích hợp tối ưu tài
nguyên cho giải pháp ASIC. Xilinx Virtex-6 là dòng có tốc độ cao, hỗ trợ hệ thống xử
lý nhúng (Embedded system) trên McroBlaze 32bit RISC, Tri-speed Ethernet, DDR3
SO-DIMM, các cổng IO giao tiếp mở rộng FPGA Mezzanine Card (FMC).
Bộ IPSec tốc độ cao trong bài báo được thực hiện trên chíp FPGA Virtex6 board
ML605 nhằm tận dụng lợi thế của bộ vi xử lý nhúng, khối RAM trên chíp cho phép
17

BỘ BẢO MẬT IP (IPSEC) TỐC ĐỘ CAO 10Gbgs TRÊN FPGA
thực hiện lưu trữ khóa mở rộng cho khối AES. MicroBlaze thực hiện nhúng OS và
chạy các chương trình ứng dụng như IKEv2.
2.3. Thực hiện trên FPGA
2.3.1. Phần mềm
Phương thức trao đổi khóa tự động bằng phần mềm Racoon với thuật toán trao
đổi khóa IKEV2 là phiên bản nâng cao cho giao thức trao đổi khóa, tăng cường chức
năng thực hiện trao đổi khóa và xác thực. Phần mền Racoon được chay trên hệ điều
hành RTOS ecos cho phép tối ưu hệ thống và kết hợp phương thức trao đổi khóa, mã
hóa và xác thực được dễ dàng, linh hoạt.
2.3.2. Phần cứng
Bộ IPSec thực hiện bằng phần cứng cho phép thay đổi số lượng bộ mã hóa và
xác thực AES, HMAC-SHA-256 trong thiết kế có thể cấu hình để đáp ứng các ứng
dụng khác nhau.
Sơ đồ kiến trúc hệ thống

Hình 3. Sơ đồ kiến trúc IPSec thực hiện bằng phần cứng
Khối IPSec đó là những bộ mã hóa AES và xác thực HMAC(SHA256) được
thực hiện bằng phần cứng trên FPGA. Để Kernel RTOS giao tiếp được với khối IPSec
cần phải có driver. Ở trên cùng là các ứng dụng trong mạng, ứng dụng IKEV thực hiện
việc trao đổi khóa cho IPSec.
Sơ đồ kiến trúc phần cứng IPSec trên FPGA
18

LÊ THỊ THANH BÌNH

2.3.3. Mô phỏng

Hình 4. Sơ đồ khối thực hiện IPSec

Bằng phương pháp mô phỏng, với 4 giao thức IP AH và 4 core IP AES và HMAC
kết nối bên trong IPSec thực hiện đồng thời cho phép tăng tốc độ mã hóa và xác thực. Băng
thông thực hiện 6.44Gbs ở mức trung bình chiều dài 512 byte gói dữ liệu dưới đồng hồ
tốc độ 214MHz với 68 xung nhịp và 4 core mã hóa và xác thực thực hiện đồng thời. Việc
thực hiện IPSec trên kit Virtex-6 XC6VLX240T. Phương pháp thiết kế sử dụng kỹ thuật
pipeline cho việc nâng cao tốc độ và thiết kế giảm công suất để giảm tiêu hao năng lượng.
2.4. Kết quả đạt được
2.4.1. Kết quả mô phỏng

Hình 5. Tài nguyên AES core

Hình 6. Tốc độ AES core
19

nguon tai.lieu . vn