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

Sự phát triển nhanh chóng của mạng lưới Vạn vật kết nối (Internet of Things - IoT) đã và đang tạo ra những thay đổi sâu rộng trong việc tự động hóa, giám sát tài nguyên và nâng cao chất lượng cuộc sống. Hàng tỷ thiết bị được kết nối trao đổi lượng dữ liệu khổng lồ, trong đó có nhiều thông tin nhạy cảm và riêng tư. Tuy nhiên, các nút cảm biến IoT (IoT sensor nodes) thường có những đặc tính kỹ thuật đặc thù:

  • Được thiết kế cho các nhiệm vụ chuyên biệt với năng lực xử lý, dung lượng bộ nhớ và nguồn năng lượng rất hạn chế (thường dựa vào pin hoặc năng lượng thu nhận từ môi trường như gió, mặt trời).
  • Hoạt động hoàn toàn tự động không có sự giám sát trực tiếp của con người (headless devices).
  • Thường được triển khai tại các vị trí phân tán, ngoài trời hoặc các khu vực công cộng thiếu sự bảo vệ an ninh vật lý (như công viên, khu rừng, vườn cây).

Do các ràng buộc nghiêm ngặt về tài nguyên, các hệ thống IoT truyền thống thường chỉ trang bị các giải pháp bảo mật hạng nhẹ, chủ yếu dựa trên mật mã đối xứng với khóa gốc (root key) được nạp tĩnh và lưu trữ trực tiếp trong bộ nhớ bất biến (flash memory). Khi thiết bị bị đánh cắp hoặc bị tiếp cận vật lý, kẻ tấn công có thể sử dụng các kỹ thuật dịch ngược phần cứng (Reverse Engineering) để bóc tách cấu trúc vi mạch, đọc trích xuất khóa gốc từ bộ nhớ flash. Từ đó, kẻ tấn công có thể giả mạo hoàn toàn thiết bị hợp lệ, xâm nhập vào toàn bộ hệ thống mạng IoT.

Để giải quyết triệt để điểm yếu này, khóa luận tốt nghiệp ngành Công nghệ Kỹ thuật Điện tử - Truyền thông của tác giả Phạm Hoàng Long (Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội, năm 2023) đặt ra mục tiêu nghiên cứu và hiện thực hóa giải pháp bảo mật phần cứng dựa trên Chức năng Không thể Nhân bản Vật lý (Physical Unclonable Function - PUF). PUF đóng vai trò như một "dấu vân tay số" độc nhất của từng vi mạch, cho phép tạo khóa bảo mật theo yêu cầu mà không cần lưu trữ khóa tĩnh trong bộ nhớ.

Các nhiệm vụ nghiên cứu cụ thể được xác định bao gồm:

  1. Nghiên cứu cơ chế tạo đáp ứng ngẫu nhiên của PUF, phân tích các loại PUF và lựa chọn cấu trúc Arbiter PUF (APUF) 64-bit phù hợp với các hệ thống nhúng hạn chế tài nguyên.
  2. Tích hợp khối sở hữu trí tuệ APUF IP vào hệ thống vi điều khiển trên chip (SoC) 32-bit RISC-V thuộc nền tảng mã nguồn mở PULPino thông qua giao tiếp chuẩn AXI4.
  3. Xây dựng một giao thức xác thực hai chiều (mutual authentication) hạng nhẹ giữa thiết bị IoT và máy chủ, kết hợp giữa APUF và chuẩn mã hóa tiên tiến AES để tạo khóa phiên an toàn và chống lại các dạng tấn công vật lý cũng như tấn công phát lại.
  4. Hiện thực hóa toàn bộ hệ thống trên bo mạch phát triển FPGA Digilent Arty A7-100T (Xilinx Artix-7), xây dựng chương trình nhúng bằng ngôn ngữ C để điều khiển và thu thập dữ liệu phản hồi, từ đó đánh giá định lượng các chỉ số chất lượng của APUF gồm: độ độc nhất (uniqueness), độ ổn định (reliability/robustness), độ lệch bit (uniformity/bias) và tính phi tuần hoàn (periodicity).

