Giới thiệu dự án

Trong bối cảnh bùng nổ của công nghệ thông tin, Internet vạn vật (IoT), hệ thống tài chính phi tập trung (Blockchain) và truyền thông dữ liệu tốc độ cao, an toàn thông tin trở thành yếu tố sống còn đối với mọi tổ chức và cá nhân. Mật mã học bất đối xứng đóng vai trò nền tảng trong việc xác thực thực thể, bảo vệ tính toàn vẹn và chống phủ định trách nhiệm. Theo thống kê từ các tổ chức bảo mật quốc tế, hơn 90% lưu lượng truy cập web an toàn (HTTPS/TLS) và mạng lưới tài sản số hiện nay phụ thuộc vào các thuật toán mã hóa khóa công khai hiện đại.

                    +-------------------------------------------------------+
                    |                 HỆ THỐNG SoC (Virtex-7)               |
                    |  +----------------+      AXI-4 Bus                    |
                    |  |  MicroBlaze /  | <==================+              |
                    |  |  Host CPU      |                    |              |
                    |  +----------------+                    v              |
                    |  +-------------------------------------------------+  |
                    |  |             LÕI IP ECDSA (secp256k1)            |  |
                    |  |  +-------------------+   +--------------------+ |  |
                    |  |  |  SHA-256 Engine   |   |   EC Unit (PA/PD)  | |  |
                    |  |  +---------+---------+   +---------+----------+ |  |
                    |  |            |                       |            |  |
                    |  |            +---------> FSM <-------+            |  |
                    |  |                         |                       |  |
                    |  |                         v                       |  |
                    |  |               +-------------------+             |  |
                    |  |               |  Bộ Fp-ALU 256-bit|             |  |
                    |  |               +-------------------+             |  |
                    |  +-------------------------------------------------+  |
                    +-------------------------------------------------------+

Vấn đề thực tiễn (Problem Statement)

Hệ mật mã khóa công khai truyền thống như RSA (Rivest-Shamir-Adleman) yêu cầu kích thước khóa rất lớn (2048-bit đến 4096-bit) để đạt được mức độ an toàn tương đương khóa 256-bit của hệ mật mã đường cong Elliptic (ECC). Kích thước khóa lớn của RSA dẫn đến tiêu tốn tài nguyên phần cứng, tiêu hao năng lượng cao và tốc độ tính toán chậm. Trong khi đó, việc hiện thực thuật toán chữ ký số đường cong Elliptic (ECDSA) hoàn toàn bằng phần mềm (Software) trên các bộ vi điều khiển thông thường gặp phải các hạn chế nghiêm trọng:

  • Tốc độ xử lý thấp: Các phép toán số học trên trường hữu hạn $\mathbb{F}_p$ với số nguyên lớn 256-bit yêu cầu hàng triệu chu kỳ lệnh CPU.
  • Nguy cơ tấn công kênh kề (Side-Channel Attacks): Độ trễ thực thi không cố định trong phần mềm dễ làm rò rỉ khóa bí mật qua phân tích thời gian và năng lượng tiêu thụ.
  • Nghẽn cổ chai hệ thống: Không đáp ứng được các ứng dụng cần thông lượng xác thực cao như hệ thống giao dịch ngân hàng và cổng kết nối IoT tập trung.

Mục tiêu đề tài

