Bối cảnh và vấn đề nghiên cứu

Sự phát triển của máy tính lượng tử đang tạo ra những thách thức nghiêm trọng đối với an ninh thông tin toàn cầu. Các thuật toán mã hóa khóa công khai truyền thống như RSA, ECC hay DSA có nguy cơ bị phá vỡ hoàn toàn trong thời gian ngắn bởi thuật toán Shor khi máy tính lượng tử đạt đủ quy mô. Trước bối cảnh đó, Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (NIST) đã phát động chương trình chuẩn hóa mật mã hậu lượng tử (Post-Quantum Cryptography - PQC). Trong số các ứng viên dựa trên mạng tinh thể (Lattice-based cryptography), thuật toán CRYSTALS-Kyber (gọi tắt là Kyber) đã được NIST lựa chọn chuẩn hóa nhờ sự cân bằng giữa độ an toàn và hiệu năng tính toán.

Tuy nhiên, Kyber chứa các phép toán đa thức bậc cao với độ phức tạp $O(n^2)$ và các hàm băm theo chuẩn FIPS-202 chiếm dụng thời gian xử lý rất lớn. Đa số các thiết kế phần cứng hiện nay chỉ hoạt động đơn chế độ—hoặc là Máy chủ (Server: tạo khóa và giải mã) hoặc là Máy khách (Client: mã hóa)—hoặc chưa tối ưu được tích số giữa diện tích và độ trễ (Area-Delay Product - ADP). Đề tài khóa luận tập trung giải quyết bài toán thiết kế một bộ tăng tốc phần cứng đa chế độ hiệu suất cao cho Kyber trên nền tảng vi mạch khả trình FPGA.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài bao gồm:

  1. Thiết kế kiến trúc phần cứng hỗ trợ đầy đủ 3 chế độ hoạt động chính: Tạo khóa (Key Generation - KeyGen), Mã hóa (Encryption - Enc) và Giải mã (Decryption - Dec), cho phép hoạt động linh hoạt như một Server hoặc Client trên một phần cứng duy nhất.
  2. Hiện thực và triển khai hệ thống phần cứng trên nền tảng SoC để xác minh độ chính xác chức năng trong điều kiện thực tế.
  3. Tối ưu hóa hiệu năng phần cứng, đảm bảo chỉ số ADP tổng thể thấp và cải thiện hiệu quả năng lượng.

Đối tượng nghiên cứu là kiến trúc phần cứng cho thuật toán CRYSTALS-Kyber, được mô tả bằng ngôn ngữ phần cứng Verilog và đánh giá trên nền tảng FPGA kết hợp hệ thống SoC. Phạm vi nghiên cứu giới hạn ở phiên bản CRYSTALS-Kyber-512 với tham số ma trận $k = 2$, bậc đa thức $n = 256$, số nguyên tố modulo $q = 3329$, tương đương mức độ bảo mật AES-128.

Cơ sở lý thuyết và phương pháp

Khóa luận dựa trên khung lý thuyết của cơ chế đóng gói khóa bảo mật IND-CCA2 (KEM) xây dựng từ sơ đồ mã hóa khóa công khai IND-CPA thông qua phép biến đổi Fujisaki-Okamoto (FO). Cơ sở an toàn của Kyber bắt nguồn từ độ khó của bài toán Học có lỗi trên modulo (Module Learning-With-Errors - MLWE).

Tập tham số của thuật toán CRYSTALS-Kyber được tổng hợp trong bảng dưới đây:

Phiên bản $n$ $k$ $q$ $\eta_1, \eta_2$ $d_u, d_v$ Xác suất thất bại giải mã ($\delta$) Mức an toàn tương đương
Kyber-512 256 2 3329 3, 2 10, 4 $2^{-139}$ AES-128
Kyber-768 256 3 3329 2, 2 10, 4 $2^{-164}$ AES-192
Kyber-1024 256 4 3329 2, 2 11, 5 $2^{-174}$ AES-256