Đối tượng nghiên cứu của đề tài là khối phần cứng APUF, lõi xử lý RISC-V 32-bit (PULPino SoC), thuật toán mã hóa AES và giao thức xác thực an ninh trên nền tảng mạng không dây LoRaWAN 1.0. Phạm vi nghiên cứu tập trung vào việc thiết kế phần cứng RTL, cấu hình ràng buộc vật lý, thực thi tổng hợp và đo kiểm thực nghiệm trên kit FPGA Arty A7-100T tại thời điểm năm 2023.


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

Khung lý thuyết và các khái niệm cốt lõi

  • Physical Unclonable Function (PUF): Là cấu trúc mạch phần cứng khai thác các sai số vật lý ngẫu nhiên, vi mô và không thể tránh khỏi trong quá trình sản xuất chất bán dẫn (như sự biến thiên điện áp ngưỡng của transistor hay điện dung của diode). Khi có một tín hiệu kích thích đầu vào (gọi là Thách thức - Challenge $C$), mạch sẽ tạo ra một tín hiệu đầu ra độc nhất (gọi là Phản hồi - Response $R$). Tập hợp này tạo thành Cặp Thách thức - Phản hồi (Challenge-Response Pair - CRP).
  • Phân loại PUF:
    • Weak PUF (PUF yếu): Hỗ trợ số lượng cặp CRP hạn chế, số lượng CRP chỉ tăng tuyến tính hoặc theo hàm đa thức theo kích thước mạch (ví dụ Ring Oscillator PUF - RO PUF). RO-PUF nhạy cảm với biến thiên môi trường (nhiệt độ, điện áp, lão hóa) và dễ bị tấn công mô hình hóa nên chủ yếu chỉ dùng để lưu trữ khóa.
    • Strong PUF (PUF mạnh): Có không gian CRP tăng theo hàm mũ so với kích thước mạch, khiến kẻ tấn công không thể đọc vét cạn toàn bộ không gian CRP dù có quyền tiếp cận vật lý tạm thời (ví dụ Arbiter PUF - APUF). APUF phù hợp cho các bài toán xác thực thiết bị và tạo khóa mật mã trực tiếp.
  • Arbiter PUF (APUF): Hoạt động dựa trên sự cạnh tranh thời gian truyền (race condition) giữa hai đường dẫn tín hiệu đối xứng gồm chuỗi các bộ dồn kênh (Multiplexer 2-to-1). Mạch phân xử (Arbiter circuit) đo độ chênh lệch thời gian trễ $\Delta = d_{upper} - d_{lower}$; nếu $\Delta > 0$ thì bit đầu ra $r = 1$, ngược lại $r = 0$.
  • Advanced Encryption Standard (AES): Chuẩn mã hóa khối đối xứng xử lý dữ liệu theo từng khối cố định 128 bit, hỗ trợ các kích thước khóa 128, 192 và 256 bit, được sử dụng để bảo vệ kênh truyền và phái sinh các khóa phiên (Network Session Key - NwkSKey, Application Session Key - AppSKey).
  • Nền tảng SoC PULPino: Hệ thống vi điều khiển mã nguồn mở tiêu thụ công suất cực thấp (dưới 1 mW tại tần số 100 MHz, có thể hoạt động lên đến 250 MHz), phát triển trên kiến trúc tập lệnh 32-bit RISC-V, tích hợp bus hệ thống chuẩn AXI4 và các ngoại vi UART, SPI, I2C, GPIO.
  • Chuẩn truyền thông LoRaWAN 1.0: Giao thức mạng diện rộng công suất thấp được sử dụng làm nền tảng truyền thông không dây cho hệ sinh thái nút cảm biến IoT trong nghiên cứu.

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

  1. Thiết kế phần cứng số RTL: Sử dụng ngôn ngữ mô tả phần cứng VHDL để xây dựng mô hình logic cho khối APUF IP 64-bit và khối ghép nối giao tiếp bus AXI4.
  2. Mô phỏng chức năng logic: Sử dụng phần mềm Mentor Graphics ModelSim để kiểm tra tính đúng đắn của thiết kế ở mức thanh ghi chuyển đổi trước khi tổng hợp.
  3. Hiện thực hóa và gán ràng buộc vật lý: Sử dụng bộ công cụ Xilinx Vivado để tổng hợp logic, tối ưu hóa mạch và thực thi ánh xạ phần cứng. Tệp ràng buộc thiết kế XDC (Xilinx Design Constraint) được thiết lập đặc biệt để cố định vị trí các phần tử trễ (delay elements) trên từng phần tử nguyên thủy LUT (Look-Up Table primitive) của FPGA Artix-7, đảm bảo tính đối xứng vật lý nghiêm ngặt cho chuỗi trễ.
  4. Phát triển phần mềm nhúng điều khiển: Lập trình chương trình C nạp vào bộ nhớ RAM của lõi RISC-V để thực hiện ghi giá trị thách thức (Challenge), kích hoạt máy trạng thái (FSM) và đọc kết quả phản hồi (Response) từ các thanh ghi ánh xạ bộ nhớ (memory-mapped registers).
  5. Phân tích thống kê định lượng: Đo lường các chỉ số chất lượng PUF thông qua tập mẫu thực nghiệm:
    • Độ độc nhất liên chip (Interchip Hamming Distance - Inter-HD): Đánh giá sự khác biệt của chuỗi phản hồi giữa các vị trí/chip khác nhau với cùng một thách thức.
    • Độ ổn định nội chip (Intrachip Hamming Distance - Intra-HD): Đánh giá độ lặp lại của phản hồi trên cùng một thiết bị khi áp dụng lặp lại cùng một thách thức nhiều lần.
    • Độ lệch bit (Bias): Đánh giá tỷ lệ xuất hiện của bit 0 và bit 1 trong chuỗi phản hồi.
    • Tính phi tuần hoàn (Periodicity): Đánh giá mức độ lặp lại của các cụm 2, 4, 8, 16 và 32 bit liên tiếp nhằm loại bỏ các phản hồi có tính quy luật.

