Thiết bị FPGA Kích thước bitstream (Bits)
Spartan-3E XC3S1600E 5,970,480 Atlys Spartan-6 XC6SLX45 11,876,016 Virtex-5 XC5VLX50T 14,053,144 Virtex-6 XC6VLX240T 118,990,200 Artix-7 XC7A200T 65,330,912 Kintex-7 XC7K420T 149,880,032 Virtex-7 XC7VH580T 192,724,384
- Trình quản lý cập nhật của máy chủ (SuM - Server Update Manager): là trình
quản lý cập nhật, thuật tốn mã hóa và phần mềm. Chức năng của nó bao gồm quản lý dữ liệu người d ng, kho bitstream và phần mềm, thông báo bản cập nhật mới cho người sử dụng, khởi động phiên giao dịch với phía người d ng. T y thuộc vào các giao thức bảo mật được hỗ trợ bởi hệ thống người d ng cuối, SuM có thể lựa chọn một giao thức thích hợp để giao tiếp với người d ng thơng qua trình quản lý cập nhật của máy trạm. Sự linh hoạt trong lựa chọn giao thức cho phép các nhà cung cấp dịch vụ hỗ trợ một loạt các khách hàng với các khả năng khác nhau. Do đó framework của luận án này có thể sử dụng một giao thức với các thuật toán mã hóa tiêu chuẩn như trong [42] hay một giao thức với các tham số đặc biệt như trong [41]. SuM hỗ trợ hai chế độ cấu hình lại bitstream từ xa: chế độ on-line và chế độ off-line. Trong chế độ on-line, cấu hình lại được thực hiện trong quá trình truyền nhận bitstream và do đó địi hỏi khơng gian lưu trữ tạm thời ít. Trong chế độ
40 off-line, cấu hình lại chỉ bắt đầu khi bitstream đã được tải xong và được lưu trữ trong bộ nhớ của hệ thống người d ng cuối. Do đó ở chế độ off-line địi hỏi nhiều khơng gian bộ nhớ hơn.
Các bộ mã hóa, xác thực và nén: chịu trách nhiệm mã hóa, xác thực và nén
bitstream. Tương tự như việc lựa chọn giao thức, t y thuộc vào các thuật toán được hỗ trợ bởi hệ thống người d ng cuối, bộ mã hóa, xác thực và nén có thể chọn các thuật tốn mật mã và nén thích hợp.
2.1.2. Các thành phần phía ngƣời dùng
Phía người d ng, các thành phần được vẽ trong đường chấm chấm là thành phần t y chọn. Ví dụ, hệ thống có thể có hoặc khơng có một hệ điều hành (OS), có thể có hoặc khơng một bộ mã hóa bằng phần cứng. Trong trường hợp khơng có, một bộ giải mã được xây dựng bằng phần mềm là cần thiết. Các FPGA Virtex của Xilinx có bộ mã hóa được tích hợp sẵn: Virtex-II và Virtex-II Pro hỗ trợ bộ mã hóa Triple-DES với khóa 56-bit, trong khi Virtex-4 đến Virtex-7 hỗ trợ bộ mã hóa AES với khóa 256-bit. Tuy nhiên, các bộ mã hóa này khơng hỗ trợ cho việc sử dụng cấu hình lại một phần và do đó để thực hiện an toàn cập nhật cho hệ thống này, người sử dụng cần phải xây dựng bộ giải mã trong phần logic cấu hình hoặc trong phần mềm nhúng. Trong framework đã đề xuất, tính linh hoạt trong việc lựa chọn các thuật tốn mã hóa ln được đề cao. Ví dụ, khi việc cập nhật bitstream được thực hiện khơng thường xun thì sự an toàn bistream và việc sử dụng tối ưu các nguồn tài nguyên phần cứng là quan trọng hơn nhiều so với tổng số thời gian cập nhật. Do đó, trong một số trường hợp, luận án này đề nghị sử dụng bộ giải mã, xác thực và giải nén bằng phần mềm để tiết kiệm tài nguyên phần cứng. Hơn nữa, nếu một phần mềm cần thiết khơng có sẵn hệ thống người d ng cuối, nó có thể được tải về và cài đặt một cách dễ dàng, khơng như trường hợp các thuật tốn được thực hiện bằng phần cứng. Và đặc biệt là các thuật tốn mã hóa có thể thay đổi theo thời gian và yêu cầu bảo mật như: Sử dụng một trong các thuật toán DES, 3DES, AES hay sử dụng AES với các độ dài khóa khác nhau: 128, 224, 256bit.
Trình quản lý cập nhật của máy trạm (CuM - Client Update Manager): chịu
trách nhiệm quản lý việc tải xuống và cấu hình lại hệ thống. Nó chịu trách nhiệm giao tiếp với các nhà cung cấp dịch vụ và duy trì các thông tin về hồ sơ cá nhân của hệ thống người d ng cuối. Hồ sơ chứa thông tin về số định danh hệ thống/FPGA, phiên bản bitstream, thuật toán giải mã (DES, AES ...), thuật toán xác thực (SHA-1, SHA-2 ...), loại bộ vi xử lý (lõi cứng, mềm-core), thuật tốn giải nén và tài ngun sẵn có. Bảng 2.2 cho thấy một ví dụ về hồ sơ hệ thống của người d ng.
41