Để tăng tốc phép nhân đa thức trong vành $R_q = \mathbb{Z}_q[X]/(X^n + 1)$, thuật toán áp dụng phép biến đổi số học Number Theoretic Transform (NTT) và phép biến đổi nghịch đảo (INTT) với tích chập phủ định âm (Negative Wrap Convolution - NWC) dựa trên căn nguyên thủy bậc 256 đầu tiên của đơn vị modulo $q$ là $\omega = 17$. Quá trình tạo dữ liệu ngẫu nhiên sử dụng các hàm chuẩn FIPS-202: hàm mở rộng ngẫu nhiên XOF (dựa trên SHAKE128), hàm giả ngẫu nhiên PRF (dựa trên SHAKE256), hàm băm $H$ (dựa trên SHA3-256) và hàm băm $G$ (dựa trên SHA3-512).

Phương pháp nghiên cứu bao gồm:

  • Phương pháp phân tích - tổng hợp lý thuyết: Khảo sát cấu trúc toán học của Kyber, phân rã luồng xử lý của các thuật toán Parse, CBD (Centered Binomial Distribution), Encode, Decode, Compress, Decompress và NTT/INTT.
  • Phương pháp thiết kế hệ thống số: Thiết kế phần cứng số mức RTL bằng ngôn ngữ Verilog HDL, áp dụng kỹ thuật pipeline nhiều tầng (fully-pipelined), kỹ thuật chia sẻ tài nguyên module giữa 3 chế độ và cân bằng đường trễ cực hạn (critical path).
  • Phương pháp thực nghiệm và kiểm chứng: Mô phỏng chức năng dạng bit-true trên phần mềm Xilinx Vivado 2020 đối chiếu với kết quả phần mềm C/Python; tổng hợp, đặt vị trí và định tuyến trên dòng FPGA Xilinx Zynq UltraScale+ MPSoC ZCU102 và Artix-7.

Thiết kế và triển khai

Kiến trúc phần cứng tổng thể của bộ tăng tốc CRYSTALS-Kyber (CKA) được thiết kế dựa trên đường truyền dữ liệu 32-bit tối ưu, phối hợp với khối điều khiển Controller và hệ thống bộ nhớ Memory Bank (gồm Single Port RAM, Simple Dual Port RAM và FIFO). Thiết kế tích hợp các khối tính toán chính sau:

  1. Khối băm hợp nhất (Hash-Core): Dựa trên lõi xử lý thuật toán Keccak tuần tự thực thi 24 vòng hoán vị (24 chu kỳ clock cho mỗi khối dữ liệu), kết hợp FIFO đệm và các bộ đệm Buffer Input/Output 1344-bit. Khối hỗ trợ 8 chế độ băm điều khiển bởi tín hiệu chọn 4-bit (4'h0 đến 4'h7), cho phép chuyển đổi linh hoạt giữa SHAKE128, SHAKE256, SHA3-256 và SHA3-512 phục vụ cho hàm XOF, PRF, $H$ và $G$.