Thiết kế và triển khai hệ thống

Kiến trúc phần cứng nút cảm biến IoT

Hệ thống hoàn chỉnh trên FPGA gồm ba thành phần chính tích hợp trên cùng một chip (SoC):

  1. Khối APUF IP: Đóng vai trò là nguồn tạo dấu vân tay vật lý và khóa bảo mật. APUF nhận thách thức 64-bit và tạo ra chuỗi phản hồi 64-bit.
  2. Nền tảng vi điều khiển PULPino (RISC-V 32-bit): Điều phối toàn bộ hoạt động của hệ thống, quản lý việc ghi dữ liệu thách thức, kích hoạt khối PUF, đọc phản hồi và thực thi giao thức xác thực.
  3. Bộ tăng tốc phần cứng mã hóa AES: Hỗ trợ xử lý mã hóa/giải mã dữ liệu và phái sinh khóa phiên với khối dữ liệu 128-bit.

Cấu trúc chi tiết của APUF IP

Khối APUF IP được tổ chức thành hai phần:

  • Module Arbiter PUF:
    • Chuỗi trễ (DelayChain): Gồm 64 phần tử trễ mắc nối tiếp. Mỗi phần tử trễ được cấu hình từ các bộ dồn kênh MUX 2-to-1, được ánh xạ vào một phần tử LUT nguyên thủy duy nhất trên chip FPGA Xilinx Artix-7.
    • Mạch phân xử (Arbiter Circuit): Được tạo thành từ 2 phần tử LUT và Flip-Flop, nhận tín hiệu kích hoạt đồng thời (TrigSignal) để xác định đường truyền có tốc độ nhanh hơn.
    • Các chuỗi trễ và mạch phân xử được bố trí song song để tạo ra đồng thời 64 bit phản hồi.
  • Khối giao tiếp bus AXI4 và máy trạng thái hữu hạn (FSM): FSM điều khiển luồng dữ liệu thông qua 6 thanh ghi 32-bit được ánh xạ bộ nhớ từ địa chỉ gốc APUF_BASE:
    • APUF_CONFIG: Thanh ghi cấu hình, ghi bit 1 tại bit có trọng số thấp nhất (LSB) để kích hoạt module APUF.
    • APUF_STATUS: Thanh ghi trạng thái, báo hiệu quá trình tạo phản hồi hoàn tất khi bit LSB chuyển từ 0 sang 1.
    • APUF_CHALL0: Chứa 32 bit thấp (bit 0 đến 31) của thách thức.
    • APUF_CHALL1: Chứa 32 bit cao (bit 32 đến 63) của thách thức.
    • APUF_RESP0: Chứa 32 bit thấp (bit 0 đến 31) của phản hồi thu được.
    • APUF_RESP1: Chứa 32 bit cao (bit 32 đến 63) của phản hồi thu được.

