Tổng quan nghiên cứu

Trong bối cảnh kỷ nguyên công nghiệp 4.0 và sự bùng nổ của mạng lưới Internet vạn vật (IoT), nhu cầu trao đổi dữ liệu an toàn trên không gian mạng đã trở thành yếu tố sống còn cho các hệ thống thông tin. Ước tính có hơn 30 tỷ thiết bị kết nối trực tuyến trên toàn cầu, đặt ra áp lực khổng lồ về tài nguyên xử lý dữ liệu bảo mật trên các máy chủ và thiết bị đầu cuối. Các giao thức bảo mật tầng truyền tải như TLS và SSL đóng vai trò then chốt trong việc thiết lập kênh truyền tin cậy thông qua mã hóa bất đối xứng. Tuy nhiên, các giải pháp mật mã khóa công khai truyền thống như RSA đang dần bộc lộ hạn chế lớn về hiệu năng; đơn cử như để đạt mức độ bảo mật 128-bit tương đương, thuật toán RSA đòi hỏi kích thước khóa lên tới 3072 bit, gây tiêu tốn tài nguyên bộ nhớ và năng lượng tính toán gấp khoảng 12 lần.

Nhằm giải quyết triệt để bài toán thắt nút cổ chai này, luận văn tập trung vào mục tiêu nghiên cứu và thiết kế phần cứng vi mạch chuyên dụng xử lý thuật toán tạo chữ ký số ECDSA (Elliptic Curve Digital Signature Algorithm) trên đường cong elliptic NIST P-256 (chuẩn secp256r1) bằng ngôn ngữ mô tả phần cứng Verilog HDL. Nghiên cứu được thực hiện tại Trường Đại học Bách khoa - Đại học Quốc gia TP. Hồ Chí Minh trong khung thời gian từ tháng 12/2021 đến tháng 5/2022. Đề tài hướng tới việc tối ưu hóa kiến trúc xử lý số học 256-bit, đảm bảo hệ thống vận hành ổn định với chu kỳ xung nhịp 10 ns (tương đương tần số 100 MHz) và đáp ứng nghiêm ngặt thời gian tạo chữ ký số dưới 100 ms cho mỗi tác vụ. Ý nghĩa thực tiễn của công trình thể hiện ở khả năng nâng cao thông lượng xử lý bảo mật cho hệ thống máy chủ mạng, tiết kiệm năng lượng tiêu thụ trên các thiết bị nhúng và tạo tiền đề vững chắc cho việc làm chủ công nghệ thiết kế vi mạch mật mã tại Việt Nam.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu được xây dựng trên nền tảng mật mã học đường cong elliptic (ECC) kết hợp với các cấu trúc đại số trường hữu hạn $GF(p)$ bậc nguyên tố. Mô hình tính toán cốt lõi dựa trên phương trình đường cong Weierstrass dạng rút gọn $y^2 = x^3 + ax + b \pmod p$, trong đó hệ số $a$ và $b$ cùng số nguyên tố $p$ có độ dài 256 bit theo tiêu chuẩn công nghiệp FIPS 186-4 của Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ.

Để giải quyết bài toán độ phức tạp tính toán, luận văn triển khai 4 khái niệm lý thuyết và mô hình giải thuật trọng tâm:

  1. Hệ tọa độ xạ ảnh Jacobian $(X: Y: Z)$ nhằm chuyển đổi các phép toán điểm Affine $(x, y)$, giúp loại bỏ hoàn toàn các phép chia nghịch đảo modulo phức tạp trong quá trình cộng điểm (Point Addition) và nhân đôi điểm (Point Double).
  2. Thuật toán nhân giảm modulo Montgomery (Montgomery Reduction) trên số nguyên lớn 256 bit với tham số $R = 2^{256}$, biến đổi phép chia modulo tốn kém thành các phép dịch bit và nhân thông thường.
  3. Thuật toán nghịch đảo Montgomery 2 pha (Two-phase Montgomery Inversion) giúp tìm phần tử nghịch đảo $a^{-1} \pmod p$ tối ưu trên phần cứng.
  4. Kỹ thuật nhân vô hướng tối ưu cửa sổ w-NAF (Windowed Non-Adjacent Form) với kích thước cửa sổ $w = 5$, giúp cực tiểu hóa mật độ các bit khác không trong biểu diễn số nhân.

Phương pháp nghiên cứu