Tín hiệu chế độ Hàm băm chuẩn Chức năng trong Kyber
4'h0 SHAKE128 Tạo đầu vào cho hàm lấy mẫu đồng nhất Parse (ma trận $\mathbf{A}, \mathbf{A}^T$)
4'h1 SHAKE256 PRF tạo đầu vào cho hàm $\text{CBD}_{\eta_1}$ ($\eta_1 = 3$) sinh ma trận $\mathbf{s}, \mathbf{e}, \mathbf{r}$
4'h2 SHAKE256 PRF tạo đầu vào cho hàm $\text{CBD}_{\eta_2}$ ($\eta_2 = 2$) sinh ma trận $\mathbf{e}_1, \mathbf{e}_2$
4'h3 SHAKE256 KDF tính toán khóa chia sẻ cuối cùng $K$
4'h4 SHA3-256 Băm bản mã ciphertext $c$ (độ dài 768 byte / 6144 bit)
4'h5 SHA3-256 Băm khóa công khai $pk$ (độ dài 800 byte / 6400 bit)
4'h6 SHA3-512 Hàm $G(d)$ với chuỗi ngẫu nhiên 32 byte
4'h7 SHA3-512 Hàm $G(m \parallel H(pk))$ với chuỗi đầu vào 64 byte
  1. Khối lấy mẫu đồng nhất (Uniform Sampling - Parse): Tiếp nhận luồng dữ liệu 32-bit trực tiếp từ Hash-Core qua FIFO, trích xuất 24-bit mỗi nhịp để Rejection Core kiểm tra điều kiện nhỏ hơn $q = 3329$. Dữ liệu đầu ra được ghép thành từng cặp 2 hệ số 12-bit thông qua bộ đệm Buffer Output, giúp tiết kiệm 168 chu kỳ chờ so với việc đợi toàn bộ dữ liệu băm.

  2. Khối lấy mẫu phân phối nhị thức trung tâm (CBD): Sử dụng 2 lõi CBD-Core tính toán song song 2 hệ số nhị thức mỗi nhịp. Khối hỗ trợ chế độ $\eta = 3$ (nhận 12-bit đầu vào) và chế độ $\eta = 2$ (nhận 8-bit đầu vào, chèn thêm 4-bit 0 để tái sử dụng bộ cộng 3 đầu vào 1-bit), tích hợp bộ lấy dư cho modulo $q$ khi xảy ra tràn bit âm.

  3. Khối Unified NTT/INTT đa tầng: Được thiết kế theo cấu trúc pipeline 8 tầng, bao gồm 7 tầng NTT-Core xử lý tính toán chính và 1 tầng NTT-Core xử lý hậu kỳ để sắp xếp lại trật tự hệ số đa thức. Mỗi tầng xử lý hoàn tất trong 139 chu kỳ, cho phép nạp luồng dữ liệu mới liên tục sau mỗi 139 chu kỳ.

  • Đơn vị bướm Fully-Pipelined Butterfly Unit (FPBU): Sử dụng cấu trúc bướm Cooley-Tukey (CT) cho NTT và Gentleman-Sande (GS) cho INTT. FPBU tích hợp bộ nhân pipeline 2 tầng hoàn toàn bằng bảng tra LUT thay vì dùng khối DSP chuyên dụng, giúp cân bằng đường trễ chỉ bằng một nửa phép nhân 12-bit không dấu.
  • Khối rút gọn Modified Barrett Reduce: Thay thế hoàn toàn thuật toán Montgomery Reduce và các phép chia phức tạp bằng các phép dịch bit và phép cộng trên số nguyên có dấu 15-bit với hằng số $\mu = \lfloor 2^{26}/q \rfloor = 20188$, loại bỏ nguy cơ tràn bit và tiết kiệm tài nguyên vi mạch.
  1. Các khối chức năng phụ trợ: Bao gồm khối nhân tích lũy theo điểm (Pointwise Multiply Accumulate - PWMA), khối cộng/trừ modulo $q$ hợp nhất (Unified Add/Sub mod $q$), các khối nén và giải nén (Compress/Decompress với tham số $d_u = 10, d_v = 4$), cùng các khối đóng gói và giải mã dữ liệu (Encode/Decode).

Nội dung chính theo từng chương

Chương 1. Mở đầu

Chương 1 thiết lập tính cấp thiết của đề tài trong bối cảnh máy tính lượng tử đe dọa các hệ thống an ninh hiện hữu. Tác giả xác định rõ mục đích nghiên cứu là thiết kế và hiện thực phần cứng bộ tăng tốc CRYSTALS-Kyber đa chế độ bằng Verilog, tích hợp trên hệ thống SoC để kiểm chứng. Phạm vi đề tài tập trung vào cấu hình Kyber-512 ($k = 2$). Tác giả cũng nêu rõ ý nghĩa khoa học trong việc phát triển vi mạch mật mã hậu lượng tử và ý nghĩa thực tiễn cho các hệ thống nhúng, thiết bị Internet vạn vật (IoT).

Chương 2. Tổng quan về mã hóa

Chương 2 trình bày tổng quan các nguyên lý mã hóa cơ bản, bao gồm mã hóa đối xứng và mã hóa bất đối xứng. Tác giả phân tích tiến trình chuẩn hóa mật mã hậu lượng tử của NIST từ năm 2016, phân loại các họ thuật toán PQC chính (Lattice-based, Code-based, Multivariate Quadratic, Hash-based, Isogeny, Symmetric-key). Nội dung đi sâu phân tích ưu thế của các thuật toán mạng tinh thể, đặc biệt là sự cân bằng hiệu năng của CRYSTALS-Kyber so với các ứng viên khác như Dilithium, Falcon, Saber và NewHope.

Chương 3. Lý thuyết về Kyber