Giao thức xác thực an ninh hai chiều

Giao thức vận hành qua hai giai đoạn cụ thể:

[Thiết bị IoT (PUFi)]                                    [Máy chủ xác thực (Server)]
        |                                                            |
        |============= Giai đoạn 1: Đăng ký (Registration) ==========|
        |-- Nạp IDi và tập hợp các cặp (Ci, Ri) chất lượng cao ------>| (Lưu vào DB an toàn)
        |                                                            |
        |============ Giai đoạn 2: Xác thực (Verification) ==========|
        |                                                            |
        |--- 1. Gửi Join Request: E(IDi, N1) [Khóa gốc] ------------->|
        |                                                            | 2. Giải mã, kiểm tra IDi
        |                                                            |    Tạo Ci, Ci+1 từ DB
        |                                                            |    Tạo NwkSKey, AppSKey
        |<-- 3. Gửi: E(Ci, Ci+1 ⊕ Ri, N2) [Khóa gốc] -----------------|
        |                                                            |
        | 4. Tạo Ri từ Ci -> Giải mã Ci+1                            |
        |    Tạo Ri+1 từ Ci+1 -> Tính NwkSKey, AppSKey (AES)         |
        |--- 5. Gửi: E(CRPi, CRPi+1, N3) [AppSKey] ------------------>|
        |                                                            | 6. Giải mã bằng NwkSKey
        |                                                            |    Khớp CRPi, CRPi+1
        |                                                            |    Xóa CRPi, CRPi+1 đã dùng
        |                                                            |    Chấp nhận / Từ chối
  1. Giai đoạn Đăng ký (Registration Phase):

    • Danh danh $ID_i$ của thiết bị $PUF_i$ được nhập vào máy chủ.
    • Máy chủ thu thập các cặp CRP ($C_i, R_i$) đã trải qua quá trình đánh giá chất lượng và lưu trữ an toàn trong cơ sở dữ liệu.
  2. Giai đoạn Xác thực và Kiểm tra (Verification Phase):

    • Bước 1: Thiết bị gửi yêu cầu gia nhập mạng (Join Request) chứa định danh $ID_i$ và một số ngẫu nhiên $N_1$, được mã hóa bằng khóa gốc của thiết bị: $$\text{Bản tin mã hóa} = E(ID_i, N_1)$$ (Khóa gốc này chỉ dùng duy nhất cho việc gửi $ID_i$, không dùng cho dữ liệu hệ thống).
    • Bước 2: Máy chủ giải mã, kiểm tra $ID_i$. Nếu khớp với cơ sở dữ liệu, máy chủ lấy ngẫu nhiên thách thức $C_i$, phản hồi tương ứng $R_i$ và thách thức kế tiếp $C_{i+1}$ từ cơ sở dữ liệu. Máy chủ dùng $CRP_{i+1}$ để tạo khóa phiên mạng ($NwkSKey$) và khóa phiên ứng dụng ($AppSKey$). Sau đó, máy chủ gửi lại gói tin mã hóa chứa $C_i$, $C_{i+1} \oplus R_i$ và số ngẫu nhiên $N_2$: $$\text{Bản tin mã hóa} = E(C_i, C_{i+1} \oplus R_i, N_2)$$
    • Bước 3: Thiết bị giải mã bản tin, nạp $C_i$ vào khối APUF để tạo ra $R_i$. Thiết bị dùng $R_i$ để giải mã lấy $C_{i+1}$, tiếp tục nạp $C_{i+1}$ vào APUF để thu được $R_{i+1}$. Sử dụng $CRP_{i+1}$, thiết bị phái sinh $NwkSKey$ và $AppSKey$ thông qua lõi AES. Thiết bị tạo số ngẫu nhiên $N_3$, mã hóa $CRP_i$ và $CRP_{i+1}$ bằng khóa $AppSKey$ rồi gửi về máy chủ: $$\text{Bản tin mã hóa} = E(CRP_i, CRP_{i+1}, N_3)$$
    • Bước 4: Máy chủ giải mã bản tin bằng $NwkSKey$, so sánh $CRP_i$ và $CRP_{i+1}$ với dữ liệu gốc. Nếu trùng khớp, thiết bị được xác thực thành công. Máy chủ tiến hành xóa bỏ $CRP_i$ và $CRP_{i+1}$ khỏi cơ sở dữ liệu để ngăn chặn việc tái sử dụng nếu thông tin bị nghe lén trên đường truyền.

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