Nghiên cứu áp dụng quy trình thiết kế vi mạch bán dẫn chuẩn từ mức trừu tượng giải thuật toán học đến mức chuyển đổi thanh ghi RTL (Register-Transfer Level). Nguồn dữ liệu kiểm thử bao gồm bộ 50 vector kiểm thử chuẩn hóa được trích xuất từ tài liệu tiêu chuẩn NIST Special Publication 800-56A và FIPS 186-4, bao gồm các cặp khóa bí mật 256 bit, thông điệp băm SHA-256 và các tham số điểm cơ sở $G(x, y)$.

Phương pháp chọn mẫu kiểm thử được thực hiện theo nguyên tắc tất định kết hợp tạo mẫu ngẫu nhiên có kiểm soát: các mẫu biên đặc biệt (zero, số nguyên tố cực đại) được kiểm tra cùng các chuỗi ngẫu nhiên sinh ra từ thanh ghi dịch phản hồi tuyến tính LFSR 256 bit có các điểm lấy mẫu tại bit 256, 254, 251 và 246. Lý do lựa chọn phương pháp mô phỏng dạng sóng chu kỳ chính xác trên phần mềm chuyên dụng ModelSim kết hợp đối chuẩn bit-accurate với mô hình toán học viết bằng ngôn ngữ Python là vì phương pháp này cho phép phát hiện sai lệch dữ liệu ở từng xung nhịp clock 10 ns, giảm thiểu hơn 60% thời gian phát hiện và sửa lỗi logic trước khi tổng hợp phần cứng.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Quá trình mô phỏng và kiểm chứng thiết kế phần cứng trên nền tảng ModelSim và Python đã mang lại 4 phát hiện kỹ thuật quan trọng:

Thứ nhất, bộ tạo số ngẫu nhiên RNG sử dụng cấu trúc Galois LFSR 256 bit kết hợp thuật toán kiểm tra ứng viên theo chuẩn FIPS 186-4 Phụ lục B.1 đã sinh ra các giá trị khóa tạm thời $k$ hoàn toàn hợp lệ trong trường hữu hạn $n$, đạt tỷ lệ kiểm tra tính hợp chuẩn 100% ngay trong chu kỳ đầu tiên mà không gặp hiện tượng tràn số.

Thứ hai, khối tính toán nhân Modulo Montgomery xử lý các toán tử 256 bit đạt độ chính xác bit tuyệt đối, chuyển đổi dữ liệu tích 512 bit thành kết quả modulo chuẩn hóa chỉ sau 2 chu kỳ tính toán Montgomery, giúp cắt giảm xấp xỉ 45% thời gian trễ so với các bộ chia modulo tuần tự truyền thống.

Thứ ba, việc áp dụng giải thuật $w$-NAF với kích thước cửa sổ $w = 5$ đòi hỏi tính toán trước 15 điểm lẻ trong bảng Pre-computation lưu trên bộ nhớ RAM nội. Cấu hình này giúp giảm tổng số phép cộng điểm trên đường cong từ 256 phép tính xuống chỉ còn trung bình 42 đến 53 phép tính, đạt mức cắt giảm khối lượng tính toán cộng điểm lên tới 79.3% so với thuật toán nhân điểm nhị phân cơ bản.

Thứ tư, toàn bộ quy trình sinh cặp chữ ký số $(r, s)$ 256 bit hoàn tất thành công trong giới hạn thời gian thực thi dưới 100 ms, vận hành đồng bộ trên xung nhịp chu kỳ 10 ns mà không xuất hiện bất kỳ sai lệch logic nào so với giá trị kỳ vọng đối chuẩn từ Python.

Thảo luận kết quả

Hiệu năng vượt trội của thiết kế bắt nguồn trực tiếp từ việc tối ưu hóa phân tầng kiến trúc phần cứng. Việc chuyển đổi không gian tính toán sang hệ tọa độ Jacobian $(X = x \cdot Z^2, Y = y \cdot Z^3)$ đã cô lập toàn bộ các phép nghịch đảo phức tạp ra khỏi vòng lặp chính của bộ nhân vô hướng, chỉ giữ lại một phép nghịch đảo duy nhất ở khâu chuẩn hóa đầu ra.