Chương 3 phân tích chi tiết cơ sở toán học của CRYSTALS-Kyber. Tác giả trình bày bài toán LWE và Module-LWE trên vành đa thức, cấu trúc sơ đồ mã hóa khóa công khai IND-CPA (gồm các thuật toán con Kyber.CPAPKE.KeyGen, Kyber.CPAPKE.Enc, Kyber.CPAPKE.Dec) và cơ chế KEM bảo mật IND-CCA2 thông qua biến đổi Fujisaki-Okamoto (Kyber.CCAKEM.KeyGen, Kyber.CCAKEM.Enc, Kyber.CCAKEM.Dec). Chương này mô tả mã giả chi tiết của các thuật toán thành phần: thuật toán Parse lấy mẫu đồng nhất trong miền NTT, thuật toán CBD lấy mẫu phân phối nhị thức trung tâm, các hàm giải mã Decode và mã hóa Encode, các hàm nén Compress và giải nén Decompress, cùng nguyên lý chuyển đổi đa thức trong miền NTT sử dụng số nguyên tố modulo $q = 3329$ và căn nguyên thủy $\omega = 17$.

Chương 4. Thiết kế phần cứng

Chương 4 là trọng tâm kỹ thuật của khóa luận, mô tả chi tiết kiến trúc vi kiến trúc của bộ tăng tốc CKA. Tác giả trình bày các giải pháp thiết kế:

  • Kiến trúc tổng thể và cơ chế điều khiển chia sẻ tài nguyên cho 3 chế độ hoạt động.
  • Thiết kế khối Hash-Core tuần tự 24 chu kỳ với 8 chế độ băm FIPS-202.
  • Thiết kế khối lấy mẫu đồng nhất Parse với Rejection Core và bộ đệm 24-bit/32-bit.
  • Thiết kế khối lấy mẫu phân phối nhị thức trung tâm với 2 CBD-Core hỗ trợ $\eta = 2$ và $\eta = 3$.
  • Thiết kế khối Unified NTT/INTT 8 tầng pipeline, cấu trúc đơn vị bướm FPBU pipeline 2 tầng không dùng DSP, và thuật toán rút gọn Modified Barrett Reduce.
  • Thiết kế các khối số học phụ trợ: PWMA, Unified Add/Sub mod $q$, Compress, Decompress, Encode và Decode.

Chương 5. Đánh giá kết quả

Chương 5 trình bày toàn bộ kết quả mô phỏng và thực nghiệm phần cứng:

  • Kiểm chứng mô phỏng bit-true trên phần mềm Xilinx Vivado 2020, so sánh trùng khớp hoàn toàn các tệp ciphertext và message giữa phần mềm mô phỏng và phần cứng.
  • Triển khai thực tế trên kit FPGA Xilinx Zynq UltraScale+ MPSoC ZCU102.
  • Đánh giá định lượng về thời gian thực thi, công suất tiêu thụ và tích số năng lượng - độ trễ (Power-Delay Product - PDP) của CKA so với bộ xử lý CPU.
  • Đánh giá so sánh hiệu năng của khối Unified NTT/INTT và toàn bộ bộ tăng tốc CKA với các công trình nghiên cứu tiên tiến trên thế giới trên cùng nền tảng FPGA Artix-7.

Chương 6. Kết luận và hướng phát triển

Chương 6 tổng kết các kết quả đạt được: hoàn thành thiết kế bộ tăng tốc Kyber-512 đa chế độ hiệu suất cao, xác minh thành công trên FPGA và SoC. Tác giả chỉ ra các mặt hạn chế về phạm vi cấu hình và đề xuất các hướng mở rộng nghiên cứu trong tương lai.

Kết quả và đóng góp

Khóa luận đã đạt được các kết quả thực nghiệm và đóng góp cụ thể:

1. Kết quả kiểm chứng và thực nghiệm

  • Xác minh mô phỏng: Phần cứng được mô phỏng thành công trên phần mềm Vivado 2020. Dữ liệu đầu ra của các tệp ciphertext và tệp message giải mã từ mô phỏng phần cứng hoàn toàn trùng khớp với kết quả tính toán của phần mềm mẫu.
  • Triển khai trên hệ thống SoC/FPGA: Hệ thống CKA được tổng hợp và triển khai thành công trên kit phát triển Xilinx Zynq UltraScale+ MPSoC ZCU102.
  • Hiệu quả năng lượng: Tích năng lượng và độ trễ (Power-Delay Product - PDP) của CKA trên FPGA tốt hơn ít nhất 12.3 lần so với các CPU hiệu năng cao.
  • Hiệu năng khối Unified NTT/INTT: Trên dòng FPGA Artix-7, khối Unified NTT/INTT đề xuất đạt chỉ số Area-Delay Product (ADP) tốt hơn 1.3 lần so với các nghiên cứu NTT/INTT tiên tiến trước đó.
  • Hiệu năng toàn hệ thống CKA: So với các kiến trúc phần cứng Kyber đa chế độ trước đây, CKA đạt tốc độ thực thi nhanh hơn ít nhất 1.38 lần và tối ưu hơn ít nhất 1.9 lần về chỉ số ADP trên cả 3 chế độ hoạt động.