Chương 1: OVERVIEW OF IOT AND ITS SECURITY PROBLEMS

Chương này tập trung phân tích toàn diện bức tranh an ninh mạng IoT, chỉ ra các lỗ hổng vật lý đặc thù của nút cảm biến do giới hạn năng lượng và bộ nhớ. Tác giả đi sâu phân tích cơ chế tấn công dịch ngược (Reverse Engineering) khi kẻ xấu đánh cắp thiết bị và trích xuất khóa gốc từ bộ nhớ flash. Chương 1 trình bày chi tiết khái niệm PUF, so sánh giữa Weak PUF (điển hình là RO-PUF) và Strong PUF (điển hình là APUF), đồng thời tổng hợp các công trình nghiên cứu liên quan về xác thực PUF (như các cơ chế xác thực ẩn danh, cập nhật CRP, hoặc ứng dụng mô hình máy học). Tác giả kết luận Arbiter PUF là giải pháp tối ưu cho bài toán xác thực thiết bị nhờ khả năng tạo không gian CRP lớn và tính ổn định cao.

Chương 2: PROPOSED HARDWARE ARCHITECTURE

Chương 2 trình bày chi tiết kiến trúc phần cứng tích hợp và giao thức an ninh được đề xuất:

  • Kiến trúc phần cứng gồm 3 khối: Khối APUF IP 64-bit, hệ vi điều khiển PULPino RISC-V 32-bit và khối mã hóa phần cứng AES 128-bit.
  • Cấu trúc module APUF gồm 64 tầng trễ LUT nối tiếp và mạch phân xử Arbiter.
  • Khối ghép nối AXI4 với máy trạng thái FSM và không gian 6 thanh ghi bộ nhớ điều khiển (APUF_CONFIG, APUF_STATUS, APUF_CHALL0, APUF_CHALL1, APUF_RESP0, APUF_RESP1).
  • Thiết kế chi tiết giao thức xác thực hai chiều gồm giai đoạn đăng ký (Registration) và giai đoạn kiểm tra (Verification) sử dụng LoRaWAN 1.0, cơ chế xóa CRP đã qua sử dụng và ứng dụng số ngẫu nhiên nonce ($N_1, N_2, N_3$) chống tấn công phát lại.