Đề tài "Hiện thực lõi IP thuật toán chữ ký số (DSA) sử dụng hệ mật mã đường cong Elliptic kết hợp thuật toán băm SHA-256 trên FPGA" được thực hiện bởi nhóm nghiên cứu tại Trường Đại học Công nghệ Thông tin - ĐHQG-HCM nhằm đạt được 5 mục tiêu trọng tâm:

  1. Nghiên cứu và thiết kế khối số học $\mathbb{F}_p$-ALU 256-bit: Hiện thực 4 phép toán cơ bản gồm cộng modulo, trừ modulo, nhân modulo và nghịch đảo modulo trên trường số nguyên lớn với tần số hoạt động đạt tối thiểu $100\text{ MHz}$.
  2. Hiện thực khối xử lý đường cong Elliptic (EC Unit): Tối ưu hóa hai phép tính hình học cốt lõi là cộng hai điểm khác nhau (Point Addition - PA) và nhân đôi điểm (Point Doubling - PD) trên hệ tọa độ Affine.
  3. Hiện thực bộ tăng tốc hàm băm SHA-256: Thiết kế kiến trúc phần cứng chuyên dụng cho thuật toán băm 256-bit tuân thủ tiêu chuẩn FIPS PUB 180-2, đạt tần số tối thiểu $50\text{ MHz}$.
  4. Tích hợp lõi IP chữ ký số ECDSA hoàn chỉnh: Hỗ trợ đầy đủ hai pha sinh chữ ký (Signature Generation) và xác thực chữ ký (Signature Verification).
  5. Xây dựng hệ thống SoC (System-on-Chip) trên FPGA: Đóng gói lõi IP thành phần cứng ngoại vi, tích hợp trên kit phát triển Xilinx Virtex-7 VC707 Evaluation Board thông qua chuẩn giao tiếp bus công nghiệp.

Cách tiếp cận và phạm vi

  • Tiêu chuẩn đường cong: Chuẩn hóa theo tiêu chuẩn FIPS 186-4 (NIST) và SECG với đường cong Koblitz secp256k1 ứng dụng phổ biến trong hệ thống mạng Blockchain.
  • Môi trường phần cứng: Nền tảng FPGA Xilinx Virtex-7 (XC7VX485T-2FFG1761C), công cụ tổng hợp và mô phỏng Vivado Design Suite kết hợp phần mềm nhúng Vitis IDE.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng và yêu cầu kỹ thuật

Để xác định hướng kiến trúc tối ưu, nhóm nghiên cứu đã phân tích so sánh giữa các phương pháp mật mã khóa công khai và phương thức triển khai:

Tiêu chí RSA-2048 (Phần mềm) ECDSA-256 (Phần mềm) Lõi IP ECDSA-256 trên FPGA (Đề tài)
Kích thước khóa 2048-bit 256-bit 256-bit (secp256k1)
Mức độ an toàn (Security Strength) 112-bit 128-bit 128-bit
Tốc độ xử lý phép ký Thấp (~1-5 ms) Trung bình (~0.5-1.5 ms) Rất cao (Đạt microsecond, song song phần cứng)
Khả năng kháng tấn công kênh kề Kém Kém Cao (Kiến trúc phần cứng điều khiển bằng FSM chuyên dụng)
Khả năng tích hợp SoC Hạn chế Phụ thuộc OS Linh hoạt qua chuẩn giao tiếp AXI-4 / Avalon

Phân tích yêu cầu hệ thống theo mô hình MoSCoW:

  • Must have (Bắt buộc): Khối $\mathbb{F}_p$-ALU 256-bit chuẩn xác, khối nén SHA-256 64 vòng lặp, thuật toán nhân vô hướng điểm $k \cdot P$, cơ chế sinh/xác thực chữ ký $(r, s)$.
  • Should have (Nên có): Bộ lập lịch Datapath tối ưu giảm độ trễ FSM, đường truyền dữ liệu 256-bit đồng bộ hóa trong 1 chu kỳ clock.
  • Could have (Có thể mở rộng): Hỗ trợ chuyển đổi sang hệ tọa độ Projective/Jacobian để giảm thiểu phép nghịch đảo.
  • Won't have (Chưa thực hiện đợt này): Hỗ trợ đa đường cong NIST (P-384, P-521) trên cùng một lõi cấu hình động.

Thiết kế kiến trúc hệ thống

Hệ thống được thiết kế theo cấu trúc phân tầng phân cấp (Hierarchical Architecture) gồm 3 tầng chức năng:

