Mục tiêu nghiên cứu
Xây dựng các phương pháp tấn công phân tích điện năng tiêu thụ hiệu quả cho thiết bị mật mã là một nhiệm vụ quan trọng Các phương pháp này có thể áp dụng cho cả thiết bị không có phòng vệ và thiết bị đã được bảo vệ Việc hiểu rõ cách thức hoạt động của các thiết bị này giúp tối ưu hóa các chiến lược tấn công, từ đó nâng cao khả năng phát hiện và phòng ngừa các lỗ hổng bảo mật Từ đó, việc nghiên cứu và phát triển các giải pháp bảo mật mạnh mẽ hơn sẽ trở nên khả thi hơn.
Nội dung nghiên cứu
Luận án thực hiện hai nội dung nghiên cứu chính như sau :
1- Nghiên cứu xây dựng phương pháp tấn công phân tích điện năng tiêu thụ hiệu quả đối với thiết bị không có phòng vệ :
Phương pháp tấn công không bản mẫu VMD-CPA được xây dựng để hoạt động hiệu quả trên các vết điện năng tiêu thụ có nhiễu Phương pháp này giúp cải thiện khả năng tấn công trong môi trường có nhiều yếu tố gây nhiễu, từ đó nâng cao hiệu suất và độ chính xác trong việc phân tích dữ liệu điện năng.
Phương pháp tấn công mẫu VMD-GSO-SVM được xây dựng với cơ chế lựa chọn các Điểm Quan Tâm (POIs) phù hợp, giúp tối ưu hóa hiệu quả tấn công Phương pháp này hoạt động hiệu quả ngay cả với các tín hiệu điện năng tiêu thụ có nhiễu, nâng cao khả năng tấn công trong các tình huống thực tế.
2- Nghiên cứu phương pháp tấn công đối với thiết bị có phòng vệ :
Phương pháp tấn công mẫu CNN-D được phát triển nhằm tấn công thiết bị có phòng vệ bằng mặt nạ, sử dụng mạng nơ-ron tích chập với kiến trúc và tham số được xây dựng dựa trên các đặc điểm POIs của thiết bị Phương pháp này không chỉ nâng cao hiệu quả tấn công mà còn tối ưu hóa quy trình tấn công dựa trên các yếu tố đặc thù của thiết bị mục tiêu.
Phương pháp nghiên cứu
Để thực những nội dung trong luận án những phương pháp và kỹ thuật sau được sử dụng:
Phương pháp nghiên cứu lý thuyết trong lĩnh vực tấn công phân tích điện năng tiêu thụ bao gồm việc tìm hiểu tổng quan về các khía cạnh liên quan Nghiên cứu này tập trung vào việc tổng hợp và phân tích các nghiên cứu hiện có nhằm nâng cao hiệu quả của các phương pháp tấn công.
Phương pháp thực nghiệm trong luận án này bao gồm việc thử nghiệm các phương pháp tấn công phân tích điện năng tiêu thụ chính như DPA và CPA Qua việc phân tích và thử nghiệm các nghiên cứu liên quan, chúng tôi đề xuất các định hướng xây dựng những phương pháp tấn công hiệu quả hơn.
Sử dụng phương pháp kết hợp lý thuyết và thực nghiệm để kiểm chứng kết quả các phương pháp tấn công đề xuất
Sử dụng hệ phần cứng thử nghiệm tấn công phân tích điện năng tiêu thụ Sakura G/W (SAKURA (uec.ac.jp)) là phương pháp hiệu quả để thu thập dữ liệu về vết điện năng tiêu thụ trong các cuộc tấn công.
Sử dụng bộ dữ liệu công khai ASCAD về tấn công phân tích điện năng tiêu thụ, bài viết so sánh hiệu quả của các phương pháp tấn công đối với thiết bị được bảo vệ bằng mặt nạ.
Các thuật toán xử lý vết điện năng tiêu thụ, tấn công được viết bằng Matlab, Pyhton và được cài đặt thực thi trên máy tính cá nhân
Để đánh giá hiệu quả của các phương pháp tấn công đề xuất, luận án thực hiện so sánh kết quả thực thi tấn công dựa trên mức tiêu thụ điện năng cần thiết để khôi phục khóa đúng Hiệu quả của tấn công phân tích điện năng tiêu thụ phụ thuộc vào nhiều yếu tố như phương pháp tấn công, thiết bị mục tiêu, cách cài đặt thuật toán mã hóa, và độ chính xác của hệ thống đo điện năng tiêu thụ Do đó, việc so sánh trong luận án chỉ tập trung vào hiệu quả của các phương pháp tấn công đề xuất so với các phương pháp khác trên cùng một thiết bị và hệ thống đo, không so sánh với cùng một phương pháp trong các điều kiện khác nhau.
Tính mới trong khoa học của Luận án
Những đóng góp khoa học mới của luận án bao gồm:
Phương pháp tấn công phân tích điện năng tiêu thụ không bản mẫu VMD-CPA đã chứng minh hiệu quả vượt trội so với phương pháp CPA truyền thống, đặc biệt là khi cần thu thập số lượng vết điện năng tiêu thụ để khôi phục khóa đúng Trong các điều kiện có nhiễu lớn, VMD-CPA vẫn có khả năng khôi phục khóa chính xác, trong khi CPA không thể đạt được điều này Những đóng góp này được trình bày chi tiết trong phần 2.3, chương 2 của luận án và đã được công bố trong các công trình CT01 và CT04.
Phương pháp tấn công mẫu hiệu quả VMD-GSO-SVM được xây dựng dựa trên sự kết hợp giữa kỹ thuật VMD và GSO, nhằm lựa chọn các POIs Hiệu quả của phương pháp này được thể hiện qua việc giảm thiểu số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa đúng, so với phương pháp tấn công mẫu dựa trên SVM với kỹ thuật lựa chọn POIs dựa trên CPA và NB, đặc biệt trong các trường hợp vết điện năng tiêu thụ có nhiễu Nội dung chi tiết về đóng góp này được trình bày trong phần 2.4, chương.
2 của luận án và được công bố bởi công trình CT02
Phương pháp tấn công mẫu đối với thiết bị phòng vệ bằng mặt nạ CNN-D sử dụng mạng nơ-ron tích chập đã được xây dựng dựa trên các đặc điểm POIs của thiết bị Các tham số của mạng nơ-ron tích chập được xác định thông qua thuật toán tối ưu GWO, nhằm nâng cao hiệu quả của CNN.
D cho thấy rằng số lượng vết điện năng tiêu thụ cần để khôi phục khóa đúng thấp hơn so với kết quả tốt nhất hiện có Nội dung chi tiết của đóng góp này được trình bày trong chương 3 của luận án và đã được công bố trong công trình CT03.
Ý nghĩa khoa học và thực tiễn của Luận án
Nghiên cứu và áp dụng kỹ thuật giảm nhiễu cho các vết điện năng tiêu thụ nhằm phục vụ cho các cuộc tấn công phân tích điện năng tiêu thụ, cả không bản mẫu lẫn có bản mẫu, đối với những thiết bị không có biện pháp phòng vệ.
Xây dựng phương pháp lựa chọn các Điểm Quan Tâm (POIs) phù hợp là rất quan trọng để nâng cao độ chính xác trong việc xây dựng mô hình điện năng tiêu thụ của thiết bị Điều này không chỉ giúp cải thiện hiệu quả của các cuộc tấn công mẫu mà còn góp phần tối ưu hóa quy trình phân tích và dự đoán hành vi tiêu thụ năng lượng.
Nghiên cứu và phát triển kiến trúc mạng nơ-ron tích chập phù hợp cho bài toán tấn công mẫu nhằm tăng cường hiệu quả tấn công đối với các thiết bị có hệ thống phòng vệ bằng mặt nạ.
Kiểm chứng khả năng tấn công phân tích điện năng tiêu thụ có thể thực hiện trên thiết bị mật mã với chi phí thấp
Giảm chi phí tấn công về thời gian là một yếu tố quan trọng trong việc tìm kiếm khóa đúng cho các cuộc tấn công nhằm vào thiết bị mã hóa, cả khi thiết bị không có biện pháp phòng vệ lẫn khi được bảo vệ bằng mặt nạ.
Các phương pháp tấn công đề xuất cho thiết bị không có phòng vệ có thể hoạt động hiệu quả ngay cả trong điều kiện thu thập dữ liệu về điện năng tiêu thụ có nhiễu.
Các phương pháp tấn công đề xuất bởi Luận án có thể áp dụng được trong thực tế.
Cấu trúc của Luận án
Đặc điểm điện năng tiêu thụ của thiết bị mật mã
Các thiết bị mật mã chủ yếu sử dụng các mạch điện tử, trong đó có giới hạn tối thiểu về kích thước của các phần tử logic, yêu cầu thời gian và năng lượng nhất định để hoạt động Bức xạ điện từ phát ra từ mạch điện và điện năng tiêu thụ là những yếu tố không thể tránh khỏi trong quá trình hoạt động của chúng Những bức xạ này được xem là các dạng thông tin kênh kề, hay rò rỉ kênh kề, có thể bị lợi dụng trong các cuộc tấn công nhằm truy cập thông tin bí mật trong thiết bị.
Hầu hết các thiết bị điện tử hiện nay sử dụng công nghệ CMOS, với điện năng tiêu thụ phụ thuộc vào số lượng và cách kết nối các phần tử logic trong mạch Để mạch hoạt động hiệu quả, nó cần được cung cấp một điện áp không đổi VDD cùng với các tín hiệu đầu vào Tổng dòng điện tức thời được ký hiệu là 𝑖 𝐷𝐷 (𝑡) và điện năng tiêu thụ tức thời cũng được tính toán dựa trên các yếu tố này.
𝑝 𝑐𝑖𝑟 (𝑡) Điện năng tiêu thụ trung bình P cir của mạch trong thời gian 𝑇 được tính bởi biểu thức (1.1)
Hình 1.3 Điện năng tiêu thụ mạch CMOS Hình 1.4 Sơ đồ cổng đảo CMOS
Cổng đảo là thành phần cơ bản của các mạch CMOS, được cấu tạo từ mạng "kéo lên" và "kéo xuống", bao gồm một transistor kênh P và một transistor kênh N Đối với các cổng phức hợp, sẽ sử dụng nhiều transistor PMOS và NMOS Điện năng tiêu thụ của cổng đảo được chia thành hai phần: điện năng tiêu thụ tĩnh (𝑃 𝑠𝑡𝑎𝑡) chỉ xảy ra khi không có chuyển trạng thái, và điện năng tiêu thụ động (𝑃 𝑑𝑦𝑛) phát sinh khi tín hiệu bên trong hoặc tín hiệu đầu ra thực hiện chuyển trạng thái Tổng điện năng tiêu thụ của mạch (𝑃 𝑡𝑜𝑡𝑎𝑙) là tổng của 𝑃 𝑠𝑡𝑎𝑡 và 𝑃 𝑑𝑦𝑛, trong đó 𝑇 𝑡𝑜𝑡𝑎𝑙 = 𝑃 𝑠𝑡𝑎𝑡 + 𝑃 𝑑𝑦𝑛 Điện năng tiêu thụ tĩnh chủ yếu do dòng rò gây ra và thường rất nhỏ, trong khi điện năng tiêu thụ động là yếu tố chính, phụ thuộc vào số lượng phần tử chuyển trạng thái trong mạch, được tính theo công thức (1.2) với các tham số như tần số clock (𝑓), trở kháng tải (𝐶 𝐿), hệ số hoạt động (𝛼) và điện áp nguồn cấp (𝑉 𝐷𝐷) Hệ số 𝛼 mô tả số lượng phần tử chuyển trạng thái trong mạch.
Điện năng tiêu thụ động của mạch điện phụ thuộc vào số lượng các phần tử logic chuyển trạng thái và dữ liệu, phép toán mà mạch thực hiện Điều này tạo cơ sở cho tấn công phân tích điện năng tiêu thụ, cho phép thu thập và phân tích điện năng tiêu thụ để xác định dữ liệu mà thiết bị đang xử lý Đối với các thiết bị mật mã, nếu kẻ tấn công thành công, họ có thể biết được khóa của thiết bị Chi tiết về các thành phần của vết điện năng tiêu thụ trong ngữ cảnh tấn công này được mô tả trong [35].
Phương pháp đo điện năng tiêu thụ
Để thực hiện tấn công phân tích điện năng tiêu thụ, việc thu thập và lưu trữ vết điện năng tiêu thụ của thiết bị là rất quan trọng Hình 1.5 minh họa sơ đồ đo vết điện năng tiêu thụ cùng các điểm đo trên thiết bị cần tấn công, bao gồm thiết bị cần tấn công (DUT), máy hiện sóng số và máy tính.
Thiết bị cần tấn công là thiết bị mật mã cần được đánh giá độ an toàn Thiết bị này thường có giao diện truyền thông với PC, cho phép gửi lệnh tới DUT để thực hiện thuật toán mã hóa Trong quá trình này, PC gửi dữ liệu đến DUT, DUT sẽ mã hóa dữ liệu và gửi lại bản mã cho PC.
Máy hiện sóng số là thiết bị chủ yếu được sử dụng để ghi lại vết điện năng tiêu thụ từ mạch đo Để thực hiện các cuộc tấn công, máy hiện sóng cần có tần số lấy mẫu cao và khả năng điều khiển qua PC thông qua giao diện USB hoặc kết nối Internet Để đo vết điện năng tiêu thụ, các đầu đo của máy hiện sóng sẽ được kết nối tới các điểm đo của DUT, như được minh họa trong Hình 1.5b,c, tùy thuộc vào vị trí của điện trở 𝑅 1 Giá trị của điện trở này thường nằm trong khoảng từ 1Ω đến 50Ω và không ảnh hưởng đến hoạt động của thiết bị.
Máy tính (PC) đóng vai trò quan trọng trong việc điều khiển hoạt động của DUT, đồng thời thu thập và lưu trữ dữ liệu điện năng tiêu thụ từ máy hiện sóng số Với khả năng tính toán và truyền thông hiệu quả với thiết bị mật mã và máy hiện sóng, máy tính này không yêu cầu các thành phần đặc biệt nào.
Thiết bị cần tấn công
DSO Đo điện năng tiêu thụ
PC điều khiển Điểm đo
Hình 1.5 Sơ đồ đo tổng quát
Mô hình điện năng tiêu thụ
Mô hình điện năng tiêu thụ giúp mô tả đặc điểm tiêu thụ điện năng của thiết bị, phục vụ cho hai mục đích chính.
Để xây dựng điện năng tiêu thụ giả định của thiết bị dựa trên giá trị mà nó xử lý, ta sử dụng mô hình điện năng tiêu thụ ℒ Khi thiết bị xử lý giá trị 𝑧, điện năng tiêu thụ giả định được tính bằng ℎ = ℒ(𝑧).
Để ước lượng giá trị thiết bị xử lý dựa trên vết điện năng tiêu thụ thực tế, ta sử dụng mô hình điện năng tiêu thụ 𝐹 Gọi 𝒙 là vết điện năng tiêu thụ của thiết bị, đầu ra của mô hình được biểu diễn bằng 𝑦 = 𝑃(𝑧 = 𝑧 𝑖 |𝒙) = 𝐹(𝒙) Điều này cho phép xác định xác suất ước lượng giá trị thiết bị xử lý là 𝑧 𝑖 khi đã biết vết điện năng tiêu thụ 𝒙.
Bảng 1.1 Một số mô hình điện năng tiêu thụ
Tên mô hình ℒ(𝑧) Ví dụ
Giá trị một bit của 𝑧, ví dụ ℒ(𝑧) có giá trị là bit có trọng số thấp nhất của
Tổng số bit của 𝑧 có giá trị là 1
Tổng số bit trong 𝑧 có sự chuyển trạng thái so với các bit của 𝑧 0 được thiết bị xử lý trước đó
Mục đích chính trong các kịch bản tấn công không có bản mẫu là áp dụng các mô hình điện năng tiêu thụ tổng quát.
Điện năng tiêu thụ của mạch điện CMOS phụ thuộc vào dữ liệu xử lý, cụ thể là trạng thái bit (1 hoặc 0) và số lần chuyển đổi giữa các trạng thái Các mô hình điện năng tiêu thụ tổng quát được trình bày trong Bảng 1.1 [35] Mô hình bit đơn và mô hình trọng số Hamming thường được áp dụng khi tấn công các thuật toán mật mã trên phần mềm dành cho hệ vi điều khiển, trong khi mô hình khoảng cách Hamming được sử dụng cho các thuật toán mật mã cứng hóa trên FPGA.
Mục đích thứ hai trong các kịch bản tấn công mẫu là xây dựng mô hình điện năng tiêu thụ 𝐹 cho từng thiết bị, nhằm mô tả điện năng tiêu thụ của tất cả các trường hợp có thể của giá trị trung gian 𝑧 Mô hình này được phát triển bằng cách thu thập nhiều vết điện năng tiêu thụ khi thiết bị xử lý các giá trị trung gian trong quá trình tấn công Sử dụng các kỹ thuật thống kê hoặc thuật toán học máy, mô hình mô tả sự phụ thuộc của điện năng tiêu thụ vào các giá trị trung gian 𝑧 𝑖 Chi tiết về quy trình này sẽ được trình bày trong phần tấn công mẫu (mục 1.4.2).
Các phương pháp tấn công phân tích điện năng tiêu thụ
Các phương pháp tấn công phân tích điện năng tiêu thụ được phân loại thành hai loại chính: tấn công không có bản mẫu và tấn công có bản mẫu, tùy thuộc vào điều kiện mà kẻ tấn công sở hữu Phần này của luận án sẽ trình bày quy trình cơ bản để thực hiện các loại tấn công này.
Phương pháp tấn công không có bản mẫu
Phương pháp tấn công phân tích điện năng tiêu thụ không bản mẫu được thực hiện khi kẻ tấn công sở hữu thiết bị tấn công (DUT) và hiểu rõ thuật toán mà DUT sử dụng Kẻ tấn công có khả năng điều khiển DUT hoạt động và đo lường điện năng tiêu thụ của DUT trong quá trình thực thi thuật toán mật mã Thẻ thông minh là một ví dụ về thiết bị phù hợp với các điều kiện của kiểu tấn công này.
Trong bài viết này, chúng ta giả định rằng mạch điện của DUT xử lý một chuỗi các hàm 𝑓 𝑖 𝑧 liên quan đến dữ liệu 𝑧 ∈ 𝔽 2 𝑏 Khi thiết bị thực hiện mã hóa, các hàm này được xử lý và kẻ tấn công thu thập các vết điện năng tiêu thụ từ DUT Quá trình xử lý của DUT có thể được mô tả bằng các ma trận, với mỗi véc-tơ cột 𝐅 𝑗 thực thi cùng một hàm nhưng với dữ liệu đầu vào khác nhau Ma trận 𝐗 chứa các vết 𝒙 𝑖 (𝑡) tương ứng với 𝑀 lần thực thi, trong đó mỗi lần thực thi tạo ra một vết điện năng tiêu thụ tương ứng với một hàng trong ma trận 𝐗.
Phương pháp tấn công không bản mẫu, được công bố bởi Kocher và các đồng nghiệp vào năm 1999, cho thấy khả năng tìm ra khóa bí mật thông qua việc đo điện năng tiêu thụ khi thuật toán mật mã được thực thi Quy trình tấn công này bao gồm các bước từ 1 đến 5 như đã mô tả, cùng với thuật toán khôi phục khóa được trình bày trong Thuật toán 1.1.
Thuật toán 1.1: Khôi phục khóa trong tấn công không bản mẫu Đầu vào:
𝒙 𝑖 (𝑡) : tập vết đo trong khi thiết bị mã hóa 𝑖 = 1, … , 𝑀; 𝑡 = 1, … , 𝑁 ℒ: mô hình điện năng tiêu thụ của thiết bị Đầu ra:
𝑘 𝑐 : khóa đúng 1: 𝑓𝑜𝑟 𝑘 = 1: 𝕂 𝑑𝑜 2: 𝑓𝑜𝑟 𝑖 = 1: 𝑀 𝑑𝑜 3: ℎ 𝑖,𝑘 = ℒ(𝑓(𝑝 𝑖 , 𝑘)); tính điện năng tiêu thụ giả định dựa trên ℒ 4: 𝑒𝑛𝑑 𝑓𝑜𝑟
Bước 1: Đo và lưu các vết điện năng tiêu thụ khi thiết bị thực thi thuật toán mật mã
Các vết được lưu trữ dưới dạng ma trận 𝐗 ∈ ℝ 𝑀×𝑁, trong đó 𝑁 đại diện cho chiều dài của vết hoặc số mẫu của điện năng tiêu thụ mà phép đo đã thu thập.
Bước 2 trong quá trình tấn công bằng thuật toán mật mã là xác định giá trị trung gian, hay còn gọi là điểm tấn công Mục tiêu chính của tấn công này là tìm ra khóa của thiết bị, do đó giá trị trung gian phải có sự phụ thuộc chặt chẽ vào dữ liệu và khóa.
Bước 3: Tính toán giá trị trung gian giả thiết bằng cách sử dụng các bản rõ đầu vào và tất cả các khóa giả thiết Trong bước này, người tấn công sẽ tính các giá trị 𝑧 𝑖,𝑗 ∈ 𝔽 2 𝑏, trong đó 𝑧 𝑖,𝑗 = 𝑓(𝑝 𝑖 , 𝑘 𝑗 ) với 𝑖 = 1,2, … , 𝑀 và 𝑗 = 1, … , 𝕂 cho các bản rõ 𝑝𝑡 𝑖 và khóa giả thiết 𝑘 𝑗 khác nhau Kết quả thu được là ma trận các giá trị trung gian với tất cả các khóa giả thiết, được biểu diễn bằng 𝒁 = [𝑧 𝑖,𝑗 ].
Trong bước 4, người tấn công ánh xạ các giá trị trung gian giả định tới điện năng tiêu thụ giả định tương ứng Họ sử dụng mô hình điện năng tiêu thụ của thiết bị ℒ để tính toán các giá trị trung gian giả định 𝑧 𝑖,𝑗 Độ chính xác của mô hình điện năng tiêu thụ, phụ thuộc vào từng thiết bị, càng cao thì khả năng thành công của cuộc tấn công càng lớn Kết quả của bước này là ma trận điện năng tiêu thụ giả định của thiết bị, được ký hiệu là 𝑯, với 𝑯 = ℎ 𝑖,𝑗 = ℒ(𝑧 𝑖,𝑗).
Bước 5 là bước cuối cùng, trong đó người tấn công sử dụng bộ quyết định 𝜌 để xác định mối quan hệ giữa điện năng tiêu thụ giả định 𝑯 của các khóa giả thiết và điện năng tiêu thụ thực tế của thiết bị 𝑿, từ đó tìm ra ứng viên khóa chính xác nhất Bộ quyết định này cần có khả năng đo lường sự phụ thuộc giữa hai biến ngẫu nhiên hoặc hai tập dữ liệu Các bộ quyết định như độ lệch các giá trị trung bình và hệ số tương quan Pearson là hai phương pháp quan trọng thường được áp dụng trong trường hợp này.
Khi tấn công sử dụng bộ quyết định dựa trên độ lệch các giá trị trung bình, nó được gọi là tấn công phân tích điện năng tiêu thụ vi sai (DPA) Ngược lại, nếu bộ quyết định là hệ số tương quan Pearson, tấn công này được gọi là tấn công phân tích điện năng tiêu thụ tương quan (CPA).
1.4.1.2 Tấn công phân tích điện năng tiêu thụ vi sai
Quy trình tấn công DPA (Differential Power Analysis) không theo mẫu, sử dụng bộ quyết định dựa trên sự khác biệt giữa các giá trị trung bình Phương pháp này chia các vết điện năng tiêu thụ thành hai nhóm: nhóm đầu tiên bao gồm các vết khi thiết bị thực hiện giá trị trung gian tấn công với điện năng tiêu thụ giả định 𝛿, trong khi nhóm thứ hai chứa các vết khi thiết bị thực hiện giá trị trung gian tấn công với điện năng tiêu thụ khác.
Sau khi chia nhóm, chúng ta tính độ lệch giữa các giá trị trung bình của hai nhóm Bộ quyết định 𝜌 được xác định theo biểu thức (1.4) Kết quả thu được từ bộ quyết định này là một đường mô tả độ lệch của điện năng tiêu thụ trung bình giữa hai tập vết tương ứng với điện năng tiêu thụ giả định 𝛿 và ≠ 𝛿, được gọi là vết vi sai.
Hình 1.6 Vết vi sai của khóa đúng và khóa sai
Với giả thiết chính xác, các giá trị trung gian tính toán điện năng tiêu thụ sẽ phản ánh đúng thực tế thiết bị xử lý tại thời điểm tấn công Nếu mô hình điện năng tiêu thụ ℒ là chính xác, khi 𝑀 → ∞, điện năng tiêu thụ trung bình của tập thứ nhất tại vị trí tương ứng sẽ đạt giá trị 𝛿, trong khi tập thứ hai sẽ có giá trị khác với 𝛿 Kết quả là, tại vị trí này, sẽ xuất hiện một gai đủ lớn trên vết vi sai để có thể quan sát được.
Khi thiết bị thực thi giá trị trung gian tấn công với các khóa giả thiết sai, giá trị trung gian được sử dụng để tính điện năng tiêu thụ giả định không phản ánh đúng thực tế Các vết được phân loại vào hai tập đầu tiên mô tả điện năng tiêu thụ của thiết bị với các giá trị hoàn toàn ngẫu nhiên Khi 𝑀 → ∞, giá trị trung bình của hai tập này trở nên giống nhau và độ lệch giữa chúng tiến tới 0, dẫn đến vết vi sai trở nên phẳng Do đó, trong DPA, khóa đúng có thể được xác định bằng cách quan sát sự tồn tại của một gai trên vết vi sai hoặc giá trị 𝑘 tại biểu thức (1.4) đạt giá trị lớn nhất Hình 1.6 minh họa vết vi sai tương ứng với khóa đúng và khóa sai khi mô hình điện năng tiêu thụ giả định ℒ được chọn là giá trị của bit có trọng số thấp nhất trong giá trị trung gian tấn công, với hai tập vết phân chia theo giá trị của bit này là 1 hay 0.
0 Khi khóa đúng, trên vết vi sai tồn tại một gai khá lớn và với khóa sai vết vi sai là bằng phẳng
1.4.1.3 Tấn công phân tích điện năng tiêu thụ tương quan
Quy trình thực hiện CPA dựa trên phương pháp tấn công không có bản mẫu, sử dụng quyết định dựa trên hệ số tương quan Pearson Mục tiêu của CPA là tính toán mối tương quan giữa điện năng tiêu thụ giả định theo mô hình ℒ và điện năng tiêu thụ thực tế tại các thời điểm khác nhau cho mỗi khóa giả thiết Giá trị tương quan này thường được xác định thông qua biểu thức tương quan Pearson, như được mô tả trong công thức (1.5).
Kết quả của việc tính tương quan cho một khóa giả thiết là vết tương quan Khi khóa giả là đúng, điện năng tiêu thụ giả định theo mô hình ℒ sẽ phù hợp với điện năng tiêu thụ thực tế, tạo ra một gai trên vết tương quan Ngược lại, với các khóa giả thiết sai, giá trị trung gian được sử dụng là ngẫu nhiên, dẫn đến vết tương quan khá bằng phẳng Do đó, việc xác định khóa đúng trong tấn công CPA có thể thực hiện bằng cách quan sát sự tồn tại của gai trên vết tương quan hoặc giá trị lớn nhất của 𝑘 trong biểu thức (1.5) Hình 1.7 minh họa sự khác biệt giữa vết tương quan của khóa đúng và sai trong quá trình tấn công CPA.
Hình 1.7 Vết tương quan của khóa đúng và sai
Phương pháp tấn công mẫu
Trong phương pháp tấn công không bản mẫu, điện năng tiêu thụ giả định được tính từ mô hình chung Để tăng cường hiệu quả tấn công, mô hình điện năng tiêu thụ riêng cho từng thiết bị có thể được xây dựng khi kẻ tấn công có thiết bị mẫu tương tự và quyền kiểm soát hoàn toàn Dựa trên ý tưởng này, phương pháp tấn công mẫu đã được đề xuất Quy trình tấn công mẫu được thực hiện qua hai pha: pha lập mẫu và pha tấn công.
Mục đích của pha lập mẫu là xây dựng mô hình chính xác về điện năng tiêu thụ của thiết bị, nhằm mô tả đặc điểm tiêu thụ điện năng của các giá trị trung gian trong quá trình tấn công Để thực hiện điều này, kẻ tấn công cần thu thập 𝑁 𝑃 vết điện năng tiêu thụ trong quá trình thiết bị thực thi thuật toán mật mã với khóa đã biết Tập hợp các vết này được gọi là 𝑆 𝑝.
(1.6) với 𝒙 𝑖 là vết điện năng tiêu thụ tương ứng với thiết bị xử lý giá trị trung gian
Người tấn công xây dựng mô hình 𝐹 để mô tả đặc trưng điện năng tiêu thụ của thiết bị đối với từng khóa giả thiết, dựa trên tập trace lập mẫu 𝑆 𝑃, được định nghĩa bởi các cặp (𝒙 1 , 𝑧 1 ), … , (𝒙 𝑁 𝑃 , 𝑧 𝑁 𝑃 ).
Do giá trị trung gian tại lối ra Sbox, như thuật toán AES, có kích thước 1 byte với 256 giá trị cần lập mẫu, người tấn công có thể giảm số lượng giá trị bằng cách sử dụng trọng số Hamming của giá trị lối ra Sbox Cụ thể, có 9 giá trị cần lập mẫu tương ứng với trọng số Hamming của một giá trị 1 byte, được ký hiệu là 𝑐 và tính bằng 𝐻𝑊(𝑧) Biểu thức (1.7) được viết lại thành 𝐹(𝑋|𝑐) ∶ 𝒳 → 𝑃(𝒞) Sau khi lập mẫu, người tấn công có thể xây dựng mô hình mô tả điện năng tiêu thụ của thiết bị cho từng giá trị trung gian 𝑧 𝑖 hoặc từng giá trị trọng số Hamming của 𝑧 𝑖.
Trong quá trình tấn công, các vết thu thập sẽ được biểu diễn theo công thức (1.8), trong đó 𝑘 𝑠 ∈ 𝐾 là khóa DUT chưa xác định và 𝑝 𝑖 (với 𝑖 = 1,2,…, 𝑁 𝑎) là các bản rõ đã biết.
Sau khi thu thập các vết từ DUT, người tấn công tính xác suất của mỗi vết thuộc các giá trị trung gian tấn công dựa trên mô hình 𝐹 đã xây dựng trong pha lập mẫu Xác suất này được xác định theo biểu thức (1.9), với mỗi vết tương ứng một giá trị xác suất cho từng giá trị trung gian giả thiết 𝑧 𝑗, với 𝑣ớ𝑖 𝑗 ∈ [1, |𝑍|] Giá trị thứ 𝑗 của 𝑦 𝑖 phản ánh xác suất mà mô hình gán cho giá trị trung gian giả thiết 𝑧 𝑗 khi có vết 𝒙 𝑖.
Trong bài viết này, các giá trị xác suất cho các giá trị trung gian giả thuyết của tất cả các vết tấn công sẽ được kết hợp để tính điểm số cho từng giá trị khóa giả thuyết Việc tính điểm số này áp dụng nguyên tắc ước lượng hợp lý lớn nhất (MLP) Công thức (1.10) mô tả quy trình tính toán điểm số, và khóa có điểm số cao nhất sẽ được xác định là khóa chính xác nhất.
Z m Đo các vết điện năng tiêu thụ
Các giá trị trung gian Pha lập mẫu
Xây dựng mô hình điện năng tiêu thụ với các giá trị trung gian
Bản rõ Pha tấn công
Lối ra Sbox DUT k s (chưa biết) Đo các vết điện năng tiêu thụ
Hình 1.8 Phương pháp tấn công mẫu
1.4.2.2 Tấn công mẫu đơn giản
Tấn công mẫu đơn giản là phương pháp tấn công đầu tiên được đề xuất bởi Chari và các cộng sự, thực hiện khi người tấn công nắm được đặc tính phân bố điện năng tiêu thụ của thiết bị mẫu và DUT Sau khi thu thập vết điện năng tiêu thụ ở dạng 𝒙 (𝑥₁, 𝑥₂, …, 𝑥ₙ), người tấn công có thể xác định phân bố xác suất của 𝒙 Dựa vào phân bố này, mô hình điện năng tiêu thụ của thiết bị được xây dựng thông qua các đặc trưng của phân bố xác suất của biến 𝒙, với giả định rằng điện năng tiêu thụ tuân theo phân bố Gauss chuẩn đa biến Mô hình điện năng tiêu thụ cho các giá trị trung gian lập mẫu được mô tả bởi hàm mật độ xác suất, trong đó (𝜇̅ 𝑧ₗ, 𝑆 𝑧ₗ) là véc-tơ giá trị trung bình và ma trận hiệp phương sai của các vết điện năng tiêu thụ Luật quyết định khóa đúng được viết lại dựa trên xác suất thiết bị xử lý giá trị trung gian 𝑧 khi biết vết điện năng tiêu thụ 𝒙ₗ của nó.
1.4.2.3 Tấn công mẫu sử dụng học máy
Trong tấn công mẫu đơn giản, để xây dựng mô hình điện năng tiêu thụ cho các giá trị trung gian, người tấn công giả định rằng điện năng tiêu thụ tại điểm tấn công tuân theo phân bố Gauss chuẩn đa biến Tuy nhiên, giả định này không phù hợp với mọi thiết bị, do đó cần một phương pháp tấn công tổng quát hơn Trong pha lập mẫu, mô hình điện năng tiêu thụ được xây dựng bằng cách “học” đặc điểm sự phụ thuộc giữa điện năng tiêu thụ và các giá trị khóa đã biết từ các vết điện năng tiêu thụ của thiết bị mẫu Trong pha tấn công, mô hình này được sử dụng để đoán giá trị khóa của DUT từ vết điện năng tiêu thụ mới thu thập Bài toán tấn công mẫu tương tự như bài toán trong phương pháp học máy, nơi cả hai đều xây dựng mô hình từ tập dữ liệu đã biết nhãn để ước lượng đầu ra của dữ liệu chưa được gán nhãn Do đó, một hướng tiếp cận mới cho tấn công mẫu là dựa trên thuật toán học máy, với một số tấn công theo hướng này đã được thực hiện.
Quy trình tấn công mẫu sử dụng học máy bao gồm hai pha chính: lập mẫu và tấn công Trong pha lập mẫu, các thuật toán học máy được áp dụng để xây dựng mô hình điện năng tiêu thụ, mô tả các giá trị trung gian tấn công dựa trên tập hợp các vết điện năng tiêu thụ thu thập từ thiết bị mẫu, với nhãn là các giá trị có thể của giá trị trung gian tấn công Tiếp theo, trong pha tấn công, mô hình học máy được sử dụng để ước lượng xác suất của vết điện năng tiêu thụ từ thiết bị tấn công, với nhãn là một trong các giá trị trung gian tấn công Cuối cùng, khóa đúng được xác định dựa trên điểm số quyết định, được tính theo nguyên tắc ước lượng hợp lý lớn nhất.
Phương pháp tấn công cho thiết bị có phòng vệ
Thiết bị có phòng vệ là các thiết bị mật mã được trang bị giải pháp chống tấn công phân tích điện năng tiêu thụ, nhằm đảm bảo rằng điện năng tiêu thụ của thiết bị độc lập với giá trị trung gian mà nó xử lý Hai kỹ thuật chính để thực hiện điều này là kỹ thuật ẩn và mặt nạ Kỹ thuật ẩn làm cho điện năng tiêu thụ thay đổi ngẫu nhiên hoặc không phụ thuộc vào dữ liệu xử lý, thường được thực hiện ở mức phần cứng bằng cách thêm nhiễu ngẫu nhiên vào mạch hoặc thiết kế các phần tử logic có điện năng tiêu thụ ổn định Mặc dù có nhiều nghiên cứu trong lĩnh vực này, việc đạt được sự ngẫu nhiên tuyệt đối vẫn gặp khó khăn, dẫn đến việc vẫn có một lượng thông tin rò rỉ nhất định có thể bị khai thác bởi kẻ tấn công.
Kỹ thuật mặt nạ khác với kỹ thuật ẩn, vì nó thực hiện việc che giấu dữ liệu thông qua các mặt nạ, tác động trực tiếp lên dữ liệu tại mức thuật toán Ý tưởng này xuất phát từ sơ đồ chia sẻ bí mật, với những nghiên cứu đầu tiên được đề xuất bởi Chari và Goubin.
Các biến nhạy cảm trong thuật toán mật mã được xem như bản tin bí mật, và sau khi được mặt nạ, thông tin của bản tin này sẽ được phân phối trên các chia sẻ Để khôi phục thông tin bí mật, cần phải có tất cả các chia sẻ Nhiều sơ đồ mặt nạ đã được đề xuất cho các thuật toán AES.
Khi cài đặt một sơ đồ mặt nạ, các biến nhạy cảm 𝑧 không được xử lý dưới dạng rõ mà được xử lý thông qua phép toán nhóm (có thể là cộng hoặc nhân) theo biểu thức (1.13) Các mặt nạ 𝑚 1 , 𝑚 2 , … , 𝑚 𝑑 đóng vai trò quan trọng trong việc bảo vệ thông tin nhạy cảm Khi biến nhạy cảm 𝑧 được mặt nạ, độ phức tạp của việc khôi phục thông tin qua tấn công kênh kề tăng theo số mũ với số lượng mặt nạ sử dụng, điều này cho thấy tầm quan trọng của số lượng mặt nạ trong việc đảm bảo an toàn cho sơ đồ mặt nạ.
Kỹ thuật ẩn và mặt nạ có thể giúp bảo vệ thiết bị khỏi các cuộc tấn công phân tích điện năng tiêu thụ, nhưng thực tế chỉ giảm hiệu quả của những tấn công này Các tấn công nhằm vào thiết bị có phòng vệ được gọi là tấn công bậc cao, trong đó bậc của tấn công thể hiện số lượng chia sẻ phụ thuộc mà kẻ tấn công cần kết hợp để xác định biến nhạy cảm.
Để thực hiện tấn công kênh kề bậc (𝑑 + 1), cần phải áp dụng một số phương pháp tấn công kênh kề bậc cao lên thiết bị có mặt nạ, như đã được công bố trong các nghiên cứu trước đây [8] [27] [28] [29] Ý tưởng chính là sử dụng hàm kết hợp để tổng hợp thông tin kênh kề từ các chia sẻ của một biến nhạy cảm, từ đó khai thác thông tin này cho các tấn công kênh kề tương tự như đối với thiết bị không có mặt nạ Tuy nhiên, phương pháp này chỉ thực sự hiệu quả đối với thiết bị có mặt nạ bậc nhất.
Một phương pháp tấn công hiệu quả đối với thiết bị có phòng vệ là tấn công mẫu Quy trình này tương tự như tấn công mẫu trên thiết bị không có phòng vệ, nhưng việc lựa chọn các Điểm Quan Trọng (POIs) trong giai đoạn lập mẫu gặp nhiều thách thức Để giải quyết vấn đề này, các mô hình máy học thường được áp dụng, với khả năng học các hàm tích hoặc tổng nhằm phát hiện các đặc trưng của các rò rỉ kênh kề liên quan đến các chia sẻ.
Tham số đánh giá tấn công phân tích điện năng tiêu thụ
Để đánh giá hiệu quả của tấn công phân tích điện năng tiêu thụ, hai tham số quan trọng thường được sử dụng là khả năng khôi phục khóa đúng và hạng của khóa đúng, hay còn gọi là lượng thông tin ước đoán (GE: Guessing Entropy).
Khả năng khôi phục khóa đúng trong một cuộc tấn công đề cập đến khả năng xác định khóa chính xác của thiết bị bị tấn công dựa trên số lượng vết điện năng tiêu thụ 𝑁 𝑎.
Số lượng vết điện năng tiêu thụ càng ít thì hiệu quả tấn công càng cao Khả năng khôi phục khóa chỉ được xác nhận khi tấn công hoàn toàn thành công Tuy nhiên, thực tế cho thấy người tấn công có thể giảm không gian khóa xuống mức khả thi thông qua các phép thử đơn giản để tìm khóa đúng Một tham số quan trọng để đo sự giảm không gian khóa là lượng thông tin ước đoán, được gọi là GE.
GE là một tham số được Standaert, Malkin và Yung đưa ra, dựa trên định nghĩa về lượng thông tin ước đoán của Massey và Cachin Nó được định nghĩa là số lần đoán trung bình cần thiết với một 'phép thử tối ưu' để xác định giá trị đúng của biến ngẫu nhiên X Phép thử tối ưu liên quan đến việc xếp hạng các giá trị khả thi của khóa từ cao đến thấp dựa trên thông tin thu được từ một cuộc tấn công Tham số xác định khả năng của khóa phụ thuộc vào loại tấn công, chẳng hạn như DPA đo lường độ lệch giữa hai nhóm, CPA tính toán hệ số tương quan của khóa giả thiết, và tấn công mẫu xác định xác suất của khóa giả thiết.
Lượng thông tin sau tấn công GE được định nghĩa bằng véc-tơ xếp hạng các khóa 𝑔 qua 𝑁 lần lặp lại thí nghiệm, trong đó 𝑖 là chỉ số của khóa đúng trong 𝑔 Sau khi thực hiện 𝑠 thí nghiệm, ta có ma trận [𝒈 1 , 𝒈 2 , … , 𝒈 𝑠 ] cùng với véc-tơ chỉ số tương ứng [𝑖 1 , 𝑖 2 , … , 𝑖 𝑠 ] GE xác định trung bình vị trí của khóa đúng theo công thức (1.14).
Để thực hiện các thí nghiệm về tấn công phân tích điện năng tiêu thụ, việc đo và thu thập các vết điện năng tiêu thụ là bước quan trọng nhằm tạo dữ liệu phục vụ cho các cuộc tấn công Các vết điện năng tiêu thụ trong luận án này được lấy từ nguồn dữ liệu thu thập từ thiết bị thực tế và các nguồn dữ liệu về tấn công kênh kề đã được công bố công khai, sẽ được mô tả chi tiết dưới đây.
Dữ liệu thu thập từ thiết bị thực tế
Dữ liệu thực tế là vết điện năng tiêu thụ thu được trong quá trình thuật toán AES-
128 được thực thi trên vi điều khiển Atmega8515 dưới dạng thẻ thông minh Để thu thập các vết, luận án áp dụng sơ đồ đo tổng quát, như thể hiện trong Hình 1.5, với các thiết bị thực tế được mô tả trong Hình 1.9.
Thiết bị cần tấn công là thiết bị mật mã, thường cung cấp giao diện truyền thông với PC Trong luận án, thẻ thông minh Atmega8515 được sử dụng để thực thi thuật toán AES-128 ở chế độ ECB Thông tin về các tham số và sơ đồ mạch của thẻ thông minh được trình bày trong Bảng 1.2 và Hình 1.10 Truyền thông giữa thẻ thông minh và thiết bị điều khiển (máy tính) được thực hiện thông qua mô-đun Sakura-G/W qua giao tiếp USB.
Bảng 1.2 Các tham số của thẻ thông minh Atmega8515
Tốc độ truyền bit 9600 bps
Osciloscope- để đo vết điện năng tiêu thụ
- Điều khiển hoạt động của thiết bị tấn công (smartcard)
- Nhận vết điện năng tiêu thụ từ Osciloscope và lưu các vết điện năng tiêu thụ
- Thực hiện tấn công dựa trên các vết điện năng tiêu thụ
Các file chứa vết điện năng tiêu thụ
Hệ các thiết bị tấn công
- Môi trường phần cứng: Sakura G/W
-Thiết bị tấn công: smartcard
-Thiết bị tấn công: smartcard ATmega8515
Hình 1.9 Môi trường thu thập vết điện năng tiêu thụ thực tế
Hình 1.10 Sơ đồ mạch tương đương của thẻ thông minh Atmega8515
Hình 1.11 Sơ đồ mạch các điểm đo điện năng tiêu thụ của thẻ thông minh
Máy hiện sóng số (Oscilloscope) được sử dụng để đo điện năng tiêu thụ dưới dạng điện áp tại điểm đo J4 trên điện trở nối với thiết bị tấn công ở chân đất (GND) Trong nghiên cứu này, máy hiện sóng Tektronix DPO3052 được sử dụng với các tham số đáp ứng yêu cầu cho việc tấn công phân tích điện năng tiêu thụ, như đã chỉ ra trong tài liệu [35] và được mô tả chi tiết trong Bảng 1.3.
Máy tính (PC) đóng vai trò quan trọng trong việc điều khiển hoạt động của thiết bị tấn công, đồng thời đo và lưu trữ điện năng từ máy hiện sóng số Với khả năng tính toán và truyền thông hiệu quả với thiết bị mật mã cũng như máy hiện sóng, máy tính không yêu cầu bất kỳ thành phần đặc biệt nào.
Bảng 1.3 Các tham số của máy hiện sóng Tektronix DPO3052
Tần số lấy mẫu tối đa 2,5 Ghz
Số mẫu tối đa/tín hiệu đo 5.000.000
Chế độ Trigger Tự động, hay thủ công
Giao diện kết nối USB 2.0
1.5.1.2 Phần mềm điều khiển và quy trình đo vết điện năng tiêu thụ Để điều khiển hoạt động của thẻ thông minh và đo các vết điện năng tiêu thụ trong quá trình nó thực thi thuật toán mật mã, luận án đã xây dựng một phần mềm gọi là DPA-M Kịch bản giao tiếp của DPA-M và thiết bị tấn công cho bởi Hình 1.12 và giao diện phần mềm cho bởi Hình 1.13
Hình 1.12 Quy trình đo vết điện năng tiêu thụ
Hình 1.13 Giao diện phần mềm DPA-M
1.5.1.3 Định dạng bộ dữ liệu
Bộ dữ liệu ACT-TRACES bao gồm 50.000 bản rõ và 50.000 vết điện năng tiêu thụ, mỗi vết dài 85.000 mẫu Các dữ liệu này được thu thập trong quá trình thẻ thông minh thực hiện thuật toán AES-128 ở chế độ ECB với khóa bí mật là "63".
28 119 197 168 110 90 241 25 164 7 63 81 253 174 167” được minh họa bởi Hình
Hình 1.14 Bộ dữ liệu ACT-TRACES
Dữ liệu từ các nguồn đã công bố
DPA-V4: Bộ dữ liệu vết điện năng tiêu thụ được cung cấp bởi cuộc thi
DPAcontest v4 nghiên cứu các vết đo khi AES được thực thi trên thẻ thông minh Atmega8515 Khi biết giá trị mặt nạ, trường hợp này tương đương với việc AES cài đặt không có bảo vệ chống tấn công DPA Các vết đo trong quá trình thực hiện S-hộp là: 𝑆𝑏𝑜𝑥(𝑃 𝑖 + 𝑘 ∗ ) ⊕ 𝑀 với 𝑀 đã biết Tổng số vết đo là 100000, và dữ liệu vết có thể được tải xuống từ địa chỉ: http://www.dpacontest.org/v4.
ASCAD là bộ dữ liệu công khai tại [GitHub](https://github.com/ANSSI-FR/ASCAD), chứa các trace được ghi lại khi thuật toán AES-128 được triển khai với biện pháp chống tấn công DPA qua phương pháp mặt nạ Bộ dữ liệu này hỗ trợ nghiên cứu so sánh kết quả tương tự như tập dữ liệu MINST trong lĩnh vực xử lý ảnh Tổng cộng có 60,000 vết, trong đó 50,000 vết được dùng để huấn luyện và 10,000 vết để kiểm tra Mỗi vết có độ dài 700 mẫu, tương ứng với phép thế S-hộp thứ 3 trong vòng đầu tiên của thuật toán AES.
Tấn công phân tích điện năng tiêu thụ khai thác mối quan hệ giữa tập vết điện năng tiêu thụ của thiết bị và dữ liệu xử lý Chương 1 trình bày quy trình tấn công phân tích điện năng tiêu thụ, các giải pháp cho thiết bị có và không có phòng vệ, cùng với các tham số đánh giá hiệu quả tấn công Ngoài ra, sơ đồ đo vết điện năng tiêu thụ và các bộ dữ liệu liên quan cũng được mô tả Dựa trên các giải pháp tấn công cơ bản trong chương này, luận án sẽ đề xuất những giải pháp tấn công hiệu quả hơn trong các chương 2 và 3.
PHƯƠNG PHÁP TẤN CÔNG CHO THIẾT BỊ KHÔNG
Trong chương này, luận án đề xuất các giải pháp nhằm giảm nhiễu và lựa chọn các Điểm Quan Tâm (POIs) cho các tấn công phân tích điện năng tiêu thụ đối với thiết bị không có phòng vệ, bao gồm tấn công không bản mẫu và tấn công mẫu Đối với tấn công không bản mẫu, phương pháp VMD-CPA được giới thiệu, trong khi tấn công mẫu sử dụng phương pháp VMD-GSO-SVM Cả hai phương pháp này đều nhằm giảm số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa đúng của thiết bị Nội dung của chương đã được công bố trong các công trình CT01, CT04 và CT02.
Các phương pháp tấn công phân tích điện năng tiêu thụ đối với thiết bị không có phóng vệ bao gồm tấn công không bản mẫu và tấn công mẫu, với hiệu quả phụ thuộc vào việc hiểu rõ về vết điện năng tiêu thụ Nghiên cứu hiện tại tập trung vào việc giảm nhiễu cho các vết điện năng tiêu thụ thông qua các phương pháp như lấy trung bình, sử dụng bộ lọc và biến đổi Wavelet Tuy nhiên, những phương pháp này thường gặp khó khăn trong việc xây dựng tham số cho bộ lọc hay biến đổi Do đó, luận án này đề xuất áp dụng kỹ thuật phân tích mode biến phân (VMD) để giảm nhiễu cho vết điện năng tiêu thụ, cho phép người tấn công lựa chọn phần điện năng tiêu thụ có ích và loại bỏ phần không cần thiết Phương pháp tấn công không bản mẫu VMD-CPA được đề xuất nhằm giảm số vết điện năng tiêu thụ để khôi phục khóa chính xác Bên cạnh đó, việc lựa chọn các Điểm Quan trọng (POIs) trên vết cũng rất quan trọng để nâng cao hiệu quả tấn công mẫu.
Các phương pháp giảm chiều dữ liệu và dựa trên học máy hiện tại chưa được đánh giá khả năng thực hiện trên dữ liệu điện năng tiêu thụ có nhiễu Hơn nữa, chưa có cơ chế xếp hạng độ quan trọng của các Điểm Quan Trọng (POIs) và cũng chưa xem xét sự phù hợp của phương pháp chọn POIs với thuật toán học máy được sử dụng trong các cuộc tấn công Do đó, trong chương này, luận án đề xuất một phương pháp tấn công mẫu gọi là VMD.
GSO-SVM kết hợp với kỹ thuật lựa chọn các Điểm Quan Trọng (POIs) mới giúp giảm nhiễu cho vết và trích chọn các POIs quan trọng nhất Phương pháp này dựa trên sự kết hợp giữa các kỹ thuật VMD, GSO và SVM.
2.2.1 Kỹ thuật phân tích mode biến phân
Kỹ thuật phân tích mode biến phân (VMD) là một phương pháp hiệu quả để phân tách các tín hiệu thành những thành phần con, hay còn gọi là các mode Phương pháp này được đề xuất bởi Dragomiretskiy và Zosso, mang lại những ứng dụng quan trọng trong lĩnh vực phân tích tín hiệu.
Vào năm 2014, VMD đã xác định tần số trung tâm và băng thông cho từng mode bằng cách tìm kiếm giải pháp tối ưu cho một mô hình biến phân, nhằm đảm bảo các mode có thể phân tách rõ ràng về mặt tần số Quá trình này được thực hiện thông qua việc xây dựng và giải quyết bài toán biến phân.
Một tín hiệu 𝑓(𝑡) có thể được phân tích thành 𝑄 mode 𝑢 𝑞 (𝑡) với 𝑞 = 1,2, … , 𝑄 Mỗi mode này đại diện cho một tín hiệu có băng thông hạn chế và tần số trung tâm riêng biệt Tín hiệu giải tích của mỗi mode được biểu diễn dưới dạng (𝛿(𝑡) + ( 𝑗.
Hàm Dirac 𝛿(𝑡) được biểu diễn bởi một hàm giá trị phức và không có thành phần tần số âm, tạo ra từ biến đổi Hilbert, giúp phổ của chúng trở thành đơn hướng Để giải điều chế tín hiệu, chúng ta chuyển đổi tín hiệu trên về dạng tín hiệu băng cơ sở bằng cách nhân tín hiệu giải tích của các mode với một số mũ, [(𝛿(𝑡) + (𝑗)].
Băng thông tín hiệu của mỗi mode được ước lượng thông qua việc tính bình phương 2-norm đạo hàm của tín hiệu giải tích đã được giải điều chế Bài toán biến phân có ràng buộc được thiết lập với mục tiêu tối thiểu hóa hàm mục tiêu, trong đó tổng hợp các giá trị từ tín hiệu đầu vào được tối ưu hóa.
Trong bài viết này, tập hợp các mode được ký hiệu là {𝑢 𝑞 } ≔ {𝑢 1 , 𝑢 2 , … , 𝑢 𝑞 }, trong khi tần số trung tâm của mỗi mode được ký hiệu là {𝜔 𝑞 } ≔ {𝜔 1 , 𝜔 2 , … , 𝜔 𝑞 } Tổng của các mode được biểu diễn bằng ∑ ≔ ∑ 𝑞 𝑄 𝑞=1 Để tính 2-norm, ta sử dụng ký hiệu ‖𝑝(𝑡)‖ 2 2 =< 𝑝(𝑡), 𝑝(𝑡) > = ∫ −∞ ∞ 𝑝 ∗ (𝑡)𝑝(𝑡)𝑑𝑡 Bài viết cũng đề cập đến việc giải bài toán biến phân.
Bằng cách áp dụng hằng số phạt 𝛼 và các nhân tử Lagrangian 𝜆(𝑡), bài toán biến phân có ràng buộc (2.1) được chuyển đổi thành bài toán không có ràng buộc (2.2) Thành phần thứ hai được thêm vào nhằm đảm bảo độ chính xác trong việc khôi phục tín hiệu khi có nhiễu Gauss, trong khi thành phần thứ ba sử dụng các nhân tử Lagrangian để thực hiện các điều kiện của bài toán có ràng buộc.
Phương pháp ADMM (Alternating Direction Method of Multipliers) được áp dụng để cập nhật các giá trị 𝑢 𝑞 𝑛+1, 𝜔 𝑞 𝑛+1, 𝑣à 𝜆 𝑞 𝑛+1, đồng thời tìm điểm “yên ngựa” của Lagrangian mở rộng Bài toán xác định giá trị của 𝑢 𝑞 𝑛+1 có thể được diễn đạt thông qua công thức (2.3) như sau:
Trong đó 𝜔 𝑞 tương ứng với 𝜔 𝑞 𝑛+1 và ∑ 𝑢 𝑖 𝑖 (𝑡) tương ứng với ∑ 𝑢 𝑖 𝑖 𝑛+1 (𝑡).
Công thức (2.3) có thể được chuyển đổi từ miền thời gian sang miền tần số (2.4) bởi biến đổi Parseval Fourier:
Chúng ta thay thế 𝜔 của thành phần thứ nhất với 𝜔 − 𝜔 𝑞 để có được công thức (2.5) như sau:
Công thức (2.5) được chuyển về tích phân trong khoảng tần số không âm như sau:
Tại bước này lời giải cho bài toán tối ưu (2.6) như sau:
Tương tự vậy, bài toán tìm giá trị cho tần số trung tâm cũng được chuyển về miền tần số bởi công thức (2.8)
Giá trị các tần số trung tâm được cập nhật như sau:
Trong đó, 𝑢̂ 𝑞 𝑛+1 (𝜔) tương ứng với bộ lọc Wiener của dư lượng hiện tại 𝑓̂(𝜔) −
∑ 𝑖≠𝑞 𝑢̂ 𝑖 (𝜔), 𝜔 𝑞 𝑛+1 là tần số trung tâm của phổ tần số của mode hiện tại, và phần thực của biến đổi Fourier của {𝑢̂ 𝑞 (𝜔)} là {𝑢 𝑞 (𝑡)}
Quy trình thực thi tấn công VMD-CPA
Các điều kiện cần để người tấn công VMD-CPA thực thi tấn công khôi phục được khóa đúng của thiết bị bao gồm:
(1) Có thiết bị cần tấn công Đây là thiết bị có cài đặt thuật toán mật mã AES-128 ở chế độ sách mã điện tử (ECB)
(2) Có khả năng điều khiển được thiết bị hoạt động mã hóa với một tập bản rõ đầu vào được sinh ra ngẫu nhiên
(3) Có khả năng đo được các vết điện năng tiêu thụ trong quá trình thiết bị thực thi mã hóa
Gọi 𝐏𝐓 là tập hợp 𝑀 bản rõ, mỗi bản có kích thước 16 byte và được sinh ngẫu nhiên, được sử dụng bởi kẻ tấn công để tấn công thiết bị mã hóa sử dụng thuật toán AES-128 qua phương pháp VMD-CPA Thiết bị tấn công áp dụng 16 byte khóa ký hiệu {𝐾 1 , 𝐾 2 , … , 𝐾 16 } để thực hiện mã hóa, và kết quả của cuộc tấn công là các giá trị của 16 byte khóa này.
Các bước thực thi tấn công VMD-CPA dựa trên quy trình tấn công CPA truyền thống, bổ sung thêm bước tiền xử lý nhằm phân tích các vết điện năng tiêu thụ thông qua kỹ thuật VMD Quy trình này được mô tả chi tiết trong Hình 2.4 và bao gồm hai pha chính.
Pha 1: Xây dựng điện năng tiêu thụ giả định của thiết bị cần tấn công Pha 2: Pha tấn công tìm khóa đúng
Thiết bị cần tấn công
Khóa thiết bị sử dụng
Hình 2.3 Tấn công VMD-CPA
Tập bản rõ Thiết bị cần tấn công Đầu vào tấn công
Chọn byte khóa tấn công
Xây dựng tập giá trị trung gian giả định
Xây dựng tập điện năng tiêu thụ giả định
Xây dựng tập vết điện năng tiêu thụ thực tế
Tiền xử lý các tập vết điện năng tiêu thụ bởi VMD
Khóa thiết bị sử dụng
Pha 1: Xây dựng tập điện năng tiêu thụ giả định Pha 2: Tấn công tìm khóa
Hình 2.4 Quy trình thực hiện tấn công VMD-CPA a Các bước thực hiện trong Pha 1:
Bước H1: Chọn byte khóa cần tấn công
- Giả sử byte khóa thứ nhất, ký hiệu là 𝐾 1 được chọn để tấn công Như vậy các khóa giả thiết của byte khóa này là: 𝐾 𝑘 1 ∈ {0,1,2, … ,255}
Khi tấn công vào một byte khóa, kẻ tấn công sử dụng bản rõ tương ứng để thực hiện các bước tính toán tiếp theo Chẳng hạn, khi tấn công byte khóa thứ nhất, tập bản rõ được sử dụng là 𝐏𝐓 𝟏 = [𝑝 𝑖,𝑙 ]; với 𝑖 = 1: 𝑀 và 𝑙 = 1 Điều này tạo thành một véc-tơ cột, giúp kẻ tấn công phân tích và tìm ra khóa một cách hiệu quả.
Bước H2: Tính toán tập giá trị trung gian giả định
Trong bước này, người tấn công cần chọn một giá trị trung gian của thuật toán mà họ đang tấn công Giá trị này phải là kết quả của một phép toán mà thuật toán thực hiện với các giá trị liên quan đến bản rõ đầu vào và khóa Đối với thuật toán AES, giá trị trung gian tại lối ra của Sbox thường được ký hiệu là 𝑧 𝑖,𝑘.
Để thực hiện tấn công với từng khóa giả thiết của byte khóa cần tấn công, cần tính toán tất cả các giá trị trung gian của thuật toán Điều này bao gồm việc phân tích tập bản rõ tương ứng để xác định mối liên hệ giữa các khóa và giá trị trung gian, từ đó tăng cường khả năng tìm ra khóa chính xác.
- Gọi 𝒁 𝟏 là tập giá trị trung gian giả định khi tấn công byte khóa thứ nhất, 𝒁 𝟏 được xác định như sau:
Bước H3: Tính tập điện năng tiêu thụ giả định
Sử dụng mô hình điện năng tiêu thụ (Bảng 1.1) để ánh xạ giá trị trung gian giả định thành điện năng tiêu thụ giả định, luận án áp dụng mô hình trọng số Hamming để thực hiện phương pháp này.
Kết quả của bước này là ma trận 𝐇 𝟏, thể hiện điện năng tiêu thụ giả định của thiết bị Mỗi cột trong ma trận 𝐇 𝟏 đại diện cho điện năng tiêu thụ giả định của thiết bị tương ứng với một khóa giả thiết.
𝑯 𝟏 = [ℎ 𝑖,𝑘 ] = [𝐻𝑊(𝑧 𝑖,𝑘 )]; 𝑖 = 1: 𝑀, 𝑘 = 1: 256 (2.16) b Các bước thực hiện trong Pha 2:
Bước A1: Xây dựng tập vết điện năng tiêu thụ thực tế
Điều khiển thiết bị thực thi thuật toán mật mã sử dụng tập bản rõ đầu vào 𝐏𝐓 và khóa bí mật 16 byte được lưu sẵn Với 𝑀 bản rõ, thiết bị sẽ thực hiện quá trình mã hóa 𝑀 lần Trong suốt quá trình này, thiết bị thu thập và lưu trữ các vết điện năng tiêu thụ.
Kết quả của bước này là một ma trận T, mô tả lượng điện năng tiêu thụ thực tế của thiết bị, bao gồm 𝑀 hàng Mỗi hàng trong ma trận này đại diện cho giá trị của một vết điện năng tiêu thụ với 𝑁 điểm dữ liệu.
Bước A2: Tiền xử lý tập vết điện năng tiêu thụ bởi VMD
- Lựa chọn các tham số : 𝑄, số VMD mode và 𝛼, hằng số phạt cho VMD bởi
- Xác định VMD mode (thứ 𝑞) chứa thông tin điện năng tiêu thụ của phần mạch điện thực thi thuật toán mật mã sử dụng Thuật toán 2.3
Sử dụng kỹ thuật VMD, từng vết điện năng tiêu thụ trong tập 𝐓 được phân tách thành 𝑄 VMD mode với các tham số đã xác định Các VMD mode thứ 𝑞 của tất cả các vết được sắp xếp theo đúng thứ tự trong tập T, tạo thành ma trận 𝐕 𝐪 có kích thước (𝑀 × 𝑁).
Bước A3: Quyết định khóa đúng
Nguyên tắc quyết định khóa đúng dựa trên việc so sánh điện năng tiêu thụ của tất cả các khóa giả thiết với tập vết điện năng tiêu thụ thực tế Mối tương quan giữa điện năng tiêu thụ giả định của một khóa giả thiết và tập điện năng tiêu thụ thực tế được gọi là vết tương quan Khóa giả thiết được xác định là khóa đúng nếu vết tương quan của nó chứa giá trị lớn nhất trong tất cả các vết tương quan của các khóa giả thiết.
- Xác định các vết tương quan của tất cả các khóa giả thiết 𝑟 𝑘,𝑗 ; 𝑣ớ𝑖 𝑘 1: 256 𝑣à 𝑗 = 1: 𝑁 bởi biểu thức (2.19) với ℎ 𝑖,𝑘 là các phẩn tử trong ma trận
𝐇 𝟏 và ℎ̅ 𝑘 là trung bình của ℎ 𝑖,𝑘 theo 𝑖
- Xác định khóa đúng (𝑘 𝑐 ) và thời điểm (𝑡 ∗ ) thiết bị thực thi khóa này bởi biểu thức sau:
Thực nghiệm tấn công VMD-CPA
Phần thực nghiệm này trình bày kết quả tấn công VMD-CPA theo quy trình mục 2.3.1, nhằm kiểm chứng khả năng khôi phục khóa và đánh giá hiệu quả của VMD-CPA so với tấn công CPA.
Tấn công dựa trên bộ dữ liệu ACT-TRACES đã được trình bày ở mục 1.5.1, bao gồm các bản ghi rõ ràng và vết điện năng tiêu thụ tương ứng của thẻ thông minh Atmega8515 Thẻ này thực hiện thuật toán AES-128 trong chế độ ECB với khóa được sử dụng là: “63 28 119 197 168”.
110 90 241 25 164 7 63 81 253 174 167” Mục tiêu của tấn công là tìm được các giá trị này từ tập các bản rõ và vết điện năng tiêu thụ
2.3.2.1 Kiểm chứng khả năng khôi phục khóa của của VMD-CPA
Khả năng khôi phục khóa đúng của phương pháp tấn công CPA trên thuật toán AES-128 được cài đặt trên các bộ vi điều khiển, với khoảng 200 đến 300 vết điện năng tiêu thụ, đã được công bố trong các tài liệu [34] [35] Để thực hiện tấn công VMD-CPA, luận án sử dụng 300 bản rõ tương ứng với 300 vết điện năng tiêu thụ trong bộ dữ liệu ACT-TRACES.
Bảng 2.2 Kết quả của pha 1 - xây dựng tập điện năng tiêu thụ giả định Bước H1: Tập bản rõ (𝐏𝐓 𝟏 )
Bước H2: Tập các giá trị trung gian giả định (𝒁 𝟏 )
Bước H3: Tập điện năng tiêu thụ giả định (𝐇 𝟏 )
Tấn công đầu tiên được thực hiện đối với byte thứ nhất của khóa trong quy trình tấn VMD-CPA Ở pha 1, kết quả từ các bước H1, H2 và H3 được trình bày trong Bảng 2.2 Kết quả cuối cùng của pha 1 là tập điện năng tiêu thụ giả định (𝑯 𝟏) của tất cả các khóa giả thiết khi tấn công byte thứ nhất Điện năng tiêu thụ giả định này được tính toán dựa trên các giá trị trung gian giả định theo mô hình trọng số Hamming.
Trong pha 2, Bước A1, người tấn công cần thu thập 300 vết điện năng tiêu thụ tương ứng với 300 bản rõ đã thực thi ở pha 1 Tập bản rõ và các vết điện năng tiêu thụ đã được chuẩn bị sẵn trong bộ dữ liệu ACT-TRACES.
Sau bước A1, các vết điện năng tiêu thụ sẽ được xử lý bằng kỹ thuật VMD ở bước A2 VMD phân tách các vết gốc thành các VMD mode, với hai tham số (𝑄, 𝛼) được xác định qua Thuật toán 2.2, cho kết quả 𝐾 = 5 và 𝛼 = 1000 đối với tập dữ liệu ACT-TRACES Hình 2.5 minh họa một vết gốc cùng các VMD mode, cho thấy chúng chứa các thành phần khác nhau của trace gốc ở các dải tần số khác nhau Để xác định VMD mode nào chứa lượng điện năng tiêu thụ có ích, quy trình lựa chọn VMD mode theo Thuật toán 2.3 được thực hiện Hình 2.6 mô tả spectrogram của tất cả các VMD mode, trong đó VMD mode 1 chứa tần số clock của mạch điện thực thi thuật toán mật mã cần tấn công, do đó được chọn để thực hiện quá trình tấn công.
Bước cuối cùng trong pha 2 là xác định vết tương quan của các khóa giả thiết cho byte đầu tiên và quyết định khóa đúng Các vết tương quan được tính toán và biểu diễn trong hình ảnh tương ứng Kết quả cho thấy, trong 256 vết tương quan, chỉ có vết tương quan của khóa 63 có giá trị 0.63 tại vị trí mẫu thứ 8759, trong khi các vị trí khác có giá trị tương đối đồng đều Do đó, khóa đúng cho byte đầu tiên có thể được xác định là 63 dựa trên các vết tương quan này Để tấn công các byte khóa khác, cần lặp lại quy trình tương tự để thu thập biểu đồ tương quan và quyết định khóa đúng Hình ảnh mô tả các vết tương quan khi tấn công các byte thứ 2 và 5.
Kết quả cho thấy rằng khi tấn công vào byte đầu tiên, vết tương quan của khóa đúng xuất hiện rõ ràng tại các vị trí tương ứng Điều này xảy ra khi thiết bị thực hiện giá trị trung gian tại đầu ra Sbox với các giá trị của các byte khóa.
Hình 2.5 Các VMD mode của vết điện năng tiêu thụ trong bộ dữ liệu ACT-
Bảng 2.3 trình bày kết quả tấn công trên toàn bộ 16 byte khóa, cho thấy tất cả các khóa tìm được đều chính xác với khóa của thiết bị Gai trên vết tương quan của khóa đúng xuất hiện ở các thời điểm khác nhau, phù hợp với cách mà thiết bị xử lý từng byte khóa Hệ số tương quan của khóa đúng cao hơn đáng kể so với các khóa sai, cho phép phân biệt rõ ràng giữa chúng Điều này khẳng định rằng các khóa xác định từ phương pháp VMD-CPA chính là khóa mà thiết bị đang sử dụng.
Hình 2.6 Biểu diễn thời gian – tần số của các VMD mode
Hình 2.7 Các vết tương quan của 256 khóa giả thiết và khóa đúng
Hình 2.8 Kết quả tấn công với các byte khóa thứ: 2,5,10,16
Bảng 2.3 Tổng hợp kết quả tấn công VMD-CPA cho 16 byte khóa
Vị trí có tương quan lớn nhất (𝒕 ∗ )
Hệ số tương quan lớn nhất Đúng/Sai
2.3.2.2 Thực nghiệm tấn công VMD-CPA trên các VMD mode
Trong tấn công VMD-CPA, VMD mode 1 được chọn vì nó chứa thông tin rò rỉ kênh kề tối đa từ vết điện năng tiêu thụ, bao gồm cả tần số clock của mạch điện xử lý mật mã Kết quả tấn công cho thấy VMD mode 1 và 2 cho khóa đúng, nhưng hệ số tương quan trong VMD mode 1 cao hơn, chứng tỏ mode này chứa nhiều thông tin hữu ích hơn Điều này xác nhận rằng việc lựa chọn VMD mode như đề xuất bởi Thuật toán 2.3 là hợp lý Khi không biết tần số clock, người tấn công có thể thực hiện tấn công VMD-CPA trên tất cả các VMD mode để xác định mode có khóa đúng với hệ số tương quan lớn nhất.
Hình 2.9 Kết quả tấn công VMD-CPA trên tất cả các VMD mode
2.3.2.3 So sánh hiệu quả tấn VMD-CPA với CPA Để so sánh hiệu quả của VMD-CPA với CPA, luận án thực hiện các tấn công này cho byte thứ nhất, trong 03 trường hợp:
(1) Tấn công trên các vết điện năng tiêu thụ gốc;
(2) Tấn công trên các vết được thêm nhiễu trắng có 𝑆𝑁𝑅 1 = 10𝑑𝐵
Trong nghiên cứu này, chúng tôi thực hiện 1000 cuộc tấn công trên các vết được thêm nhiễu trắng với tỷ số tín hiệu trên nhiễu (SNR) 1 = 5dB Điện năng tiêu thụ trong mỗi cuộc tấn công thay đổi từ 1 đến 1000 Chúng tôi ghi lại giá trị hệ số tương quan giữa khóa đúng và khóa sai tại thời điểm xuất hiện tương quan lớn nhất của khóa đúng, được xác định là 𝑡 ∗ = 8759 trong phần thí nghiệm trước đó.
Hình 2.10 So sánh CPA và VMD-CPA
Hình 2.11 So sánh VMD-CPA và CPA với 𝑆𝑁𝑅 1 = 10
Hình 2.12 So sánh tấn công VMD-CPA và CPA với 𝑆𝑁𝑅 2 = 5
Kết quả tấn công trong ba trường hợp được trình bày qua Hình 2.10, Hình 2.11 và Hình 2.12 cho thấy rằng khi số lượng vết tấn công tăng lên, hiệu quả của các cuộc tấn công cũng gia tăng.
Hệ số tương quan giữa các khóa, bao gồm cả khóa đúng và sai, hội tụ về một giá trị cụ thể, trong đó hệ số tương quan của khóa đúng lớn hơn khóa sai Sự khác biệt này có thể được phân biệt khi phân tích một số lượng vết điện năng tiêu thụ nhất định Khi số lượng vết điện năng tiêu thụ tăng lên, các véc-tơ cột của H sẽ cho thấy sự khác biệt rõ rệt hơn giữa các khóa.
Độ dài của T tăng lên sẽ dẫn đến sự hội tụ trong tương quan giữa các yếu tố Khi khóa được xác định đúng, sự tương quan sẽ rõ ràng, trong khi các khóa sai có sự tương quan đồng đều, khó phân biệt với nhau.
Đánh giá về VMD-CPA
Căn cứ vào quy trình thực hiện và kết quả thực nghiệm tấn công VMD-CPA có thể đưa ra một số nhận xét và kết luận như sau:
Tấn công VMD-CPA có hiệu quả cao trong việc tìm khóa đúng của thiết bị khi sử dụng các chế độ VMD phù hợp Dựa trên bộ dữ liệu vết điện năng trong ACT-TRACES, chỉ cần khoảng 79 vết để khôi phục khóa chính xác, cho thấy khả năng phục hồi khóa của phương pháp này rất tốt.
Chế độ VMD phù hợp cho tấn công là chế độ chứa thông tin rò rỉ điện năng tiêu thụ tối đa, và khi phân tích phổ của chế độ này, có thể thấy thành phần tần số clock của mạch điện xử lý mật mã Tấn công VMD-CPA trên chế độ này mang lại hiệu quả cao nhất Do đó, phương pháp lựa chọn chế độ VMD với rò rỉ điện năng tiêu thụ tối đa là thực hiện tấn công VMD-CPA trên tất cả các chế độ VMD và chọn chế độ có kết quả tấn công tốt nhất.
Tấn công VMD-CPA cho thấy hiệu quả vượt trội hơn so với tấn công CPA trong việc giảm số vết điện năng tiêu thụ cần thiết để tìm khóa đúng, với độ tin cậy cao Cụ thể, số vết cần giảm khoảng 25% đối với các vết gốc và khoảng 80% trong trường hợp vết điện năng tiêu thụ có nhiễu lớn Đặc biệt, khi mức nhiễu cao (𝑆𝑁𝑅 = 5𝑑𝐵), tấn công VMD-CPA vẫn có khả năng xác định khóa đúng, trong khi CPA không thể thực hiện được điều này Điều này khẳng định hiệu quả của kỹ thuật VMD trong việc giảm nhiễu và tối ưu hóa thông tin từ vết điện năng tiêu thụ, từ đó nâng cao hiệu quả tấn công.
Phương pháp VMD-CPA, so với công trình [72], được phát triển dựa trên lựa chọn chế độ WMD, với quy trình thực hiện đơn giản hơn, không yêu cầu các thao tác phân tách chế độ, tái tạo vết ban đầu và kết hợp biến đổi Wavelet.
Tấn công VMD-CPA có hạn chế là cần bước tiền xử lý các vết điện năng tiêu thụ, đòi hỏi chi phí tính toán lớn hơn so với CPA Tuy nhiên, việc xử lý các vết điện năng này có thể thực hiện dễ dàng trên máy tính cá nhân trong thời gian ngắn Do đó, luận án không tập trung vào phân tích khía cạnh này của tấn công, mà đề xuất phương pháp tấn công mẫu hiệu quả VMD-GSO-SVM.
Các phương pháp tấn công mẫu thường dựa trên giả định về phân bố xác suất của giá trị điện năng tiêu thụ, thường là giả định Gauss Tuy nhiên, phương pháp lựa chọn POIs dựa trên kinh nghiệm của người tấn công chưa được khẳng định về tính hiệu quả trong trường hợp có nhiễu Để nâng cao hiệu quả của tấn công, luận án này đề xuất phương pháp tấn công mẫu mới mang tên VMD-GSO-SVM, nhằm giải quyết hai vấn đề quan trọng.
(1) Không cần giả định về phân bố xác suất của các giá trị điện năng tiêu thụ trên vết
Để xây dựng một phương pháp lựa chọn các điểm quan tâm (POIs) hiệu quả, cần trích xuất thông tin hữu ích từ vết điện năng tiêu thụ, đặc biệt trong trường hợp có nhiễu Khi phân bố xác suất của điện năng tiêu thụ chưa được biết, các thuật toán học máy thường được áp dụng để xây dựng mô hình tiêu thụ năng lượng của thiết bị Trong số các thuật toán học máy, máy véc-tơ hỗ trợ (SVM) là thuật toán phổ biến nhất và cho kết quả thực nghiệm tốt nhất trên dữ liệu vết điện năng tiêu thụ so với các bộ phân lớp khác Do đó, trong phương pháp VMD-GSO-SVM, luận án đề xuất sử dụng thuật toán SVM để xây dựng mô hình điện năng tiêu thụ cho các giá trị trung gian tấn công.
Để giải quyết vấn đề lựa chọn điểm quan trọng (POIs) trên vết điện năng tiêu thụ, luận án đề xuất một phương pháp kết hợp giữa VMD, GSO và SVM Phương pháp này cho phép lựa chọn thông tin tốt nhất từ các vết điện năng tiêu thụ đồng thời chống lại sự ảnh hưởng của nhiễu Quá trình này bao gồm việc sử dụng kỹ thuật VMD để phân tách vết điện năng tiêu thụ thành các VMD mode, sau đó áp dụng thuật toán GSO để xếp hạng giá trị thông tin của các điểm trên VMD mode Các điểm được chọn làm POIs là những điểm được GSO xếp hạng cao, và số điểm POIs được xác định dựa trên độ chính xác của SVM khi thực hiện huấn luyện và phân lớp chúng.
Dựa trên các định hướng đã nêu, luận án trình bày quy trình thực thi tấn công VMD-GSO-SVM, cải tiến từ quy trình tấn công mẫu cơ bản, đặc biệt ở giai đoạn lựa chọn các Điểm Quan tâm (POIs).
Quy trình thực thi tấn công VMD-GSO-SVM
Các điều kiện cần để người tấn công VMD-GSO-SVM thực thi tấn công khôi phục được khóa đúng của thiết bị cần tấn công bao gồm:
(1) Có được thiết bị mẫu giống với thiết bị cần tấn công, có toàn quyền kiểm soát
Người tấn công có khả năng thay đổi khóa của thiết bị mẫu và thu thập thông tin về vết điện năng tiêu thụ khi thiết bị hoạt động với các khóa khác nhau, nhằm phục vụ cho quá trình lập mẫu.
Để tấn công một thiết bị, cần có khả năng điều khiển thiết bị đó thực hiện mã hóa với một tập bản rõ đầu vào ngẫu nhiên Đồng thời, cần đo được các vết điện năng tiêu thụ trong quá trình thực hiện mã hóa.
(3) Các thiết bị mẫu, và thiết bị cần tấn công được được sử dụng trong phần này cài đặt thuật mật mã AES-128 ở chế độ ECB
Lựa chọn POIs cho tập vết
Các giá trị trung gian Pha lập mẫu
Tập vết tấn công (chưa được gán nhãn)
SVM đã được huấn luyện
Các giá trị xác suất vết có nhãn c m
Lựa chọn POIs cho vết
Tập vết được gán nhãn theo trọng số Hamming của Z m Đo các vết điện năng tiêu thụ
Thiết bị tấn công k s (chưa biết) Đo các vết điện năng tiêu thụ
Lựa chọn POIs bởi VMD-GSO- SVM
Chỉ số các POIs cho vết điện năng tiêu thụ Pha lựa chọn POI
Phương pháp tấn công mẫu cải tiến VMD-GSO-SVM được thực hiện qua ba pha chính, như được mô tả trong Hình 2.13.
Pha 1: là pha lựa chọn POIs từ các vết điện năng tiêu thụ Các POIs này sẽ được sử dụng cho các pha tiếp theo là pha lập mẫu và pha tấn công
Pha 2: là pha lập mẫu, được sử dụng để xây dựng mô hình điện năng tiêu thụ của thiết bị từ POIs được lựa chọn ở pha 1
Pha 3: là pha tấn công để xác định khóa đúng của thiết bị tấn công
2.4.1.1 Pha lựa chọn POIs dựa trên VMD, GSO và SVM
Các phương pháp lựa chọn POIs cho bài toán tấn công mẫu hiện nay thường chỉ đánh giá hiệu quả dựa trên vết điện năng tiêu thụ gốc mà chưa xem xét ảnh hưởng của nhiễu Trong thực tế, nhiễu là yếu tố luôn tồn tại và ảnh hưởng đến hiệu quả tấn công Kỹ thuật VMD có thể giảm nhiễu cho các vết điện năng tiêu thụ, do đó, luận án này đề xuất phương pháp lựa chọn POIs kết hợp giữa VMD, GSO và SVM Cụ thể, VMD được áp dụng để xử lý các vết điện năng tiêu thụ, trong khi GSO giúp lựa chọn các POIs tốt nhất từ một VMD mode dựa trên hiệu quả phân lớp của SVM Phương pháp này không chỉ loại bỏ nhiễu mà còn chọn ra các điểm POIs tốt nhất, phù hợp với mô hình điện năng tiêu thụ.
Sơ đồ lựa chọn POIs đề xuất được mô tả trên Hình 2.14, bao gồm 03 bước chính:
Phân tích vết điện năng tiêu thụ được thực hiện bằng cách chia thành các chế độ VMD Sau đó, chúng ta lựa chọn chế độ VMD phù hợp để làm đặc trưng cho vết Cuối cùng, việc chọn lựa các Điểm Quan Tâm (POIs) tốt nhất trên chế độ VMD đã chọn sẽ được thực hiện thông qua GSO và SVM.
Lựa chọn VMD mode làm đặc trưng
Phân tích vết thành các VMD mode
Chỉ số các đặc trưng (POIs) lựa chọn Trích chọn POIs tốt nhất
(Sử dụng GSO và SVM)
Tập vết điện năng tiêu thụ được gán nhãn
Phương pháp lựa chọn POIs kết hợp VMD, GSO và SVM bắt đầu bằng việc sử dụng kỹ thuật VMD để phân tích vết điện năng tiêu thụ thành các VMD mode, với các tham số cần thiết được thiết lập theo thuật toán đã chỉ định Tiếp theo, một VMD mode sẽ được chọn làm đặc trưng cho vết điện năng tiêu thụ, dựa trên tần số trung tâm liên quan đến tần số clock của phần mạch tấn công Trong bối cảnh tấn công thực tế, kẻ tấn công có thể không biết giá trị tần số hoạt động của mạch điện thực thi thuật toán, do đó, luận án đề xuất phương pháp lựa chọn VMD mode thông qua việc thực hiện tấn công CPA trên tất cả các VMD mode đã được phân tách VMD mode với hệ số tương quan lớn nhất sẽ được chọn, và quy trình tấn công VMD-CPA sẽ được áp dụng để thực hiện tấn công trên các VMD mode này.
Sau khi xác định một mô hình VMD để phân tích vết điện năng tiêu thụ, số điểm trên mô hình này sẽ tương đương với số điểm trên vết điện năng Do đó, cần lựa chọn các điểm liên quan đến hoạt động của thiết bị để làm POIs và loại bỏ những điểm không cần thiết Luận án đề xuất phương pháp lựa chọn POIs dựa trên quy trình trực giao hóa Gram-Schmidt, một phương pháp lọc độc lập với các bộ phân lớp phía sau, giúp xếp hạng các POIs dựa trên tiêu chí tính toán trực tiếp từ dữ liệu vết Phương pháp này không yêu cầu tính trọng số cho tất cả các điểm trên mô hình VMD GSO được sử dụng để xếp hạng các POIs dựa trên mối tương quan giữa chúng và giá trị đầu ra của mô hình dự đoán, tức là mối liên hệ giữa tập dữ liệu POIs và nhãn đã được gán Nếu 𝒙 là véc-tơ hàng chứa R POIs với nhãn tương ứng là 𝑦 𝑖, thì tập POIs có N véc-tơ tương ứng với N giá trị nhãn, tạo thành ma trận POIs với N hàng và R cột Nhiệm vụ là lựa chọn D (D < R) POIs tốt nhất trong tập R POIs, với mối tương quan giữa mỗi POIs và nhãn được xác định bằng công thức cos(𝛼 𝑘 ) = 〈𝒙 𝑘 𝒚〉.
Trong công thức này, 𝒙 𝑘 là véc-tơ cột chứa 𝑁 giá trị của POI thứ 𝑘 trong 𝑅 điểm POIs của dữ liệu, với 𝒚 là véc-tơ nhãn đầu ra tương ứng Nếu các vector 𝒙 𝑘 và 𝒚 vuông góc với nhau, giá trị của (2.21) bằng 0, cho thấy không có mối tương quan giữa chúng Ngược lại, khi góc giữa chúng nhỏ dần, sự tương quan giữa hai vector này tăng lên, với giá trị lớn nhất là 1 khi chúng hoàn toàn tương quan.
Quá trình lựa chọn các POIs dựa trên GSO sử dụng biểu thức (2.21) để định lượng mối quan hệ giữa các POIs và giá trị đầu ra Điểm POI đầu tiên được chọn có giá trị cosine lớn nhất, thể hiện tương quan cao nhất với nhãn đầu ra Các POI tiếp theo được lựa chọn qua một quy trình lặp lại cho đến khi đạt đủ số lượng cần thiết: (1) Ánh xạ các đặc trưng còn lại và giá trị đầu ra sang không gian nhân của các POIs đã được chọn (2) Chọn đặc trưng có trị cosine lớn nhất với đầu ra để đưa vào tập POIs đã chọn.
Thuật toán 2.4: Lựa chọn số POIs cho VMD mode Đầu vào:
Dữ liệu bao gồm các chế độ VMD tương ứng với các vết điện năng tiêu thụ, được biểu diễn dưới dạng 𝑋 𝑞 {𝒙 𝑖 𝑗 , 𝑐 𝑖 }; với 𝑖 từ 1 đến 𝑁 𝑝 (số vết điện năng tiêu thụ) và 𝑗 từ 1 đến 𝑁 (độ dài của một vết điện năng tiêu thụ) Các giá trị 𝑐 𝑖 thuộc tập hợp các trạng thái của vết điện năng tiêu thụ.
Số lần lặp tối đa: 𝑀𝑎𝑥 𝑖𝑡𝑒𝑟 ;/ số POIs tối đa được kiểm tra Đầu ra: Số điểm POIs được chọn: 𝐷
1: Khởi tạo số lần lặp hay số điểm POIs 𝑑=1 và độ chính xác của SVM: 𝑎𝑐𝑐 𝑠𝑣𝑚 = 0 2: Khởi tạo mảng chứa độ chính xác khi huấn luyện SVM: 𝑎𝑐𝑐 = [];
3: While (số lần lặp < 𝑀𝑎𝑥 𝑖𝑡𝑒𝑟 ) do 4: Xác định chỉ số các POIs 𝑖𝑛𝑑𝑒𝑥 𝑑 được lựa chọn từ tập 𝑋 𝑞 bằng cách thực thi thuật toán GSO với tập dữ liệu 𝑋 𝑞 với số POIs chọn là 𝑑
5: Xây dựng bộ dữ liệu để huấn luyện SVM: 𝑋 𝑞𝑑 = {𝒙 𝑖 𝑗 , 𝑐 𝑖 }; 𝑖 = 1: 𝑁 𝑝 ; 𝑗 ∈ 𝑖𝑛𝑑𝑒𝑥 𝑑 6: Huấn luyện SVM với tập dữ liệu 𝑋 𝑞𝑑 và xác định độ chính xác 𝑎𝑐𝑐 𝑠𝑣𝑚
7: Cập nhật mảng 𝑎𝑐𝑐 = [𝑎𝑐𝑐, 𝑎𝑐𝑐 𝑠𝑣𝑚 ] 8: Tăng số lần lặp lên 1: 𝑑 = 𝑑 + 1 9: End While
10: Trả lại giá trị 𝐷 = argmax
Trong quá trình sử dụng GSO để lựa chọn các POIs từ các VMD mode, số lượng
Để xác định 𝐷 các điểm POI cần giữ lại, chúng ta sẽ dựa vào độ chính xác của việc phân lớp của thuật toán SVM đối với tập dữ liệu VMD mode Việc lựa chọn 𝐷 điểm POI từ GSO sẽ được sử dụng trong giai đoạn huấn luyện xây dựng bộ mẫu, và cách tốt nhất để xác định 𝐷 là điều chỉnh giá trị cho đến khi đạt được độ chính xác tối đa trong việc huấn luyện SVM Quy trình này được thực hiện theo hướng dẫn của Thuật toán 2.4.
Mục tiêu của pha lập mẫu là xây dựng mô hình mô tả điện năng tiêu thụ của thiết bị mẫu cho tất cả các trường hợp có thể có, như giá trị tại lối ra Sbox hoặc giá trị rò rỉ điện năng tiêu thụ Mô hình này được phát triển thông qua việc huấn luyện một mô hình học máy, nhằm phân lớp các vết điện năng tiêu thụ từ thiết bị tấn công, từ đó xác định được khóa của thiết bị tấn công Các bước chính trong pha này bao gồm việc thu thập dữ liệu, huấn luyện mô hình và phân tích kết quả.
B1: Người tấn công có được thiết bị mẫu giống với thiết bị cần tấn công
B2: Lựa chọn giá trị trung gian của thuật toán mật mã để tấn công, ví dụ như lối ra
Sbox, và mô hình rò rỉ điện năng tiêu thụ của thiết ví dụ như trọng số Hamming hay khoảng cách Hamming
B3: Thu thập dữ liệu điện năng tiêu thụ của thiết bị mẫu khi thực hiện tấn công với giá trị trung gian và gán nhãn cho các vết này Với thiết bị mẫu trong tay, kẻ tấn công có thể xác định nhãn của vết thứ 𝑖 thông qua công thức 𝑐 𝑚 = 𝐻𝑊(𝑆𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘 𝑠 )), trong đó 𝑝𝑡 𝑖 là bản rõ của vết thứ 𝑖 và 𝑘 𝑠 là khóa của thiết bị mẫu Đầu ra của Sbox là giá trị 8 bit.
B4: Xây dựng tập dữ liệu huấn luyện: Trích chọn POIs của các vết có được ở bước
Thực nghiệm tấn công VMD-GSO-SVM
Hình 2.15 Mô tả bộ dữ liệu cho tấn công VMD-GSO-SVM
Trong phần này, luận án trình bày kết quả thực nghiệm kiểm chứng hiệu quả của các phương pháp tấn công VMD-GSO-SVM trên hai bộ dữ liệu ACT-TRACES và DPA-V4 Cấu trúc của bộ dữ liệu được mô tả bởi Hình 2.15 Tập dữ liệu huấn luyện bao gồm các vết điện năng tiêu thụ được gán nhãn là trọng số Hamming của byte thứ nhất tại đầu ra Sbox của AES-128 Trong tập tấn công, các vết chưa được gán nhãn sẽ được ước lượng xác suất thuộc về các nhãn trong pha tấn công.
Các bộ dữ liệu được phân chia thành hai phần với tỷ lệ 2/3 cho pha lập mẫu và 1/3 cho pha tấn công Tham số cho SVM và việc lựa chọn các POIs cũng dựa trên dữ liệu tương tự như trong pha lập mẫu Để đánh giá tác động của kích thước tập dữ liệu lập mẫu đến hiệu quả tấn công, hai tập con được lựa chọn trong pha lập mẫu: tập con thứ nhất với 100 vết cho mỗi nhãn và tập con thứ hai với 200 vết cho mỗi nhãn Các bộ dữ liệu tương ứng được ký hiệu là ACT-1 và ACT-2 cho ACT-TRACES, và DPA-1 và DPA-2 cho DPA-V4.
Kết quả của tấn công VMD-GSO-VMD được trình bày cho byte khóa đầu tiên của AES-128, trong khi các byte khóa khác thực hiện quy trình tương tự Những kết quả này được so sánh với hai tấn công mẫu khác, sử dụng SVM để mô hình hóa điện năng tiêu thụ với các phương pháp lựa chọn POIs khác nhau.
(1) CPA-SVM [7]: là tấn công mẫu sử dụng SVM với phương pháp lựa chọn POIs là CPA
(2) NB-SVM [47]: là tấn công mẫu sử dụng SVM với phương pháp lựa chọn POIs là NB
Tất cả các phép tính và xử lý dữ liệu trong các cuộc tấn công được thực hiện trên phần mềm Matlab, với việc triển khai thuật toán học máy SVM thông qua thư viện LibSVM.
A Lựa chọn tham số cho SVM
Trong phần thực nghiệm này, SVM được áp dụng với hàm nhân RBF, yêu cầu tối ưu hóa hai tham số quan trọng là (𝐶, 𝛾) Luận án sử dụng chiến lược grid-search kết hợp với kiểm tra chéo 10-tập để xác định các tham số này Cụ thể, với mỗi cặp giá trị (𝐶, 𝛾), độ chính xác của SVM được đánh giá qua kiểm tra chéo 10-tập, và cặp (𝐶, 𝛾) mang lại độ chính xác phân lớp cao nhất sẽ được chọn làm tham số tối ưu.
Các tham số tối ưu của SVM cho bộ dữ liệu ATC-TRACES và DPA-V4 được trình bày trong Bảng 2.5 Tham số 𝐶 được thay đổi từ 1 đến 256 với bước nhảy nhất định.
1, tham số 𝛾 từ 0.1 đến 10 với bước nhảy là 0.01
Bảng 2.5 Tham số tối ưu cho SVM
Tham số Bộ dữ liệu ACT-TRACES Bộ dữ liệu DPA-V4
B Kết quả pha lựa chọn POIs
Giai đoạn đầu tiên trong việc lựa chọn các Điểm Quan Tâm (POIs) là áp dụng kỹ thuật VMD để phân tách các tín hiệu điện năng tiêu thụ thành các chế độ VMD Trong quá trình này, các tham số đầu vào cần được thiết lập, với số chế độ VMD là 𝑄 = 5 và hằng số cân bằng 𝛼 = 1000 theo Thuật toán 2.2 Sau khi phân tách, một chế độ VMD chứa thông tin hữu ích được chọn thông qua việc thực hiện tấn công VMD-CPA trên tất cả các chế độ Kết quả tấn công cho thấy, với bộ dữ liệu ATC-TRACES, chế độ VMD 1 được chọn, trong khi với DPA-V4, chế độ VMD 2 là lựa chọn tối ưu nhất, thể hiện qua hệ số tương quan của khoá đúng lớn nhất.
Bảng 2.6 Kết quả tấn công CPA trên các VMD modes
Khóa tìm được Hệ số tương quan Khóa tìm được
VMD mode 1 0.64 63 (Khóa đúng) 0.52 108 (Khóa đúng)
VMD mode 2 0.34 63 (Khóa đúng) 0.87 108 (Khóa đúng) VMD mode 3 0.34 223 (Khóa sai) 0.60 108 (Khóa đúng) VMD mode 4 0.37 255 (Khóa sai) 0.37 188 (Khóa sai) VMD mode 5 0.35 246 (Khóa sai) 0.34 135 (Khóa sai)
Sau khi xác định VMD mode chứa thông tin hữu ích từ vết điện năng tiêu thụ, quy trình lựa chọn các điểm POIs được thực hiện dựa trên GSO và SVM thông qua Thuật toán 2.4, với kết quả được trình bày trong Bảng 2.7 và Bảng 2.8 cho các bộ dữ liệu ACT-TRACES và DPA-V4 Kết quả cho thấy rằng khi số lượng điểm POIs tăng, độ chính xác phân lớp cũng tăng theo Tuy nhiên, nếu lựa chọn quá nhiều điểm POIs, độ chính xác phân lớp sẽ giảm do dữ liệu không thể tổng quát đặc trưng điện năng tiêu thụ cho bộ phân lớp Tập hợp các điểm POIs cùng chỉ số và số lượng điểm được chọn được mô tả trong Bảng 2.7 và Bảng 2.8, với phông chữ đậm chỉ ra trường hợp huấn luyện bộ phân lớp SVM với tập dữ liệu này để đạt được độ chính xác lớn nhất.
Bảng 2.7 Các POIs được lựa chọn bởi VMD và GSO đối với ACT-TRACES
Số POI Chỉ số các POIs được chọn Độ chính xác phân lớp (%)
2267 1038 411 577 886 1687 1211 1670 1576 216 92.84 Bảng 2.8 Các POIs được lựa chọn bởi VMD và GSO đối với DPA-V4
Số POI Chỉ số các POIs được chọn Độ chính xác phân lớp (%)
Kết quả của việc lập mẫu cho thấy người tấn công đã xây dựng thành công mô hình điện năng tiêu thụ, mô tả 9 giá trị trọng số Hamming tại đầu ra Sbox Quá trình xây dựng mô hình được thực hiện thông qua việc huấn luyện bộ phân lớp SVM Để đánh giá chất lượng mô hình SVM, các tham số như độ chính xác (precision), độ bao phủ (recall) và F1 được áp dụng, trong đó độ chính xác được xác định bởi số lượng True Positive (TP).
𝑇𝑃+𝐹𝑃, độ bao phủ được xác định bởi 𝑇𝑃
𝑇𝑃+𝐹𝑁 và F1 là giá trị trung bình điều hòa giữa độ chính xác và độ bao phủ được cho bởi: 𝐹1 =2×𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛×𝑟𝑒𝑐𝑎𝑙𝑙
Độ chính xác và độ hồi tưởng của mô hình SVM được đánh giá qua các tham số gần 1, cho thấy kết quả huấn luyện tốt Bảng 2.9 trình bày kết quả huấn luyện SVM với các tập con từ hai bộ dữ liệu ACT-TRACES và DPA-V4, trong đó các tham số đều đạt trên 80% Khi số lượng vết điện năng tiêu thụ trong quá trình huấn luyện tăng, độ chính xác của SVM cũng cải thiện, chứng minh khả năng tổng quát hóa dữ liệu hiệu quả Các SVM đã được huấn luyện sẽ được áp dụng trong pha tấn công để ước lượng xác suất của vết điện năng tiêu thụ từ thiết bị tấn công, dựa trên các lớp gán nhãn là trọng số Hamming đã được đào tạo.
Bảng 2.9 Kết quả pha lập mẫu huấn luyện SVM
Tham số Bộ dữ liệu ACT-TRACES Bộ dữ liệu DPA-V4
ACT-1 ACT-2 DPA-1 DPA-2 Độ chính xác (%) 85.2 94.6 86.1 95.8 Độ bao phủ (%) 83.6 94.1 85.5 95.2
D Các kết quả pha tấn công D1 Tấn công kiểm chứng khả năng khôi phục khoá đúng của VMD-GSO-SVM
Hình 2.16 trình bày điểm số của tất cả các khóa giả thiết với ACT-TRACES, nhằm kiểm chứng khả năng tấn công mẫu VMD-GSO-SVM trong việc khôi phục khóa bí mật của DUT Trong quá trình tấn công, VMD-GSO-SVM được áp dụng để khôi phục khóa chính xác khi SVM được sử dụng để phân lớp 9 lớp giá trị HW của đầu ra.
Chúng tôi tính giá trị xác suất hậu nghiệm 𝑃 𝑆𝑉𝑀 (𝑋 𝑖 |𝑐) thay vì dự đoán giá trị HW cho mỗi vết điện năng tiêu thụ trong tấn công Khóa đúng được xác định là khóa có điểm số lớn nhất, được tính theo phương pháp ước lượng hợp lý lớn nhất Trong thí nghiệm với ACT-TRACES, khóa bí mật có byte đầu tiên là 63 đã cho điểm số lớn nhất, trong khi với bộ dữ liệu DPA-V4, khóa có điểm số lớn nhất là 108 Những kết quả này chứng minh rằng phương pháp tấn công VMD-GSO-SVM có khả năng khôi phục khóa đúng của AES-128 từ cả hai tập vết điện năng tiêu thụ ACT-TRACES và DPA-V4.
So sánh hiệu quả của các phương pháp VMD-GSO-SVM, CPA-SVM và NB-SVM được thực hiện dựa trên tham số GE, thể hiện qua số vết điện năng tiêu thụ trong quá trình tấn công Tham số GE càng nhỏ, chứng tỏ hiệu quả tấn công càng cao.
Hình 2.18 và Hình 2.19 cho thấy giá trị GE giảm dần khi số lượng vết sử dụng trong các tấn công VMD-GSO-SVM, CPA-SVM và NB-SVM tăng lên để dự đoán các lớp HW Sự giảm giá trị GE cũng xảy ra khi kích thước tập vết lập mẫu gia tăng, cho thấy hiệu quả của SVM phụ thuộc vào nhiều tham số, trong đó kích thước tập huấn luyện là yếu tố quan trọng Đối với DPA-V4, hiệu quả tấn công tương tự như DPA-TRACES, với giá trị GE trong pha tấn công được mô tả ở Hình 2.20 và Hình 2.21 Kết quả cho thấy tấn công VMD-GSO-SVM đạt được giá trị GE tốt nhất.
Bảng 2.10 trình bày số lượng vết điện năng tiêu thụ cần thiết để đạt giá trị 𝐺𝐸 = 0 cho từng loại tấn công Đối với tấn công VMD-GSO-SVM trên ACT-TRACES, số lượng vết cần thiết là thấp nhất, với trung bình 10.2 và 5.3 cho 100 và 200 vết mẫu tương ứng với mỗi giá trị HW Tương tự, tấn công DPA-V4 cũng yêu cầu số vết tối thiểu là 10.3 và 4.7 với 100 và 200 vết mẫu cho mỗi giá trị HW So với các tấn công khác, VMD-GSO-SVM cho thấy hiệu quả hơn về số lượng vết cần thiết.
Đánh giá phương pháp VMD-GSO-SVM
Dựa trên quy trình đề xuất và kết quả thực nghiệm của phương pháp tấn công VMD-GSO-SVM, có thể đưa ra một số đánh giá và kết luận quan trọng về hiệu quả và tính ứng dụng của phương pháp này.
Phương pháp tấn công mẫu này sử dụng mô hình điện năng tiêu thụ tương ứng khi thiết bị xử lý các giá trị trung gian tại điểm tấn công, được xây dựng thông qua thuật toán học máy SVM Điều này cho phép loại bỏ yêu cầu giả định về phân bố xác suất của điện năng tiêu thụ, một yếu tố thường khó đạt được trong thực tế khi tiến hành tấn công.
Tấn công này có khả năng khôi phục khóa đúng của thiết bị bằng cách sử dụng các vết điện năng tiêu thụ thu thập thực tế từ ACT-TRACES và các vết trong bộ dữ liệu công khai DPA-V4 Kết quả thực nghiệm cho thấy quy trình tấn công đề xuất là phù hợp và có tính thực tế.
Tấn công này cho thấy hiệu quả vượt trội hơn so với một số phương pháp khác đã được khảo sát, như CPA-SVM và NB-SVM.
Trong điều kiện thường, số vết điện năng tiêu thụ để khóa đúng được xếp hạng thứ nhất (GE=0), giảm cỡ 40 đến 45%
Trong điều kiện có nhiễu, số lượng vết điện năng tiêu thụ cần thiết để xác định khóa đúng giảm từ 60 đến 70% Khi mức độ nhiễu tăng cao, hiệu quả của phương pháp VMD-GSO-SVM trong việc tìm kiếm khóa đúng chỉ tăng nhẹ so với các phương pháp CPA-SVM và NB-SVM.
Kết quả đạt được nhờ vào việc áp dụng kỹ thuật lựa chọn Điểm Quan Tâm (POIs) dựa trên VMD, GSO và SVM, cho phép xác định những thông tin quan trọng nhất từ vết điện năng tiêu thụ, đồng thời lọc bỏ nhiễu trên vết hiệu quả.
Về thời gian thực thi, tấn công yêu cầu thêm bước xử lý các vết điện năng tiêu bởi VMD, dẫn đến việc tốn thời gian hơn Tuy nhiên, việc phân tách các vết do VMD thực hiện có thể diễn ra trên máy tính cá nhân với thời gian không đáng kể và luận án không đưa ra đánh giá bổ sung.
Khi thực hiện tấn công bằng phương pháp này, người tấn công cần tiến hành giai đoạn tiền xử lý các vết điện năng tiêu thụ và lựa chọn các Điểm Quan Tâm (POIs) Phương pháp lựa chọn POIs được đề xuất trong phần này cho thấy hiệu quả vượt trội so với một số phương pháp khác Tuy nhiên, với các thiết bị có cơ chế phòng vệ, thông tin về POIs thường bị che giấu bởi mặt nạ, khiến cho việc lựa chọn POIs trở nên khó khăn Do đó, cần có một công cụ tự động để lựa chọn POIs, có khả năng xử lý một lượng lớn vết điện năng tiêu thụ, và kỹ thuật học sâu có thể là giải pháp thích hợp Vì vậy, một phương pháp tấn công cho thiết bị có phòng vệ với kỹ thuật lựa chọn POIs tự động sẽ được đề xuất trong chương 3 của luận án.
Trong chương này, luận án đề xuất hai phương pháp tấn công đối với thiết bị không có phòng vệ, áp dụng kỹ thuật VMD để tiền xử lý các vết điện năng tiêu thụ Phương pháp VMD-CPA cho thấy hiệu quả vượt trội so với tấn công CPA, với số lượng vết điện năng tiêu thụ giảm 25% và hơn 50% trong điều kiện có nhiễu khi khôi phục thành công khóa bí mật Hiệu quả của VMD-CPA đạt được nhờ phân tích các vết điện năng tiêu thụ thành các VMD mode, trong đó một mode chứa rò rỉ kênh tối đa và giảm nhiễu Luận án cũng đề xuất tấn công VMD-GSO-SVM, kết hợp kỹ thuật VMD, GSO và SVM, cho thấy hiệu quả cao trong việc khôi phục khóa đúng với số lượng vết điện năng tiêu thụ tối ưu Cả hai phương pháp tấn công đều có khả năng hoạt động hiệu quả trong các điều kiện thực tế có nhiễu.
1- Đề xuất phương pháp tấn công VMD-CPA có hiệu quả hơn tấn công CPA với số lượng vết điện năng tiêu thụ để khôi phục khóa đúng giảm khoảng 25% và trên 50% trong trường hợp vết điện năng tiêu thụ có nhiễu
2- Đề xuất một phương pháp tấn công mẫu hiệu quả VMD-GSO-SVM với phương pháp lựa chọn đặc trưng kết hợp giữa VMD, GSO và SVM Hiệu quả phương pháp thể hiện ở số vết điện năng tiêu thụ để 𝐺𝐸 = 0 giảm cỡ 45%, và gần 60% trong trường hợp có nhiễu cần để khôi phục khóa đúng
PHƯƠNG PHÁP TẤN CÔNG CHO THIẾT BỊ CÓ
PHÒNG VỆ Đặt vấn đề
Tấn công mẫu sử dụng mô hình học máy đã thành công trong việc tấn công các thiết bị mật mã mà không cần biết trước phân bố xác suất điện năng tiêu thụ Tuy nhiên, việc lựa chọn các điểm quan tâm (POIs) từ vết điện năng tiêu thụ là cần thiết trước khi áp dụng mô hình học máy Đối với thiết bị mật mã không có biện pháp bảo vệ chống lại tấn công phân tích điện năng, nhiều phương pháp như CPA, DoM, SoST, SOSD, và phương pháp kết hợp VMD, GSO, SVM đã được đề xuất Ngược lại, việc xác định POIs cho thiết bị có phòng vệ là một thách thức lớn, và hiện chưa có phương pháp hiệu quả nào để thực hiện điều này Tuy nhiên, các mô hình học sâu có thể xây dựng mô hình điện năng tiêu thụ từ các vết gốc mà không cần kỹ thuật chọn POIs, cho phép thực hiện tấn công mẫu trên thiết bị mật mã có phòng vệ Trong các tấn công này, mô hình học sâu tự động học các POIs từ vết điện năng tiêu thụ và phân loại chúng.
Công trình của Prouff và cộng sự áp dụng kiến trúc CNN trong xử lý ảnh để giải quyết bài toán tấn công, với các tham số được lựa chọn dựa trên thực nghiệm Kiến trúc CNNP được xác định là hiệu quả nhất trong nghiên cứu này.
- Kích thước bộ lọc: 11 (same padding)
- Average Pooling sau mỗi tầng CONV
- Số tầng Dense: 2 tầng; 4096 nơ-ron/tầng
Nghiên cứu [32] chứng minh khả năng áp dụng mạng CNN trong tấn công, nhưng kiến trúc hiện tại có quá nhiều tham số, dẫn đến thời gian tấn công kéo dài Một đóng góp quan trọng của nghiên cứu là việc công bố bộ dữ liệu mở ASCAD, phục vụ cho việc so sánh hiệu quả tấn công lên thiết bị có phòng vệ Tuy nhiên, kiến trúc CNN P vẫn có số lượng tham số lớn và không được tối ưu hóa dựa trên đặc điểm của bài toán tấn công, dẫn đến hiệu quả tấn công còn hạn chế.
Zaid đã nghiên cứu chi tiết về việc xây dựng kiến trúc CNN cho bài toán tấn công, nhấn mạnh tầm quan trọng của việc cấu hình các tham số huấn luyện và kiến trúc CNN đối với hiệu quả tấn công Ông đề xuất phương pháp lựa chọn số tầng tích chập và kích thước của nhân tích chập thông qua khái niệm 'entanglement' cùng với công cụ trực quan hóa véc-tơ trọng số của các điểm dữ liệu ở vị trí sau tầng làm phẳng và trước tầng kết nối đầy đủ của CNN.
Phương pháp phòng vệ bằng mặt nạ
Mặt nạ là một phương pháp phổ biến để bảo vệ chống lại các cuộc tấn công phân tích điện năng tiêu thụ, nhằm loại bỏ sự phụ thuộc của điện năng tiêu thụ vào các giá trị trung gian của thiết bị Phương pháp này thực hiện bằng cách ngẫu nhiên hóa các giá trị trung gian của thuật toán, kết hợp các giá trị ngẫu nhiên được chọn từ một tập phân bố đều với các giá trị này Nhờ vào sự ngẫu nhiên, các giá trị trung gian của thuật toán mật mã được bảo vệ trong suốt quá trình thực hiện, và chúng sẽ được loại bỏ ở bước cuối cùng để tạo ra đầu ra tương tự như đầu ra của thuật toán gốc Có hai phương pháp chính để gắn mặt nạ vào giá trị trung gian: cộng mô-đun hoặc nhân mặt nạ Hơn nữa, mỗi giá trị trung gian có thể được gắn với một hoặc nhiều mặt nạ khác nhau.
Các thuật toán được bảo vệ bởi biện pháp mặt nạ đảm bảo rằng giá trị trung gian 𝑧 không bao giờ được lưu trữ hoặc xử lý ở dạng rõ Thay vào đó, giá trị này được bảo vệ bởi 𝑑 giá trị 𝑚 1 , 𝑚 2 , … , 𝑚 𝑑, được gọi là các chia sẻ, và thỏa mãn biểu thức (3.1).
Trong phép toán phù hợp, thường sử dụng phép toán cộng mô-đun 2, sơ đồ mặt nạ được gọi là mặt nạ Boolean Giá trị 𝑧, hay còn gọi là giá trị được mặt nạ, tương ứng với các mặt nạ 𝑚₁, 𝑚₂, …, 𝑚𝑑, trong khi 𝑧' là giá trị mà thiết bị sẽ thực thi Các mặt nạ được tạo ra ngẫu nhiên và độc lập, và số lượng mặt nạ sử dụng được gọi là bậc của sơ đồ mặt nạ.
Khi tạo mặt nạ cho thuật toán mật mã, cần cân nhắc giữa yêu cầu an toàn và các thao tác xử lý cũng như tính ngẫu nhiên của sơ đồ mặt nạ Mặc dù việc làm mặt nạ cho các phép toán tuyến tính tương đối đơn giản, nhưng việc triển khai cho các hàm phi tuyến lại phức tạp hơn.
Có nhiều kỹ thuật mặt nạ được đề xuất để bảo vệ thuật toán AES, bao gồm sơ đồ mặt nạ toàn phần, sơ đồ mặt nạ xoay, sơ đồ mặt nạ bảng thế và sơ đồ mặt nạ theo cách tiếp cận chia sẻ bí mật Luận án này tập trung vào nghiên cứu sơ đồ mặt nạ bậc nhất, thường được sử dụng để bảo vệ các thuật toán mật mã với phép toán phi tuyến do Sbox thực hiện.
Trong thuật toán mật mã, giá trị trung gian 𝑧 ∈ 𝔽(2 8 ) được bảo vệ bằng mặt nạ 𝑚 ∈ 𝔽(2 8 ) nhằm chống lại tấn công kênh kề Giá trị 𝑧 sẽ được che giấu bằng cách sử dụng biểu thức 𝑧 ⊕ 𝑚, và thiết bị sẽ xử lý giá trị 𝑧 ′ = 𝑧 ⊕ 𝑚 thay vì 𝑧 không được bảo vệ Để thực hiện sơ đồ mặt nạ với phép toán phi tuyến, bảng thế Sbox sẽ được tính toán từ Sbox gốc để đảm bảo thỏa mãn điều kiện (3.2) Nhờ đó, các giá trị đầu ra của Sbox trong thuật toán luôn được bảo vệ bởi mặt nạ 𝑚.
Lối ra Sbox được mặt nạ với m Khóa k
Thời điểm thiết bị xử lý mặt nạ
Thời điểm thiết bị xử lý giá trị được mặt nạ
Hình 3.1 Sơ đồ mặt nạ điển hình
Đặc điểm POIs trên vết điện năng tiêu thụ của thiết bị mặt nạ
POIs là các điểm trên vết điện năng tiêu thụ thu thập từ thiết bị trong quá trình xử lý giá trị trung gian mục tiêu của tấn công Đối với thiết bị không có phòng vệ, giá trị này được xử lý dưới dạng rõ, dẫn đến POIs chỉ xuất hiện tại một dải cụ thể Ngược lại, với thiết bị có phòng vệ bằng mặt nạ, quá trình xử lý giá trị trung gian diễn ra cùng với mặt nạ, gây ra rò rỉ điện năng tiêu thụ tương ứng với giá trị mặt nạ Hình 3.2a mô tả quá trình này, trong khi Hình 3.2b chỉ ra rằng các POIs trên thiết bị mặt nạ xuất hiện tại các vị trí xử lý tương ứng Các POIs thường được phân tách thành từng dải, cách nhau bởi khoảng thời gian mà thiết bị có thể xử lý các giá trị trung gian khác.
Dải POIs Dải POIs b, POIs đối với thiết bị có sử dụng mặt nạ bậc nhất mẫu Độ lớn
Lối ra Sbox được mặt nạ với m Khóa k
Hình 3.2 POIs của thiết bị mặt nạ
Cơ sở tấn công phân tích điện năng tiêu thụ đối với thiết bị mặt nạ
Tấn công phân tích điện năng tiêu thụ (DPA) diễn ra khi kẻ tấn công khai thác điện năng tiêu thụ của thiết bị trong quá trình thực thi giá trị lối ra của Sbox, từ đó suy ra giá trị mà thiết bị đang xử lý Nếu kẻ tấn công nắm được điện năng tiêu thụ tại thời điểm này, họ có thể xác định giá trị cần tìm Tuy nhiên, đối với các thiết bị sử dụng cơ chế phòng vệ bằng mặt nạ, giá trị lối ra của Sbox bị che khuất bởi mặt nạ ngẫu nhiên, khiến việc xác định giá trị thực trở nên khó khăn Để tấn công thành công thiết bị mặt nạ, kẻ tấn công phải kết hợp điện năng tiêu thụ khi thiết bị xử lý mặt nạ với giá trị được mặt nạ, tạo ra giá trị điện năng tiêu thụ tương quan với mục tiêu tấn công Hai phương pháp chính được sử dụng trong các tấn công bậc cao là hàm tích, được đề xuất bởi Chari, và hàm hiệu, do Messerges đề xuất.
Việc kết hợp các yếu tố để tạo ra giá trị điện năng tiêu thụ phụ thuộc vào mục tiêu tấn công và được xác thực qua thực nghiệm Phần này của luận án cung cấp cơ sở chứng minh mối liên hệ giữa điện năng tiêu thụ và giá trị mục tiêu tấn công.
Gọi 𝑧 là giá được thiết bị xử lý, 𝑚 là giá trị mặt nạ
Nếu thiết bị không được trang bị mặt nạ, điện năng tiêu thụ sẽ tỷ lệ thuận với giá trị 𝑧 khi thiết bị hoạt động Nhờ vào việc nắm bắt lượng điện năng tiêu thụ, chúng ta có thể xác định giá trị 𝑧 một cách chính xác.
Khi thiết bị sử dụng mặt nạ, nó xử lý giá trị z+𝑚 thay vì chỉ z Do không xác định được giá trị 𝑚, việc biết điện năng tiêu thụ của z + 𝑚 cũng không giúp tìm ra giá trị 𝑧.
Giá trị điện năng tiêu thụ của thiết bị xử lý được ký hiệu là 𝑙 𝑥 cho trường hợp xử lý 𝑚 và 𝑙 𝑦 cho trường hợp xử lý z+𝑚 Khi kết hợp 𝑙 𝑥 và 𝑙 𝑦, ta có thể xác định mối quan hệ với 𝑏 Hai hàm kết hợp phổ biến được rút ra từ các công thức (3.3) và (3.4) là 𝑙 𝑥−𝑦 = |𝑙 𝑥 − 𝑙 𝑦| và 𝑙 𝑥.𝑦 = 𝑙 𝑥 𝑙 𝑦.
Điện năng tiêu thụ của thiết bị phụ thuộc vào giá trị của thiết bị xử lý Do đó, có thể giả định rằng giá trị trung bình của điện năng tiêu thụ tại thời điểm 𝑡 là một yếu tố quan trọng cần xem xét.
- Với 𝑎 là một giá trị không đổi phụ thuộc vào đặc điểm tiêu thụ điện năng từng thiết bị cụ thể
- 𝛿: là lượng thay đổi điện năng tiêu thụ khi thiết bị xử lý với bit 𝑞
- Nếu 𝑞 = 1 và 𝑞 = 0 thì điện năng tiêu thụ tại 𝑡 tương ứng là : 𝑎 − 𝛿; 𝑎 + 𝛿
Hình 3.3 thể hiện sự phân bố điện năng tiêu thụ tại một điểm, tương ứng với các trường hợp xử lý bit ngẫu nhiên, bit 1 và bit 0 Từ hình này, có thể thấy rằng điện áp ở điểm đo là 𝑎 = 70,46𝑚𝑉, với độ lệch điện áp khi xử lý bit 1 là 𝛿 1 = 2,98𝑚𝑉 và bit 0 là 𝛿 2 = 2,92𝑚𝑉 Điều này cho thấy sự khác biệt về điện áp giữa việc xử lý bit 1 và bit 0 là tương đương, chứng minh rằng điện năng tiêu thụ phụ thuộc vào giá trị mà thiết bị đang xử lý.
Hình 3.3 Phân bố điện năng tiêu thụ khi thiết bị xử lý với bit 1 và 0 Như vậy:
- Điện năng tiêu thụ khi thiết bị xử lý giá trị mặt nạ 𝑚 là: 𝑙 𝑥 = 𝑎 + 𝛿 (−1) 𝑚
- Điện năng tiêu thụ khi thiết bị xử lý giá trị được mặt nạ 𝑧 + 𝑚 là: 𝑙 𝑦 = 𝑎 +
Giá trị trung bình của 𝒍 𝒙−𝒚 = 𝒍 𝒙 − 𝒍 𝒚 là:
Do đó, giá trị trung bình của 𝑙 𝑥 − 𝑙 𝑦 phụ thuộc vào 𝑧 và dựa trên giá trị này có thể tìm được 𝑧
Giá trị trung bình của 𝒍 𝒙𝒚 = 𝒍 𝒙 𝒍 𝒚
- Nếu 𝑚 = 1 thì 𝐸(𝑙 𝑥 𝑙 𝑦 ) = (𝑎 − 𝛿) × (𝑎 − 𝛿) Như vậy, với giá trị bất kỳ của 𝑚 thì 𝐸(𝑙 𝑥 𝑙 𝑦 ) là khác nhau khi giá trị 𝑧 khác nhau Nói cách khác 𝐸(𝑙 𝑥 𝑙 𝑦 ) phụ thuộc vào giá trị của 𝑧
Bằng cách áp dụng hàm kết hợp, kẻ tấn công có thể thực hiện các cuộc tấn công vào thiết bị mặt nạ thông qua các phương pháp tấn công không bản mẫu, như đã nêu trong chương 10 của tài liệu [54], cũng như các phương pháp tấn công mẫu.
Tấn công mẫu là một phương pháp tấn công phổ biến nhằm vào thiết bị mật mã có phòng vệ, bao gồm hai pha: lập mẫu và tấn công Trong pha lập mẫu, các vết điện năng tiêu thụ được sử dụng để huấn luyện mô hình phân lớp, giúp phân loại vết điện năng từ thiết bị tấn công và tìm ra khóa Việc lựa chọn các điểm quan tâm (POIs) là yếu tố quan trọng ảnh hưởng đến độ chính xác của mô hình Đối với thiết bị không có phòng vệ, POIs có thể được lựa chọn theo các phương pháp đã được đề cập Tuy nhiên, với thiết bị có phòng vệ bằng mặt nạ, việc xác định POIs trở nên khó khăn do chúng xuất hiện không đồng đều Cần phải xác định các điểm POIs tổng hợp có dạng hàm tích và tổng, liên quan đến giá trị trung gian cần tấn công Hiện tại, chưa có phương pháp nào đề xuất để lựa chọn các POIs này, do đó cần một công cụ tự động để "học" các POIs và phát triển các mô hình học sâu cho trường hợp này Nghiên cứu đã chứng minh khả năng áp dụng thành công các mô hình học sâu trong tấn công thiết bị có phòng vệ, nhưng việc lựa chọn kiến trúc học sâu vẫn là thách thức Luận án sẽ trình bày phương pháp tấn công mẫu cho thiết bị có phòng vệ, sử dụng kiến trúc mạng nơ-ron tích chập để phân lớp vết điện năng tiêu thụ.
Mô hình phân lớp đề xuất CNN d
Để phân lớp các vết điện năng tiêu thụ, cần huấn luyện một mô hình phân lớp dựa trên các vết điện năng được gán nhãn theo giá trị trung gian của thuật toán mật mã Mô hình phải học các đặc trưng của dữ liệu và mối quan hệ giữa chúng với nhãn dữ liệu Để thực hiện phân lớp, mô hình cần ít nhất một phần mạng để phát hiện và học các POIs, cùng với một tầng phân lớp Trong các mô hình sử dụng mạng học sâu, mạng nơ-ron tích chập CNN có thể thực hiện cả hai chức năng này, với các tầng tích chập phát hiện đặc trưng dữ liệu và các lớp nơ-ron ẩn theo cấu trúc MLP thực hiện chức năng phân lớp dựa trên các đặc trưng đã học.
Luận án đề xuất một mô hình phân lớp cho vết điện năng tiêu thụ từ thiết bị mặt nạ, dựa trên kiến trúc mạng nơ-ron tích chập, được gọi là CNNd Quá trình xây dựng kiến trúc CNNd bao gồm việc xác định các thành phần như tầng đầu vào, số lượng tầng tích chập, số tầng nơ-ron ẩn, tầng đầu ra và các tham số liên quan đến các tầng này.
Dữ li ệ u và o V ết đ iệ n n ăn g ti ê u t h ụ ( x)
Số kernel: g 1 Kích thước kernel: g 2 Đầu ra CONV
Số kernel: g 3 Kích thước kernel: g 4
Phần mạng để trích chọn đặc trưng/học các POIs của vết điện năng tiêu thụ đầu vào
Phần mạng để phân lớp các vết điện năng tiêu thụ
HO -S CA FL A TT EN
Kiến trúc bộ phân lớp CNNd cho thiết bị mặt nạ được xây dựng dựa trên phân tích các đặc trưng của vết điện năng tiêu thụ, cụ thể là các điểm quan tâm (POIs) xuất hiện khi thiết bị xử lý mặt nạ Các POIs này phân bố tại những thời điểm nhất định và được tách biệt bởi thời gian cần thiết để xử lý các giá trị khác Đối với thiết bị sử dụng mặt nạ bậc nhất, tồn tại hai dải POIs như đã mô tả Do đó, kiến trúc CNNd cần đáp ứng các yêu cầu cụ thể để phân lớp hiệu quả các vết điện năng tiêu thụ của thiết bị mặt nạ.
- Phát hiện các đặc trưng hay các POIs từ các vết điện năng tiêu thụ
Có thể học các đặc trưng kết hợp giữa các điểm POIs thông qua hiệu và tích của chúng, theo biểu thức (3.3) và (3.4) Như đã phân tích trong phần 3.2.3, các đặc trưng này phụ thuộc vào giá trị trung gian tấn công và nhãn của vết điện năng tiêu thụ được sử dụng trong quá trình lập mẫu.
- Có khả năng phân lớp được các vết điện năng tiêu thụ được gán nhãn bởi giá trị trung gian cần tấn công
Kiến trúc mạng CNNd được đề xuất để đáp ứng các yêu cầu này, bao gồm hai khối chính: khối phát hiện các Điểm Quan Tâm (POIs) và khối kết hợp tạo POIs, cùng với khối phân lớp vết.
3.3.1.1 Khối phát hiện POIs và tạo POIs kết hợp
Khối này bao gồm các tầng tích chập và mô-đun HO-SCA được xây dựng với chức năng cụ thể như sau:
Tầng tích chập thứ nhất được sử dụng để phát hiện các điểm quan tâm (POIs) từ vết điện năng tiêu thụ Theo Zaid [33], thông tin về các POIs sẽ được trải rộng khi vết đi qua các tầng tích chập, đặc biệt khi các POIs xuất hiện gần nhau ở các đỉnh của vết (Hình 3.5) Để tối ưu hóa việc phát hiện POIs, CNNd chỉ cần một tầng tích chập, với kích thước bộ lọc đủ lớn để bao phủ vùng các đỉnh Luận án đề xuất sử dụng tầng tích chập có nhân co giãn (dilation convolution) với hệ số co giãn 𝑑 = 1 nhằm giảm thiểu việc sử dụng lại thông tin về POIs ở vùng đỉnh, đồng thời vẫn đảm bảo hiệu quả của tấn công Các hệ số bằng 0 trong bộ lọc sẽ không được cập nhật trong quá trình huấn luyện mạng CNNd.
Hình 3.5 Vết điện năng tiêu thụ tương ứng với các giá trị trung gian khác nhau
Tầng tích chập thứ hai được sử dụng để tạo ra các điểm quan tâm (POIs) kết hợp theo biểu thức (3.3) Sau khi tầng tích chập thứ nhất phát hiện các POIs, mức tiêu thụ điện năng tại đầu ra của tầng này có thể được mô tả bằng công thức (3.7), trong đó (𝑥 𝑢 , 𝑥 𝑢+1 , … , 𝑥 𝑢+𝑙 1 ) đại diện cho các POIs ở dải thứ nhất tương ứng khi thiết bị xử lý mặt nạ.
𝑥 𝑣 , 𝑥 𝑣+1 , … , 𝑥 𝑣+𝑙 2 là các POIs ở dải thứ hai tương ứng khi thiết bị xử lý giá trị được mặt nạ
Thông tin kết hợp giữa các POIs
Hướng trượt nhân tích chập
Hình 3.6 Sự kết hợp giữa các POIs bởi tầng tích chập trong mạng CNN
Để tạo ra sự kết hợp giữa hai dải POIs trong tầng tích chập thứ hai, độ dài của bộ lọc phải đủ lớn để bao quát cả hai dải này Khi bộ lọc di chuyển đến vùng chứa các dải POIs, các đặc trưng đầu ra của tầng tích chập thứ hai sẽ được biểu diễn theo công thức (3.8).
Nếu ở tầng thứ nhất các POIs được phát hiện thì thành phần thứ 3 trong biểu thức (3.8) sẽ xấp xỉ bằng 0 và sẽ được viết lại thành (3.9)
Do các giá trị trọng số 𝜔 𝑗 và 𝜔 𝑘 có thể là dương hoặc âm, các giá trị 𝐶 𝑗 và 𝐶 𝑘 cũng có thể mang giá trị dương hoặc âm Vì vậy, đầu ra của tầng tích chập thứ hai có thể là tổng hoặc hiệu của các 𝐶 𝑗 và 𝐶 𝑘 Đầu ra này được thể hiện dưới dạng hàm kết hợp 𝐶 𝑆 trong biểu thức (3.3), do đó, thông tin ở đầu ra của tầng tích chập thứ hai chứa đựng thông tin kết hợp từ các dải POIs.
Mặc dù thành phần thứ 3 trong (3.8) có giá trị nhỏ, nhưng để đảm bảo mạng không bị ảnh hưởng đến quá trình học các POIs kết hợp, trong quá trình huấn luyện mạng CNN, thành phần này được điều chỉnh gần về 0 Để đạt được điều này, kỹ thuật điều chỉnh L1 (L1-regularization) được áp dụng ở tầng tích chập thứ nhất với mục đích tối thiểu hóa thành phần thứ 3 trong (3.8).
Mô-đun HO-SCA trong kiến trúc mạng CNN có vai trò quan trọng trong việc phát hiện và tổng hợp các điểm POIs liên quan đến vết điện năng tiêu thụ Tầng tích chập thứ nhất phát hiện các dải POIs, trong khi tầng tích chập thứ hai tổng hợp các POIs từ tầng trước để tạo ra các đặc trưng kết hợp Tuy nhiên, phép tích chập chỉ cho phép kết hợp tuyến tính giữa các điểm POIs đầu vào, dẫn đến việc chỉ hàm 𝐶 𝑠 = ℓ 0,𝑖 − ℓ 1,𝑖 được tạo ra ở lối ra của tầng tích chập thứ hai Để tạo ra hàm tích giữa các điểm POIs, mô-đun HO-SCA được thêm vào, nhằm tạo ra các đặc trưng là tích của các điểm POIs Lối ra của mô-đun này sau đó được kết hợp với các đặc trưng từ tầng tích chập thứ hai và đưa vào các lớp nơ-ron ẩn để phục vụ cho quá trình phân loại các vết điện năng tiêu thụ.
3.3.1.2 Khối phân lớp vết điện năng tiêu thụ
Tầng tích chập thứ hai kết hợp với HO-SCA tạo ra các đặc trưng, sau đó được kết hợp tại tầng FLATTEN Những đặc trưng này sẽ được tổng hợp qua mạng nơ-ron ẩn để thực hiện chức năng phân lớp Cuối cùng, tầng đầu ra có số nơ-ron tương ứng với số lượng nhãn của vết điện năng tiêu thụ cần phân loại.
Kiến trúc bộ lớp CNNd bao gồm các tầng tích chập, lớp HO-SCA, tầng FLATTEN, các lớp nơ-ron ẩn và tầng đầu ra Trong mạng nơ-ron tích chập, các tầng POOL được sử dụng sau các tầng tích chập nhằm giảm kích thước đặc trưng đầu ra Vì vậy, trong kiến trúc CNNd, mỗi tầng tích chập đều đi kèm với một tầng POOL, với kích thước và bước trượt được thiết lập là 2.
Kiến trúc phân lớp thường chỉ tối ưu cho một bài toán cụ thể, vì vậy việc thiết kế bộ lọc cho tầng tích chập và các đặc trưng phù hợp là rất quan trọng Ngoài ra, các tham số khác của kiến trúc CNN như số lượng bộ lọc, kích thước bộ lọc, số lượng tầng nơ-ron ẩn và số nơ-ron trong mỗi tầng cũng cần được tối ưu hóa Hiện tại, chưa có giải pháp cụ thể để xác định các tham số này, do đó, luận án đề xuất sử dụng thuật toán tối ưu dựa trên hành vi săn mồi của bầy sói (GWO) để tìm ra các tham số tối ưu.
Tối ưu tham số cho mô hình phân lớp CNN d
Trong kiến trúc CNNd, số lượng các tầng đã được xác định, nhưng giá trị của các tham số vẫn chưa được xác định Bộ tham số của CNN bao gồm {𝛾 1, 𝛾 2, 𝛾 𝛾 3, 𝛾 4, 𝛿 1, 𝛿 2} nằm trong một dải rộng Để đạt được độ chính xác cao trong phân lớp khi huấn luyện CNNd, cần thử nghiệm tất cả các tổ hợp tham số và chọn bộ tham số cho kết quả tốt nhất Do không gian tham số lớn, cần áp dụng một thuật toán tối ưu để tìm kiếm Hiện nay, các thuật toán tối ưu dựa trên trí tuệ bầy đàn đã được sử dụng thành công trong nhiều lĩnh vực, bao gồm cả việc lựa chọn tham số cho các thuật toán học máy.
Luận án này đề xuất áp dụng thuật toán Grey Wolf Optimization (GWO), một phương pháp tối ưu hóa dựa trên hành vi săn mồi của bầy sói, nhằm tìm kiếm bộ tham số tối ưu cho mạng nơ-ron tích chập (CNN).
GWO mô phỏng hành vi xã hội và săn mồi của bầy sói xám, với hệ thống phân cấp gồm các cấp 𝛼, 𝛽, 𝛿, 𝜔 Con đầu đàn, gọi là Alpha, quyết định về săn bắt và nơi ở, trong khi Beta là những con sói dưới quyền Alpha nhưng cũng chỉ huy các sói cấp thấp hơn Omega là bậc thấp nhất, thường yếu ớt và phụ thuộc vào đàn Delta, mặc dù phụ thuộc vào Alpha và Beta, nhưng có vai trò quan trọng trong việc theo dõi lãnh thổ và bảo vệ bầy Săn mồi theo bầy là một hành vi xã hội nổi bật, bao gồm các giai đoạn khoanh vùng, rượt đuổi và tấn công con mồi khi nó ngừng di chuyển.
Trong giai đoạn khoanh vùng, bày sói liên tục cập nhật vị trí của chúng dựa trên vị trí của con mồi, và quá trình cập nhật này có thể được mô tả bằng biểu thức (3.11).
Trong mô hình săn mồi của sói xám, công thức 𝑋 (𝑡 + 1) = 𝑋 𝑝 (𝑡) − 𝐴 𝐷⃗⃗ thể hiện sự thay đổi vị trí của sói xám theo vị trí của con mồi Ở đây, 𝑡 là vị trí lặp hiện tại, 𝑋 𝑝 là véc-tơ vị trí của con mồi, và 𝑋 là vị trí của sói Các vector hệ số 𝐴 và 𝐶 được xác định bằng 𝐴 = 2𝑎 𝑟 1 − 𝑎 và 𝐶 = 2 𝑟 2, trong đó 𝑎 giảm dần từ 2 đến 0 trong suốt quá trình lặp, còn 𝑟 1 và 𝑟 2 là các vector ngẫu nhiên trong khoảng [0,1] Để mô phỏng hành vi săn mồi, giả sử rằng các cá thể Alpha, Beta và Delta có vị trí tốt hơn so với con mồi, do đó ba giải pháp tốt nhất được tìm thấy cho đến thời điểm này sẽ hướng dẫn các cá thể khác, bao gồm cả Omega, trong việc cập nhật vị trí của chúng theo các cá thể tìm kiếm tốt nhất, như được Mirjalili đề xuất trong các biểu thức (3.12).
Trong đó, 𝑋 1 , 𝑋 2 , 𝑋 3 là vị trí của alpha, beta và delta
Trong quá trình săn mồi, sói xám kết thúc cuộc tấn công khi con mồi ngừng di chuyển Để mô phỏng toán học, chúng ta giảm giá trị của 𝑎, dẫn đến độ biến thiên của 𝐴 giảm theo 𝑎 Giá trị 𝐴 là ngẫu nhiên trong khoảng [−2𝑎, 2𝑎], với 𝑎 giảm từ 2 xuống 0 trong quá trình lặp Khi 𝐴 nằm trong khoảng [−1,1], vị trí tiếp theo của sói có thể ở bất kỳ điểm nào giữa vị trí hiện tại và vị trí của con mồi Nếu |𝐴| < 1, sói buộc phải tấn công con mồi; nếu không, bầy sói sẽ tách ra để tìm kiếm rộng hơn.
Quá trình tìm tham số cho CNNd bởi thuật toán GWO được đề xuất dựa trên thuật toán gốc GWO và được thể hiện bởi Thuật toán 3.1
Thuật toán 3.1: Thuật toán tìm tham số cho CNN d Đầu vào:
- Số lượng tham số cần tìm: 𝑝𝑜𝑝 𝑠𝑖𝑧𝑒
- Số lần lặp tối đa: 𝑀𝑎𝑥 𝑖𝑡𝑒𝑟
- Tập vết điện năng tiêu thụ được gán nhãn Đầu ra:
- Bộ tham số tối ưu 1:
Chia tập vết thành 02 tập: tập huấn luyện 𝑇𝑟, tập kiểm tra 𝑇𝑒;
Khởi tạo các tham số 𝑎, 𝐴 và 𝐶;
𝐟𝐨𝐫 (mỗi lời giải 𝑋 𝑖 trong bày sói) do Thiết lập một mô hình CNN với các tham số là 𝑋 𝑖 Huấn luyện CNN với tập 𝑇𝑟
Tính hàm mục tiêu của lời giải 𝑋 𝑖 : sử dụng công thức (3.14) để tính độ chính xác phân lớp của CNN với tập 𝑇𝑒
13: Đặt 𝑋 𝛼 là lời giải tốt nhất Đặt 𝑋 𝛽 là lời giải tốt thứ hai Đặt 𝑋 𝛿 là lời giải tốt thứ ba
27: while (số lần lặp < 𝑀𝑎𝑥 𝑖𝑡𝑒𝑟 ) do for (mỗi lời giải 𝑋 𝑖 trong bày sói) do Cập nhật vị trí của 𝑋 𝑖 theo công thức (3.12) Thiết lập một mô hình CNN với các tham số là 𝑋 𝑖 Huấn luyện CNN với tập 𝑇𝑟
Tính hàm mục tiêu của lời giải 𝑋 𝑖 : sử dụng công thức (3.14) để tính độ chính xác phân lớp của CNN với tập 𝑇𝑒 end for
Cập nhật 𝑎, 𝐴, 𝐶 Cập nhật 𝑋 𝛼 , 𝑋 𝛽 , 𝑋 𝛿 Tăng số lần lặp lên 1
End while Return: 𝑋 𝛼 là tham số tốt nhất cho CNNd
Các tham số của CNNd đóng vai trò quan trọng trong việc nâng cao độ chính xác phân lớp Để tối ưu hóa bộ tham số {𝛾 1 , 𝛾 2 , 𝛾 3 , 𝛾 4 , 𝛿 1 , 𝛿 2 }, cần thiết phải xác định chúng trong một dải rộng Thuật toán GWO được áp dụng nhằm tìm ra các tham số tối ưu dựa trên hàm mục tiêu là độ chính xác của CNNd Mỗi giải pháp trong không gian tìm kiếm của bầy sói sẽ chứa những tham số này để cải thiện hiệu suất của mô hình.
Thuật toán GWO được áp dụng cho các bài toán với không gian tìm kiếm liên tục cho mỗi cá thể, trong khi các tham số của CNN là giá trị rời rạc Để giải quyết vấn đề này, luận án sử dụng một hàm chuyển đổi nhằm chuyển đổi các vector số thực mô tả vị trí của mỗi cá thể trong không gian tìm kiếm thành vector số nguyên theo công thức (3.13).
Trong bài viết này, 𝑥 𝑖𝑗 được sử dụng để mô tả vị trí thực tế của 𝑋 𝑖, trong khi 𝑦 𝑖𝑗 là vector số nguyên thể hiện vị trí của 𝑋 𝑖 Thêm vào đó, 𝑏 𝑗 đại diện cho số cột của 𝑋 𝑖, và 𝑙𝑏 cùng 𝑢𝑏 là các giới hạn dưới và trên trong không gian tìm kiếm.
Lựa chọn hàm mục tiêu:
Thuật toán tối ưu tìm tham số bắt đầu bằng việc khởi tạo số lượng cá thể tìm kiếm ngẫu nhiên, mô tả vị trí của chúng Số lượng vị trí này tương ứng với số tham số cần tối ưu của CNNd qua GWO Mỗi cá thể tìm kiếm đại diện cho một giải pháp với các giá trị tham số của CNN Sau giai đoạn khởi tạo, các thế hệ mới của quần thể tìm kiếm được tạo ra trong quá trình lặp của thuật toán Để đánh giá hiệu quả của từng giải pháp, cần định nghĩa một hàm mục tiêu cho quá trình tối ưu Trong phương pháp đề xuất, độ chính xác phân lớp của CNNd trên tập kiểm tra được sử dụng làm hàm mục tiêu, trong đó |𝑍| là số lớp cần phân loại, 𝑇𝑃 𝑖 là tổng số vết thuộc lớp 𝑖 được phân loại đúng và 𝐹𝑃 𝑖 là tổng số vết thuộc lớp 𝑖 được phân loại sai.
Kết quả thực hiện: Kết quả thực nghiệm sử dụng GWO để tìm bộ tham số cho
CNNd với bộ dữ liệu ASCAD, trong đó có 45000 vết dùng trong pha huấn luyện,
5000 vết cho pha kiểm tra, được cho bởi Bảng 3.2
Bảng 3.2 Tham số của CNNd cho bởi GWO
Tên tham số Giá trị trước GWO Giá trị sau GWO
Số bộ lọc tầng CONV1: 𝛾 1 1 − 10 4
Kích thước bộ lọc tầng CONV1: 𝛾 2 1 − 10 3
Số bộ lọc tầng CONV2: 𝛾 3 1 − 20 8
Kích thước bộ lọc tầng CONV2: 𝛾 4 20 − 100 51
Số tầng tầng nơ-ron ẩn: 𝛿 1 1 − 3 2
Đánh giá bộ phân lớp CNN d
Bảng 3.3 So sánh kiến trúc và tham số các bộ phân lớp
CNN P [32] CNN z [33] CNN d (đề xuất)
Dựa trên kiến trúc CNN VGG16 sử dụng trong xử lý ảnh
Dựa trên kỹ thuật trực quan hóa vector trọng số
Dựa trên đặc điểm dữ liệu đầu vào, áp dụng kỹ thuật tối ưu GWO để tìm tham số
- 5 tầng: số bộ lọc tương ứng
- Average pooling sau mỗi tầng tích chập
- 1 tầng: số bộ lọc 4, kích thước 3
- Average pooling (2,2) sau mỗi tầng tích chập
- Tầng 1: số bộ lọc 4, kích thước 3, sử dụng dialation convolution với 𝑑 = 1, 𝐿1 − 𝑅𝑒𝑔𝑢𝑙𝑎𝑟𝑖𝑧𝑎𝑡𝑖𝑜𝑛
- Tầng 2: số filter 8, kích thước 51
- Average pooling (2,2) sau mỗi tầng tích chập
HO-SCA Không có Không có Có
Số tầng kết nối đầy đủ
2 tầng: 10 nơ- ron/tầng 2 tầng: 10 nơ-ron/tầng
256 nơ-ron, hàm kích hoạt 𝑠𝑜𝑓𝑡𝑚𝑎𝑥
256 nơ-ron, hàm kích hoạt 𝑠𝑜𝑓𝑡𝑚𝑎𝑥
256 nơ-ron, hàm kích hoạt 𝑠𝑜𝑓𝑡𝑚𝑎𝑥
Bảng 3.3 trình bày kiến trúc và các tham số của một số bộ phân lớp dùng để phân loại vết điện năng tiêu thụ của thiết bị mặt nạ CNNd được thiết kế dựa trên đặc điểm dữ liệu đầu vào là các POIs của vết điện năng tiêu thụ, với các tham số được tối ưu hóa bằng thuật toán GWO So với CNNP[50] và CNNz[52], CNNd có sự phù hợp tốt hơn và hiệu quả tấn công cao hơn nhờ vào việc tối ưu hóa thông qua thực nghiệm Về mặt kiến trúc, CNNd nhỏ gọn hơn nhiều so với CNNP và tương đương với CNNz Phương pháp tấn công cho thiết bị mặt nạ CNN-D được đề xuất nhằm nâng cao hiệu quả tấn công.
Luận án này đề xuất áp dụng bộ phân lớp CNNd vào phương pháp tấn công mẫu sử cho thiết bị có phòng vệ bằng phương pháp mặt nạ, gọi là CNN-D Các giả định và quy trình tấn công sẽ được mô tả chi tiết trong bài viết dưới đây.
Các giả định tấn công
Khi thực hiện tấn công trên thiết bị có mặt nạ, một số giả định sau được đặt ra: Đối với thiết bị cần tấn công:
Người tấn công có khả năng điều khiển thiết bị thông qua tập bản rõ đầu vào và theo dõi tập bản mã đầu ra Họ có thể đo lường vết điện năng tiêu thụ trong suốt quá trình hoạt động của thiết bị, đặc biệt là đối với các thiết bị lập mẫu, nhằm mô hình hóa điện năng tiêu thụ hiệu quả.
- Là bản sao của thiết bị cần tấn công
Kẻ tấn công có khả năng điều khiển thiết bị bằng cách sử dụng tập bản rõ đầu vào và theo dõi tập bản mã đầu ra Họ có thể đo lường các vết điện năng tiêu thụ trong suốt quá trình hoạt động của thiết bị.
Người tấn công có khả năng tạo ra bộ mẫu cho các khóa của thiết bị, cho phép họ nắm rõ khóa của thiết bị mẫu và điều chỉnh nó trong quá trình mã hóa.
Kẻ tấn công không nắm rõ chi tiết về cách cài đặt thuật toán mã hóa, nhưng họ biết thuật toán đã được triển khai và có thể sử dụng sơ đồ mặt nạ.
Người tấn công không nắm rõ thiết kế và giá trị của bộ phát số ngẫu nhiên trong thiết bị, dẫn đến việc họ không thể biết các giá trị mặt nạ được sử dụng Điều này tạo ra một lớp bảo mật, giúp ngăn chặn các cuộc tấn công tiềm ẩn.
Quy trình tấn công
Sơ đồ tấn công mẫu cho thiết bị có phòng vệ bằng mặt nạ được xây dựng dựa trên phương pháp tấn công mẫu chuẩn, bao gồm hai pha chính: pha lập mẫu và pha tấn công, như thể hiện trong Hình 3.7.
Trong quá trình lập mẫu, người tấn công xây dựng mô hình điện năng tiêu thụ của thiết bị mẫu bằng cách huấn luyện mô hình phân lớp CNNd dựa trên các vết điện năng tiêu thụ của thiết bị Quá trình này bao gồm các bước cụ thể nhằm tối ưu hóa độ chính xác của mô hình.
Lựa chọn điểm tấn công trong thuật toán mật mã, chẳng hạn như lối ra Sbox, là rất quan trọng Giá trị trung gian tấn công được xác định bởi công thức 𝑧 𝑖 = 𝑠𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘) Việc hiểu rõ cách thức hoạt động của Sbox và giá trị trung gian giúp tối ưu hóa hiệu quả tấn công.
𝑘 là khóa của thiết bị mẫu
Để xây dựng bộ dữ liệu huấn luyện, sử dụng 𝑁 𝑝 bản rõ làm đầu vào cho thiết bị mẫu thực thi thuật toán mật mã Trong quá trình mã hóa tại điểm tấn công, thu thập các vết điện năng tiêu thụ 𝑥 𝑖 ∈ 𝑅 𝑇, với 𝑖 = 1, … , 𝑁 𝑝 Các vết này được gán nhãn tương ứng là 𝑧 𝑖 = 𝑠𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘); 𝑖 = 1, … , 𝑁 𝑝 Đối với thuật toán AES, giá trị đầu ra 𝑠𝑏𝑜𝑥 là 1 byte, vì vậy 𝑧 𝑖 thuộc tập hợp (0, 1, … , 255).
Bộ dữ liệu vết điện năng tiêu thụ đã được gán nhãn ở bước 2 sẽ được sử dụng để huấn luyện mô hình phân lớp CNNd, giúp mô hình tổng quát hóa sự phụ thuộc giữa các vết điện năng tiêu thụ và giá trị trung gian giả thiết 𝑧 𝑖 Sau khi hoàn thành quá trình huấn luyện, bộ phân lớp CNNd sẽ được áp dụng để phân loại các vết điện năng tiêu thụ mới trong pha tấn công.
Thu thập các vết điện năng tiêu thụ
Tập các vết điện năng tiêu thụ được gán nhãn z i (i=1:m)
Các giá trị trung gian cần phân lớp
Tập vết tấn công (chưa gán nhãn)
Mô hình CNN d đã huấn luyện Ước lượng hợp lý lớn nhất
Xác suất vết thuộc một lớp
Hình 3.7 Sơ đồ tấn công cho thiết bị mặt nạ CNN-D
Trong quá trình tấn công, mục tiêu chính của kẻ tấn công là xác định khóa bí mật của thiết bị Một tập hợp các vết điện năng tiêu thụ được thu thập từ thiết bị sẽ được đưa vào bộ phân lớp CNN đã được huấn luyện trước đó để xác định xác suất của các vết tương ứng Những giá trị xác suất này sẽ được sử dụng trong bộ ước lượng hợp lý lớn nhất để tìm ra khóa chính xác của thiết bị Điểm số quyết định cho mỗi ứng viên khóa được tính toán dựa trên ước lượng hợp lý lớn nhất, được biểu diễn bởi công thức log Lk, trong đó xác suất được tính từ các vết điện năng tiêu thụ.
Với 𝑧 𝑗 = 𝑆𝑏𝑜𝑥(𝑝𝑡 𝑖 , 𝑘) và 𝑝𝑡 𝑖 là bản rõ tương ứng với vết điện năng tiêu thụ 𝒙 𝑖, một ứng viên khóa 𝑘 𝑐 trong tất cả các khóa giả thiết có ước lượng hợp lý lớn nhất được xem là khóa đúng cần tìm.
Chi tiết các bước cần thực hiện trong pha tấn công được mô tả như sau:
B1: Người tấn công cần có được thiết bị cần tấn công giống với thiết bị được sử dụng trong pha lập mẫu
B2: Cần xác định điểm tấn công Đây là điểm giống với điểm được sử dụng trong pha lập mẫu, ví dụ như lối ra Sbox
B3: Đo lường điện năng tiêu thụ 𝑁 𝑎 từ thiết bị tấn công là cần thiết Các dữ liệu này phản ánh điện năng tiêu thụ phát sinh từ các phép toán được thực hiện trong quá trình tấn công Chẳng hạn, điện năng tiêu thụ của thiết bị khi thực hiện phép toán Sbox có thể được ghi lại và phân tích.
B4: Mô hình CNNd đã được huấn luyện trong giai đoạn lập mẫu để xác định xác suất phân lớp các vết điện năng tiêu thụ của thiết bị tấn công vào các nhãn khác nhau Kết quả của bước này là ma trận (3.17), trong đó 𝐶𝑁𝑁 𝑑 (𝑡 𝑖 ) 𝑗 thể hiện xác suất của vết điện năng tiêu thụ 𝑡 𝑖 thuộc lớp 𝑧 𝑗 do mạng CNNd phân lớp Trong giai đoạn lập mẫu, CNNd được huấn luyện để phân lớp cho 256 nhãn của vết điện năng tiêu thụ, với 𝑗 = 0,1,…,255.
B5: Khôi phục khóa của thiết bị tấn công bằng cách sử dụng hàm ước lượng hợp lý (3.15) Bước này được thực hiện bởi 3 giai đoạn như sau:
Khi một kẻ tấn công cố gắng tìm byte khóa 𝑘 trong quá trình tấn công thuật toán mã hóa, bước đầu tiên của họ là tính toán giá trị đầu ra Sbox cho tất cả các bản rõ 𝑝𝑡 𝑖.
Trong bài viết này, chúng ta xem xét tất cả các giá trị có thể của khóa 𝑘, với 𝑘 có độ lớn 1 byte, dẫn đến 256 giá trị từ 0 đến 255 Kết quả thu được là ma trận 𝑷 kích thước (𝑁 𝑎 , 256), được biểu diễn bởi công thức (3.18) Mỗi phần tử trong ma trận được ký hiệu là 𝑝 𝑖,𝑗, trong đó 𝑖 và 𝑗 là chỉ số cột và hàng, mô tả đầu ra Sbox của phép XOR giữa bản rõ của vết 𝑡 𝑖 và một khóa 𝑘 𝑗.
Người tấn công thay thế các phần tử 𝑝 𝑖,𝑗 trong ma trận 𝑃 bằng giá trị 𝐶𝑁𝑁(𝑡 𝑖 ) 𝑝 𝑖,𝑗 được mô tả trong ma trận 𝑫 theo biểu thức (3.17) Kết quả là ma trận 𝑆 được thể hiện qua (3.19), trong đó mỗi phần tử 𝑠 𝑖,𝑗 phản ánh xác suất của một vết điện năng tiêu thụ 𝑡 𝑖, với byte bản rõ đầu vào 𝑝𝑡 𝑖 được mã hóa bằng khóa 𝑘 𝑗 = 𝑗.
Cuối cùng, người tấn công tính tổng logarit các phần tử của từng cột trong ma trận S để xác định điểm số quyết định cho mỗi giá trị khả thi của 𝑘 Việc này thực hiện theo biểu thức (3.15) Trong số 256 cột của ma trận S, cột có điểm số quyết định cao nhất chỉ ra chỉ số cột đó là khóa hợp lý nhất cho thiết bị tấn công Biểu thức (3.16) tổng quát hóa quy trình này.
Thực nghiệm tấn công CNN-D
Trong phần này, luận án trình bày kết quả thực nghiệm tấn công mẫu nhằm tìm khóa của thuật toán AES-128 trên thẻ thông minh sử dụng biện pháp phòng vệ bằng mặt nạ Để so sánh hiệu quả tấn công với các phương pháp khác, luận án áp dụng bộ vết điện năng tiêu thụ ASCAD, với số lượng vết được sử dụng trong các pha lập mẫu và tấn công được mô tả chi tiết trong Bảng 3.4 Số lượng vết trong pha lập mẫu và tấn công lần lượt là
Trong nghiên cứu này, số lượng mẫu được sử dụng là 𝑁 𝑝 = 50000 và 𝑁 𝑎 = 10000 Số vết trong pha lập mẫu được chia thành hai phần: 45000 vết dành cho huấn luyện mạng nơ-ron tích chập (CNN) và 5000 vết để kiểm tra hiệu suất Các vết trong pha lập mẫu đã được gán nhãn dựa trên giá trị trung gian tại lối ra Sbox của AES-128, cụ thể là 𝑧 𝑖 𝑠𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘), trong khi các vết trong pha tấn công vẫn chưa được xác định nhãn.
Bảng 3.4 Dữ liệu sử dụng trong tấn công
Dữ liệu sử dụng trong pha lập mẫu Dữ liệu sử dụng trong pha tấn công
Vết điện năng tiêu thụ(𝑥 𝑖 ∈
Vết điện năng tiêu thụ (𝑥 𝑖 ∈
Kết quả thực ngiệm
Trong quá trình lập mẫu, bộ phân lớp CNNd được huấn luyện bằng các vết điện năng thu thập từ thiết bị mẫu Hình 3.8 chỉ ra rằng độ chính xác của CNNd tăng lên theo số epochs, cho thấy khả năng tổng quát hóa dữ liệu tốt của nó Khi số lượng epochs đạt từ 80 đến 100, độ chính xác không tăng đáng kể, do đó không cần thiết phải sử dụng hơn 100 epochs Hình 3.8 cũng trình bày độ chính xác của CNNP của Prouf và CNNZ của Zaid với cùng bộ dữ liệu huấn luyện, cho thấy rằng CNNd đạt độ chính xác cao nhất nhờ vào việc được thiết kế để học các POIs và tạo ra các đặc trưng kết hợp từ vết điện năng tiêu thụ của thiết bị mặt nạ.
Hình 3.8 Hiệu quả phân lớp của CNNd
Trong quá trình tấn công, mô hình CNNd được huấn luyện trước đó được áp dụng để xác định xác suất các vết điện năng tiêu thụ thuộc vào lớp 𝑧 𝑖 từ 0 đến 255 Sử dụng 𝑁 𝑎 vết điện năng tiêu thụ tương ứng với các bản rõ 𝑝 𝑖, ước lượng hợp lý của các khóa 𝑘 (𝑘 = 𝑆𝑏𝑜𝑥(𝑝 𝑖 + 𝑧 𝑖 )) nhận giá trị từ 0 đến 255, với khóa 𝑘 = 224 có ước lượng hợp lý lớn nhất, cho thấy đây là khóa đúng cần tìm Giá trị này khớp với khóa được sử dụng trong bộ dữ liệu ASCAD, chứng minh rằng phương pháp tấn công đề xuất có khả năng xác định khóa đúng của thiết bị.
Hình 3.9 Điểm số quyết định của các khóa đối với bộ dữ liệu ASCAD
Hình 3.10 minh họa độ tin cậy trong việc xác định khóa đúng so với các khóa sai dựa trên số lượng vết điện năng tiêu thụ trong tấn công Khi số lượng vết tăng lên, khả năng phân biệt giữa khóa đúng và khóa sai cũng gia tăng, cho thấy rằng phương pháp tấn công đề xuất có khả năng xác định khóa đúng một cách đáng tin cậy.
Hình 3.10 Điểm số quyết định của các khóa theo số vết tấn công
Hình 3.11 thể hiện hiệu quả tấn công bằng cách mô tả hạng của khóa dựa trên số lượng điện năng tiêu thụ trong quá trình tấn công, so sánh với các phương pháp khác nhau.
Tấn công sử dụng mô hình CNNz do Zaid đề xuất có tốc độ hội tụ chậm hơn so với tấn công sử dụng CNNd Điều này cho thấy phương pháp tấn công với CNNd yêu cầu ít năng lượng tiêu thụ hơn để xác định khóa đúng.
So sánh số lượng vết điện năng tiêu thụ để tấn công và tìm được khóa đúng cho thấy tấn công sử dụng CNNd đạt hiệu quả tốt nhất, với số lượng vết điện năng tiêu thụ giảm từ 191 xuống 146, tương ứng với mức giảm 23% Kết quả này nhờ vào kiến trúc bộ phân lớp CNNd, được thiết kế để học các POIs và tạo ra các đặc trưng kết hợp giữa các POIs, hỗ trợ cho việc xác định nhãn của vết điện năng tiêu thụ từ thiết bị mặt nạ.
Hình 3.11 thể hiện sự so sánh giá trị GE giữa các phương pháp sử dụng bộ dữ liệu ASCAD Bảng 3.6 trình bày sự khác biệt về số lượng vết khi GE=0 đối với các phương pháp tấn công khác nhau.
Tấn công dựa trên CNNp [32]
Tấn công dựa trên CNNz [33]
Tấn công dựa trên CNNd
Đánh giá và thảo luận
Dựa trên quy trình thực hiện tấn công đối với thiết bị mặt nạ và các kết quả thử nghiệm, có thể rút ra một số nhận xét đánh giá về phương pháp tấn công này.
Phương pháp tấn công mẫu này được áp dụng cho các thiết bị có cơ chế phòng vệ bằng mặt nạ, trong đó mô hình phân lớp CNNd được sử dụng để phân loại các vết điện năng tiêu thụ Quá trình lựa chọn các Điểm Quan Tâm (POIs) được tự động thực hiện bởi các lớp tích chập của CNNd.
Kiến trúc CNNd được thiết kế đặc biệt cho các cuộc tấn công nhằm phân tích đặc điểm của các Điểm Quan Tâm (POIs) trên thiết bị có khả năng phòng vệ Các bộ lọc trong tầng tích chập được tối ưu hóa để cải thiện khả năng học hỏi từ các POIs, trong khi các tham số của CNNd được xác định thông qua thuật toán tối ưu GWO.
(3) Về khả năng khôi phục khóa, tấn công này có khả năng khôi phục được khóa đúng của thiết bị đã được phòng vệ bởi mặt nạ
Hiệu quả tấn công cho thấy rằng, số vết điện năng tiêu thụ cần thiết để khôi phục khóa thành công cho thiết bị có phòng vệ mặt nạ giảm 23% so với các kết quả tốt nhất hiện tại được công bố bởi Zaid.
Chương này của luận án đề xuất một phương pháp tấn công mẫu mới sử dụng mô hình phân lớp CNNd dựa trên kiến trúc mạng nơ-ron tích chập để tấn công các thiết bị có phòng vệ bằng phương pháp mặt nạ Kiến trúc CNNd có khả năng phát hiện các đặc trưng của vết điện năng tiêu thụ và áp dụng chúng trong quá trình phân lớp Sau khi xác định kiến trúc cơ bản, các tham số còn lại được tối ưu hóa bằng thuật toán GWO, cho thấy GWO có thể tìm ra tham số tối ưu cho CNNd trong tấn công mẫu Kết quả thực nghiệm cho thấy số vết điện năng tiêu thụ cần thiết để khôi phục khóa thành công giảm 23% so với các phương pháp hiện tại Đóng góp chính của chương là đề xuất phương pháp tấn công mẫu hiệu quả cho thiết bị có phòng vệ mặt nạ thông qua kiến trúc CNN-D dựa trên mạng nơ-ron tích chập.
KẾT LUẬN VÀ ĐỀ XUẤT
Luận án này nghiên cứu các phương pháp tấn công phân tích điện năng tiêu thụ, đề xuất những phương pháp tấn công hiệu quả cho cả thiết bị không có và có phòng vệ Kết quả thực nghiệm cho thấy các tấn công này thực sự hiệu quả trong việc tìm khóa đúng của thiết bị mật mã Các tấn công phân tích điện năng tiêu thụ có thể thực hiện thành công trên cả hai loại thiết bị mật mã, cho thấy tính nghiêm trọng của vấn đề bảo mật.
Các phương pháp tấn công được đề xuất trong luận án đã chứng minh hiệu quả vượt trội so với các phương pháp khác trong cùng điều kiện tấn công, nhờ vào việc áp dụng các kỹ thuật như VMD để giảm nhiễu và trích xuất thông tin hữu ích từ vết điện năng tiêu thụ Luận án cũng kết hợp các kỹ thuật lựa chọn điểm POIs giữa VMD, GSO và SVM, cùng với việc sử dụng học máy, học sâu và tối ưu tham số để nâng cao hiệu quả tấn công Các kết quả đạt được từ luận án đã thể hiện rõ ràng sự tiến bộ trong lĩnh vực này.
Luận án đã phát triển các phương pháp tấn công phân tích điện năng tiêu thụ hiệu quả đối với thiết bị mật mã, áp dụng cho cả thiết bị không có phòng vệ và thiết bị có phòng vệ Đối với thiết bị không có phòng vệ, các phương pháp này cho thấy khả năng khai thác thông tin nhạy cảm từ quá trình tiêu thụ điện năng.
1 Xây dựng phương pháp tấn công phân tích điện năng tiêu thụ tương quan hiệu quả sử dụng kỹ thuật phân tích mode biến phân VMD-CPA Phương pháp này cho phép giảm số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa đúng khoảng 25% so với tấn công CPA truyền thống VMD-CPA đặc biệt hiệu quả trong các kịch bản tấn công thực tế khi các vết điện năng tiêu thụ chứa nhiễu, số lượng vết điện năng tiêu thụ giảm hơn 50%
2 Xây dựng được phương pháp tấn công mẫu hiệu quả VMD-GSO-SVM với phương pháp lựa chọn POIs bằng cách kết hợp giữa kỹ thuật phân tích mode biến phân, quá trình trực giao Gram-Schmidt và máy véc-tơ hỗ trợ Hiệu quả của phương pháp tốt hơn các phương pháp tấn công mẫu sử dụng SVM với các phương pháp lựa chọn POIs là dựa trên phân tích tương quan và chuẩn hóa được thể hiện ở số lượng vết điện năng tiêu thụ để GE=0 giảm cỡ khoảng 40%, nó cũng đặc biệt hiệu quả trong trường hợp các vết điện năng tiêu thụ có nhiễu khi số lượng vết giảm 60% Đối với thiết bị có phòng vệ :
3 Xây dựng phương pháp tấn công mẫu đối với thiết bị có phòng vệ bằng mặt nạ sử dụng kiến trúc mạng nơ-ron tích chập CNNd Kiến trúc mạng CNNd được xây dựng dựa trên các đặc điểm POIs của thiết bị có phòng vệ bằng mặt nạ cùng với các tham số được tối ưu bởi thuật toán GWO Kết quả khi sử dụng kiến trúc này để tấn công, số lượng vết điện năng tiêu thụ cần thiết để GE=0 giảm cỡ 23% so với kết quả được xem là tốt nhất tại thời điểm tham chiếu Ý nghĩa khoa học và thực tiễn :
Dựa trên các mục tiêu và kết quả đã đạt được, luận án này mang lại ý nghĩa khoa học quan trọng, góp phần làm rõ các vấn đề nghiên cứu và mở rộng kiến thức trong lĩnh vực liên quan.
1 Xây dựng phương pháp tấn công phân tích điện năng tiêu thụ tương quan hiệu quả sử dụng kỹ thuật sử dụng kỹ thuật phân tích mode biến phân VMD-CPA
2 Xây dựng phương pháp tấn công mẫu hiệu quả VMD-GSO-SVM với kỹ thuật lựa chọn POIs kết hợp giữa kỹ thuật phân tích mode biến phân, trực giao hóa Gram-Schmidt và SVM
3 Xây dựng phương pháp tấn công mẫu đối với các thiết bị có phòng vệ bằng phương pháp mặt nạ CNN-D Ý nghĩa thực tiễn:
1 Kết quả luận án là cơ sở thực tiễn kiểm chứng khả năng tấn công phân tích điện năng tiêu thụ có thể thực hiện trên các thiết bị mật mã cụ thể