Chương 3: HARDWARE IMPLEMENTATION RESULTS AND APUF EVALUATIONS

Chương 3 trình bày toàn bộ quy trình thiết kế trên kit FPGA Digilent Arty A7-100T và phần mềm Xilinx Vivado:

  • Quy trình tổng hợp và định tuyến RTL với các ràng buộc vật lý XDC gán trực tiếp phần tử trễ vào từng LUT nguyên thủy.
  • Chương trình C nhúng chạy trên lõi RISC-V để giao tiếp, kích hoạt và đọc phản hồi từ APUF IP qua các thanh ghi ngoại vi.
  • Thiết lập các công thức toán học đo lường chất lượng PUF: Khoảng cách Hamming nội chip (Intra-HD), Khoảng cách Hamming liên chip (Inter-HD), Độ bền vững (Robustness), Độ lệch bit (Bias) và Tính phi tuần hoàn (Periodicity).
  • Kết quả kiểm thử thực nghiệm trên 10.000 thách thức đo Inter-HD và 20.000 thách thức đo tỷ lệ phân bố bit.

Chương 4: CONCLUSIONS AND FUTURE WORKS

Tổng kết các kết quả đạt được của khóa luận về mặt tích hợp phần cứng SoC trên FPGA và kiểm chứng giao thức an ninh; đề xuất các định hướng phát triển tiếp theo cho hệ thống.


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

Kết quả sử dụng tài nguyên phần cứng trên FPGA

Toàn bộ hệ thống nút cảm biến IoT (bao gồm lõi RISC-V PULPino, bộ mã hóa AES và khối APUF IP 64-bit) được tổng hợp và thực thi thành công trên bo mạch phát triển Digilent Arty A7-100T. Số liệu sử dụng tài nguyên phần cứng chi tiết như sau:

Loại tài nguyên phần cứng Số lượng sử dụng
LUT (Look-Up Tables) 22.016
LUTRAM (Look-Up Table RAM) 18
FF (Flip-Flops) 125.533
BRAM (Block RAM) 16
DSP (Digital Signal Processing) 8
I/O (Input/Output Pins) 69
MMCM (Mixed-Mode Clock Manager) 1

Kết quả đánh giá chất lượng APUF IP

  • Độ độc nhất (Uniqueness / Interchip Hamming Distance): Thực nghiệm trên cùng một FPGA với hai ràng buộc vật lý vị trí khác nhau cho chuỗi trễ của APUF IP, sử dụng 10.000 thách thức ngẫu nhiên:
Đại lượng đo lường Giá trị thực nghiệm
Interchip HD Trung bình ~50,00% (xấp xỉ mức lý tưởng)
Interchip HD Tối thiểu 30,00%
Interchip HD Tối đa 100,00%

Các cặp CRP có Interchip-HD gần giá trị 0% hoặc 100% (chứa toàn bit 0 hoặc toàn bit 1) được hệ thống tự động loại bỏ trong quá trình lọc (enrollment).

  • Độ lệch bit và tính đồng đều (Uniformity / Bias): Kiểm thử với 20.000 thách thức ngẫu nhiên. Tập phản hồi được lựa chọn đưa vào cơ sở dữ liệu có tỷ lệ bit phân bố đồng đều, tiệm cận mức lý tưởng 50/50:

    • Tỷ lệ tổng số bit 0: 50,88%
    • Tỷ lệ tổng số bit 1: 49,12%
  • Tính phi tuần hoàn (Periodicity): Quá trình lọc phản hồi loại bỏ triệt để các phản hồi mang tính quy luật lặp lại:

    • Cụm 8 bit liên tiếp lặp lại: 0
    • Cụm 16 bit liên tiếp lặp lại: 0
    • Cụm 32 bit liên tiếp lặp lại: 0