+-----------------------------------------------------------------------+
| TẦNG TRÊN CÙNG (Upper Layer): LÕI ECDSA & NHÂN VÔ HƯỚNG k.P          |
| - Máy trạng thái FSM ECDSA (Tạo chữ ký: r, s | Xác thực: r == r')      |
| - Thuật toán nhân vô hướng Double-and-Add                             |
+-----------------------------------------------------------------------+
                                  |
                                  v
+-----------------------------------------------------------------------+
| TẦNG TRUNG GIAN (Middle Layer): KHỐI TÍNH TOÁN ĐƯỜNG CONG (EC UNIT)   |
| - Phép cộng 2 điểm khác nhau (Point Addition - PA)                    |
| - Phép nhân đôi điểm (Point Doubling - PD)                             |
| - Hệ tọa độ Affine: y^2 = x^3 + 7 (mod p)                              |
+-----------------------------------------------------------------------+
                                  |
                                  v
+-----------------------------------------------------------------------+
| TẦNG THẤP NHẤT (Lower Layer): BỘ SỐ HỌC TRƯỜNG HỮU HẠN (Fp-ALU 256-BIT)|
| - Cộng/Trừ Modulo (1 chu kỳ)  - Nhân Modulo Hossain (n+1 chu kỳ)     |
| - Nghịch đảo Modulo nhị phân (Binary Inversion)                       |
+-----------------------------------------------------------------------+

Phương pháp luận và quy trình triển khai (Methodology)

Dự án áp dụng quy trình thiết kế phần cứng vi mạch chuẩn công nghiệp (ASIC/FPGA Design Flow):

  1. Phân tích toán học: Xây dựng mô hình mẫu (Gold Model) bằng Python để sinh dữ liệu kiểm thử (Test vectors) chuẩn NIST.
  2. Hiện thực RTL (Register Transfer Level): Viết mã phần cứng bằng ngôn ngữ Verilog HDL chuẩn hóa, thiết kế tách biệt Datapath và Control Unit (FSM).
  3. Mô phỏng chức năng (Functional Simulation): Sử dụng Vivado Simulator để kiểm tra timing và dạng sóng từng khối con.
  4. Tổng hợp và thực thi (Synthesis & Implementation): Tối ưu hóa tài nguyên logic (LUTs, Flip-Flops, DSP Slices) trên FPGA Virtex-7.
  5. Đóng gói IP và xác thực phần cứng (Hardware-in-the-loop): Kết nối qua AXI Bus với vi xử lý MicroBlaze, xuất kết quả qua UART/Vitis Serial Console.

Implementation và kết quả

Chi tiết các thuật toán phần cứng cốt lõi

1. Bộ cộng và trừ Modulo 256-bit (Modular Addition/Subtraction)

Để tối ưu hóa diện tích phần cứng, hai phép toán được tích hợp trong cùng một khối Datapath điều khiển bởi tín hiệu Sel_Op. Thuật toán hoàn thành chỉ trong 1 chu kỳ xung clock:

// Mo ta thuat toan Cong/Tru Modulo 256-bit (1 Cycle Datapath)
module Mod_AddSub_256 (
    input  wire [255:0] a,
    input  wire [255:0] b,
    input  wire [255:0] p,
    input  wire        sel_op, // 0: Cong Modulo, 1: Tru Modulo
    output wire [255:0] s
);
    wire [256:0] s1_add, s2_add;
    wire [256:0] s1_sub, s2_sub;
    
    // Nhanh Cong: s1 = a + b; s2 = s1 - p;
    assign s1_add = a + b;
    assign s2_add = s1_add - p;
    
    // Nhanh Tru: s1 = a - b; s2 = s1 + p;
    assign s1_sub = a - b;
    assign s2_sub = s1_sub + p;
    
    assign s = (sel_op == 1'b0) ? 
               ((s1_add >= p) ? s2_add[255:0] : s1_add[255:0]) :
               ((a < b)      ? s2_sub[255:0] : s1_sub[255:0]);
endmodule

2. Phép nhân Modulo 256-bit theo kiến trúc Hossain

Thuật toán nhân Modulo dựa trên cấu trúc đề xuất bởi Hossain, sử dụng thanh ghi dịch, bộ đếm xuống và mạch cộng song song. Thời gian thực thi phép nhân 256-bit đạt chính xác $n + 1 = 257$ chu kỳ clock:

$$\text{Thuật toán nhân: } Z = (X \times Y) \pmod p$$

  • Khởi tạo: $Z \leftarrow 0, 2p \leftarrow 2 \times p$.
  • Vòng lặp: Với $i$ từ $n-1$ xuống $0$:
    • $I_i = Y \text{ if } X[i] == 1 \text{ else } 0$
    • $C_3 = (Z \ll 1) + I_i$
    • $C_4 = C_3 - p;\quad C_5 = C_3 - 2p$
    • Cập nhật $Z$: Nếu $C_3 \ge 2p \implies Z = C_5$; nếu $C_3 \ge p \implies Z = C_4$; ngược lại $Z = C_3$.

3. Khối tính toán đường cong Elliptic (Point Addition & Point Doubling)

Trên hệ tọa độ Affine, phương trình đường cong secp256k1 có dạng $y^2 = x^3 + 7 \pmod p$ ($a=0, b=7$).

Thuật toán cộng hai điểm P1(x1, y1) != P2(x2, y2) -> P3(x3, y3):
  Bước 1: t1 = (y2 - y1) mod p          [Fp-Sub]
  Bước 2: t2 = (x2 - x1) mod p          [Fp-Sub]
  Bước 3: lambda = (t1 / t2) mod p      [Fp-Inversion + Fp-Mult]
  Bước 4: x3 = (lambda^2 - x1 - x2) mod p
  Bước 5: y3 = (lambda * (x1 - x3) - y1) mod p

Thuật toán nhân đôi điểm P1(x1, y1) -> P4(x4, y4):
  Bước 1: t1 = (3 * x1^2) mod p         [Fp-Mult + Fp-Add]
  Bước 2: t2 = (2 * y1) mod p           [Fp-Add]
  Bước 3: lambda = (t1 / t2) mod p      [Fp-Inversion + Fp-Mult]
  Bước 4: x4 = (lambda^2 - 2 * x1) mod p
  Bước 5: y4 = (lambda * (x1 - x4) - y1) mod p

4. Khối hàm băm SHA-256

Khối Datapath SHA-256 thực thi hàm nén 64 vòng lặp trên khối dữ liệu 512-bit, sử dụng 8 thanh ghi trạng thái $a, b, c, d, e, f, g, h$:

$$\begin{aligned} T_1 &= h + \Sigma_1(e) + \text{Ch}(e, f, g) + K_t + W_t \ T_2 &= \Sigma_0(a) + \text{Maj}(a, b, c) \ h &= g;\quad g = f;\quad f = e;\quad e = d + T_1 \ d = c;\quad c = b;\quad b = a;\quad a = T_1 + T_2 \end{aligned}$$

Kết quả kiểm thử và đánh giá phần cứng

100% test case kiểm thử giữa mô phỏng phần cứng trên Vivado và Gold Model Python/Công cụ trực tuyến chuẩn NIST cho kết quả trùng khớp hoàn toàn.

                     KẾT QUẢ ĐO TẦNG SỐ HOẠT ĐỘNG (MHz)
  150 +-----------------------------------------------------------------+
      |                                                                 |
  120 +-- [125.0 MHz] --------------------------------------------------+
      |      |                                                          |
   90 +------+------------------ [91.2 MHz] ----------------------------+
      |      |                      |                                   |
   60 +------+----------------------+------------------ [62.5 MHz] -----+
      |      |                      |                      |            |
   30 +------+----------------------+----------------------+------------+
      |      |                      |                      |            |
    0 +------+----------------------+----------------------+------------+
          Fp-ALU                 SHA-256              ECDSA Top Core
  • Bảng tổng hợp tài nguyên trên FPGA Xilinx Virtex-7 (VC707):
Khối chức năng (Module) Số lượng Slice LUTs Slice Registers (FF) DSP Slices Tần số tối đa ($F_{\max}$) Thời gian thực thi
$\mathbb{F}_p$-ALU 256-bit 4,215 2,048 0 $125.0\text{ MHz}$ 1 - 257 cycles
SHA-256 Engine 2,140 1,820 0 $91.2\text{ MHz}$ 65 cycles/block
EC Unit (PA/PD) 8,960 4,350 0 $78.4\text{ MHz}$ ~3,200 cycles
ECDSA Top Core (Full IP) 16,420 8,912 0 $62.5\text{ MHz}$ Sinh ký: ~0.82 ms
Xác thực: ~1.45 ms

Đổi mới và đóng góp

Các cải tiến kỹ thuật nổi bật

  1. Kiến trúc $\mathbb{F}_p$-ALU dùng chung (Shared Datapath Resource): Thay vì sử dụng các khối nhân và nghịch đảo độc lập gây lãng phí diện tích, đề tài thiết kế một bộ ALU đồng nhất với 6 thanh ghi đệm 256-bit linh hoạt. Giải pháp này giúp giảm 34.2% số lượng LUTs so với thiết kế tách rời truyền thống.
  2. Bộ nhân Modulo Hossain không dùng DSP: Khối nhân 256-bit được tối ưu hoàn toàn bằng logic LUTs và thanh ghi dịch, giải phóng hoàn toàn các khối DSP48E1 trên FPGA cho các tác vụ xử lý tín hiệu khác trong hệ thống SoC.
  3. Bộ lập lịch trạng thái thông minh (Smart State Scheduling): Tối ưu hóa chuỗi FSM trong phép cộng điểm PA và nhân đôi PD, cho phép nạp chồng toán hạng và chuẩn bị dữ liệu cho phép toán kế tiếp, rút ngắn 18.5% tổng số chu kỳ clock.
                           SO SÁNH THỜI GIAN KÝ SỐ
  MCU 32-bit (STM32F4) [====================================] ~45.0 ms
  Intel Core i5 (OpenSSL) [===] ~1.2 ms
  Lõi IP FPGA Đề tài   [=] 0.82 ms

Đóng góp cho cộng đồng học thuật và công nghiệp

  • Cung cấp lõi IP phần cứng hoàn chỉnh, độc lập (Self-contained IP Core) cho thuật toán ECDSA-secp256k1 kết hợp SHA-256, sẵn sàng đóng gói AXI IP cho các dòng FPGA Xilinx (7-Series, UltraScale).
  • Cung cấp tài liệu thiết kế chi tiết từ tầng toán học trừu tượng đến cấu trúc Datapath/FSM cấp vi mạch cho sinh viên và kỹ sư thiết kế phần cứng viễn thông và bảo mật.

Ứng dụng thực tế và triển khai

Tình huống ứng dụng điển hình (Use Cases)

  • Ví cứng tiền mã hóa (Hardware Crypto Wallets): Tích hợp vào các thiết bị bảo mật cá nhân (như Ledger/Trezor) để ký giao dịch Bitcoin/Ethereum với độ trễ cực thấp và khả năng cô lập khóa an toàn tuyệt đối.
  • Cổng kết nối IoT bảo mật (Secure IoT Gateway): Xác thực hàng nghìn gói tin cảm biến mỗi giây trước khi gửi lên đám mây, ngăn chặn tấn công giả mạo (Man-In-The-Middle).
  • Hệ thống khởi động an toàn (Secure Boot Accelerator): Đóng vai trò lõi Hardware Root of Trust (RoT), kiểm tra chữ ký số của Firmware trước khi nạp vào vi xử lý chính.
                   MÔ HÌNH TRIỂN KHAI VÍ CỨNG BẢO MẬT
 +----------------------------------------------------------------------+
 |                         THIẾT BỊ BẢO MẬT (HSM)                       |
 |                                                                      |
 |  [Bộ nhớ an toàn] ---> (Khóa bí mật d)                               |
 |                              |                                       |
 |  [Giao dịch m] --------> [Lõi IP ECDSA] ----> Chữ ký số (r, s)       |
 |                                  ^                                   |
 |  [Clock 50MHz] ------------------+                                   |
 +----------------------------------------------------------------------+

Phân tích hiệu quả kinh tế và lộ trình triển khai

  • Hiệu quả đầu tư (ROI): Việc chuyển đổi từ hệ thống máy chủ xác thực RSA truyền thống sang cụm tăng tốc FPGA ECDSA giúp giảm 65% chi phí năng lượng tiêu thụ và tăng thông lượng xử lý gấp 8-12 lần trên cùng một đơn vị diện tích tủ Rack máy chủ.
  • Lộ trình thương mại hóa:
    • Giai đoạn 1 (3 tháng): Hoàn thiện đóng gói chuẩn IP-XACT, xây dựng Driver Linux AXI DMA.
    • Giai đoạn 2 (6 tháng): Chuyển đổi công nghệ sang tiến trình ASIC (TSMC 65nm / 28nm) nhằm hạ giá thành sản xuất hàng loạt.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Hệ tọa độ Affine: Việc sử dụng hệ tọa độ Affine đòi hỏi thực hiện phép nghịch đảo Modulo ở mỗi bước cộng điểm. Dù phép nghịch đảo nhị phân đã được tối ưu, nó vẫn chiếm tỷ trọng lớn trong tổng thời gian thực thi của thuật toán nhân vô hướng $k \cdot P$.
  • Chưa hỗ trợ đa đường cong: Thiết kế hiện tại được tối ưu hóa cứng cho các tham số của đường cong secp256k1, chưa hỗ trợ cấu hình động sang secp256r1 (NIST P-256) hay Brainpool.

Hướng nâng cấp tương lai

  • Chuyển đổi sang hệ tọa độ Jacobian / Projective: Loại bỏ hoàn toàn phép nghịch đảo Modulo trong vòng lặp nhân điểm $k \cdot P$, chỉ thực hiện 1 phép nghịch đảo duy nhất ở bước chuyển đổi tọa độ cuối cùng, dự kiến tăng tốc độ thêm 40-50%.
  • Tích hợp cơ chế chống tấn công kênh kề (Countermeasures): Ứng dụng kỹ thuật làm mờ điểm (Point Blinding), che giấu khóa (Scalar Randomization) và thuật toán nhân vô hướng Montgomery Ladder có thời gian thực thi hằng số (Constant-time execution).

Đối tượng hưởng lợi

 +----------------------------------------------------------------------+
 |                         ĐỐI TƯỢNG HƯỞNG LỢI                          |
 |                                                                      |
 |  [Sinh viên / Nghiên cứu sinh]  --> Nắm vững kiến trúc phần cứng     |
 |  [Kỹ sư thiết kế FPGA/ASIC]     --> Template tối ưu Fp-ALU & ECDSA   |
 |  [Doanh nghiệp phần cứng/IoT]   --> Giải pháp tăng tốc bảo mật SoC   |
 |  [Chuyên gia Mật mã học]        --> Thực nghiệm thuật toán trên FPGA |
 +----------------------------------------------------------------------+
  • Sinh viên và Nghiên cứu sinh: Cung cấp tài liệu tham khảo thực chứng về thiết kế phần cứng cho các thuật toán mật mã phức tạp, làm cầu nối giữa lý thuyết toán học trừu tượng và hiện thực Verilog HDL.
  • Kỹ sư thiết kế vi mạch (RTL Engineers): Sở hữu mẫu thiết kế tham chiếu (Reference Design) về Datapath và FSM cho các khối tính toán số nguyên lớn 256-bit.
  • Doanh nghiệp phát triển thiết bị nhúng & IoT: Có sẵn giải pháp IP Core bản quyền mở, giúp rút ngắn thời gian đưa sản phẩm ra thị trường (Time-to-Market) từ 6-9 tháng.

Câu hỏi thường gặp

1. Lõi IP này yêu cầu tài nguyên phần cứng tối thiểu như thế nào để triển khai?

Để triển khai lõi IP ECDSA hoàn chỉnh, hệ thống cần tối thiểu 17,000 LUTs, 9,000 Flip-Flops, không bắt buộc DSP (0 DSP) và khoảng 4-8 Block RAMs (nếu dùng đệm FIFO AXI). Thiết kế có thể vừa vặn trên các dòng FPGA tầm trung như Xilinx Artix-7 (XC7A100T trở lên), Zynq-7000 (Z-7020) hoặc Virtex-7.

2. Tại sao thiết kế sử dụng đường cong secp256k1 thay vì NIST P-256?

Đường cong secp256k1 là đường cong Koblitz với hệ số $a = 0, b = 7$ và số nguyên tố $p = 2^{256} - 2^{32} - 977$. Cấu trúc đặc biệt này giúp đơn giản hóa các phép tính nhân đôi điểm và là chuẩn mã hóa nền tảng trong mạng lưới Bitcoin/Ethereum, mang tính ứng dụng thực tiễn cao trong ngành công nghệ tài chính.

3. Tốc độ sinh chữ ký và xác thực chữ ký đạt bao nhiêu trên FPGA Virtex-7?

Tại tần số hoạt động $62.5\text{ MHz}$, thời gian thực hiện một phép sinh chữ ký (Sign) mất khoảng 0.82 ms (xấp xỉ $51,000\text{ chu kỳ clock}$) và thời gian xác thực chữ ký (Verify) mất khoảng 1.45 ms (xấp xỉ $90,000\text{ chu kỳ clock}$).

4. Lõi IP kết nối với vi xử lý máy chủ (Host Processor) như thế nào?

Lõi IP được đóng gói chuẩn IP-XACT với giao tiếp bus AXI4-Lite dành cho thanh ghi điều khiển/trạng thái (Control/Status Registers) và AXI4-Stream hoặc AXI Master DMA để truyền dữ liệu khối tin nhắn lớn tốc độ cao giữa bộ nhớ DDR và lõi ECDSA.

5. Thiết kế này có thể chuyển đổi sang chip chuyên dụng ASIC được không?

Hoàn toàn có thể. Toàn bộ mã nguồn Verilog được thiết kế theo chuẩn tổng hợp đồng bộ (Synchronous Synthesizable RTL), không sử dụng các Macro độc quyền của Xilinx. Thiết kế có thể tổng hợp trực tiếp sang thư viện tế bào chuẩn (Standard Cell Library) của các hãng đúc như TSMC, GlobalFoundries hoặc SMIC.


Kết luận

Đề tài khóa luận tốt nghiệp "Hiện thực lõi IP thuật toán chữ ký số (DSA) sử dụng hệ mật mã đường cong Elliptic kết hợp thuật toán băm SHA-256 trên FPGA" đã giải quyết thành công bài toán tăng tốc phần cứng cho các thuật toán mật mã bất đối xứng hiện đại. Bằng việc xây dựng hoàn chỉnh kiến trúc phân tầng từ bộ số học $\mathbb{F}_p$-ALU 256-bit, khối xử lý đường cong Elliptic EC Unit đến động cơ băm SHA-256, nhóm tác giả đã chế tạo thành công một lõi IP hoàn chỉnh đạt hiệu năng cao ($62.5\text{ MHz}$ trên Virtex-7 VC707), độ tin cậy tuyệt đối và tối ưu hóa tài nguyên logic.

Kết quả của đề tài không chỉ khẳng định năng lực làm chủ công nghệ thiết kế vi mạch an toàn thông tin mà còn mở ra tiềm năng ứng dụng rộng rãi trong các thiết bị phần cứng bảo mật, hệ thống thanh toán điện tử và hạ tầng mạng IoT thế hệ mới.