Các nghiên cứu liên quan
Các tấn công SCA được chia thành hai loại chính: tấn công không có bản mẫu (NPA) và tấn công có bản mẫu (PA) Tấn công NPA diễn ra khi kẻ tấn công chỉ có thiết bị cần tấn công và thông tin kênh kề trong quá trình thiết bị hoạt động Hai phương pháp cơ bản của NPA là tấn công phân tích điện năng tiêu thụ vi sai (DPA) và tấn công phân tích điện năng tiêu thụ tương quan (CPA) Quy trình thực hiện các tấn công này bao gồm ba bước: Bước 1, kẻ tấn công sử dụng một tập bản rõ ngẫu nhiên để thực thi mã hóa và ghi lại điện năng tiêu thụ Bước 2, với các khóa giả thiết, kẻ tấn công xây dựng dữ liệu mô tả điện năng tiêu thụ giả định của thiết bị Bước 3, kẻ tấn công áp dụng công cụ thống kê để tìm mối tương quan giữa điện năng tiêu thụ giả định và thực tế, từ đó xác định khóa đúng dựa trên tương quan lớn nhất.
Tấn công có bản mẫu (PA), hay tấn công mẫu, yêu cầu người tấn công có một thiết bị mẫu hoàn chỉnh để thực hiện tấn công Có hai dạng cơ bản của tấn công này: tấn công mẫu đơn giản và tấn công mẫu dựa trên mô hình học máy Quá trình tấn công được chia thành hai pha: pha lập mẫu và pha tấn công Trong pha lập mẫu, thiết bị mẫu được sử dụng để xây dựng mô hình điện năng tiêu thụ dựa trên các giá trị khác nhau của khóa, thông qua việc thu thập vết điện năng tiêu thụ khi thực thi mã hóa Tiếp theo, trong pha tấn công, người tấn công sử dụng các vết điện năng tiêu thụ từ thiết bị mục tiêu để so sánh với mô hình đã xây dựng, nhằm xác định khóa tương ứng với các vết này Khóa có điểm số cao nhất sẽ được xác định là khóa của thiết bị cần tấn công.
Các dạng tấn công mẫu và không bản mẫu có thể được sử dụng để tìm khóa đúng của thiết bị, cả khi có và không có phòng vệ Tuy nhiên, việc tấn công thiết bị có phòng vệ gặp nhiều khó khăn hơn, đòi hỏi nhiều vết điện năng tiêu thụ để xác định khóa đúng Hơn nữa, trong quá trình tấn công, cần áp dụng các giải pháp tiền xử lý vết điện năng tiêu thụ hoặc lựa chọn phương pháp xây dựng mô hình điện năng tiêu thụ phù hợp, bởi khóa của thiết bị thường bị che giấu do các biện pháp phòng vệ đã được cài đặt.
Để nâng cao hiệu quả tấn công, các phương pháp chính thường được áp dụng bao gồm: giảm nhiễu cho các vết điện năng tiêu thụ, cải thiện độ 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ị, và phát triển phương pháp tấn công cho các thiết bị đã được bảo vệ.
Hướng thứ 1: Giảm nhiễu cho vết điện năng tiêu thụ
Các tấn công phân tích khóa thiết bị dựa vào vết điện năng tiêu thụ, được thu thập qua các thiết bị đo lường Tuy nhiên, vết điện năng tiêu thụ thường bị nhiễu từ nhiều nguồn khác nhau, bao gồm nhiễu điện từ và nhiễu môi trường Giảm thiểu nhiễu sẽ giúp làm nổi bật thông tin về điện năng tiêu thụ, từ đó giảm số lượng vết cần thiết để khôi phục khóa thiết bị, nâng cao hiệu quả của cuộc tấn công.
Nghiên cứu về giảm nhiễu cho vết điện năng tiêu thụ có thể được phân thành ba hướng chính: lấy trung bình các vết, sử dụng bộ lọc và áp dụng biến đổi Wavelet Phương pháp giảm nhiễu bằng cách lấy trung bình các vết đã được Kocher áp dụng hiệu quả trong thực tiễn.
Để thực hiện một cuộc tấn công hiệu quả, người tấn công cần thu thập nhiều vết với cùng các tham số đầu vào của thiết bị và sau đó lấy trung bình các vết đó Mặc dù phương pháp này mang lại hiệu quả cao, nhưng việc thu thập một lượng lớn vết cho mỗi cuộc tấn công không phải lúc nào cũng khả thi trong thực tế.
Phương pháp giảm nhiễu bằng bộ lọc cho phép lọc ra tín hiệu cần thiết từ các vết điện năng tiêu thụ, đồng thời loại bỏ phần nhiễu không mong muốn Các bộ lọc tuyến tính được Oswald, Parr và Bargenghi sử dụng để nâng cao hiệu quả tấn công phân tích điện năng tiêu thụ, yêu cầu kiến thức về tần số và đặc tính nhiễu để loại bỏ các thành phần không cần thiết Souissi và cộng sự áp dụng bộ lọc Kalman nhằm giảm nhiễu và tối ưu hóa thông tin từ vết điện năng tiêu thụ Tuy nhiên, việc xây dựng bộ lọc Kalman phụ thuộc vào ước lượng tham số, và nếu ước lượng không chính xác, hiệu quả của bộ lọc sẽ bị ảnh hưởng.
Phương pháp giảm nhiễu bằng biến đổi Wavelet phân tách vết điện năng tiêu thụ thành các nhóm có hệ số và tần số khác nhau, sử dụng ngưỡng để loại bỏ các hệ số không mong muốn và áp dụng phép biến đổi Wavelet ngược để tổng hợp tín hiệu Hiệu quả của phương pháp này đã được chứng minh qua các nghiên cứu của Charvet, Souissi (2011), Debande (2012), Park (2012) và Liu (2014) Tuy nhiên, việc lựa chọn sóng con và ngưỡng phù hợp là một thách thức, phụ thuộc vào bản chất tín hiệu và không phải lúc nào cũng dễ dàng Hơn nữa, quá trình phân tách và tái tạo tín hiệu bằng Wavelet tốn nhiều thời gian.
Các phương pháp giảm nhiễu đã chứng minh hiệu quả trong nghiên cứu, nhưng thường gặp khó khăn trong việc xây dựng tham số cho bộ lọc hoặc biến đổi Wavelet Gần đây, kỹ thuật phân tích mode biến phân (VMD) đã được áp dụng thành công trong xử lý tín hiệu và lọc nhiễu VMD cho phép phân tích tín hiệu thành các tín hiệu con băng hẹp, hay còn gọi là VMD mode, ở dạng điều chế biên độ – tần số, với dải tần tập trung quanh các tần số trung tâm khác nhau Kỹ thuật này giúp biểu diễn chính xác các thành phần khác nhau của tín hiệu tại các dải tần số khác nhau Khi áp dụng VMD cho vết điện năng tiêu thụ, các VMD mode có thể chứa thông tin về phần mạch điện tấn công, và nhờ vào kỹ thuật lọc Wiener cùng với cửa sổ Gaussian, các VMD mode trở thành phiên bản của vết điện năng tiêu thụ đã được loại bỏ nhiễu.
Dựa vào các đặc điểm của VMD, luận án đề xuất một phương pháp giảm nhiễu và trích chọn phần điện năng tiêu thụ hữu ích từ các vết điện năng tiêu thụ Phương pháp này nhằm nâng cao hiệu quả của tấn công phân tích điện năng tiêu thụ không cần bản mẫu, được gọi là VMD-CPA, và sẽ được trình bày chi tiết trong chương 2.
Hướng thứ 2: Nâng cao độ chính xác mô hình điện năng tiêu thụ của thiết bị
Việc xây dựng mô hình điện năng tiêu thụ trong pha lập mẫu của một tấn công mẫu giúp mô tả đặc điểm tiêu thụ điện năng của thiết bị, đặc biệt liên quan đến khóa bí mật Nếu mô hình này chính xác, khả năng xác định khóa đúng từ các vết điện năng tiêu thụ sẽ tăng lên Hiện nay, các thuật toán học máy thường được sử dụng để xây dựng mô hình điện năng tiêu thụ, trong đó các vết điện năng thu được từ thiết bị mẫu được dùng để huấn luyện mô hình Một số nghiên cứu quan trọng trong lĩnh vực này đã áp dụng các thuật toán như máy véc-tơ hỗ trợ (SVM), rừng ngẫu nhiên, 𝑘 láng riềng và cây quyết định Mặc dù tất cả các thuật toán này đã chứng minh hiệu quả trong các trường hợp cụ thể, máy véc-tơ hỗ trợ vẫn được coi là thuật toán hiệu quả nhất thường được sử dụng.
Hiệu quả của mô hình học máy phụ thuộc vào việc lựa chọn các đặc trưng từ dữ liệu đầu vào Các đặc trưng này liên quan đến vết điện năng tiêu thụ, thường được gọi là các điểm.
POIs (Điểm Quan Tâm) là những điểm có giá trị quan trọng phụ thuộc vào giá trị trung gian cần được lập mẫu Việc lựa chọn POIs phù hợp là rất cần thiết do vết điện năng tiêu thụ có độ dài lớn, ảnh hưởng đến độ chính xác của mô hình học máy Điều này sẽ quyết định hiệu quả của tấn công mẫu.
Việc lựa chọn các Điểm Quan Tâm (POIs) thường được thực hiện thông qua các phương pháp lọc và giảm chiều dữ liệu, cùng với các phương pháp dựa trên trọng số dữ liệu được đào tạo bởi mô hình học máy Cụ thể, các POIs được xác định dựa trên các ước lượng tín hiệu từ vết điện năng tiêu thụ, bao gồm độ lệch các giá trị trung bình (DoM), phân tích năng lượng tiêu thụ tương quan (CPA), tổng bình phương các độ lệch (SOSD), tỷ số tín hiệu trên nhiễu (SNR), và tổng bình phương độ lệch dựa trên t-test (SOST).
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 lĩnh vực quan trọng, bao gồm cả thiết bị không có phòng vệ và có phòng vệ Phân tích điện năng tiêu thụ giúp xác định các điểm yếu trong hệ thống bảo mật, từ đó phát triển các chiến lược tấn công tối ưu Việc áp dụng các kỹ thuật tấn công này không chỉ nâng cao hiểu biết về bảo mật mà còn góp phần cải thiện các biện pháp phòng vệ cho thiết bị mật mã.
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 phát triển để hoạt động hiệu quả với các vết điện năng tiêu thụ có nhiễu Phương pháp này giúp nâng cao khả năng tấn công trong môi trường có nhiều yếu tố gây nhiễu.
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, nhằm 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ả trong các điều kiện có nhiễu, đặc biệt là với các vết điện năng tiêu thụ.
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 xây dựng cho 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 tối ưu hóa dựa trên đặc điểm POIs của thiết bị Phương pháp này nhằm nâng cao hiệu quả tấn công, giúp cải thiện khả năng xâm nhập vào hệ thống phòng vệ.
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à tổng hợp các nghiên cứu liên quan Mục tiêu chính là nâng cao hiệu quả tấn công thông qua việc phân tích các phương pháp và chiến lược hiện có.
Phương pháp thực nghiệm 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, luận án đề xuất định hướng xây dựng các 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
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)) được sử dụng để thu thập dữ liệu về vết điện năng tiêu thụ cho các cuộc tấn công.
Bài viết này sử dụng bộ dữ liệu công khai về tấn công phân tích điện năng tiêu thụ ASCAD từ data.gouv.fr để so sánh hiệu quả của 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ị có phòng vệ 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 so sánh kết quả thực thi tấn công dựa trên lượng điện năng tiêu thụ cần thiết để khôi phục khóa 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ật mã, độ chính xác của hệ thống đo lường và các yếu tố nhiễu ảnh hưởng đến thiết bị Do đó, việc so sánh trong luận án này 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 giữa các phương pháp tương tự 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 tỏ ra hiệu quả hơn 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ụ ít hơn để khôi phục khóa chính xác Trong trường hợp vết điện năng tiêu thụ bị nhiễu lớn, VMD-CPA vẫn có khả năng khôi phục khóa đúng, trong khi CPA không thể thực hiện điều này Những đóng góp quan trọng 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 VMD-GSO-SVM được xây dựng hiệu quả với kỹ thuật lựa chọn POIs kết hợp giữa VMD và GSO Phương pháp này cho thấy hiệu quả vượt trội khi 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, so với phương pháp tấn công dựa trên SVM với lựa chọn POIs từ CPA và NB, đặc biệt khi đối mặt với nhiễu trong vết điện năng tiêu thụ 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ị có phòng vệ bằng mặt nạ CNN-D được xây dựng dựa trên mạng nơ-ron tích chập Kiến trúc của mạng nơ-ron này được thiết kế dựa trên các đặc điểm POIs của thiết bị bảo vệ, với các tham số được tối ưu hóa thông qua thuật toán GWO Hiệu quả của CNN trong việc tấn công mẫu sẽ được đánh giá nhằm nâng cao khả năng bảo mật cho thiết bị.
D thể hiện qua số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa đúng thấp hơn so với kết quả tốt nhất đã được công bố hiện nay Những đóng góp này được trình bày chi tiết 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 tối ưu hóa 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 các thiết bị không có biện pháp phòng vệ.
Để 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ị, cần phát triển phương pháp lựa chọn các Điểm Quan Tâm (POIs) phù hợp Việc này không chỉ giúp tối ưu hóa mô hình mà còn nâng cao hiệu quả của các cuộc tấn công mẫu.
Nghiên cứu và phát triển kiến trúc mạng nơ-ron tích chập nhằm tối ưu hóa tấn công mẫu cho các thiết bị có cơ chế phòng vệ bằng mặt nạ, từ đó nâng cao hiệu quả của các cuộc tấn công.
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 thiểu thời gian tấn công là yếu tố quan trọng trong việc tìm kiếm khóa chính cho các cuộc tấn công vào thiết bị mã hóa, bao gồm cả những thiết bị không có biện pháp bảo vệ và những thiết bị được bảo vệ bằng mặt nạ.
Các phương pháp tấn công được đề xuất cho thiết bị không có biện pháp bảo vệ có thể hiệu quả ngay cả khi thu thập các vết đ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 vật lý của các phần tử logic Điều này dẫn đến việc cần một khoảng thời gian tối thiểu để thực hiện chức năng và tiêu hao năng lượng trong quá trình hoạt động Bức xạ điện từ phát ra từ mạch điện cùng với điện năng tiêu thụ là không thể tránh khỏi và được xem như các dạng thông tin rò rỉ từ mạch Những thông tin này có thể bị lợi dụng trong các cuộc tấn công nhằm tìm kiếm 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ấu trúc của các phần tử logic trong mạch Điện năng tiêu thụ của mạch CMOS được xác định bởi tổng điện năng của các phần tử logic và cách chúng kết nối với nhau Để mạch hoạt động hiệu quả, nó cần được 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 trong mạch được ký hiệu là 𝑖 𝐷𝐷 (𝑡), từ đó tính toán được điện năng tiêu thụ tức thời.
𝑝 𝑐𝑖𝑟 (𝑡) Đ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 mạch CMOS, được cấu tạo từ các transistor kênh P và N, như mô tả trong hình 1.4 Đối với các cổng phức hợp, nhiều PMOS và NMOS sẽ được sử dụng Điện năng tiêu thụ của cổng đảo bao gồm 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 có tín hiệu chuyển trạng thái Tổng điện năng tiêu thụ (𝑃 𝑡𝑜𝑡𝑎𝑙) là tổng của 𝑃 𝑠𝑡𝑎𝑡 và 𝑃 𝑑𝑦𝑛, với 𝑇 𝑡𝑜𝑡𝑎𝑙 = 𝑃 𝑠𝑡𝑎𝑡 + 𝑃 𝑑𝑦𝑛 Điện năng tiêu thụ tĩnh chủ yếu do dòng rò và thường rất nhỏ, trong khi điện năng tiêu thụ động chiếm phần lớn, được tính dựa trên số lượng phần tử chuyển trạng thái trong mạch, với công thức liên quan đến tần số clock (𝑓), trở kháng tải (𝐶 𝐿), hệ số hoạt động (𝛼) và điện áp nguồn cấp (𝑉 𝐷𝐷) Hệ số 𝛼 thể hiện 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 cũng như phép toán mà mạch thực hiện Điều này tạo điều kiện cho tấn công phân tích điện năng tiêu thụ, cho phép kẻ tấn công 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ý Đặc biệt, trong trường hợp thiết bị mã hóa, kẻ tấn công có khả năng biết được khóa của thiết bị Các thành phần của vết điện năng tiêu thụ trong bối cảnh tấn công này được mô tả chi tiết trong tài liệu tham khảo [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 với 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ã mà người dùng cần đánh giá độ an toàn Thiết bị này thường kết nối với PC thông qua một giao diện truyền thông, 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 tới DUT, DUT thực hiện mã hóa và gửi lại bản mã cho PC.
Máy hiện sóng số là thiết bị quan trọng để ghi lại vết điện năng tiêu thụ từ mạch đo Hầu hết các thiết bị đo hiện nay là máy hiện sóng kỹ thuật số, yêu cầu 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 Internet Để đo vết điện năng tiêu thụ, các đầu đo của máy hiện sóng được kết nối với các điểm đo của DUT, như thể hiện trong Hình 1.5b,c, tùy thuộc vào vị trí của điện trở 𝑅1 Giá trị đ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 đóng vai trò quan trọng trong việc điều khiển quá trình hoạt động của DUT, kết hợp với máy hiện sóng để lưu trữ và phân tích điện năng tiêu thụ 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 không yêu cầu các điều kiện đặc biệt nào cho thành phần này.
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ụ được áp dụng để 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: phân tích hiệu suất và tối ưu hóa việc sử dụng điện.
Để xây dựng mô hình đ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 định nghĩa ℒ là mô hình điện năng tiêu thụ Giá trị điện năng tiêu thụ giả định được ký hiệu là ℎ, và nó được tính toán khi thiết bị xử lý giá trị 𝑧, với công thức là ℎ = ℒ(𝑧).
Để ướ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 xác định bởi 𝑦 = 𝑃(𝑧 = 𝑧 𝑖 |𝒙) = 𝐹(𝒙) Điều này cho phép ta xác định xác suất ước lượng rằng thiết bị xử lý có giá trị 𝑧 𝑖 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 thường được áp dụng trong các kịch bản tấn công không có bản mẫu, nơi mà các mô hình điện năng tiêu thụ tổng quát được sử dụng.
Mạch điện CMOS tiêu thụ điện năng dựa vào dữ liệu xử lý, cụ thể là trạng thái bit 1 hoặc 0, cũng như số lần chuyển đổi giữa các trạng thái này Một số 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 trong các cuộc tấn công vào thuật toán mật mã chạy trên phần mềm của hệ vi điều khiển, trong khi mô hình khoảng cách Hamming được sử dụng cho các cuộc tấn công vào thuật toán mật mã được 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 tấn công, kết hợp với các kỹ thuật thống kê hoặc thuật toán học máy để phân tích sự phụ thuộc giữa điện năng tiêu thụ và 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 chia 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 các điều kiện mà kẻ tấn công nắm giữ 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
1.4.1.1 Quy trình thực hiện 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 dựa trên giả định rằng kẻ tấn công sở hữu thiết bị tấn công (DUT), hiểu rõ thuật toán mà DUT sử dụng, có khả năng điều khiển DUT và đo lường điện năng tiêu thụ 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 yêu cầu của phương pháp 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 𝑓 𝑖 𝑧 tương ứng với dữ liệu 𝑧 ∈ 𝔽 2 𝑏 Mỗi lần thiết bị thực thi 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ụ của 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 các dữ liệ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ụ, được biểu diễn qua các hàng của ma trận 𝐗.
Phương pháp tấn công không bản mẫu, được Kocher và các đồng nghiệp công bố năm 1999, cho thấy có thể xác định khóa bí mật thông qua việc đo điện năng tiêu thụ trong quá trình thực thi thuật toán mã hóa Quy trình tấn công này bao gồm năm bước cụ thể và được hỗ trợ bởi thuật toán khôi phục khóa được mô tả 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:
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 ghi lại thành ma trận 𝐗 ∈ ℝ 𝑀×𝑁, với 𝑁 đại diện cho chiều dài của vết hoặc số mẫu của một vết điện năng tiêu thụ được thu thập từ phép đo.
Bước 2 trong quá trình tấn cô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 cuộc tấn công là tìm ra khóa của thiết bị, vì vậy giá trị trung gian này cần phải có sự phụ thuộc rõ ràng vào cả dữ liệu và khóa.
Bước 3: Tính toán giá trị trung gian giả thiết dựa trên các bản rõ đầu vào và tất cả các khóa giả thiết Trong giai đoạn 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 giá trị khác nhau của bản rõ 𝑝𝑡 𝑖 và khóa giả thiết 𝑘 𝑗 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.
Trong bước 4, người tấn công ánh xạ các giá trị trung gian giả định đến đ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 𝑧 𝑖,𝑗 Mô hình này phụ thuộc vào từng thiết bị, và độ chính xác của mô hình 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 cuối cùng trong quy trình tấn công là 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 đúng 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 Trong số các bộ quyết định đã được áp dụng, độ 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 và phổ biến.
Khi sử dụng bộ quyết định dựa trên độ lệch các giá trị trung bình, tấn công đượ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 đượ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 dựa trên mẫu, mà sử dụng bộ quyết định dựa trên độ lệch trung bình của các giá trị điện năng tiêu thụ 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 chứa các vết khi thiết bị thực thi 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 thi giá trị trung gian tấn công với điện năng tiêu thụ giả định 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), từ đó tạo ra kết quả 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à ≠ 𝛿 Đường mô tả này đượ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 đúng, các giá trị trung gian tính toán điện năng tiêu thụ sẽ phản ánh chính xác thực tế thiết bị xử lý trong 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 đầu tiên tại thời điểm tương ứng sẽ là 𝛿, trong khi tập thứ hai sẽ có giá trị khác với 𝛿 Điều này dẫn đến sự xuất hiện của 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, việc sử dụng các khóa giả thiết sai dẫn đến việc tính toán điện năng tiêu thụ giả định không phản ánh đúng thực tế Do đó, các vết được phân loại vào hai tập khác nhau mô tả điện năng tiêu thụ với giá trị hoàn toàn ngẫu nhiên Khi số lượng mẫu 𝑀 tiến tới vô cùng, giá trị trung bình của hai tập này sẽ trở nên giống nhau và độ lệch giữa chúng sẽ giảm về 0, dẫn đến việc vết vi sai trở nên phẳng Trong phân tích DPA, khóa đúng có thể được xác định dễ dàng khi có sự hiện diện của một gai trên vết vi sai, hoặc khi giá trị 𝑘 trong 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, trong đó mô hình điện năng tiêu thụ giả định ℒ được chọn dựa trên giá trị của bit có trọng số thấp nhất trong giá trị trung gian tấn công Hai tập vết được phân chia dựa trên 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 (Correlation Power Analysis) không dựa trên mẫu tấn công và 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ế trong suốt quá trình tấn công Giá trị tương quan này đượ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ả tính tương quan cho một khóa giả thiết là vết tương quan, trong đó khi khóa giả là đúng, điện năng tiêu thụ giả định theo mô hình ℒ sẽ khớp với điện năng tiêu thụ thực tế của thiết bị, 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, các giá trị trung gian được sử dụng để tính toán điện năng tiêu thụ 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ể được thực hiện bằng cách quan sát sự xuất hiện của gai trên vết tương quan hoặc giá trị của 𝑘 trong biểu thức (1.5) đạt giá trị lớn nhất 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.
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
1.4.2.1 Quy trình thực thi 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ộ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ụ 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 giống hệt và kiểm soát nó 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 bao gồm 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 trong các giá trị trung gian tấn công Để thực hiện điều này, kẻ tấn công 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 ký hiệu 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ị cho từng khóa giả thiết (1.7), dựa trên tập trace lập mẫu 𝑆 𝑃.
Do kích thước của giá trị trung gian tại lối ra Sbox, chẳng hạn như thuật toán AES, là 1 byte, sẽ có tổng cộng 256 giá trị cần lập mẫu Để giảm số lượng giá trị này, kẻ tấn công có thể lập mẫu dựa trên trọng số Hamming của giá trị lối ra Sbox Như vậy, chỉ cần lập mẫu 9 giá trị, vì trọng số Hamming của một giá trị 1 byte có thể nhận các giá trị từ 0 đến 8 Chúng ta ký hiệu giá trị này là 𝑐, với 𝑐 = 𝐻𝑊(𝑧) Do đó, biểu thức (1.7) có thể được viết lại dưới dạng 𝐹(𝑋|𝑐) ∶ 𝒳 → 𝑃(𝒞).
Sau khi hoàn tất việc lập mẫu, kẻ tấn công có thể xây dựng một mô hình mô tả mức tiêu thụ điện năng của thiết bị dựa trên từng giá trị trung gian 𝑧 𝑖 hoặc từng giá trị trọng số Hamming tương ứng với 𝑧 𝑖.
Trong quá trình tấn công, các vết thu thập sẽ được biểu diễn bằng 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 Việc tính toán này dựa trên mô hình 𝐹 đã được xây dựng trong pha lập mẫu Mỗi vết tương ứng với 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, chúng tôi trình bày cách tính điểm số cho các giá trị khóa giả thiết dựa trên các giá trị xác suất đối với các vết tấn công trung gian Các giá trị này được kết hợp lại với nhau để xác định điểm số cho mỗi khóa giả thiết, sử 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ả phương pháp tính điểm số này, và khóa có điểm số cao nhất sẽ được xác định là khóa đúng 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
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, được đề xuất bởi Chari và các cộng sự, là phương pháp đầu tiên trong tấn công mẫu, được thực hiện khi kẻ tấn công nắm rõ đặ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 𝒙 (𝑥 1 , 𝑥 2 , … , 𝑥 𝑁), kẻ tấn công có thể xác định phân bố xác suất của 𝒙, từ đó xây dựng mô hình điện năng tiêu thụ của thiết bị dựa trên các đặc trưng của phân bố xác suất này Một giả định phổ biến trong phân tích điện năng tiêu thụ là đ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ụ của thiết bị mẫu cho các giá trị trung gian lập mẫu được mô tả bởi hàm mật độ xác suất, với 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ị và trường hợp, do đó cần một phương pháp tấn công tổng quát hơn Trong quá trình lập mẫu, mô hình điện năng tiêu thụ của thiết bị được xây dựng bằng cách học các đặc điểm phụ thuộc điện năng tiêu thụ với các giá trị khóa đã biết từ vết điện năng tiêu thụ của thiết bị mẫu Ở pha tấn công, mô hình này được sử dụng để đoán giá trị khóa của DUT dựa trên vết điện năng tiêu thụ mới thu thập Vấ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 xây dựng mô hình từ tập dữ liệu đã biết nhãn để ước lượng đầu ra cho dữ liệu chưa được gán nhãn Do đó, một hướng tiếp cận mới trong tấn công mẫu là dựa trên thuật toán học máy, và 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: pha lập mẫu và pha 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 Những vết này được gán nhãn với 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 đã xây dựng sẽ ước lượng xác suất cho một 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 sẽ được xác định dựa trên điểm số quyết định, 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 làm cho điện năng tiêu thụ độc lập với các giá trị trung gian mà thiết bị xử lý Hai kỹ thuật chính được sử dụng là kỹ thuật ẩn và mặt nạ Kỹ thuật ẩn giúp điện năng tiêu thụ thay đổi ngẫu nhiên hoặc không thay đổi theo 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 hoàn hảo vẫn gặp khó khăn, dẫn đến 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 ở chỗ nó che dữ liệu mà thiết bị xử lý thông qua các mặt nạ, cho phép thực hiện trực tiếp trên dữ liệu ở mức thuật toán Ý tưởng này được phát triển từ khái niệm sơ đồ chia sẻ bí mật và đã được nghiên cứu ban đầu bởi Chari và Goubin.
Trong các thuật toán mã hóa, các biến nhạy cả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 qua 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 sơ đồ mặt nạ, các biến nhạy cảm 𝑧 được xử lý bằng cách sử dụng phép toán nhóm, như cộng hoặc nhân, thay vì ở dạng rõ Các mặt nạ 𝑚 1 , 𝑚 2 , … , 𝑚 𝑑 có 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ạ theo biểu thức, độ phức tạp của việc khôi phục thông tin thông qua tấn công kênh kề tăng theo số mũ với số lượng mặt nạ được sử dụng, cho thấy rằng số lượng mặt nạ ảnh hưởng lớn đến mức độ an toàn của 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 trên thực tế, chúng chỉ làm giảm hiệu quả của các tấn công này Những cuộc tấn công nhằm vào thiết bị có biện pháp phòng vệ được gọi là tấn công bậc cao, trong đó bậc 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 đã được công bố cho thiết bị có mặt nạ Các nghiên cứu trước đây cho thấy rằng kẻ tấn công có thể sử dụng hàm kết hợp để tổng hợp thông tin từ các kênh kề trong các chia sẻ của biến nhạy cảm, từ đó thực hiện tấn công tương tự như trên thiết bị không có mặt nạ Tuy nhiên, phương pháp này chỉ hoạt động hiệu quả trên các 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 các thiết bị có phòng vệ là tấn công mẫu, tương tự như tấn công mẫu trên thiết bị không có phòng vệ Tuy nhiên, việc chọn lựa các Điểm Quan Tâm (POIs) trong quá trình lập mẫu gặp nhiều thách thức Để khắc phục vấn đề này, 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ố chính 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, còn được 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 phản ánh khả năng xác định khóa chính xác của thiết bị mục tiêu 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, hiệu quả tấn công càng cao Khả năng khôi phục khóa đúng 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 chỉ cần giảm không gian khóa xuống mức có thể thực hiện được thông qua các phép thử đơn giản để tìm ra 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, được giới thiệu bởi Standaert, Malkin và Yung, là một tham số dựa trên định nghĩa về lượng thông tin ước đoán của Massey và Cachin Tham số này đượ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ừ cuộc tấn công Khả năng của khóa được xác định tùy thuộc vào loại tấn công, chẳng hạn như DPA đo độ lệch giữa hai nhóm, CPA đánh giá hệ số tương quan của khóa giả thuyết, và tấn công mẫu dựa vào xác suất của khóa giả thuyết.
Lượng thông tin ước đoán sau tấn công GE được xác định thông qua véc-tơ xếp hạng 𝑔 của các khóa sau 𝑁 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 với ma trận [𝒈 1 , 𝒈 2 , … , 𝒈 𝑠 ] và véc-tơ chỉ số tương ứng [𝑖 1 , 𝑖 2 , … , 𝑖 𝑠 ], GE tính toán trung bình vị trí của khóa đúng theo công thức (1.14).
Dữ liệu sử dụng trong luận án bao gồm các vết điện năng tiêu thụ được đo và thu thập từ thiết bị thực tế, phục vụ cho các thí nghiệm về tấn công phân tích điện năng tiêu thụ Những vết điện năng này sẽ được kết hợp với nguồn dữ liệu công khai về tấn công kênh kề, nhằm cung cấp thông tin cần thiết cho nghiên cứu.
Dữ liệu thu thập từ thiết bị thực tế
1.5.1.1 Hệ thống đo vết điện năng tiêu thụ
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ư Hình 1.5, với các thiết bị thực tế được trình bày trong Hình 1.9.
Thiết bị cần tấn công là thiết bị mật mã cần được đánh giá độ an toàn, thường cung cấp giao diện truyền thông với PC Trong luận án, thiết bị mật mã sử dụng là thẻ thông minh Atmega8515, thực thi thuật toán AES-128 ở chế độ ECB 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 qua mô-đun Sakura-G/W thông 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ở kết nối với thiết bị tấn công ở chân đất (GND) Bài viết này sử dụng máy hiện sóng Tektronix DPO3052, có các tham số đáp ứng yêu cầu cho việc 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ã hóa và máy hiện sóng, máy tính không cần yêu cầu đặc biệt nào về thành phần.
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à tương ứng 50.000 vết điện năng tiêu thụ, mỗi vết dài 85.000 mẫu, được thu thập trong quá trình thẻ thông minh thực hiện AES-128 ở chế độ ECB với khóa bí mật "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 đã tiến hành đo các vết khi thực hiện AES trên thẻ thông minh Atmega8515 Khi biết giá trị mặt nạ, tình huống này tương đương với việc AES không có biện pháp chống tấn công DPA Các vết đo được thực hiện trong quá trình S-hộp với phép thế: 𝑆𝑏𝑜𝑥(𝑃 𝑖 + 𝑘 ∗ ) ⊕ 𝑀, trong đó 𝑀 đã được biết đến Tổng số vết đo là 100000, và dữ liệu vết có thể được tải về tại: http://www.dpacontest.org/v4.
ASCAD là bộ dữ liệu công khai tại địa chỉ: https://github.com/ANSSI-FR/ASCAD, được thu thập từ thuật toán AES-128 với cài đặt chống tấn công DPA thông 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 sử dụng cho quá trình huấn luyện và 10.000 vết dùng để kiểm tra Mỗi vết có độ dài 700 mẫu, tương ứng với việc thực thi phép thế S-hộp thứ 3 trong vòng thứ nhất của 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ụ và dữ liệu thiết bị 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 tấn công cho thiết bị không phòng vệ và 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 này, luận án sẽ đề xuất các giải pháp tấn công hiệu quả trong các chương 2 và 3.
PHƯƠNG PHÁP TẤN CÔNG CHO THIẾT BỊ KHÔNG
Chương này của luận án trình bày các đề xuất nhằm giảm nhiễu và lựa chọn các Điểm Quan Tâm (POIs) cho các cuộc tấn công phân tích điện năng tiêu thụ trên thiết bị không có phòng vệ, bao gồm hai hình thức tấn công: không bản mẫu và có bản mẫu Đối với tấn công không bản mẫu, phương pháp VMD-CPA được đề xuất, 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 hướng đến việc giảm số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa chính xác của thiết bị Nội dung chương này đã đượ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 hiểu biết về vết điện năng tiêu thụ Nghiên cứu hiện nay chủ yếu tập trung vào việc giảm nhiễu cho 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ác định tham số cho bộ lọc Do đó, luận án đề xuất áp dụng kỹ thuật phân tích mode biến phân (VMD) để giảm nhiễu và lựa chọn phần điện năng tiêu thụ hữu ích Phương pháp tấn công không bản mẫu mới gọi là VMD-CPA được đề xuất nhằm tối ưu hóa số vết điện năng tiêu thụ để khôi phục khóa tấn công hiệu quả hơn Ngoài ra, việc lựa chọn các điểm quan tâm (POIs) trên vết cũng rất quan trọng để nâng cao hiệu quả của tấn công mẫu.
Trong chương này, luận án đề xuất một phương pháp tấn công mẫu mang tên VMD, nhằm khắc phục những hạn chế hiện tại trong việc đánh giá khả năng thực hiện trên vết điện năng tiêu thụ có nhiễu Các phương pháp giảm chiều dữ liệu và các phương pháp dựa trên học máy vẫn chưa xem xét đầy đủ đến việc xếp hạng độ quan trọng của các Điểm Quan Trọng (POIs) và 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 tấn công.
GSO-SVM sử dụng kỹ thuật lựa chọn POIs mới giúp giảm nhiễu cho vết và xác định các điểm POIs quan trọng nhất Phương pháp này kết hợp các kỹ thuật VMD, GSO và SVM để đạt hiệu quả tối ưu trong việc phân tích dữ liệu.
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 các 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 việ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ể tách biệt 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 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 là một tín hiệu có băng thông hạn chế và có tần số trung tâm riêng Tín hiệu giải tích của mỗi mode được biểu diễn dưới dạng (𝛿(𝑡) + ( 𝑗.
Tín hiệu 𝜋𝑡) ∗ 𝑢 𝑞 (𝑡) được biểu diễn bởi hàm Dirac, là một hàm giá trị phức không có thành phần tần số âm Điều này được tạo ra thông qua biến đổi Hilbert, đảm bảo rằng phổ của tín hiệu là đơn hướng Cuối cùng, tín hiệu này được giải điều chế 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 tổng hợp các tín hiệu, cụ thể là min𝑢 𝑞 ,𝑓 𝑞 {∑ ‖𝑑.
Trong bài viết này, chúng ta xem xét tập hợp các mode {𝑢 𝑞} gồm {𝑢 1, 𝑢 2, …, 𝑢 𝑞} và tần số trung tâm tương ứng {𝜔 𝑞} với {𝜔 1, 𝜔 2, …, 𝜔 𝑞} Tổng của các mode được ký hiệu là ∑ ≔ ∑ 𝑞 𝑄 𝑞=1 Ngoài ra, chuẩn 2-norm được định nghĩa là ‖𝑝(𝑡)‖ 2 2 = = ∫ −∞ ∞ 𝑝 ∗ (𝑡)𝑝(𝑡)𝑑𝑡 Cuối cùng, chúng ta sẽ giải bài toán biến phân liên quan đến các khái niệm này.
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 bổ sung 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 thi 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, 𝑣 và 𝜆 𝑞 𝑛+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 qua công thức (2.3).
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à {𝑢 𝑞 (𝑡)}
Thuật toán VMD cập nhật đồng thời tất cả các chế độ VMD trên miền tần số và sau đó chuyển đổi về miền thời gian thông qua biến đổi Fourier Quá trình thực hiện của VMD được mô tả chi tiết trong Thuật toán 2.1.
Thuật toán 2.1: VMD Đầu vào: Tín hiệu theo thời gian 𝑥(t) Đầu ra: Các VMD mode
Cập nhật 𝑢 𝑞 : theo công thức (2.7)
Cập nhật 𝜔 𝑞 : theo công thức (2.9)
𝑞 2 < 𝜖 c Lựa chọn tham số cho VMD
Trước khi tiến hành phân tách tín hiệu thành các VMD mode, cần xác định các tham số quan trọng như 𝑄 (số VMD mode), 𝛼 (hằng số phạt), 𝜏 (tốc độ cập nhật), và 𝜖 (điều kiện hội tụ) Trong đó, 𝑄 và 𝛼 đóng vai trò quan trọng trong việc phân tách tín hiệu gốc và phụ thuộc vào từng dạng tín hiệu cụ thể Do đó, luận án đề xuất áp dụng Thuật toán 2.2 để xác định các tham số này, trong khi các tham số còn lại được chọn theo các giá trị chuẩn hóa trong khoảng từ 0 đến 1𝑒 −.
Việc lựa chọn tham số 𝑄 và 𝛼 trong phân tách VMD nhằm đảm bảo hai yếu tố quan trọng Đầu tiên, các VMD mode phải bảo tồn tất cả các đặc tính của tín hiệu gốc, với mục tiêu tách biệt thông tin chứa trong tín hiệu Để xác định tính chất này, cần đo lường độ giống nhau giữa tín hiệu khôi phục từ các VMD mode và tín hiệu gốc thông qua hệ số tương quan Pearson Tín hiệu khôi phục được tính bằng tổng của tất cả các VMD mode sau khi phân tách Giá trị của 𝑄 và 𝛼 cần được chọn sao cho hệ số tương quan đạt giá trị lớn nhất Yếu tố thứ hai là tránh sự chồng lấn tần số giữa các VMD mode; nếu 𝑄 nhỏ, số lượng VMD mode sẽ không đủ và các thành phần tín hiệu có thể bị trộn lẫn Ngược lại, nếu 𝑄 lớn, có thể có quá nhiều VMD mode, dẫn đến việc thành phần tín hiệu của một mode nằm trong nhiều mode khác nhau Do đó, cần xác định giá trị phù hợp của số VMD mode sao cho mỗi mode chứa một dải tần số riêng biệt của tín hiệu gốc Việc so sánh phổ tần số của tín hiệu gốc và các VMD mode thông qua phép biến đổi FFT sẽ giúp xác định tính chất này Các bước lựa chọn tham số 𝑄 và 𝛼 được mô tả trong Thuật toán 2.2.
Thuật toán 2.2: Lựa chọn tham số cho VMD Đầu vào: Tập vết điện năng tiêu thụ X Đầu ra: Tham số 𝑄, 𝛼
1: Khởi tạo: Dải giá trị cho 𝑄: 𝑞 𝑚𝑖𝑛 , 𝑞 𝑚𝑎𝑥 và 𝛼: 𝑎 𝑚𝑖𝑛 , 𝛼 𝑚𝑎𝑥 , các bước thay đổi giá trị của 𝑄 và 𝛼 : 𝑠𝑡𝑒𝑝 𝑞 , 𝑠𝑡𝑒𝑝 𝛼
2: Xác định tín hiệu trung bình, 𝑥, của các vết điện năng tiêu thụ để giảm nhiễu 3: Xác định và biểu diễn phổ của 𝑥 bởi phép biến đổi FFT
Xác định các VMD mode của 𝑥 thông qua biến đổi VMD
Xác định tín hiệu khôi phục, 𝑦, từ các VMD mode bằng cách cộng dồn tất cả các VMD mode
Tính tương quan Pearson giữa 𝑥 và 𝑦
Tính toán và biểu diễn phổ của các chế độ VMD là cần thiết để so sánh với phổ của tín hiệu gốc 𝑥 Qua đó, chúng ta có thể xác định sự phân tách về mặt tần số giữa các chế độ VMD và tín hiệu gốc, giúp hiểu rõ hơn về đặc điểm tần số của từng chế độ.
5: Chọn cặp giá trị (𝑄, 𝛼) có hệ số tương quan Pearson lớn nhất giữa 𝑥 và 𝑦 và có sự phân tách về mặt tần số ở các VMD mode.
Ứng dụng của VMD
2.2.2.1 VMD để giảm nhiễu cho vết điện năng tiêu thụ
Trong kỹ thuật VMD trước tiên tín hiệu gốc được phân tích thành các mode
Quá trình phân tách tín hiệu bằng thuật toán VMD (Variational Mode Decomposition) cho phép tách biệt tín hiệu gốc khỏi nhiễu bằng cách áp dụng các bộ lọc Gaussian để làm mịn tín hiệu Mỗi mode được xác định có băng thông hạn chế và tập trung quanh tần số trung tâm, sau đó được tính toán bằng biến đổi Hilbert và chuyển sang băng tần cơ sở Thuật toán ADMM được sử dụng để tối ưu hóa các mode, trong đó bộ lọc Wiener đóng vai trò quan trọng trong việc cập nhật các mode với phần dư tín hiệu đã được lọc VMD phân rã tín hiệu thành các mode riêng biệt mà không cho phép sửa lỗi ngược, đảm bảo rằng tín hiệu đầu vào được tái tạo chính xác Để đánh giá khả năng lọc nhiễu của VMD, một nhiễu Gaussian trắng được thêm vào vết điện năng tiêu thụ, sau đó tiến hành phân tích và xác định vết điện năng tiêu thụ khôi phục, sử dụng các tham số như tỷ số tín hiệu trên nhiễu (SNR) và lỗi bình phương trung bình (MSE) để định lượng hiệu quả lọc nhiễu.
Trong đó, 𝑓(𝑖) và 𝑔(𝑖) tương ứng là tín hiệu hiệu gốc và tín hiệu khôi phục
Kết quả từ Bảng 2.1 cho thấy khi nhiễu được thêm vào tín hiệu điện năng tiêu thụ gốc, độ lớn tín hiệu tăng dần, dẫn đến giá trị 𝑆𝑁𝑅 giảm dần, nhưng mức giảm này vẫn thấp hơn so với 𝑆𝑁𝑅 𝑣 Điều này chứng minh rằng khi nhiễu được thêm vào, một phần nhiễu sẽ bị loại bỏ khi tín hiệu được khôi phục từ các VMD mode, xác nhận khả năng loại nhiễu của phương pháp VMD Hơn nữa, giá trị 𝑀𝑆𝐸 trong các trường hợp là khá nhỏ, cho thấy tín hiệu khôi phục từ các VMD có độ tin cậy cao.
Bảng 2.1 Khả năng lọc nhiễu của VMD
2.2.2.2 VMD để lựa chọn thông tin có ích từ vết điện năng tiêu thụ
Vết điện năng tiêu thụ từ thiết bị mật mã là tổng hợp điện năng từ các phần mạch khác nhau, nhưng tấn công phân tích điện năng tiêu thụ chủ yếu tập trung vào phần mạch xử lý mật mã Do đó, thông tin hữu ích từ vết điện năng tiêu thụ chủ yếu là điện năng do mạch này sinh ra Kỹ thuật VMD có khả năng phân tách vết điện năng tiêu thụ thành các thành phần khác nhau, mỗi thành phần được thể hiện qua các VMD mode Một trong những VMD mode này sẽ chứa thông tin quan trọng cho cuộc tấn công, và cách lựa chọn VMD mode sẽ được trình bày trong phần sau.
Tấn công phân tích điện năng tiêu thụ dựa vào đặc điểm tiêu thụ điện năng của thiết bị mật mã, điều này phụ thuộc vào dữ liệu mà thiết bị xử lý Các thiết bị mật mã thường được xây dựng trên nền tảng mạch điện công nghệ CMOS, trong đó điện năng tiêu thụ chủ yếu là điện năng tiêu thụ động Thành phần này tỉ lệ thuận với số lần chuyển trạng thái tín hiệu trong mạch điện, được mô tả bởi biểu thức (2.12), trong đó 𝐶 đại diện cho điện dung của mạch lối ra và điện dung ký sinh.
𝑉 𝑑𝑑 là điện áp nguồn cung cấp; 𝑓: tần số hoạt động; 𝛼 là số lần tín hiệu chuyển mạch
Phần lớn điện năng tiêu thụ trong các mạch số chủ yếu xảy ra tại các thời điểm sườn lên và sườn xuống của xung clock, khi các thanh ghi thực hiện việc thay đổi giá trị được ghi vào.
Hoạt động tiêu thụ điện năng động được thể hiện qua dạng sóng có đỉnh nhọn trong thời gian của sườn lên hoặc xuống của xung clock, và nó bị điều khiển bởi tần số clock của mạch điện, cung cấp tín hiệu đồng bộ cho các trạng thái chuyển mạch của các phần tử logic Phân tích phổ của dạng sóng điện năng tiêu thụ bằng phép biến đổi Fourier cho thấy có thành phần tần số tương ứng với tần số clock hoạt động Dạng sóng này có thể được xem như tín hiệu điều chế biên độ với tần số sóng mang tương ứng là tần số clock Để tối ưu hóa hoạt động, các phần mạch thường hoạt động với các clock khác nhau, dẫn đến điện năng tiêu thụ động là sự kết hợp của nhiều tín hiệu điều chế biên độ ở những tần số trung tâm khác nhau Kết quả phân tích vết điện năng tiêu thụ theo tần số và thời gian cho thấy sự phân bố độ lớn nằm trên các dải tần số khác nhau và hầu như không thay đổi theo thời gian, trong đó có tần số clock của phần mạch điện tấn công, cụ thể là 3.75 MHz.
Hình 2.1 Biểu diễn thời gian – tần số của vết điện năng tiêu thụ
Vết điện năng tiêu thụ
Phân tích vết thành Q mode sử dụng VMD
Việc lựa chọn VMD mode cho vết điện năng tiêu thụ là một bước quan trọng trong việc thực hiện tấn công CPA Khi các vết điện năng tiêu thụ được chuyển đổi thành các VMD mode, một trong số đó sẽ có dạng tín hiệu điều chế biên độ với tần số trung tâm tương ứng với tần số clock của mạch điện xử lý dữ liệu liên quan đến khóa thiết bị Các VMD mode không liên quan đến hoạt động dữ liệu có khóa sẽ bị loại bỏ, giúp làm nổi bật các thành phần phụ thuộc vào dữ liệu và tăng hiệu quả tấn công Quy trình này được mô tả chi tiết trong Hình 2.2 và Thuật toán 2.3 Kỹ thuật VMD phân tích vết điện năng tiêu thụ thành các 𝑄 mode, mỗi mode nằm ở một dải tần số khác nhau Để xác định dải tần số của mỗi mode, kỹ thuật phân tích phổ tín hiệu thông qua phép biến đổi FFT được áp dụng VMD mode chứa thông tin điện năng tiêu thụ lớn nhất sẽ là mode có phổ tần số chứa tần số clock của mạch điện tấn công.
Thuật toán 2.3 hướng dẫn lựa chọn chế độ VMD với đầu vào bao gồm tập vết điện năng tiêu thụ, các tham số (𝑄, 𝛼) cho VMD, và tần số clock 𝑓 𝑐 của mạch điện tấn công Kết quả đầu ra sẽ là chế độ VMD được chọn.
1 Xác định tín hiệu trung bình, 𝑥, của các vết điện năng tiêu thụ để giảm nhiễu
2 Phân tách 𝑥 thành 𝑄 VMD mode là: 𝑥 1 , 𝑥 2 , … , 𝑥 𝑄
3 Xác định dải tần số của 𝑄 mode bằng biến đổi FFT cho tất cả 𝑄 mode
4 Tìm tần số 𝑓 𝑐 trong các dải tần số ở bước 3 và chọn VMD mode có chứa 𝑓 𝑐 Đề xuất phương pháp tấn công không bản mẫu hiệu quả VMD-CPA
Trong số các phương pháp tấn công không có bản mẫu, tấn công CPA là một trong những phương pháp phổ biến Bài viết này giới thiệu phương pháp tấn công CPA cải tiến mang tên VMD-CPA VMD-CPA được phát triển dựa trên phương pháp tấn công CPA, với những cải tiến trong giai đoạn tiền xử lý các vết điện năng tiêu thụ thông qua kỹ thuật phân tích mode biến phân, nhằm nâng cao hiệu quả tấn công.
(1) Giảm nhiễu trên vết điện năng tiêu thụ
(2) Trích chọn phần điện năng tiêu thụ có ích từ vết điện năng tiêu thụ
Tấn công CPA-VMD cho thấy hiệu quả cao hơn so với tấn công CPA, khi số lượng vết điện năng tiêu thụ cần thiết để khôi phục khóa ít hơn Đặc biệt, trong trường hợp có nhiễu lớn, tấn công CPA-VMD vẫn có khả năng khôi phục khóa chính xác, trong khi tấn công CPA không thể tìm ra khóa đúng.
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
Tập 𝐏𝐓 gồm 𝑀 bản rõ, mỗi bản 16 byte, được sinh ngẫu nhiên và được sử dụng bởi kẻ tấn công để tấn công thiết bị mã hóa AES-128 thông qua phương pháp VMD-CPA Thiết bị tấn công sử dụng 16 byte khóa {𝐾 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 các bước tấn công CPA truyền thống, với việc bổ sung một bước tiền xử lý 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 tiến hành tấn công vào một byte khóa, kẻ tấn công sẽ sử dụng bản rõ tương ứng để hỗ trợ cho các bước tính toán tiếp theo Cụ thể, khi tấn công byte khóa đầu tiên, tập bản rõ được sử dụng là 𝐏𝐓 𝟏 = [𝑝 𝑖,𝑙 ]; với 𝑖 = 1: 𝑀 và 𝑙 = 1 Tập hợp này có thể được biểu diễn dưới dạng một véc-tơ cột.
Bước H2: Tính toán tập giá trị trung gian giả định
Trong quá trình tấn công, kẻ xâm nhập cần chọn một giá trị trung gian của thuật toán mà họ đang nhắm đến Giá trị này phải là kết quả của 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 thường được lấy tại lối ra của Sbox, ký hiệu là 𝑧 𝑖,𝑘.
Tính toán tất cả các giá trị trung gian của thuật toán khi thực hiện với từng khóa giả thiết của byte khóa cần tấn công, cùng với tập bản rõ tương ứng.
- 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
Để ánh xạ giá trị trung gian giả định thành điện năng tiêu thụ giả định, luận án sử dụng mô hình điện năng tiêu thụ trọng số Hamming, như được thể hiện trong Bảng 1.1.
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ế
Thiết bị được điều khiển để thực thi thuật toán mã hóa với tập bản rõ đầu vào 𝐏𝐓 và khóa bí mật 16 byte đã được lưu trữ Với tập bản rõ gồm 𝑀 bản rõ, thiết bị sẽ tiến hành mã hóa 𝑀 lần Trong quá trình mã hóa từng bản rõ, thiết bị thu thập và lưu trữ các dữ liệu về điện năng tiêu thụ.
Kết quả của bước này là một ma trận T, thể hiện điện năng tiêu thụ thực tế của thiết bị, bao gồm 𝑀 hàng, trong đó mỗi hàng đại diện cho giá trị của một vết điện năng tiêu thụ với 𝑁 điểm.
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 Thuật toán 2.2
- 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
Kỹ thuật VMD được áp dụng để phân tách từng vết điện năng tiêu thụ trong tập 𝐓 thành các chế độ 𝑄 VMD với các tham số đã được xác định Sau đó, các chế độ VMD thứ 𝑞 của tất cả các vết sẽ đượ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ế 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 khi vết tương quan của nó chứa giá trị lớn nhất so với tất cả các vết tương quan của các khóa giả thiết khác.
- 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 tra 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, như đã trình bày trong mục 1.5.1, cho thấy các bản rõ và vết điện năng tiêu thụ của thẻ thông minh Atmega8515 khi thực hiện thuật toán AES-128 ở 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
Phương pháp tấn công CPA đối với thuật toán AES-128 trên các bộ vi điều khiển cho thấy khả năng khôi phục khóa đúng với khoảng 200 đến 300 vết điện năng tiêu thụ Để 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 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 (𝑯 𝟏) cho tất cả các khóa giả thiết liên quan đến 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 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õ đã được sử dụng ở pha 1 Tập bản rõ và các vết điện năng tiêu thụ này đã được chuẩn bị sẵn trong bộ dữ liệu ACT-TRACES.
Sau khi thực hiện 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 được sử dụng để 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 dữ liệu ACT-TRACES Hình 2.5 minh họa mối quan hệ giữa vết gốc và các VMD mode, cho thấy rằng các mode này chứa các thành phần khác nhau của trace gốc ở các tần số khác nhau Để xác định VMD mode nào chứa phần điện năng tiêu thụ có ích, quy trình lựa chọn theo Thuật toán 2.3 được thực hiện Hình 2.6 trình bày 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 để tiến hành tấn công.
Bước cuối cùng trong pha 2 là xác định các 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 theo công thức (2.19) và thể hiện trong Hình 2.7, cho thấy trong 256 vết tương quan, chỉ có vết tương quan tương ứng với 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 của byte đầu tiên có thể xác định là 63 dựa trên các vết tương quan này hoặc theo quy tắc trong biểu thức (2.20) Để tấn công các byte khóa khác, cần lặp lại các bước trong pha 1 và bước A3 để thu thập biểu đồ tương quan và xác định khóa đúng Hình 2.8 mô tả các vết tương quan khi tấn công các byte thứ 2 và 5.
Kết quả từ các tấn công ở byte thứ nhất cho thấy vết tương quan của khóa đúng xuất hiện rõ rệt 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 ở đầ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 tổng hợp kết quả tấn công đối với 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 xử lý lần lượt các byte khóa của thiết bị Hệ số tương quan của khóa đúng cao hơn nhiều so với các khóa sai, cho thấy sự khác biệt rõ rệt giữa chúng Điều này khẳng định rằng các khóa được 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 đều cho khóa đúng, nhưng hệ số tương quan trong tấn công trên VMD mode 1 lớn hơn, chứng minh rằng mode này chứa tối đa thông tin có ích Điều này xác nhận rằng phương pháp lựa chọn VMD mode như đề xuất trong 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 và chọn 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𝑑𝐵
(3) Tấn công trên các vết được thêm nhiễu trắng có 𝑆𝑁𝑅 1 = 5𝑑𝐵
Trong mỗi trường hợp, 1000 cuộc tấn công được thực hiện với mức tiêu thụ điện năng thay đổi từ 1 đến 1000 Giá trị hệ số tương quan của khóa đúng và khóa sai được ghi lại tại thời điểm xuất hiện tương quan lớn nhất của khóa đúng, 𝑡 ∗ = 8759, như đã tìm thấy trong phần thí nghiệm.
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
Hình 2.10, Hình 2.11, và Hình 2.12 cho thấy kết quả của các cuộc tấn công trong ba trường hợp khác nhau Qua những kết quả này, có thể nhận thấy rằng khi số lượng vết tấn công được sử dụng gia tăng, hiệu quả của các cuộc tấn công cũng sẽ tăng theo.
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ị nhất định, trong đó hệ số tương quan của khóa đúng luôn lớn hơn khóa sai Sự phân biệt này trở nên rõ ràng khi sử dụng một lượng vết điện năng tiêu thụ nhất định, cho thấy rằng khi số lượng vết điện năng tiêu thụ tăng, các véc-tơ cột của ma trận H cũng có sự thay đổi đáng kể.
Độ dài của T tăng lên sẽ dẫn đến sự hội tụ của tương quan giữa các khóa Khi sử dụng khóa đúng, tương quan sẽ rõ ràng, trong khi các khóa sai sẽ có tương quan đồng đều, khó phân biệt.
Đá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 cho phép xác định khóa chính xác của thiết bị với độ tin cậy cao khi sử dụng các chế độ VMD phù hợp Theo dữ liệu từ ACT-TRACES, chỉ cần khoảng 79 vết điện năng để khôi phục khóa đúng, cho thấy hiệu quả khôi phục khóa của phương pháp này rất ấn tượng.
Chế độ VMD phù hợp cho tấn công là chế độ tiết lộ thông tin rò rỉ điện năng tiêu thụ tối đa, với phân tích phổ chứa thành phần tần số clock của mạch 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 tối ưu 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 về số lượng 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 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 đ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 thiểu 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 vì 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ụ từ kỹ thuật VMD và lựa chọn mode phù hợp, dẫn đến yêu cầu chi phí tính toán cao 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 với 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ụ trên vết, cụ thể là giả định Gauss Tuy nhiên, phương pháp lựa chọn các Điểm Quan Trọng (POIs) hiện tại chủ yếu dựa trên kinh nghiệm của người tấn công mà chưa được chứng minh hiệu quả trong trường hợp có nhiễu Để cải thiện hiệu quả của các cuộc 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 đề chính.
(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 Trọng (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ụ, đồng thời đảm bảo hoạt động tốt trong điều kiện có nhiễu Khi phân bố xác suất của điện năng tiêu thụ chưa được xác định, 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) được sử dụng phổ biến 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 đó, phương pháp VMD-GSO-SVM được đề xuất trong luận án 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 trong tấn công.
Luận án đề xuất một phương pháp lựa chọn các Điểm Quan Tâm (POIs) bằng cách kết hợp VMD, GSO và SVM, giúp tối ưu hóa thông tin từ các vết điện năng tiêu thụ và giảm thiểu ảnh hưởng của nhiễu Kỹ thuật VMD được sử dụng để phân tách vết điện năng thành các chế độ VMD, trong đó các chế độ chứa thông tin hữu ích sẽ được chọn và đưa vào thuật toán GSO để đánh giá giá trị thông tin Các điểm trên chế độ VMD được chọn làm POIs dựa trên xếp hạng cao từ GSO, với số lượng POIs xác định theo độ chính xác phân lớp của SVM trong quá trình huấn luyện và phân loại Việc lựa chọn số lượng POIs dựa trên độ chính xác của SVM là hợp lý, vì chúng cũng được áp dụng khi SVM xây dựng mô hình điện năng tiêu thụ của thiết bị trong giai đoạn lập mẫu của quy trình tấn công mẫu.
Dựa trên các định hướng đã nêu, luận án đề xuất 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ề mức tiêu thụ điện năng 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.
Để thực hiện tấn công, cần có thiết bị có khả năng điều khiển và thực thi mã hóa với một tập bản rõ đầu vào ngẫu nhiên Đồng thời, thiết bị này cũng phải có khả năng đo lường các vết điện năng tiêu thụ trong quá trình thực thi 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 bao gồm ba pha chính, được minh họa trong Hình 2.13 Quy trình này được thiết kế để tối ưu hóa hiệu quả của việc tấn công, đảm bảo tính chính xác và độ tin cậy cao trong các ứng dụng thực tiễn.
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 điểm quan tâm (POIs) cho bài toán tấn công mẫu hiện nay thường chỉ đánh giá hiệu quả trên các 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ố 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 sẽ được áp dụng trên các vết điện năng tiêu thụ, trong khi GSO sẽ 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 Việc áp dụng VMD giúp loại bỏ nhiễu và chọn ra các thành phần chứa thông tin hữu ích cho tấn công phân tích điện năng tiêu thụ, từ đó lựa chọn các POIs tốt nhất, giảm thiểu ảnh hưởng của nhiễu và phù hợp với phương pháp xây dựng 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ụ thành các chế độ VMD giúp xác định đặc trưng của vết Sau đó, việc lựa chọn chế độ VMD phù hợp là rất quan trọng để tối ưu hóa kết quả Cuối cùng, lựa chọn các Điểm Quan Tâm (POIs) tốt nhất trên chế độ VMD đã được chọn thông qua GSO và SVM sẽ nâng cao hiệu quả phân tích.
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 các Điểm Quan Trọng (POIs) kết hợp giữa VMD, GSO và SVM bắt đầu bằng việc sử dụng kỹ thuật VMD để phân tích điện năng tiêu thụ thành các VMD mode Các tham số của VMD cần được thiết lập trước 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 vào tần số trung tâm liên quan đến tần số hoạt động của mạch tấn công Trong thực tế, kẻ tấn công có thể không biết tần số hoạt động của mạch điện, vì vậy 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 có hệ số tương quan cao nhất sẽ được chọn, dựa trên quy trình tấn công VMD-CPA.
Sau khi chọn một chế độ VMD để đại diện cho vết điện năng tiêu thụ, số điểm trên chế độ này sẽ tương ứng với số điểm trên vết Việc lựa chọn các điểm liên quan đến hoạt động của thiết bị là cần thiết để tạo ra các POIs, trong khi loại bỏ những điểm không liên quan Luận án đề xuất phương pháp lựa chọn POIs dựa trên kỹ thuật trực giao hóa Gram-Schmidt, một phương pháp lọc hiệu quả, không phụ thuộc vào các bộ phân lớp phía sau Phương pháp này cho phé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 trên vết điện năng tiêu thụ, đồng thời không cần tính trọng số cho tất cả các điểm trên chế độ VMD GSO được sử dụng để đánh giá mối tương quan giữa các POIs và giá trị đầu ra của mô hình dự đoán Để xác định mối quan hệ này, ta cần tính toán tương quan giữa mỗi POIs với nhãn tương ứng của nó Nhiệm vụ là lựa chọn D (D < R) POIs tốt nhất từ tập R POIs, với ma trận POIs có N hàng và R cột.
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, với 𝒚 là véc-tơ nhãn đầu ra tương ứng Nếu các véc-tơ 𝒙 𝑘 và 𝒚 vuông góc, giá trị của (2.21) bằng 0, cho thấy không có mối tương quan Ngược lại, khi góc giữa chúng nhỏ dần, sự tương quan giữa hai véc-tơ này tăng dầ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 Điểm Quan Tâm (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 cao nhất, tương ứng với POI có tương quan lớn nhất với nhãn đầu ra Các POIs tiếp theo được lựa chọn thông qua một quy trình lặp lại cho đến khi đủ số lượng cần thiết: đầu tiên, các đặc trưng còn lại và giá trị đầu ra được ánh xạ vào không gian nhân của các POIs đã chọn; sau đó, đặc trưng có trị cosine lớn nhất với đầu ra sẽ được thêm vào tập các POIs đã chọn.
Thuật toán 2.4: Lựa chọn số POIs cho VMD mode Đầu vào:
Tập dữ liệu này 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 bằng ký hiệu 𝑋 𝑞 {𝒙 𝑖 𝑗 , 𝑐 𝑖 } với 𝑖 = 1: 𝑁 𝑝 và 𝑗 = 1: 𝑁 Trong đó, 𝑐 𝑖 đại diện cho tập nhãn của vết điện năng tiêu thụ, 𝑁 𝑝 là số lượng vết điện năng tiêu thụ và 𝑁 là độ dài của mỗi vết.
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 𝑎𝑐𝑐 𝑠𝑣𝑚
8: Tăng số lần lặp lên 1: 𝑑 = 𝑑 + 1
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 𝐷 POIs cần giữ lại, chúng ta sẽ chọn 𝐷 điểm POI từ GSO, những điểm này sẽ được sử dụng trong giai đoạn huấn luyện bộ mẫu bằng thuật toán SVM trong quá trình tấn công mẫu Cách hiệu quả nhất để xác định 𝐷 POI là dựa trên độ chính xác phân lớp của SVM đối với tập dữ liệu VMD mode Điều này cho phép chúng ta điều chỉnh giá trị của 𝐷 cho đến khi quá trình huấn luyện SVM cho tập 𝐷 POI từ VMD mode đạt được độ chính xác tối ưu nhất, quy trình này được thực hiện theo 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ị tấn công trong các trường hợp khác nhau, như giá trị tại lối ra Sbox hoặc giá trị rò rỉ điện năng Để thực hiện điều này, một mô hình học máy sẽ được huấn luyện 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, giúp xác định khóa của thiết bị 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 về điện năng tiêu thụ của thiết bị mẫu trong quá trình thực hiện với các giá trị tấn công trung gian và gán nhãn cho các dữ liệu này Với việc sở hữu thiết bị mẫu, kẻ tấn công biết khóa và các bản rõ tương ứng, từ đó 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 sẽ có 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
Kết quả từ phương pháp VMD-GSO-SVM trong bước B3 chỉ bao gồm các vết điện năng tiêu thụ được gán nhãn, tập trung vào các điểm POIs.
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ả trong Hình 2.15, trong đó 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 theo trọng số Hamming của byte thứ nhất tại đầu ra Sbox của AES-128 Trong quá trình 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.
Các bộ dữ liệu được 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à lựa chọn POIs được xác định dựa trên dữ liệu ở pha lập mẫu Để đánh giá ảnh hưở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: tập con thứ nhất có 100 vết cho mỗi nhãn và tập con thứ hai có 200 vết cho mỗi nhãn Tương ứng, bộ dữ liệu ACT-TRACES được ký hiệu là ACT-1 và ACT-2, trong khi bộ dữ liệu DPA-V4 được ký hiệu là DPA-1 và DPA-2.
Kết quả của cuộc 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 cũng tuân theo quy trình tương tự Những kết quả này được so sánh với hai cuộc tấn công mẫu khác, trong đó đều áp 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 thông qua phần mềm Matlab, với việc áp dụng thuật toán học máy SVM thông qua thư viện LibSVM [74].
A Lựa chọn tham số cho SVM
Trong phần thực nghiệm, SVM sử dụng hàm nhân RBF với hai tham số cần tối ưu là (𝐶, 𝛾) Để xác định các tham số này, luận án áp dụng chiến lược grid-search kết hợp với kiểm tra chéo 10-tập 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 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, với tham số 𝐶 được thay đổi từ 1 đến 256 theo 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, từ đó chọn ra chế độ VMD chứa thông tin hữu ích Trong quá trình thực hiện VMD, các tham số đầu vào cần được thiết lập trước, 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, chế độ VMD có thông tin hữu ích được xác định thông qua tấn công VMD-CPA, trong đó chế độ có hiệu quả tấn công tốt nhất sẽ được chọn Kết quả từ tấn công cho thấy với bộ dữ liệu ATC-TRACES, chế độ VMD 1 được lựa chọn, trong khi với DPA-V4, chế độ VMD 2 được ưu tiên, do tấn công VMD-CPA trên các chế độ này thể hiện hiệu quả cao nhất với hệ số tương quan của khóa đú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 lựa chọn VMD mode chứa thông tin hữu ích từ vết điện năng tiêu thụ, quy trình xác định 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ả 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 POIs tăng, độ chính xác phân lớp cũng tăng Tuy nhiên, nếu chọn quá nhiều điểm POIs, độ chính xác sẽ giảm do dữ liệu không tổng quát được đặ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 với chỉ số và số lượng được chọn được mô tả trong Bảng 2.7 và Bảng 2.8, với phông chữ đậm thể hiện trường hợp huấn luyện bộ phân lớp SVM cho độ 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 quá trình 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 Mô hình này được phát triển thông qua việc huấn luyện bộ phân lớp SVM Để đánh giá chất lượng của mô hình SVM, các tham số như độ chính xác (precision), độ bao phủ (recall) và chỉ số F1 được sử 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 các mô hình SVM được đánh giá qua các giá trị gần 1, cho thấy hiệu quả huấn luyện tốt Kết quả huấn luyện SVM được trình bày trong Bảng 2.9 với các tập con từ hai bộ dữ liệu ACT-TRACES và DPA-V4, cho thấy các tham số đạ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 tỏ khả năng tổng quát hóa dữ liệu của các mô hình này Các SVM đã được huấn luyện sẽ được áp dụng trong giai đoạn tấn công để ước lượng xác suất của các 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 được gán nhãn trọng số Hamming.
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 không dự đoán giá trị HW cho mỗi vết điện năng tiêu thụ mà tính xác suất hậu nghiệm 𝑃 𝑆𝑉𝑀 (𝑋 𝑖 |𝑐) Khóa đúng được xác định là khóa có điểm số lớn nhất, được tính theo công thức (2.23) Trong thí nghiệm với ACT-TRACES, khóa bí mật có byte đầu tiên là 63 đã cho điểm số cao nhất, như mô tả trong Hình 2.16 Đối với bộ dữ liệu DPA-V4, khóa có điểm số lớn nhất là 108, đúng với khóa sử dụng cho AES-128 trong DPA contest v4 (Hình 2.17) 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 cho cả hai tập vết điện năng tiêu thụ ACT-TRACES và DPA-V4.
Trong nghiên cứu này, chúng tôi so sánh hiệu quả tấn công của ba phương pháp VMD-GSO-SVM, CPA-SVM và NB-SVM Để đánh giá hiệu quả, chúng tôi sử dụng tham số GE, được định nghĩa dựa trên số vết điện năng tiêu thụ trong quá trình tấn công Tham số GE càng nhỏ, hiệu quả tấn công càng cao, cho thấy sự vượt trội của phương pháp được áp dụng.
Hình 2.18 và Hình 2.19 cho thấy giá trị GE theo số lượng vết sử dụng trong tấn công với ACT-TRACES, sử dụng các phương pháp VMD-GSO-SVM, CPA-SVM và NB-SVM để dự đoán lớp HW Giá trị GE giảm khi số vết sử dụng tăng, và khi kích thước tập vết lập mẫu lớn hơn, giá trị GE cũng thấp hơn Điều này 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 Với DPA-V4, hiệu quả tấn công tương tự như DPA-TRACES, và giá trị GE trong pha tấn công cho tất cả các phương pháp được thể hiện trong Hình 2.20 và Hình 2.21 Kết quả cho thấy tấn công VMD-GSO-SVM đạt giá trị GE tốt nhất.
Bảng 2.10 cho thấy số lượng vết điện năng tiêu thụ cần thiết để đạt được giá trị 𝐺𝐸 = 0 cho từng tấn công Trong đó, tấn công VMD-GSO-SVM trên ACT-TRACES yêu cầu số lượng vết thấp nhất, với trung bình 10.2 và 5.3 tương ứng với 100 và 200 vết mẫu cho mỗi giá trị HW Tương tự, đối với DPA-V4, VMD-GSO-SVM cũng cần 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, cho thấy hiệu quả của phương pháp này so với các tấn công khác.
Đánh giá phương pháp VMD-GSO-SVM
Dựa trên quy trình đề xuất thực hiện và kết quả thực nghiệm của phương pháp tấn công VMD-GSO-SVM, có thể rút ra một số đánh giá và kết luận quan trọng về hiệu quả và tính khả thi của phương pháp này trong các ứng dụng thực tiễn.
Phương pháp tấn công mẫu này dựa trên 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 phát triển thông qua thuật toán học máy SVM Nhờ đó, phương pháp này 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ó đáp ứng trong các tình huống tấn công thực tế.
Tấn công này có khả năng khôi phục khóa đúng của thiết bị, như đã được chứng minh qua thực nghiệm Kết quả cho thấy nó có thể khôi phục khóa bằng cách sử dụng các vết điện năng tiêu thụ thực tế trong ACT-TRACES và dữ liệu công khai DPA-V4 Điều này chứng tỏ rằng quy trình tấn công đề xuất là phù hợp và có tính thực tế cao.
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 nghiên cứu, bao gồm 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 môi trường có nhiễu, số lượng vết điện năng tiêu thụ để xác định khóa đúng giảm từ 60 đến 70% Khi mức độ nhiễu tăng cao, sự gia tăng số vết cần thiết cho phương pháp VMD-GSO-SVM để tì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 kỹ thuật lựa chọn các Điểm Quan Tâm (POIs) dựa trên VMD, GSO và SVM, cho phép xác định thông tin quan trọng nhất từ dữ liệu tiêu thụ điện năng và đồng thời loại bỏ nhiễu trong quá trình phân tích.
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êm thời gian Tuy nhiên, việc phân tách các vết này có thể thực hiện trên máy tính cá nhân với thời gian không đáng kể, và luận án không đánh giá thêm về vấn đề này.
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 có hiệu quả hơn so với một số phương pháp khác, nhưng đối với các thiết bị có phòng vệ, thông tin về POIs thường bị che giấu bởi mặt nạ, khiến việc lựa chọn trở nên khó khăn Do đó, cần một công cụ tự động để lựa chọn POIs từ 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 khả thi Chương 3 của luận án sẽ trình bày phương pháp tấn công đối với thiết bị có phòng vệ với kỹ thuật lựa chọn POIs tự động.
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ệ, bao gồm 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, giảm 25% số lượng vết điện năng tiêu thụ và hơn 50% trong trường hợp có nhiễu khi khôi phục khóa bí mật Hiệu quả này đạ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 VMD mode chứa rò rỉ kênh kề tối đa và giảm nhiễu Luận án cũng giới thiệu 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 phục hồi khóa đúng từ số lượng vết điện năng tiêu thụ Cả hai phương pháp tấn công đều có khả năng hoạt động hiệu quả trong điều kiện thực tế với 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 đã chứng minh hiệu quả đối với các thiết bị mật mã mà không cần biết trước phân bố xác suất về điện năng tiêu thụ Tuy nhiên, việc lựa chọn các điểm quan trọng (POIs) từ vết điện năng tiêu thụ là điều kiện tiên quyết để áp dụng các mô hình học máy Đối với các 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 lựa chọn POIs đã được đề xuất, như CPA, DoM, SoST, SOSD, và các phương pháp kết hợp giữa VMD, GSO và SVM Tuy nhiên, việc xác định POIs cho các thiết bị có phòng vệ vẫn là một thách thức lớn, và chưa có phương pháp hiệu quả nào được đưa ra May mắn thay, các mô hình học sâu có khả năng 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 lựa chọn POIs, cho phép thực hiện tấn công mẫu trên các 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à thực hiện phân lớp chúng.
Công trình của Prouff và cộng sự áp dụng kiến trúc CNN, dựa trên các phương pháp xử lý ảnh, để giải quyết bài toán tấn công Tham số được lựa chọn thông qua thực nghiệm, với kiến trúc tối ưu là CNNP.
- 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 các cuộc tấn công, tuy nhiên, kiến trúc hiện tại có 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 phát hành bộ dữ liệu mở ASCAD, giúp so sánh hiệu quả tấn công trên các thiết bị có phòng vệ Dù vậy, 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 cho bài toán tấn công, dẫn đến hiệu quả tấn công chưa cao.
Zaid đã nghiên cứu chi tiết 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 bằng cách sử dụng 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, diễn ra tại vị trí sau tầng làm phẳng (Flatten) và trước tầng kết nối đầy đủ (FC: Fully Connected) 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 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 mà thiết bị xử lý 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 các giá trị ngẫu nhiên, các giá trị trung gian của thuật toán mật mã được che giấu trong quá trình thực hiện Cuối cùng, các giá trị ngẫu nhiên sẽ được loại bỏ để tạo ra đầu ra giống 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ạ với giá trị trung gian, và 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ữ hay 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).
Phép toán trong sơ đồ mặt nạ thường là phép toán cộng mô-đun 2, và khi đó, sơ đồ này được gọi là mặt nạ Boolean Giá trị 𝑧 được xem là giá trị được mặt nạ, trong khi 𝑚1, 𝑚2, …, 𝑚𝑑 là các mặt nạ, và 𝑧′ là giá trị mà thiết bị sẽ thực thi Các mặt nạ được tạo ra một cách ngẫu nhiên và độc lập, và số lượng mặt nạ được sử dụng được gọi là bậc của sơ đồ mặt nạ.
Khi thiết kế mặt nạ cho thuật toán mã hóa, 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 tạo mặt nạ cho các phép toán tuyến tính khá đơn giản, nhưng việc triển khai cho các hàm phi tuyến lại gặp nhiều thách thức 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 việc 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ã có sử dụng 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 thiết bị sử dụng trong quá trình mã hóa, trong khi 𝑚 ∈ 𝔽(2 8 ) là một mặt nạ ngẫu nhiên Để bảo vệ thuật toán khỏi các cuộc tấn công kênh kề, giá trị 𝑧 sẽ được che giấu bởi mặt nạ 𝑚 thông qua phép toán XOR, tạo ra giá trị 𝑧 ′ = 𝑧 ⊕ 𝑚 Thiết bị sẽ xử lý giá trị 𝑧 ′ thay vì 𝑧 như trong trường hợp không có bảo vệ Đối với phép toán phi tuyến được cài đặt bằng bảng thế Sbox, bảng thế Smbox sẽ được tính toán từ Sbox để đảm bảo tuân thủ yêu cầu an toàn Nhờ đó, các giá trị đầu ra từ Sbox của 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ị vào thời điểm xử lý giá trị trung gian trong tấn công Đối với thiết bị không có phòng vệ, giá trị trung gian được xử lý rõ ràng, dẫn đến POIs xuất hiện tại vị trí thiết bị Trong khi đó, thiết bị có phòng vệ bằng mặt nạ sẽ xử lý giá trị trung gian cùng với mặt nạ, gây ra rò rỉ điện năng liên quan đến giá trị mặt nạ Quá trình này tạo ra các POIs tại các vị trí thiết bị xử lý với mặt nạ, thường xuất hiện thành từng dải và được tách biệt bởi khoảng thời gian 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
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ụ thường diễn ra khi thiết bị thực thi giá trị lối ra của Sbox, với điện năng tiêu thụ có mối tương quan với giá trị mà thiết bị xử lý Nếu biết được điện năng tiêu thụ tại thời điểm này, kẻ tấn công có thể xác định giá trị mà thiết bị đang xử lý 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 kẻ tấn công không thể xác định giá trị thực sự Để tấn công các thiết bị này, kẻ tấn công cần 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 tấn công bậc cao là hàm tích, được đề xuất bởi Chari, và hàm hiệu, được đề xuất bởi Messerges.
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 đã được kiểm chứng qua thực nghiệm Phần này của luận án cung cấp cơ sở chứng minh mối quan 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ị 𝑧 Vì vậy, khi biết được mức tiêu thụ điện năng, 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ì giá trị 𝑧 Do không biết giá trị 𝑚, việc xác định 𝑧 chỉ dựa vào điện năng tiêu thụ của z + 𝑚 là không khả thi.
Gọi 𝑙 𝑥 giá trị điện năng tiêu thụ khi thiết bị xử lý 𝑚
Gọi 𝑙 𝑦 giá trị điện năng tiêu thụ khi thiết bị xử lý z+𝑚
Nếu kết hợp giữa 𝑙 𝑥 và 𝑙 𝑦 thì có thể tìm được mối quan hệ với 𝑏 Hai hàm kết hợp được suy ra từ (3.3) và (3.4) thường được sử dụng 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 trong việc đánh giá hiệu suất của thiết bị.
- 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 trên vết điện năng tương ứng với các trường hợp xử lý bit ngẫu nhiên, bit 1 và bit 0 Kết quả cho thấy điện áp tại điểm đó là 𝑎 = 70,46𝑚𝑉, với độ lệch điện áp 𝛿 1 = 2,98𝑚𝑉 cho bit 1 và 𝛿 2 = 2,92𝑚𝑉 cho bit 0 Điều này cho thấy sự lệch điện áp giữa hai loại bit này là tương đương, chứng minh rằng điện năng tiêu thụ của thiết bị phụ thuộc vào giá trị của bit được 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 𝒍 𝒙𝒚 = 𝒍 𝒙 𝒍 𝒚
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 𝑧
Người tấn công có thể thực hiện tấn công vào thiết bị mặt nạ bằng cách sử dụng hàm kết hợp, áp dụng các phương pháp tấn công không bản mẫu như đã trình bày trong chương 10 của tài liệu [54] cùng với 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 phổ biến nhằm tấn công các thiết bị mã hóa 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 xác định khóa của thiết bị trong quá trình tấn công Việc lựa chọn các Điểm Quan Trọng (POIs) là rất quan trọng, ảnh hưởng đến độ chính xác của mô hình Đối với các thiết bị không có phòng vệ, POIs có thể được xác định bằng các phương pháp đã đề cập trước đó Tuy nhiên, với thiết bị có phòng vệ bằng mặt nạ, việc tìm kiếm POIs trở nên khó khăn hơn do sự phân tán của chúng Cần xác định các 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 được đề xuất để lựa chọn các POIs này Do đó, cần một công cụ tự động để 'học' và tạo ra các POIs tổng hợp cho việc tấn công Các nghiên cứu đã chứng minh khả năng áp dụng mô hình học sâu cho 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 Trong phần tiếp theo, 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ệ với kiến trúc mạng học sâu dựa trên đặc điểm của các POIs Mô hình phân lớp vết điện năng tiêu thụ sẽ được đề xuất dựa trên kiến trúc mạng nơ-ron tích chập.
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 đượ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 Do đó, 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ủa vết, 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ó khả năng 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 phân lớp dựa trên các đặc trưng đã học.
Luận án đề xuất mô hình phân lớp cho vết điện năng tiêu thụ dựa trên thiết bị mặt nạ, sử dụng kiến trúc mạng nơ-ron tích chập, được gọi là CNNd Việc xây dựng kiến trúc CNNd bao gồm 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ố lượng nơ-ron ẩn, tầng đầu ra và các tham số tương ứng của các tầng này.
Dữ li ệ u và o V ết đ iệ n n ăn g ti ê u t h ụ ( x)
Kích thước kernel: g 2 Đầu ra CONV
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 thiết kế 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 trọng (POIs) Những POIs này xuất hiện trong quá trình thiết bị xử lý mặt nạ và các giá trị mà mặt nạ thu thập Các POIs được phân bố trong một số dải và cách biệt nhau để tạo thời gian cho thiết bị xử lý các giá trị khác Đối với thiết bị sử dụng mặt nạ bậc nhất, có hai dải POIs như đã mô tả Do đó, kiến trúc CNNd cần đáp ứng các yêu cầu để 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ác đặc trưng kết hợp giữa các điểm POIs có thể được học thông qua hiệu và tích của các POIs, như đã nêu trong biểu thức (3.3) và (3.4) Theo phân tích ở phần 3.2.3, những đặ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 nhằm đáp ứng các yêu cầu cụ thể, 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 tạo POIs kết hợp, 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) trong vết điện năng tiêu thụ Theo Zaid [33], khi vết điện năng đi qua các tầng tích chập, thông tin về các POIs sẽ bị trải rộng, đặc biệt khi các POIs nằm gần nhau xung quanh các đỉnh của vết Để giảm mức độ trải rộng thông tin này, bộ phân lớp CNNd chỉ cần một tầng tích chập để thực hiện chức năng phát hiện POIs Kích thước bộ lọc của tầng tích chập cần đủ lớn để bao phủ vùng đỉnh của vết, nhưng cũng phải giảm thiểu việc sử dụng lại thông tin từ các POIs ở vùng đỉnh để không làm giảm hiệu quả của tấn công Do đó, luận án đề xuất sử dụng tầng tích chập có nhân co giãn với hệ số co giãn 𝑑 = 1, giúp tối ưu hóa quá trình phát hiện mà không làm mất đi thông tin quan trọng.
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 thiết kế để tạo ra các Điểm Quan Tâm (POIs) kết hợp theo công 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ởi phương trình (3.7), trong đó (𝑥 𝑢 , 𝑥 𝑢+1 , … , 𝑥 𝑢+𝑙 1 ) đại diện cho các POIs ở dải thứ nhất 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
Để lối ra của tầng tích chập thứ hai có thể kết hợp hai dải POIs, độ dài của bộ lọc trong tầng tích chập này cần đủ lớn để bao trùm cả hai dải Khi bộ lọc trượt đến vùng chứa các dải POIs, các đặc trưng lối 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, nên các giá trị 𝐶 𝑗 và 𝐶 𝑘 cũng có thể có dấu khác nhau Điều này dẫn đến việc lối 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à 𝐶 𝑘 Kết quả này được biểu diễn qua hàm kết hợp 𝐶 𝑆 trong biểu thức (3.3), cho thấy rằng thông tin ở lối ra của tầng tích chập thứ hai chứa sự kết hợp thông tin từ các dải POIs.
Mặc dù thành phần thứ ba 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 hơn Do đó, kỹ thuật điều chỉnh L1 (L1-regularization) được đề xuất sử dụng ở tầng tích chập thứ nhất nhằm mục đích tối thiểu hóa thành phần thứ ba 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 dải POIs từ tín hiệu điện năng tiêu thụ Tầng tích chập thứ nhất phát hiện các POIs đầu vào, trong khi tầng tích chập thứ hai tổng hợp các POIs này để 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 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, với chức năng tạo ra các đặc trưng là tích của các điểm POIs Lối ra của HO-SCA 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 lớp 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 và HO-SCA kết hợp các đặc trưng để tạo ra thông tin quan trọng, sau đó được đưa vào tầng FLATTEN Tại đây, các đặc trưng này được tổng hợp và chuyển đến các lớp nơ-ron ẩn, nơi 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 của mạng nơ-ron tích chậ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 Sau mỗi tầng tích chập, có các tầng POOL nhằm giảm kích thước đặc trưng đầu ra, 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 cần thiết kế bộ lọc phù hợp cho tầng tích chập và các đặc trưng kết hợp cho bài toán phân lớp 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ố tầng nơ-ron ẩn và số nơ-ron trong mỗi tầng ẩn cũng cần được tối ưu hóa Hiện tại, chưa có giải pháp cụ thể nào để 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 tầng đã được xác định, nhưng giá trị của các tham số vẫn chưa rõ ràng Bộ tham số cần xác định 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 các tổ hợp tham số và lựa chọn bộ tham số 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ệu quả Hiện tại, các thuật toán tối ưu dựa trên trí tuệ bầy đàn đã được áp 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 tối ưu dựa trên hành vi săn mồi của bày sói (GWO) 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 của bầy sói xám, được tổ chức theo hệ thống phân cấp gồm các cấp 𝛼, 𝛽, 𝛿, và 𝜔 Con đầu đàn, gọi là Alpha, có trách nhiệm quyết định về săn bắt và nơi ở Cấp thứ hai, Beta, thường là những con sói dưới quyền Alpha nhưng cũng chỉ huy các Omega Omega là những con sói yếu, phụ thuộc vào đàn, trong khi Delta, mặc dù phụ thuộc vào Alpha và Beta, nhưng có vai trò quan trọng trong việc bảo vệ lãnh thổ và chăm sóc những con sói yếu hơn Hành vi săn mồi theo bầy là một khía cạnh xã hội đáng chú ý, bao gồm các giai đoạn khoanh vùng, rượt đuổi và tấn công khi con mồi ngừng di chuyển, như được chỉ ra bởi Mirjalili.
Trong giai đoạn khoanh vùng, bầy sói liên tục cập nhật vị trí của mình 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 phương trình 𝑋 (𝑡 + 1) = 𝑋 𝑝 (𝑡) − 𝐴 𝐷⃗⃗, 𝑡 đại diện cho 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 xám Các vector hệ số 𝐴 và 𝐶 được xác định bởi 𝐴 = 2𝑎 𝑟 1 − 𝑎 và 𝐶 = 2 𝑟 2, với 𝑎 giảm tuyến tính từ 2 đến 0 trong suốt quá trình lặp, trong khi 𝑟 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 của sói xám, 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 xác định cho đến thời điểm này, yêu cầu các cá thể tìm kiếm khác, bao gồm cả Omegas, cập nhật vị trí của chúng theo vị trí của các cá thể tốt nhất Mirjalili đã đề xuất các biểu thức trong (3.12) để mô tả hành vi này.
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 hành vi này, chúng ta giảm giá trị của 𝑎, dẫn đến độ biến thiên của 𝐴 giảm theo 𝑎 Giá trị 𝐴 được xác định ngẫu nhiên trong khoảng [−2𝑎, 2𝑎], với 𝑎 giảm từ 2 xuống 0 qua các vòng lặp Khi 𝐴 nằm trong khoảng [−1, 1], vị trí tiếp theo của sói có thể ở bất kỳ đâu 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 và khám phá một khu vực 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
Return: 𝑋 𝛼 là tham số tốt nhất cho CNNd
Các tham số của CNNd, bao gồm {𝛾 1 , 𝛾 2 , 𝛾 3 , 𝛾 4 , 𝛿 1 , 𝛿 2 }, có ảnh hưởng lớn đến độ chính xác phân lớp Để tối ưu hóa các tham số này, thuật toán GWO được áp dụng nhằm nâng cao độ chính xác của CNNd thông qua việc xác định các giá trị tối ưu trong một dải rộng Mỗi giải pháp trong không gian tìm kiếm của bày sói chứa các tham số quan trọng này.
Thuật toán GWO được áp dụng cho các bài toán có không gian tìm kiếm liên tục cho từng 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, 𝑥 𝑖𝑗 đại diện cho vị trí thực tế của 𝑋 𝑖, trong khi 𝑦 𝑖𝑗 là vector số nguyên mô tả vị trí của 𝑋 𝑖 Thêm vào đó, 𝑏 𝑗 là 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 với vị trí ngẫu nhiên Số vị trí này tương ứng với số tham số của CNN cần tối ưu bởi 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ể được tạo ra trong quá trình lặp của thuật toán Để đánh giá hiệu quả của mỗi 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 CNN 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 lớp đúng và 𝐹𝑃 𝑖 là tổng số vết thuộc lớp 𝑖 được phân lớp 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 của dữ liệu đầu vào là các POIs và các tham số của nó được tối ưu bằng thuật toán GWO, mang lại sự phù hợp hơn so với CNNP và CNNz Việc tối ưu hóa thông qua thực nghiệm giúp CNNd nâng cao hiệu quả tấn công trong các bài toán cụ thể liên quan đến thiết bị mặt nạ Hơn nữa, kiến trúc của CNNd nhỏ gọn hơn nhiều so với CNNP và tương đương với CNNz, góp phần vào việc phát triển phương pháp tấn công hiệu quả cho thiết bị mặt nạ CNN-D.
Bằng cách phát triển bộ phân lớp CNNd, luận án này đề xuất ứng dụng CNNd trong phương pháp tấn công mẫu sử cho thiết bị được bảo vệ bằng mặt nạ, được 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 phần tiếp theo.
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 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ị, đặ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ụ.
- Là bản sao của 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ũng 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à thực hiện các thay đổi 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ọ có thể nhận biết thuật toán đã được áp dụng và sơ đồ mặt nạ có thể sử dụng.
Người tấn công không thể xác định thiết kế và giá trị của bộ phát số ngẫu nhiên trong thiết bị, điều này đồng nghĩa với việc họ không biết các giá trị mặt nạ được sử dụng.
Quy trình tấn công
Sơ đồ tấn công mẫu cho thiết bị bảo 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 giai đoạn chính: giai đoạn lập mẫu và giai đoạn 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 tạo ra 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ể để đảm bảo tính chính xác và hiệu quả của mô hình.
Lựa chọn điểm tấn công trong thuật toán mật mã là rất quan trọng, ví dụ như sử dụng lối ra Sbox với giá trị trung gian tấn công được xác định bởi công thức 𝑧 𝑖 = 𝑠𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘) Việc này giúp tối ưu hóa quá trình tấn công và nâng cao hiệu quả trong việc khai thác lỗ hổng bảo mật.
𝑘 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ã hóa Trong quá trình thực hiện 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à 𝑧 𝑖 = 𝑠𝑏𝑜𝑥(𝑝𝑡 𝑖 ⊕ 𝑘), trong đó 𝑖 = 1, … , 𝑁 𝑝 Với thuật toán AES, đầu ra 𝑠𝑏𝑜𝑥 có giá trị 1 byte, do đó 𝑧 𝑖 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 nó tổng quát hóa mối quan hệ 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 tất 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 giai đoạn 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 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ác vết có nhãn tương ứng Những xác suất này sau đó đượ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ông thức log 𝐿 𝑘, trong đó log 𝐿 𝑘 được xác định bởi tổng hợp các xác suất từ bộ phân lớp CNN.
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 số tất cả các khóa giả thiết có ước lượng hợp lý lớn nhất (3.16) sẽ được coi 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 năng lượng tiêu thụ từ thiết bị tấn công là rất quan trọng Những vết điện năng này phản ánh mức tiêu thụ năng lượng khi thực hiện các phép toán tấn công Chẳng hạn, chúng có thể ghi lại năng lượng tiêu thụ của thiết bị trong quá trình thực hiện phép toán Sbox.
B4: Mô hình CNNd đã được huấn luyện trong pha 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 thuộc về 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ụ 𝑡 𝑖 được phân lớp thuộc lớp 𝑧 𝑗 bởi mạng CNNd Trong pha 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ụ, do đó 𝑗 nhận giá trị từ 0 đến 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 quá trình tấn công, ta xem xét tất cả các giá trị khả dĩ của khóa 𝑘 từ 0 đến 255, do 𝑘 có độ lớn 1 byte, dẫn đến 256 giá trị khác nhau Kết quả thu được là ma trận 𝑷 có kích thước (𝑁 𝑎 , 256), trong đó mỗi phần tử được ký hiệu là 𝑝 𝑖,𝑗 Chỉ số 𝑖 và 𝑗 lần lượt đại diện cho hàng và cột, mô tả đầu ra Sbox của phép XOR giữa bản rõ của vết 𝑡 𝑖 và khóa 𝑘 𝑗.
Người tấn công thay thế các phần tử 𝑝 𝑖,𝑗 của ma trận 𝑃 bằng giá trị 𝐶𝑁𝑁(𝑡 𝑖 ) 𝑝 𝑖,𝑗 như được mô tả trong ma trận 𝑫 ở biểu thức (3.17) Kết quả là người tấn công thu được ma trận 𝑆 được biểu diễn bởi (3.19), trong đó mỗi phần tử 𝑠 𝑖,𝑗 thể hiện xác suất tiêu thụ điện năng 𝑡 𝑖 với một 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 nêu rõ trong Bảng 3.4 Cụ thể, số vết sử dụng 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 Dữ liệu trong pha lập mẫu được chia thành hai phần: 45000 mẫu được dùng để huấn luyện mạng nơ-ron tích chập CNN và 5000 mẫu dùng để kiểm tra hiệu suất Các mẫu 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 mẫu trong pha tấn công không có nhãn xác định.
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 dựa trên các vết điện năng thu thập từ thiết bị mẫu Hình 3.8 cho thấy độ chính xác của CNNd tăng theo số epochs, chứng minh 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 so sánh độ 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 CNNd đạt độ chính xác cao nhất nhờ vào việc 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 để xác định xác suất các vết điện năng tiêu thụ thuộc vào một lớp từ 0 đến 255 Sử dụng một số lượ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 Trong đó, giá trị 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 của thiết bị, phù hợp với khóa trong bộ dữ liệu ASCAD Điều này 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 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 được cải thiện Điều này chứng tỏ rằng phương pháp tấn công đề xuất có thể 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 của các phương pháp khác nhau, cho thấy hạng của khóa dựa trên số lượng vết điện năng tiêu thụ trong quá trình tấn công.
Tấn công sử dụng mô hình CNNz do Zaid đề xuất có tốc độ hội tụ về 0 chậm hơn so với tấn công sử dụng CNNd, cho thấy rằng 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 để tìm ra 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 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 giảm từ 191 xuống còn 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 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 trình bày 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 cho thấy sự khác biệt về số lượng vết để đạt được GE=0 trong 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ể đưa ra một số nhận xét đánh giá về phương pháp tấn công này như sau:
Phương pháp tấn công mẫu này áp dụng cho các thiết bị có phòng vệ bằng mặt nạ, sử dụng mô hình phân lớp CNNd để 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 Trọng (POIs) được thực hiện tự động thông qua các lớp tích chập của CNNd.
Kiến trúc CNNd được phát triển để tấn công bằng cách phân tích đặc điểm của các Điểm Quan Tâm (POIs) trên thiết bị có hệ thống phòng vệ Các bộ lọc trong tầng tích chập được thiết kế nhằm tối ưu hóa quá trình học 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ố lượng đ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.
Trong chương này, luận án đã trình bày phương pháp tấn công mẫu cho các thiết bị có phòng vệ bằng mặt nạ, 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 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ụ để phục vụ cho 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 hiệu quả trong việc tìm kiếm tham số tối ưu cho CNNd 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 này là đề xuất phương pháp tấn công mẫu cho thiết bị có phòng vệ mặt nạ CNN-D sử dụng bộ phân lớp CNN d với kiến trúc 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 nhiều 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 xác định khóa đúng của thiết bị mật mã Đặc biệt, tấn công phân tích điện năng tiêu thụ có thể thành công trên cả thiết bị mật mã không có phòng vệ lẫn thiết bị đã được bảo vệ.
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 Điều này đạt được nhờ 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ụ, cũng như kết hợp VMD, GSO và SVM để lựa chọn các điểm POIs Bên cạnh đó, việc áp dụng các kỹ thuật học máy, học sâu và tối ưu tham số đã giúp nâng cao hiệu quả tấn công Các kết quả cụ thể của luận án đã được ghi nhận rõ ràng.
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ả nhằm vào các thiết bị mật mã, bao gồm cả trường hợp thiết bị không có phòng vệ và có phòng vệ Đối với thiết bị không có phòng vệ, những phương pháp này cho thấy tính khả thi cao trong việc khai thác thông tin bảo mật.
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 sáng tỏ các vấn đề lý thuyết và thực tiễn trong lĩnh vực nghiên cứu Những kết luận từ nghiên cứu không chỉ mở rộng hiểu biết hiện có mà còn tạo nền tảng cho các nghiên cứu tiếp theo.
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ể