Đóng góp chính của khóa luận

  1. Tích hợp thành công khối APUF IP 64-bit hoàn chỉnh vào hệ thống SoC lõi RISC-V 32-bit (PULPino) qua chuẩn giao tiếp công nghiệp AXI4.
  2. Thiết kế và kiểm chứng giao thức xác thực hai chiều hạng nhẹ có cơ chế xóa bỏ CRP đã sử dụng và cập nhật khóa phiên thông qua AES, loại bỏ hoàn toàn việc lưu trữ khóa bí mật tĩnh trong bộ nhớ flash của nút IoT.
  3. Xây dựng quy trình gán ràng buộc vật lý (physical constraints) trên FPGA Xilinx Artix-7 giúp cố định vị trí các phần tử trễ trên từng LUT primitive, đảm bảo tính ngẫu nhiên và chất lượng mật mã của phản hồi PUF.

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

Hạn chế

  • Do giới hạn về mặt thời gian, khóa luận mới chỉ tập trung nghiên cứu kiến trúc Arbiter PUF cơ bản mà chưa mở rộng thực nghiệm trên các biến thể phức tạp hơn như XOR Arbiter PUF.
  • Thực nghiệm đo lường độ độc nhất (Inter-HD) chủ yếu được tiến hành bằng cách thay đổi vị trí ràng buộc vật lý của chuỗi trễ trên cùng một chip FPGA Artix-7, chưa mở rộng thu thập dữ liệu trên số lượng lớn các chip FPGA vật lý rời rạc khác nhau.
  • Cơ chế xóa CRP sau mỗi lần xác thực đòi hỏi máy chủ phải liên tục quản lý và bổ sung kho dữ liệu CRP trong quá trình vận hành dài hạn.

Hướng nghiên cứu tiếp

  • Mở rộng đánh giá thực nghiệm trên nhiều bo mạch phần cứng FPGA vật lý khác nhau trong các điều kiện môi trường biến đổi khắc nghiệt (nhiệt độ cao, sụt áp nguồn).
  • Tích hợp các cấu trúc PUF nâng cao có khả năng chống lại các cuộc tấn công mô hình hóa bằng máy học (Machine Learning modeling attacks).
  • Nghiên cứu cơ chế xác thực ẩn danh (anonymous authentication) hoặc ứng dụng mô hình máy học tương đương đặt tại máy chủ xác thực tin cậy (Trusted Third Party) nhằm tối ưu hóa không gian lưu trữ CRP.

Giá trị tham khảo

Khóa luận là tài liệu tham khảo giá trị cho:

  • Sinh viên và học viên cao học các ngành Công nghệ Kỹ thuật Điện tử - Viễn thông, Kỹ thuật Máy tính, An toàn Thông tin và Hệ thống Nhúng đang thực hiện các đề tài về an ninh phần cứng (Hardware Security) và bảo mật IoT.
  • Kỹ sư thiết kế vi mạch và hệ thống nhúng: Tham khảo chi tiết phương pháp thiết kế khối IP tương thích chuẩn bus AXI4, cách viết ràng buộc vị trí vật lý (XDC physical constraints) cho các phần tử trễ trên FPGA Xilinx 7-series, và kỹ thuật lập trình phần mềm C điều khiển ngoại vi trên lõi xử lý RISC-V.
  • Các nhà nghiên cứu về mật mã học phần cứng: Tham khảo phương pháp luận và các công thức toán học thực nghiệm dùng để đánh giá chất lượng phản hồi PUF (Intra-HD, Inter-HD, Bias, Periodicity).

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