2. Các đóng góp khoa học và kỹ thuật

  • Đề xuất kiến trúc phần cứng đa chế độ hoàn chỉnh có khả năng chuyển đổi linh hoạt giữa chức năng Server (KeyGen, Dec) và Client (Enc) trên một chip đơn mà không cần nhân bản tài nguyên phần cứng.
  • Phát triển kỹ thuật chia sẻ tài nguyên module tối đa giữa các khối Hash-Core, Sampling, NTT/INTT, Compress/Decompress và Memory Bank.
  • Tối ưu hóa đường trễ cực hạn (critical path) thông qua kiến trúc Fully-Pipelined Butterfly Unit (FPBU) 2 tầng pipeline sử dụng thuần tài nguyên logic LUT, loại bỏ sự phụ thuộc vào khối nhân DSP.
  • Ứng dụng thành công thuật toán Modified Barrett Reduce kết hợp phép dịch bit và phép cộng, loại bỏ hoàn toàn phương pháp rút gọn Montgomery Reduce, giảm diện tích phần cứng và triệt tiêu lỗi tràn bit trong các phép nhân đa thức.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận tự xác định các hạn chế và hướng mở rộng nghiên cứu:

  • Hạn chế về phạm vi tham số: Thiết kế phần cứng mới chỉ tập trung hiện thực và kiểm chứng cho phiên bản CRYSTALS-Kyber-512 ($k = 2$), chưa tích hợp khả năng tái cấu hình linh hoạt cho các bộ tham số bảo mật cao hơn như Kyber-768 ($k = 3$) và Kyber-1024 ($k = 4$).
  • Vấn đề an toàn phần cứng: Thiết kế hiện tại chưa tích hợp các cơ chế phòng chống tấn công kênh kề (Side-Channel Attacks - SCA) như kỹ thuật che giấu (masking) hay xáo trộn thời gian (shuffling).
  • Cập nhật chuẩn hóa: Cần cập nhật kiến trúc để tương thích hoàn toàn với tiêu chuẩn FIPS 203 (ML-KEM) chính thức của NIST.
  • Hướng phát triển tiếp theo: Mở rộng thiết kế để hỗ trợ đa tham số ($k = 2, 3, 4$), tích hợp cơ chế kháng tấn công SCA, tối ưu hóa giao diện bus AXI trong hệ thống SoC và nghiên cứu chuyển đổi thiết kế sang vi mạch tích hợp chuyên dụng (ASIC).

Giá trị tham khảo

Khóa luận là tài liệu học thuật và kỹ thuật có giá trị tham khảo cho:

  • Sinh viên và học viên cao học ngành Kỹ thuật Máy tính, Điện tử - Viễn thông, Công nghệ Thông tin và An toàn Thông tin đang nghiên cứu về thiết kế vi mạch số, phần cứng mật mã hoặc hệ thống nhúng.
  • Kỹ sư thiết kế phần cứng (RTL/FPGA/ASIC) cần tài liệu tham khảo về phương pháp tối ưu hóa pipeline đa tầng cho các thuật toán biến đổi số học (NTT/INTT) và các kiến trúc rút gọn modulo không dùng DSP.
  • Các nhóm nghiên cứu về mật mã hậu lượng tử (PQC) đang tìm kiếm giải pháp đồng thiết kế phần cứng - phần mềm (Hardware/Software Co-design) và tối ưu hóa diện tích - độ trễ (ADP) cho thuật toán CRYSTALS-Kyber / ML-KEM.

Các phần nội dung có giá trị thực tiễn cao bao gồm: sơ đồ chi tiết kiến trúc Hash-Core đa chế độ FIPS-202, thiết kế khối bướm FPBU không dùng DSP, và phương pháp hiện thực thuật toán Modified Barrett Reduce bằng phép dịch bit.

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