Khi so sánh với các triển khai mã hóa ECDSA thuần phần mềm trên dòng vi điều khiển nhúng 32-bit (vốn thường tiêu tốn thời gian xử lý từ 300 ms đến 1200 ms), kiến trúc phần cứng chuyên dụng này đạt tốc độ xử lý nhanh hơn từ 3 đến 12 lần. Dữ liệu thực nghiệm phân tích hiệu năng có thể được trình bày một cách trực quan qua biểu đồ cột thể hiện sự tương quan giữa kích thước cửa sổ $w$ (từ 2 đến 6) và tổng số phép tính toán số học, chứng minh điểm cân bằng tối ưu giữa diện tích thanh ghi và tốc độ xử lý đạt được tại $w = 5$. Kết quả đối soát dạng sóng tín hiệu cũng có thể được mô tả chi tiết thông qua bảng so khớp dữ liệu đầu ra giữa ModelSim và Python, khẳng định tính toàn vẹn 100% của cấu trúc vi mạch được thiết kế.

Đề xuất và khuyến nghị

Nhằm hoàn thiện và nâng cao khả năng thương mại hóa cũng như bảo mật của lõi phần cứng ECDSA trong các hệ thống vi điện tử thực tế, 4 giải pháp trọng tâm được đề xuất như sau:

  1. Tích hợp bổ sung khối chức năng xác thực chữ ký (ECDSA Verification): Mở rộng kiến trúc phần cứng để thực hiện trọn vẹn cả hai chiều tạo và kiểm tra chữ ký số, nâng mức độ hoàn thiện của bộ xử lý mật mã lên 100%, đáp ứng toàn diện tiêu chuẩn giao tiếp hai chiều của giao thức TLS/SSL. Mục tiêu hoàn thành trong vòng 6 tháng do nhóm kỹ sư thiết kế phần cứng RTL đảm nhiệm.
  2. Thiết lập cơ chế bảo vệ kháng tấn công kênh kề (Side-Channel Attack): Triển khai kỹ thuật làm mù điểm tọa độ (Point Blinding) ngẫu nhiên và chuẩn hóa thời gian thực thi đẳng thời cho mọi phép toán, giúp tăng khả năng chống chịu các cuộc tấn công phân tích điện năng vi sai (DPA) lên trên 99%. Giải pháp dự kiến thực hiện trong vòng 9 tháng bởi các chuyên gia bảo mật phần cứng.
  3. Nâng cấp bộ tạo số ngẫu nhiên vật lý thực (TRNG): Thay thế cơ chế tạo số giả ngẫu nhiên LFSR thuần túy bằng việc tích hợp nguồn entropy vật lý dựa trên dao động vòng tử (Ring Oscillator) hoặc nhiễu nhiệt bán dẫn, đảm bảo độ ngẫu nhiên đạt chuẩn NIST SP 800-90A/B/C với thời gian hoàn thiện dự kiến 12 tháng.
  4. Đóng gói lõi IP Core và tích hợp giao tiếp chuẩn công nghiệp: Phát triển giao diện bus AXI4 hoặc AHB 32/64-bit bọc ngoài lõi xử lý, giúp giảm 70% thời gian tích hợp bộ gia tốc mật mã vào các hệ thống vi mạch tích hợp trên chip (SoC) hiện đại, triển khai trong thời hạn 3 tháng bởi kỹ sư kiến trúc hệ thống.

Đối tượng nên tham khảo luận văn

Nội dung và kết quả nghiên cứu của luận văn mang lại giá trị học thuật và ứng dụng thực tiễn cao cho 4 nhóm đối tượng chuyên môn:

  1. Kỹ sư thiết kế vi mạch bán dẫn (ASIC/FPGA RTL Engineers): Khai thác cấu trúc thiết kế chi tiết bằng ngôn ngữ Verilog cho các khối số học lớn 256-bit, bộ nhân Montgomery và máy trạng thái FSM điều khiển phức tạp để ứng dụng trực tiếp vào các dự án phát triển chip bảo mật.
  2. Chuyên gia an toàn thông tin và kiến trúc mật mã (Security Architects): Tham khảo phương pháp hiện thực hóa giải thuật đường cong elliptic NIST P-256 chuẩn FIPS 186-4, tối ưu hóa các tham số đại số và quy trình sinh chữ ký số an toàn.
  3. Kỹ sư phát triển hệ thống nhúng và IoT (Embedded System Engineers): Ứng dụng giải pháp tăng tốc phần cứng nhằm giải quyết bài toán mã hóa dữ liệu với độ trễ thấp và tiết kiệm năng lượng trên các trạm thu phát Gateway hoặc thiết bị biên hạn chế tài nguyên.
  4. Giảng viên và học viên cao học ngành Kỹ thuật Điện tử - Viễn thông: Sử dụng công trình làm tài liệu tham khảo chuyên sâu phục vụ công tác giảng dạy, nghiên cứu về thiết kế hệ thống số, giải thuật mật mã và vi kiến trúc tính toán chuyên dụng.

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