1. Tại sao các thiết bị IoT lại dễ bị tấn công vật lý và dịch ngược phần cứng (Reverse Engineering)?
Do các thiết bị cảm biến IoT bị hạn chế về năng lượng, dung lượng bộ nhớ và năng lực tính toán, đồng thời thường được lắp đặt tự động tại các khu vực ngoài trời, công cộng thiếu sự bảo vệ vật lý. Các phương pháp bảo mật truyền thống thường lưu khóa mã hóa gốc trực tiếp trong bộ nhớ flash. Khi kẻ tấn công đánh cắp thiết bị, họ có thể dùng kỹ thuật dịch ngược để bóc tách cấu trúc vi mạch, đọc trích xuất khóa gốc và tạo ra thiết bị giả mạo để xâm nhập hệ thống.

2. Khối APUF IP trong khóa luận có kích thước thách thức và phản hồi là bao nhiêu, gồm những thành phần nào?
Khối APUF IP được thiết kế với độ dài Thách thức (Challenge) và Phản hồi (Response) đều là 64 bit. Cấu trúc gồm hai phần chính: Module Arbiter PUF (chứa 64 tầng phần tử trễ DelayChain cấu hình từ MUX 2-to-1 trên từng LUT primitive và mạch phân xử Arbiter Circuit từ 2 LUT + Flip-Flop) và khối giao tiếp chuẩn bus AXI4 điều khiển bởi máy trạng thái hữu hạn (FSM) qua 6 thanh ghi bộ nhớ 32-bit.

3. Toàn bộ hệ thống nút cảm biến IoT tiêu thụ bao nhiêu tài nguyên trên kit FPGA Arty A7-100T?
Hệ thống hoàn chỉnh trên FPGA sử dụng 22.016 LUTs, 18 LUTRAMs, 125.533 Flip-Flops (FFs), 16 khối BRAMs, 8 khối DSPs, 69 chân I/O và 1 khối quản lý xung nhịp MMCM.

4. Giao thức xác thực đề xuất ngăn chặn tấn công phát lại (Replay Attack) và bảo vệ CRP bằng cách nào?
Giao thức sử dụng các số ngẫu nhiên nonce ($N_1, N_2, N_3$) trong từng bước trao đổi gói tin mã hóa để chống lại việc nghe lén và phát lại gói tin cũ. Đồng thời, sau khi hoàn tất xác thực, máy chủ sẽ xóa ngay lập tức các cặp $CRP_i$ và $CRP_{i+1}$ đã sử dụng khỏi cơ sở dữ liệu để đảm bảo các cặp CRP này không bao giờ bị tái sử dụng.

5. Kết quả phân bố bit (Bias) của tập phản hồi APUF được chọn lọc đạt tỷ lệ bao nhiêu?
Sau quá trình sàng lọc loại bỏ các chuỗi bit lỗi và chuỗi tuần hoàn, tập phản hồi APUF đạt tỷ lệ phân bố bit 0 là 50,88% và bit 1 là 49,12%, tiệm cận tỷ lệ lý tưởng 50/50, đảm bảo tính ngẫu nhiên và không đoán trước được của phản hồi.


Kết luận

Khóa luận tốt nghiệp của tác giả Phạm Hoàng Long đã giải quyết bài toán bảo mật phần cứng cho các thiết bị IoT bị hạn chế tài nguyên bằng cách ứng dụng Chức năng Không thể Nhân bản Vật lý (Arbiter PUF). Nghiên cứu đã thiết kế và tích hợp thành công khối APUF IP 64-bit vào hệ thống vi điều khiển RISC-V 32-bit (PULPino SoC) cùng bộ mã hóa AES trên kit FPGA Arty A7-100T. Kết quả thực nghiệm khẳng định chất lượng cao của dấu vân tay phần cứng với độ độc nhất đạt trung bình ~50% và tỷ lệ phân bố bit cân bằng (50,88% bit 0 / 49,12% bit 1), cung cấp giải pháp xác thực thiết bị an toàn và chống lại các nguy cơ tấn công dịch ngược vật lý.