1. Tại sao khóa luận chọn hiện thực phiên bản CRYSTALS-Kyber-512 thay vì Kyber-768 hay Kyber-1024? Khóa luận chọn Kyber-512 ($k = 2$) để phù hợp với phạm vi thời gian, tài nguyên phần cứng và mục tiêu chứng minh tính khả thi của kiến trúc bộ tăng tốc đa chế độ. Với $k = 2$, hệ thống xử lý 512 hệ số nhiễu, tương đương mức an toàn AES-128, là mô hình tiêu chuẩn để đánh giá hiệu quả chia sẻ tài nguyên và tối ưu hóa ADP trước khi mở rộng lên các phiên bản tham số lớn hơn.

2. Khối Unified NTT/INTT giải quyết bài toán độ phức tạp của phép nhân đa thức như thế nào? Khối Unified NTT/INTT áp dụng biến đổi số học trên trường hữu hạn $Z_q$ ($q = 3329$) với căn nguyên thủy $\omega = 17$ và tích chập phủ định âm (NWC), giúp giảm độ phức tạp của phép nhân đa thức từ $O(n^2)$ xuống $O(n \log n)$. Về mặt phần cứng, khối được tổ chức thành 8 tầng pipeline (7 tầng tính toán + 1 tầng sắp xếp lại trật tự hệ số), cho phép nhận luồng dữ liệu mới sau mỗi 139 chu kỳ mà không làm suy giảm tần số hoạt động.

3. Làm thế nào thiết kế loại bỏ được Montgomery Reduce và khối nhân DSP trong phép rút gọn modulo? Thiết kế sử dụng thuật toán Modified Barrett Reduce với hằng số $\mu = 20188$, chuyển đổi toàn bộ các phép nhân và chia modulo phức tạp thành các phép dịch bit (<< 10, << 11) và phép cộng trên số nguyên có dấu 15-bit. Đồng thời, khối bướm FPBU sử dụng bộ nhân 2 tầng pipeline bằng tài nguyên LUT thuần túy, giúp giải phóng hoàn toàn các khối DSP chuyên dụng trên FPGA.

4. Khối lấy mẫu Parse và CBD được tối ưu thời gian xử lý ra sao so với việc chờ đủ dữ liệu băm? Khối lấy mẫu Parse và CBD kết nối trực tiếp với đầu ra của Hash-Core thông qua FIFO và các bộ đệm 24-bit/12-bit/8-bit, thực hiện trích xuất và kiểm tra điều kiện ngay khi có dữ liệu từng phần thay vì chờ Hash-Core xuất đủ toàn bộ chuỗi băm 1344-bit. Kỹ thuật này giúp tiết kiệm khoảng 168 chu kỳ xung nhịp chờ trong giai đoạn lấy mẫu ma trận $\mathbf{A}$.

5. Hiệu năng của bộ tăng tốc CKA vượt trội hơn CPU và các nghiên cứu FPGA khác ở những chỉ số nào? Trên nền tảng Xilinx Zynq UltraScale+ MPSoC ZCU102 FPGA, chỉ số tích năng lượng - độ trễ (PDP) của CKA tốt hơn ít nhất 12.3 lần so với CPU hiệu năng cao. Trên dòng FPGA Artix-7, CKA nhanh hơn ít nhất 1.38 lần về thời gian thực thi, đạt chỉ số ADP tốt hơn ít nhất 1.9 lần so với các thiết kế Kyber đa chế độ trước đó, và riêng khối Unified NTT/INTT đạt ADP tốt hơn 1.3 lần.

Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Đình Nhất đã thiết kế và hiện thực thành công bộ tăng tốc phần cứng đa chế độ hiệu suất cao cho thuật toán mật mã hậu lượng tử CRYSTALS-Kyber-512 trên nền tảng FPGA và SoC. Thông qua các giải pháp kỹ thuật vi mạch như chia sẻ tài nguyên đa chế độ, pipeline 8 tầng cho Unified NTT/INTT, và rút gọn modulo bằng Modified Barrett Reduce không dùng DSP, công trình đã tối ưu hóa vượt bậc các chỉ số về thời gian thực thi, diện tích và hiệu quả năng lượng. Kết quả nghiên cứu đóng góp một kiến trúc phần cứng hoàn chỉnh, có giá trị ứng dụng thực tiễn cao cho các hệ thống bảo mật dữ liệu thế hệ mới trước mối đe dọa từ máy tính lượng tử.