Tại sao nghiên cứu lại lựa chọn đường cong elliptic NIST P-256 thay vì giải thuật RSA truyền thống?
Đường cong NIST P-256 với kích thước khóa 256 bit cung cấp mức độ an toàn mật mã tương đương với RSA khóa 3072 bit. Sự chênh lệch kích thước khóa này giúp giảm hơn 90% dung lượng lưu trữ khóa, đồng thời cắt giảm đáng kể năng lượng tiêu thụ và tài nguyên diện tích vi mạch trên các hệ thống số.

Hệ tọa độ Jacobian giải quyết bài toán hiệu năng phần cứng như thế nào?
Trong tọa độ Affine, mỗi phép cộng điểm đòi hỏi một phép chia nghịch đảo modulo có chi phí tính toán cực lớn. Việc ánh xạ sang hệ tọa độ xạ ảnh Jacobian chuyển đổi phép tính về dạng các phép nhân và bình phương, loại bỏ hoàn toàn nghịch đảo modulo trong các vòng lặp tính toán nhân vô hướng.

Tại sao cấu hình cửa sổ $w = 5$ trong giải thuật w-NAF được coi là sự lựa chọn tối ưu?
Phương pháp $w$-NAF với $w = 5$ chỉ cần tính toán trước 15 điểm lẻ trong bộ nhớ, nhưng giảm được số phép cộng điểm trên đường cong xuống chỉ còn khoảng 42 đến 53 phép tính. Đây là điểm cân bằng hoàn hảo giữa hiệu năng tốc độ và tài nguyên bộ nhớ tạm thời trên phần cứng 256-bit.

Độ tin cậy của thiết kế phần cứng Verilog được đảm bảo bằng phương pháp nào?
Thiết kế được kiểm chứng chéo thông qua 50 vector kiểm thử chuẩn của chuẩn FIPS 186-4. Toàn bộ chu kỳ dạng sóng trên công cụ mô phỏng ModelSim được đối soát bit-accurate 100% với chương trình tính toán số học độc lập viết bằng Python, đảm bảo không có sai số tính toán.

Thiết kế vi mạch này có thể tương thích với các đường cong khác như secp256k1 trong Blockchain không?
Kiến trúc phần cứng được thiết kế theo dạng module hóa cao. Bằng cách thay đổi cấu hình các tham số trường hữu hạn $a, b, p, n$ và tọa độ điểm cơ sở $G$ trong thanh ghi hằng số, hệ thống hoàn toàn có thể tái cấu hình để hỗ trợ đường cong secp256k1 hoặc các đường cong Weierstrass 256-bit khác.

Kết luận

  • Luận văn đã nghiên cứu toàn diện cơ sở toán học và thiết kế thành công phần cứng xử lý chữ ký số ECDSA trên đường cong elliptic NIST P-256 bằng ngôn ngữ Verilog HDL.
  • Hệ thống tích hợp đầy đủ 5 module số học chuyên sâu gồm: bộ tạo số ngẫu nhiên chuẩn FIPS 186-4, bộ cộng/trừ modulo CLA, bộ nhân Montgomery 256-bit, bộ nghịch đảo Montgomery 2 pha và bộ nhân vô hướng điểm $w$-NAF.
  • Thiết kế đạt độ chính xác bit tuyệt đối 100% qua kiểm chứng trên phần mềm ModelSim và Python, đáp ứng thời gian thực thi dưới 100 ms trên chu kỳ xung nhịp 10 ns (tần số 100 MHz).
  • Khung thời gian triển khai kế tiếp tập trung vào việc hoàn thiện module xác thực chữ ký số và nâng cấp chuẩn giao tiếp bus AXI trong vòng 6 đến 12 tháng tới.
  • Các đơn vị phát triển vi mạch và giải pháp bảo mật IoT có thể khai thác ngay kiến trúc phần cứng này để tích hợp vào các dòng vi xử lý bảo mật thế hệ mới.