Vết tương quan của khóa đúng và sai

Một phần của tài liệu (Luận án tiến sĩ) một số phương pháp tấn công phân tích điện năng tiêu thụ hiệu quả sử dụng kỹ thuật xử lý tín hiệu và học máy (Trang 44)

1.4.2. Phương pháp tấn công mẫu1.4.2.1. Quy trình thực thi 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 điện năng tiêu thụ dùng chung. Để nâng cao hiệu quả tấn công, mô hình điện năng tiêu thụ của từng thiết bị có thể được xây dựng khi 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, và có toàn quyền kiểm soát nó. Dựa trên ý tưởng này, phương pháp tấn công mẫu được đề xuất bởi [5] [56] [57] [58]. Quy trình tấn công mẫu được thực hiện thông qua hai pha: pha lập mẫu và

pha tấn công như được mô tả trên Hình 1.8.

Mục đích của pha lập mẫu là xây dựng được mô hình điện năng tiêu thụ chính xác của thiết bị để mô tả đặc điểm điện năng tiêu thụ của các giá trị trung gian tấn công. Để thực hiện, người 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 các vết này được mô tả bởi như

(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 = ( , ).

≜ {(1,1),…,( , )}

Sau đó, người tấn công xây dựng mô hình mô tả đặc trưng điện năng tiêu thụ của

thiết bị đối với từng khóa giả thiết (1.7) dựa trên tập trace lập mẫu .

(|)∶ →()

Do giá trị trung gian tại lối ra Sbox, ví dụ như thuật toán AES, có kích thước là 1 byte, do đó sẽ có 256 giá trị

cần được lập mẫu. Để giảm bớt số các giá trị cần phải lập mẫu người tấn công có thể lập mẫu thông qua trọng số Hamming của giá trị lối ra Sbox. Khi đó, có 9 giá trị cần phải lập mẫu do trọng số Hamming của một giá trị có kích

cỡ 1 byte có thể nhận các giá trị: {0,1,2,3,4,5,6,7,8}. Ta ký hiệu giá trị này là và = ( ). Khi đó, biểu thức (1.7)

được viết lại thành dạng ( | ) ∶ → ( ).

Sau bước lập mẫu, người tấn công có mô hình mô tả được điện năng tiêu thụ của thiết bị đối với từng giá trị trung gian hoặc đối với từng giá trị trọng số Hamming của .

Trong pha tấn công các vết thu thập được sẽ được biểu diễn bởi (1.8) với ∈ là khóa DUT sử dụng nhưng chưa biết và ; ( = 1,2, … , ) là các bản rõ đã biết.

≜ ( ,{(1

Sau khi đã thu thập được các vết từ DUT, người tấn công thực hiện tính xác suất của một vết từ DUT thuộc một 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. Xác suất này cho bởi biểu

thức (1.9). Với mỗi vết có một giá trị xác suất tương ứng cho mỗi giá trị trung gian

giả thiết , ớ ∈ [1, | |]. Giá trị thứ của mô tả xác suất mà mô hình gán cho giá

trị trung gian giả thiết khi có được vết . = ( ),∀ ∈ [1, ]

Các giá trị xác suất đối với các giá trị trung gian giả thiết của tất cả các vết tấn công sẽ được kết hợp lại với nhau để tính điểm số cho mỗi giá trị khóa giả thiết. Việc tính điểm số này dựa trên nguyên tắc ước lượng hợp lý lớn nhất MLP. Công thức (1.10) mô tả cách tính điểm số này. Khóa nào có điểm số lớn nhất là khóa đúng nhất.

28

Pha tấn công

DUT Bản rõ

Hình 1.8. Phương pháp

tấn công mẫu 1.4.2.2. Tấn công mẫu đơn giản

Tấn công mẫu đơn giản là dạng đầu tiên của phương pháp tấn công mẫu được đề xuất bởi Chari và các cộng sự [5]. Tấn công mẫu đơn giản được thực thi khi người tấn công biết được đặc tính phân bố điện năng tiêu thụ của thiết bị mẫu và DUT. Điều này

có nghĩa là sau khi thu thập được vết điện năng tiêu thụ ở dạng =

( 1, 2, … , ), người tấn công biết được phân bố xác suất của . Do biết được phân bố này, nên việc xây dựng mô hình điện năng tiêu thụ của

thiết bị đơn giản được biểu

diễn bởi các đặc trưng của phân bố xác suất của biến . Một giả định thường được giả định trong tấn công 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 [35]. Khi đó, mô hình điện năng tiêu thụ của thiết bị mẫu đối với các giá trị trung gian lập mẫu được mô tả bởi hàm mật độ xác suất (1.11)

với ( ̅ , ) là véc-tơ giá trị trung bình và ma trận hiệp phương sai của các vết điện

năng tiêu thụ khi thiết bị xử lý đối với giá trị trung gian . Khi đó luật quyết định khóa đúng dựa

trên (1.10) được viết lại thành (1.12) với ( | ) là 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ó và ( ) là xác suất thiết bị xử lý giá trị trung gian .

= argmax ∏ ( | )

= arg max {∏ ( | ). ( ) ; ∈ = ( , ); = 1: } =1

1.4.2.3. Tấn công mẫu sử dụng học máy

Với 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 tấn công, người tấn công giả định điện năng tiêu thụ tại điểm tấn công phải tuân theo phân bố Gauss chuẩn đa biến. Tuy nhiên, giả định này không đúng với mọi thiết bị, cho mọi trường hợp nên cần một phương pháp tấn công tổng quát hơn có thể thực hiện trên nhiều thiết bị mà không cần ràng buộc trên. Xuất phát từ nguyên tắc thực hiện tấn công mẫu thấy rằng: Trong pha 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 điểm về sự phụ thuộc điện năng tiêu thụ với các giá trị khóa đã biết từ các vết điện năng tiêu thụ của thiết bị mẫu; Trong pha tấn công, mô hình này dùng để đoán giá trị khóa của DUT khi có được vết điện năng tiêu thụ mới thu thập từ DUT. Như vậy có thể xem bài toán của tấn công mẫu tương tự như bài toán được giải quyết trong phương pháp học máy ở đó cả hai đều thực hiện xây dựng mô hình từ tập dữ liệu đã biết nhãn và sử dụng thông tin này để ước lượng đầu ra của dữ liệu chưa được gán nhãn khi đi qua mô hình đã được xây dựng. Do đó, một hướng tiếp cận mới khi thực hiện tấn công mẫu là dựa trên thuật toán học máy và đã có một số tấn công theo hướng này đã được thực hiện [6] [7] [8] [9] [10] [11] [12] [13] [14] [15].

Quy trình tấn công mẫu sử dụng học máy cũng gồm hai pha: 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 hoặc học sâu được sử dụng để xây dựng mô hình điện năng tiêu thụ mô tả điện năng tiêu thụ của các giá trị trung gian tấn công. Việc xây dựng mô này dựa trên tập các vết điện năng tiêu thụ thu thập được từ thiết bị mẫu với nhãn được gán là các giá trị có thể của giá trị trung gian tấn công. Trong pha tấn công, mô hình học máy đã được xây dựng được sử dụng để ước lượng xác suất của một vết điện năng tiêu thụ thu được từ thiết bị tấn công có nhãn là một trong số các giá trị trung gian tấn công. Và cuối cùng khóa đúng cũng được

xác định dựa trên điểm số quyết định được tính theo nguyên tắc ước lượng hợp lý

lớn nhất như biểu thức (1.10).

1.4.3. Phương pháp tấn công cho thiết bị có phòng vệ

Thiết bị có phòng vệ là những thiết bị mật mã được cài đặt giải pháp chống tấn công phân tích điện năng tiêu thụ. Về cơ bản giải pháp phòng chống tấn công được thực hiện với mục đích làm cho điện năng tiêu thụ của thiết bị mật mã độc lập với các giá trị trung gian mà thiết bị xử lý. Có hai kỹ thuật chính để thực hiện việc này là kỹ thuật ẩn và mặt nạ [26].

Ý tưởng của kỹ thuật ẩn là làm cho điện năng tiêu thụ của thiết bị mật mã thay đổi ngẫu nhiên hoặc không thay đổi theo dữ liệu nó xử lý. Do đó, kỹ thuật ẩn thường

được thực hiện ở mức phần cứng hay mức cổng bằng cách thêm một lượng nhiễu ngẫu nhiên vào mạch hay thiết kế những phần tử logic có điện năng tiêu thụ không thay đổi theo dữ liệu xử lý. Các nghiên cứu đi theo hướng này được thể hiện ở các công trình [59] [60] [61]. Tuy nhiên, trên thực tế rất khó đạt được sự ngẫu nhiên hay cân bằng tuyệt đối dẫn tới vẫn có một lượng rò rỉ thông tin kênh kề nhất định có ích với người tấn công.

Khác với kỹ thuật ẩn, kỹ thuật mặt nạ được thực hiện bằng cách che dữ liệu mà thiết bị xử lý bởi các mặt nạ. Do tác động trực tiếp lên dữ liệu nên kỹ thuật mặt nạ có thể thực hiện ở mức thuật toán. Ý tưởng kỹ thuật mặt nạ bắt nguồn từ ý tưởng của sơ đồ chia sẻ bí mật. Các nghiên cứu đầu tiên được đề xuất bởi Chari [62] và Goubin

[63]. Trong đó, các biến nhạy cảm của thuật toán mật mã được coi như bản tin bí mật và sau khi được mặt nạ thì thông tin của bản tin bí mật sẽ ở trên các chia sẻ (share). Việc khôi phục thông tin bí mật chỉ có thể thực hiện được nếu biết được tất cả các chia sẻ. Có nhiều sơ đồ mặt nạ được đề xuất cho các thuật toán AES như [64] [65]

[66]. Khi một sơ đồ mặt nạ được cài đặt, nó đảm bảo các biến nhạy cảm không được xử lý ở dạng rõ mà được xử lý bởi (1.13) với ∗ là một phép toán nhóm (có thể là cộng

hoặc nhân). Trong đó 1, 2, … , là các mặt nạ. Khi biến nhạy cảm được mặt nạ theo biểu thức (1.13) độ phức

tạp của việc khôi phục thông tin bởi tấn công kênh kề tăng theo số mũ với số mặt nạ được sử dụng [29]. Do đó, số mặt nạ đóng vai trò quan trọng trong sự an toàn của sơ đồ mặt mạ.

∗ 1∗ 2∗…∗

Về mặt nguyên tắc, kỹ thuật ẩn và mặt nạ có thể giúp thiết bị chống lại tấn công phân tích điện năng tiêu thụ. Tuy nhiên trên thực tế, nó chỉ có thể làm giảm hiệu quả

của các tấn công, và những tấn công lên thiết bị có phòng vệ còn được gọi là tấn công bậc cao. Bậc của tấn công là số lượng chia sẻ phụ thuộc với nhau mà người tấn công cần kết hợp để tìm ra biến nhạy cảm. Nói chung để tấn công cho thiết bị mặt

nạ bậc thì tấn công kênh kề bậc ( + 1) cần phải thực hiện. Một số tấn công kênh kề

bậc cao lên thiết bị có mặt nạ được công bố bởi [8] [27] [28] [29]. Ý tưởng chính trong các công trình trên là người tấn công cần sử dụng một hàm kết hợp để kết hợp thông tin kênh kề ở trong các chia sẻ của một biến nhạy cảm và sau đó sử dụng thông tin này cho tấn công kênh kề như đối với thiết bị không có mặt nạ. Trên thực tế, phương pháp này chỉ áp dụng hiệu quả đối với thiết bị có mặt nạ bậc nhất.

Một hướng khác được sử dụng để tấn công đối với những thiết bị có phòng vệ là tấn công mẫu. Quy trình tấn công mẫu đối với thiết bị có phòng vệ giống với tấn công mẫu với thiết thiết bị không có phòng vệ. Tuy nhiên, vấn đề lựa chọn POIs trong pha lập mẫu gặp nhiều khó khăn và mô hình máy học thường được sử dụng để giải quyết vấn đề này. Mô hình này phải có khả năng học được các hàm tích hoặc tổng ở trên để tìm được các đặc trưng của các rò rỉ kênh kề có liên quan đến các chia sẻ.

1.4.4. 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ụ có hai tham số thường được sử dụng là: khả năng khôi phục khóa đúng và hạng của khóa đúng hay còn gọi lượng thông tin ước đoán (GE: Guessing Entropy) [67].

Khả năng khôi phục khóa đúng của một tấn công mô tả khả năng tấn công có thể

tìm được khóa đúng của thiết bị cần tấn công với 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ần sử dụng càng ít, hiệu quả của 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 là thành công hoàn toàn. Tuy nhiên trên thực tế, người tấn công chỉ cần làm giảm không gian khóa xuống mức có thể thực hiện được bằng các phép thử đơn giản qua đó để tìm khóa đúng. Một tham số được sử dụng để đo sự giảm của không gian khóa được gọi là lượng thông tin ước đoán, GE.

GE là tham số được đưa ra bởi Standaert, Malkin và Yung [67] dựa trên định nghĩa về lượng thông tin ước đoán của Massey [68] và Cachin [69]. GE được định nghĩa là số lần đoán trung bình cần với một ‘phép thử tối ưu’ để quyết định giá trị đúng của biến ngẫu nhiên X [68]. Phép thử tối ưu ở đây là xếp hạng các giá trị có thể có của khóa từ khóa có khả năng cao nhất đến khóa có khả năng thấp nhất dựa trên giá trị có được từ một cuộc tấn công. Tham số để xác định khả năng của khóa được xác định tùy thuộc vào loại tấn công ví dụ như DPA là độ lệch giữa hai nhóm, CPA

là hệ số tương quan của khóa giả thiết, và với tấn công mẫu là xác suất của khóa giả thiết.

Lượng thông tin ước đoán sau tấn công GE có thể được định nghĩa như sau [7] [67]: đặt là véc-tơ xếp hạng của các khóa sau lần lặp lại một thí nghiệm, định nghĩa là chỉ số của khóa đúng trong . Sau khi thực hiện thí nghiệm có ma trận

[1,2, … , ] với véc-tơ chỉ số tương ứng [1,2, … , ]. GE định nghĩa trung bình của vị trí khóa đúng theo (1.14).

=

=1

Dữ liệu sử dụng trong luận án

Để thực hiện các thí nghiệm về tấn công phân tích điện năng tiêu thụ, một bước quan trọng là đo và thu thập các vết điện năng tiêu thụ để làm dữ liệu phục vụ các tấn công. Các vết điện năng tiêu thụ sử dụng trong luận án được sử dụng từ nguồn dữ liệu thu thập từ thiết bị thực tế và nguồn dữ liệu về tấn công kênh kề được công bố công khai sẽ được mô tả dưới đây.

1.5.1. 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ụ 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ác vết, luận án sử dụng sơ đồ đo tổng quát dựa trên Hình 1 . 5 với các

thiết bị thực tế được thể hiện trên Hình 1.9, cụ thể như sau:

Thiết bị cần tấn công: Đây là thiết bị mật mã cần tấn công hoặc đánh giá độ an toàn. Thiết bị mật mã thường cung cấp một giao diện truyền thông với PC. Thiết bị mật mã sử dụng trong luận án là thẻ thông minh Atmega8515, được sử dụng để thực thi thuật toán AES-128 ở chế độ ECB. Các tham số, sơ đồ mạch của thẻ thông minh

được cho bởi Bảng 1.2 và Hình 1.10. Truyền thông giữa thẻ thông và thiết bị điều

khiển (máy tính) được thực hiện thông qua mô-đun Sakura-G/W [70] thông qua giao tiếp USB.

Bảng 1.2. Các tham số của thẻ thông minh Atmega8515

PC

- Đ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ụ

Phần mềm điều khiển Các file chứa vết điện

năng tiêu thụ -Thiết bị tấn công: smartcard ATmega8515 Nguồn cấp 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 Hì nh 1.9 . Mô i trư ờn g thu thậ p vết điệ n nă ng tiê u thụ thự

Hình 1.10. Sơ đồ mạch tương đương của thẻ thông minh Atmega8515 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 các vết điện năng tiêu thụ

dưới dạng điện áp (điểm đo J4 trên Hình 1.11) trên điện trở được nối với thiết bị tấn

công ở phía chân đất (GND). Luận này sử dụng máy hiện sóng Tektronix DPO3052

có các tham số thỏa mãn yêu cầu để thực hiện tấn công phân tích điện năng tiêu thụ

như đã chỉ ra trong [35] và được mô tả trên Bảng 1.3.

Máy tính (PC): Máy tính điều khiển quá trình hoạt động thiết bị cần tấn công,

Một phần của tài liệu (Luận án tiến sĩ) một số phương pháp tấn công phân tích điện năng tiêu thụ hiệu quả sử dụng kỹ thuật xử lý tín hiệu và học máy (Trang 44)

Tải bản đầy đủ (DOCX)

(152 trang)
w