Tài liệu Tấn công mẫu dựa trên khoảng cách tuyến tính: Công nghệ thông tin & Cơ sở toán học cho tin học
Trần Ngọc Quý, “Tấn công mẫu dựa trên khoảng cách tuyến tính.” 168
TẤN CÔNG MẪU DỰA TRÊN KHOẢNG CÁCH TUYẾN TÍNH
Trần Ngọc Quý*
Tóm tắt: Tấn công mẫu đối là một trong những tấn công kênh kề hiệu quả nhất đối
với thiết bị mật mã. Tấn công này xây dựng bộ mẫu của thiết bị thông qua các rò rỉ
kênh kề thu thập được trong quá trình thiết bị hoạt động. Các cuộc tấn công mẫu hiện
tại việc xác định giá trị bí mật cần tìm của thiết bị tấn công dựa trên nguyên tắc xác
suất lớn nhất của rò rỉ kênh kề đối với bộ mẫu của thiết bị. Trong bài báo này, tác giả
đề xuất một phương pháp tấn công mẫu có hiệu quả, trong đó việc xác định giá trị bí
mật dựa trên tính toán khoảng cách tuyến tính rò rỉ của kênh kề với bộ mẫu của thiết
bị. Thí nghiệm tấn công mẫu trong bài báo được thực hiện trên thẻ thông minh
ATMEGA8515 được cài đặt thực thi thuật toán mật mã AES-128.
Từ khóa: Tấn công kênh kề; Tấn công mẫu; Khoảng cách tuyến tính; Ma t...
8 trang |
Chia sẻ: quangot475 | Lượt xem: 337 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Tấn công mẫu dựa trên khoảng cách tuyến tính, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Công nghệ thông tin & Cơ sở toán học cho tin học
Trần Ngọc Quý, “Tấn công mẫu dựa trên khoảng cách tuyến tính.” 168
TẤN CÔNG MẪU DỰA TRÊN KHOẢNG CÁCH TUYẾN TÍNH
Trần Ngọc Quý*
Tóm tắt: Tấn công mẫu đối là một trong những tấn công kênh kề hiệu quả nhất đối
với thiết bị mật mã. Tấn công này xây dựng bộ mẫu của thiết bị thông qua các rò rỉ
kênh kề thu thập được trong quá trình thiết bị hoạt động. Các cuộc tấn công mẫu hiện
tại việc xác định giá trị bí mật cần tìm của thiết bị tấn công dựa trên nguyên tắc xác
suất lớn nhất của rò rỉ kênh kề đối với bộ mẫu của thiết bị. Trong bài báo này, tác giả
đề xuất một phương pháp tấn công mẫu có hiệu quả, trong đó việc xác định giá trị bí
mật dựa trên tính toán khoảng cách tuyến tính rò rỉ của kênh kề với bộ mẫu của thiết
bị. Thí nghiệm tấn công mẫu trong bài báo được thực hiện trên thẻ thông minh
ATMEGA8515 được cài đặt thực thi thuật toán mật mã AES-128.
Từ khóa: Tấn công kênh kề; Tấn công mẫu; Khoảng cách tuyến tính; Ma trận hiệp phương sai chung.
1. ĐẶT VẤN ĐỀ
Điện năng tiêu thụ của thiết bị mật mã phụ thuộc vào các lệnh và giá trị trung gian nó
xử lý. Bằng cách phân tích điện năng tiêu thụ của thiết bị mật mã, ta có thể tìm được các
thông tin bí mật, ví dụ như là khóa mã, của thiết bị và đây là ý tưởng của tấn công kênh kề
dựa trên phân tích điện năng tiêu thụ của thiết bị [4,2].
Kể từ khi Kocher và các cộng sự [4] đề xuất phương pháp tấn công phân tích điện năng
tiêu thụ vi sai (DPA), một số phương pháp tấn công kênh kề đã được đề xuất như tấn công
mẫu (TA) [5], tấn công phân tích điện năng tiêu thụ tương quan (CPA) [6], tấn công dựa
trên phân tích lượng thông tin tương hỗ [8], tấn công phân tích điện năng tiêu thụ dựa trên
mô hình ngẫu nhiên [11],...Trong các dạng tấn công trên, TA được cho rằng là phương
pháp tấn công kênh kề hiệu quả nhất [5]. Lý do là, trong TA, chúng ta sử dụng một thiết bị
mẫu giống với thiết bị tấn công để mô hình chính xác rò rỉ điện năng tiêu thụ của thiết bị
cần tấn công, và mô hình rò rỉ này được sử dụng để cải thiện khả năng khôi phục khóa của
tấn công mẫu. Trong tấn công mẫu, chúng ta khai thác rò rỉ điện năng tiêu thụ tại các điểm
quan trọng, ta gọi các điểm là POI, là những điểm có mà điện năng tiêu thụ phụ thuộc vào
giá trị bí mật hay khóa chúng ta cần tìm, trên vết điện năng tiêu thụ để khôi phục khóa của
thiết bị. Do đó, hiệu quả của việc khôi phục khóa phụ thuộc lớn vào lượng rò rỉ điện năng
tiêu thụ tại các điểm POI khác nhau. Dựa vào [5], một số công trình nghiên cứu tiếp theo
tìm cách lựa chọn các điểm POI để nâng cao hiệu quả của tấn công.
Chari [5], đề xuất giải pháp chọn POI là các điểm trên vết điện năng tiêu thụ có có độ
lệch lớn nhất so với vết điện năng tiêu thụ trung bình, còn gọi là DoM. Công trình [9] tính
độ lệch giữa các cặp giá trị trung bình của các vết điện năng tiêu thụ rồi tổng lại và các
mẫu có có độ lệch lớn nhất có được sử dụng là các POI. Mangard và Oswald [10], sử dụng
phương pháp tấn công CPA để xác định những điểm có hệ số tương quan lớn nhất làm các
giá trị POI. Trong [11], Gierlichs sử dụng phương pháp T-Test để xác định các POI và sự
hiệu quả của phương pháp đã được kiểm chứng bởi Batina trong [8].
Các công trình nghiên cứu tấn công mẫu trên, mặc dù có sử dụng các phương pháp
giảm chiều số liệu để lựa chọn POI, tuy nhiên, việc phức tạp tính toán vẫn còn khi vẫn
phải tính ma trận hiệp phương sai cho từng trường hợp giả thiết về khóa. Một khía cạnh
khác, độ đo để xác định khóa đúng trong pha tấn công sử dụng xác suất khóa đúng theo
công thức Bayes dựa trên nguyên tắc khả năng đúng lớn nhất, (MLP – Maximum
Likelihood Principle). Trong bài báo này, tác giả đề xuất một độ đo mới dựa trên khoảng
cách tuyến tính để xác định khóa đúng. Để đánh giá hiệu quả tấn công, bài báo sử dụng
tham số tỷ lệ thành công và lượng thông tin ước đoán sau tấn công.
Nghiên cứu khoa học công nghệ
Tạp chí Nghiên cứu KH&CN quân sự, Số 59, 02 - 2019 169
Bài báo này được tổ chức như sau. Nguyên lý chung của phương pháp tấn công mẫu
được trình bày trong phần 2. Phần 3 trình bày về đề xuất phương pháp thực hiện tấn công
mẫu hiệu quả sử dụng độ đo khoảng cách tuyến tính sau khi đã phân tích một số vấn đề
gặp phải khi thực thi tấn công mẫu hiện tại. Phần 4, trình bày phương pháp tiến hành thực
nghiệm và kết quả được mô tả và so sánh theo độ đo tỷ lệ thành công và lượng thông tin
ước đoán.
2. NGUYÊN LÝ TẤN CÔNG MẪU
Tấn công mẫu cơ bản được thực hiện qua hai pha: pha lập mẫu và pha tấn công. Trong
pha lập mẫu, chúng ta sử dụng giá trị trung bình và ma trận hiệp phương sai của để mô
hình rò rỉ điện năng tiêu thụ của thiết bị. Trong pha tấn công, ta sử dụng nguyên tắc MLP
để tìm khóa đúng của thiết bị tấn công.
2.1. Pha lập mẫu
Để thực thi tấn công mẫu chúng ta cần một cặp thiết bị giống nhau được gọi tương ứng
là thiết bị mẫu và thiết bị để tấn công. Với tấn công mẫu, chúng ta mong muốn tìm được
thông tin về khóa ∈ được xử lý bởi thiết bị tấn công tại một thời điểm nào đó. Với
bộ vi điều khiển 8 bít, = {0,1, ,255} là tập các giá trị có thể có của được xử lý bởi
một lệnh của vi điều khiển.
Chúng ta giả sử rằng có thể biết được thời điểm giá trị bí mật được xử lý bởi thiết bị
để tấn công và đo được các vết điện năng tiêu thụ, còn gọi là trace, của thiết bị khi nó xử
lý với giá trị bí mật này. Có thể coi các trace là các vector rò rỉ của thiết bị, , mỗi vector
có độ dài , ứng với giá trị điện năng tiêu thụ tại các thời điểm { , , , }. Như
vậy, ta có ∈ ℝ
vector mô tả trace của thiết bị tấn công tại các thời điểm quanh thời
điểm nó xử lý giá trị .
Trong quá trình xây dựng bộ mẫu từ thiết bị mẫu, chúng ta đo vector rò rỉ
∈
ℝ
tương ứng với mỗi giá trị ∈ , được thiết bị xử lý với một hoặc nhiều lệnh, kết hợp
chúng thành ma trận rò rỉ
∈ ℝ ×
.
Thường thì, các vector rò rỉ
chứa một số lượng mẫu lớn do tốc độ lấy mẫu lớn
của các thiết bị đo. Do đó, ta thường phải nén hay làm giảm số lượng mẫu này trước khi
đưa vào xử lý bằng cách chỉ lựa chọn ≪ mẫu. Như vậy, sau khi nén ta có các vector
rò rỉ là ∈ ℝ
, kết hợp thành ma trận ∈ ℝ
× .
Bây giờ, ta sử dụng để tính các tham số cho mẫu tương ứng với thiết bị xử lý giá trị
∈ đó là ̅ ∈ ℝ
và ∈ ℝ
× như sau:
=
1
(1)
=
1
− 1
( − )( − )′
(2)
Giá trị mẫu của các vết điện năng tiêu thụ có thể xấp xỉ theo phân bố chuẩn đa biến
[15]. Như vậy, các giá trị trung bình mẫu ̅ và là đủ để mô tả thống kê cho giá trị điện
năng tiêu thụ của thiết bị theo hàm mật độ xác suất (3).
( | , ) =
1
(2 ) det( )
exp −
1
2
( − )
( − ) (3)
Công nghệ thông tin & Cơ sở toán học cho tin học
Trần Ngọc Quý, “Tấn công mẫu dựa trên khoảng cách tuyến tính.” 170
Nói tóm lại, trong pha lập mẫu, ta sẽ lập | | bộ mẫu, mỗi bộ mẫu tương ứng với một
giá trị trung bình và ma trận hiệp sai: , tương ứng với | | giá trị bí mật của thiết bị.
2.2. Pha tấn công
Trong pha tấn công, chúng ta tìm giá trị bí mật ∈ được xử lý bởi thiết bị để tấn
công. Chúng ta thu thập vector rò rỉ ∈ ℝ
từ thiết bị để tấn công, sử dụng cùng kỹ
thuật thu thập và phương pháp nén với pha lập mẫu. Như vậy, ta sẽ có ma trận rò rỉ
∈ ℝ
× . Để xác định giá trị bí mật được xử lý bởi thiết bị khi biết được một
vector rò rỉ ∈ , chúng ta có thể áp dụng công thức Bayes. Điều này dẫn tới luật
quyết định như sau [9,10,11,13]:
= argmax
∈
( | ) = argmax
∈
( | ). ( )
(4)
Trong đó, ( | ) = ( | ̅ , ), được tính bởi (3), và (
) là xác suất tiên nghiệm
của giá trị bí mật . Luật quyết định này cho ta biết vector rò rỉ thuộc một trong các bộ
mẫu có giá trị với xác suất hậu nghiệm lớn nhất. Trong trường hợp tổng quát, ta có
( ) = | | . Cách quyết định khóa đúng dựa trên nguyên tắc khả năng đúng lớn nhất.
Ta ký hiệu tấn công mẫu kiểu này là .
3. PHƯƠNG PHÁP TẤN CÔNG MẪU HIỆU QUẢ
Trong phần này, bài báo sẽ đề xuất một phương pháp xác định khóa đúng trong pha tấn
công của tấn công mẫu dựa trên khoảng cách xác suất ở hai dạng sử dụng hàm LOG và
tuyến tính. Các tấn công mẫu dựa trên luật quyết định này được ký hiệu là và
.
3.1. Một số vấn đề khi thực hiện tấn công mẫu
Bây giờ chúng ta sẽ đề cập đến vấn đề có thể xảy ra khi thực hiện tấn công mẫu, đặc
biệt là khi số chúng ta sử dụng số lượng mẫu lớn. Một số tác giả [15,14] đã đề cập tới
vấn đề tính ma trận đảo của ma trận hiệp phương sai có thể dẫn tới vấn đề số học với
giá trị lớn khi định thức ma trận có thể xấp xỉ bằng 0. Một vấn đề thực tế đối với
việc tính ( − )
( − ) trong biểu thức của khi giá trị của lớn có thể dẫn tới
các giá trị mà dẫn tới phép toán mũ sau đó bị tràn. Ví dụ, độ chính xác của exp ( ) theo
IEEE chỉ an toàn khi | | < 710, điều này dễ dàng vượt qua với giá trị lớn.
Một vấn đề khác khi giá trị lớn là giá trị định thức | | cũng có thể tràn. Ví dụ, do
| | là tích của các vector riêng của , các giá trị vector riêng có thể vượt 10
và được
nhân với một số sẽ làm tràn số theo định dạng IEEE. Các vấn đề số học trên có thể được
loại bỏ nếu không tính (4) trực tiếp, mà giải quyết bài toán xác định giá trị bí mật thông
qua xắp xếp theo điểm số của từng ứng viên sử dụng bộ quyết định định được trình đề
xuất trong phần 3.2.
3.2. Xây dựng luật quyết định cho tấn công mẫu
Trong pha tấn công, giá trị bí mật của thiết là giá trị ứng viên ∈ sao cho xác
suất hậu nghiệm trong biểu thức (4) cho giá trị lớn nhất. Việc tính toán (4) thực chất là ước
lượng hàm mật độ xác suất (3) ứng với các giá trị khác nhau, và trong bài báo này giới
thiệu độ đo mới còn gọi là điểm số tách biệt tuyến tính, cho phép xác định giá trị bí mật
hiệu quả hơn. Thay vì tính xác suất hậu nghiệm như (4), ta tính khoảng cách của ứng
viên khi biết một vector rò rỉ theo (5):
( | ) = ( | , ) (5)
Việc tính khoảng cách này thực chất là ước lượng hàm mật độ xác suất (3), và khi lấy
logarit hai vế ta có (6).
Nghiên cứu khoa học công nghệ
Tạp chí Nghiên cứu KH&CN quân sự, Số 59, 02 - 2019 171
log ( | ̅ , ) = −
2
log 2 −
1
2
log| | −
1
2
( − ̅ )
( − ̅ ) (6)
Để loại bỏ vấn đề về số học khi tính định thức của , chúng ta tính logarit của định
thức theo phân tích Cholesky =
của ma trận đối xứng . Do là ma trận tam giác
nên định thức của nó là tích các phần tử trên đường chéo.
log| | = 2
∈ ( )
(7)
Do thành phần đầu trong (6) là giống nhau với mọi , ta có thể tính khoảng cách dựa
trên hàm log như nhau:
( | ) = −
1
2
log| | −
1
2
( − ̅ )
( − )
= log ( | , ) +
2
log 2 = log ( | ) +
(8)
Khi các rò rỉ đến từ các giá trị khác nhau của ta có các giá trị trung bình của các trace
khác nhau tuy nhiên phương sai giữa các điểm thuộc trace gần giống nhau ∑ ≈∑ ≈
2≈≈ , ta có thể sử dụng một ma trận hiệp phương sai chung cho tất cả các giá trị của
bởi công thức (9).
=
1
| |. − 1
∈
( − ̅ )( − ̅ )′
(9)
Đây có thể coi là giá trị hiệp phương sai trung bình từ (2). Ưu điểm lớn nhất của
việc sử dụng so với là nó biểu diễn ước lượng hiệp phương sai tốt hơn so với giá trị
hiệp phương sai thật ∑, bởi là ước lượng hiệp phương sai thông qua | | trace trong
khi đó chỉ tính đối với vết điện năng tiêu thụ. Điều này có nghĩa là điều kiện để ma
trận không kỳ dị thỏa mãn khi | | > hay >
| |
. Do đó, số trace phải có đối với
mỗi ứng viên giảm đi bởi một hệ số | |, là một ưu điểm lớn trong thực tế khi thực hiện
tấn công. Mặc dù, chất lượng của việc ước lượng giá trị trung bình ̅ vẫn còn phụ thuộc
trực tiếp vào .
Chúng ta giả sử rằng các giá trị hiệp phương sai là bằng nhau và đúng cho nhiều tấn
công kênh kề, bởi thu thập các thông tin về lượng nhiễu, có giá trị của nó thay đổi
không phụ thuộc vào giá trị của , tương quan đối với các mẫu của trace. Kết quả là giá trị
tín hiệu phụ thuộc vào dữ liệu ̅ đã được trừ đi. Và chúng ta không mong muốn sự khác
biệt đáng kể giữa các của các giá ứng viên khác nhau, trừ khi thiết bị của chúng ta
chứa các cơ chế khiến giá trị tương quan giữa các ứng mẫu đối với các ứng viên của
khác nhau.
Sử dụng chúng ta có thể loại bỏ 2 thành phần đầu tiên trong (6) và sử dụng khoảng
cách Mahalanobis để so sánh giá trị của các ứng viên khác nhau của khóa dựa trên
nguyên tắc khoảng cách nhỏ nhất là giống nhất.
̅ , = ( − ̅ )
( − ̅ ) (10)
Từ các công thức (8,10) ta có thể xác định công thức tính khoảng cách như sau:
( | ) = −
1
2
, = ( | ) + (11)
Trong đó, thành phần không đổi không phục thuộc vào . Khi sử dụng ma trận hiệp
phương sai chung , ta có thể viết lại công thức (10) như sau:
Công nghệ thông tin & Cơ sở toán học cho tin học
Trần Ngọc Quý, “Tấn công mẫu dựa trên khoảng cách tuyến tính.” 172
̅ , =
− 2 ̅
+ ̅
̅ (12)
Và nhận thấy rằng thành phần đầu tiên là không đổi với mọi giá trị của , nên có thể bỏ
qua thành phần này. Điều này có nghĩa là có thể sử dụng công thức sau khi tính điểm số
tách biệt tuyến tính.
( | ) =
−
1
2
= ( | ) + (13)
Điểm số này chỉ phụ thuộc vào tuyến tính vào . Mặc dù là tương đương, nhưng việc
tính toán điểm số tách biệt tuyến tính là hiệu quả hơn nhiều so với tính khoảng cách .
Trong trường hợp này chúng ta sẽ kết hợp vết điện năng tiêu thụ từ để tính
khoảng cách tuyến tính cuối cùng ( | ).
( | ) = ( | )
∈
(14)
Lấy logarit cả hai vế phương trình trên chúng ta có:
log ( | ) = log ( | )
∈
(15)
Chúng ta có điểm số tách biệt như sau:
( | ) = −
2
log| | −
1
2
( − ̅ )
( − ̅ )
∈
(16)
( | ) = −
1
2
( − ̅ )
( − ̅ )
∈
(17)
( | ) = ̅
∈
−
2
̅
̅ (18)
Với trace ∈ , và cần thời gian (
) trong khi đó chỉ
cẩn ( +
), là do các phép tính ̅
và ̅
̅ chỉ cần thực hiện một lần. Đây
là một ưu điểm có ý nghĩa lớn trong thực tế.
3.3. Quy trình tấn công TA
Các bước thực hiện tấn công TA dựa trên tính khoảng cách LOG và tuyến tính được đề
xuất như sau:
Bước 1: Đo và lưu lại vết điện năng tiêu thụ , , , khi thiết bị thực hiện tao tác
mã hóa lần.
Bước 2: chọn điểm tấn công, sử dụng phương pháp nén cụ thể để tìm điểm quan trọng
nhất POI trên vết điện năng tiêu thụ.
Bước 3: Chia tập vết điện năng tiêu thụ thành | | lớp theo giá trị của .
Bước 4: Sử dụng công thức (1,2) để lập bộ mẫu cho thiết bị: ( ̅ , )
Bước 5: Đo và lưu lại vết điện năng tiêu thụ của thiết bị tấn công. Sử dụng phương
pháp đo và nén như bước 2 để tìm điểm POI.
Bước 6: Tính giá trị hoặc theo công thức (16,18) để xác định khoảng cách tới
từng bộ mẫu (| | bộ mẫu) ứng với từng khóa khác nhau.
Bước 7. So sánh | | giá trị khoảng cách ở bước 6, giá trị nào nhỏ nhất tương ứng với khóa
đúng nhất của thiết bị tấn công.
Nghiên cứu khoa học công nghệ
Tạp chí Nghiên cứu KH&CN quân sự, Số 59, 02 - 2019 173
4. THỰC NGHIỆM
4.1 Phương pháp tiến hành thực nghiệm
Thiết bị sử dụng trong thí nghiệm là smartcard ATmega8515, thực thi thuật toán AES-
128. Trong thí nghiệm này, điểm tấn công chúng tôi lựa chọn ở vị trí lối ra của S-hộp vòng
thứ nhất. Sử dụng phương pháp tấn công mẫu, chúng tôi xây dựng tập 256 mẫu tương ứng
với 256 giá trị của byte tại lối ra S-hộp vòng thứ nhất. Ứng với mỗi giá trị ∈
{0,1,2, 255} chúng tôi ghi lại 1000 vết điện năng tiêu thụ, tương ứng với tổng số
256 × 1000 = 256000 vết điện năng tiêu thụ, mỗi vết có độ dài 2500 mẫu được thu thập
trong khoảng thời gian thiết bị thực thi thao tác thế S-hộp tại vòng thứ nhất của thuật toán
AES-128. DoM là phương pháp được lựa chọn để xác định các POI. Sơ đồ thu thập vết
điện năng tiêu thụ sử dụng trong [3] phần 4.1. Các trace này sẽ được sử dụng để thực hiện
02 thí nghiệm.
Thí nghiệm 1: sử dụng 200 trace, ứng với một giá trị bí mật của thiết bị, cho tập huấn
luyện và 100 trace cho tập dữ liệu tấn công. Thí nghiệm 2: sử dụng 400 trace, ứng với một
giá trị bí mật của thiết bị, cho tập huấn luyện và 100 trace cho tập dữ liệu tấn công. Trong
cả hai thí nghiệm trên chúng tôi thực hiện 03 dạng tấn công , , .
4.2. Tham số đánh giá kết quả
Bài báo này sử dụng tham số tỷ lệ thành công, ký hiệu là SR, và lượng thông tin ước
đoán, ký hiệu là GE như được đề xuất trong [16] để đánh giá hiệu quả của tấn công TA
dựa trên việc tính toán xác suất hậu nghiệm và TA dựa trên việc đánh giá khoảng cách
tuyến tính và khoảng cách LOG như được trình bày trong phần 3.2. Tỷ lệ thành công được
định nghĩa là tỷ số giữa số lần thí nghiệm khôi phục khóa thành công so với tổng số lần
thực hiện thí nghiệm tấn công. GE được định nghĩa là của thứ tự xếp hạng khóa đúng
trong số tất cả các khóa giả thiết. Tham số này, cho ta biết, công việc ước đoán còn lại
phải thực hiện sau khi tấn công để tìm được khóa đúng. Giá trị GE nhỏ là điều mong muốn
sau khi thực hiện tấn công.
4.3. Kết quả thực nghiệm
Hình 1a. So sánh SR với = 200.
Hình 1b. So sánh GE với = 200.
Kết quả của thí nghiệm 1 được chỉ ra trên hình 1. , , cần khoảng 20
vết để có tỷ lệ khôi phục khóa thành công đạt 50%, 70%. Trong khi cần 20 vết để
có tỷ lệ thành công 48 % như trên hình 1a. hình 1b, chỉ ra kết quả tính toán tham số GE
của tấn công. cần khoảng 50 vết để có giá trị GE gần bằng 1,5, cần cỡ 10
vết để có giá trị GE nhỏ hơn 1. Trong khi cần vết để có giá trị GE nhỏ hơn 2. Từ
kết quả này thấy rằng hiệu quả tấn công mẫu sử dụng MLP và khoảng cách LOG là tương
đương nhau. Tuy nhiên, khi sử dụng khoảng cách tuyến tính, hiệu quả tăng lên đáng kể.
10
0
10
1
10
2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
So trace tan cong na (log)
T
y
le
th
a
n
h
c
o
n
g
-
S
R
So trace lap mau np=200
DLinear
DLog
MLP
10
0
10
1
10
2
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
So trace tan cong na (log)
G
E
(
b
it
s
)
So trace lap mau np=200
DLinear
DLog
MLP
Công nghệ thông tin & Cơ sở toán học cho tin học
Trần Ngọc Quý, “Tấn công mẫu dựa trên khoảng cách tuyến tính.” 174
Hình 2a. So sánh SR với = 400.
Hình 2b. So sánh GE với = 400.
Trong thí nghiệm 2, chúng tôi sử dụng để đánh giá sự ảnh hưởng của số vết điện năng
tiêu thụ trong quá trình lập mẫu đối với hiệu quả của tấn công. Kết quả, được thể hiện trên
hình 2, cũng chỉ ra rằng hiệu quả của là tốt hơn so với và . Tuy
nhiên, khi số trace sử dụng để lập mẫu nhiều lên khả năng thành công của tấn công rất lớn
đạt xấp xỉ 98% khi số lượng trace dùng để tấn công là 10. Kết quả này có được là bởi khi
số trace lập mẫu lớn, khả năng đặc tính hóa thiết bị bởi bộ mẫu của chúng ta càng chính
xác. Cũng trong cả hai thí nghiệm với tấn công mẫu ta thấy rằng nó cần cỡ từ 10 đến 20
trace để tìm được khóa đúng của thiết bị với tỷ lệ thành công gần 100%. Đây là số lượng
trace nhỏ hơn nhiều so với số trace để thực hiện thành công các tấn công DPA, và CPA
như được trình bày trong [15]. Tuy nhiên, với tấn công DPA và CPA ta không cần sử dụng
thiết bị mẫu trong khi đó các dạng tấn công TA thì đây là điều kiện bắt buộc.
Cũng từ kết quả ta thấy TA dựa trên khoảng cách tuyến tính hiệu quả hơn TA dựa trên
khoảng cách hàm LOG, nguyên nhân là trong thí nghiệm , được tính riêng với
từng khóa giả thiết, và giá trị này khác nhau do sự ảnh hưởng của nhiễu tại các điểm trên
trace sử dụng để tấn công, còn với , được dùng chung cho tất cả các khóa giả
thiết, nó không chỉ giúp việc tính nhanh hơn mà ma trận hiệp phương sai chung còn biểu
diễn tương quan giữa các điểm trên vết tốt hơn do nhiễu đã được loại bỏ bởi phép lấy
trung bình trong (9).
5. KẾT LUẬN
Bài báo trình bày cơ sở lý thuyết của phương pháp tấn công mẫu trên thiết bị mật mã
đồng thời đề xuất phương pháp mới để quyết định khóa đúng trong pha tấn công dựa trên
khoảng cách LOG và tuyến tính. Kết quả cho thấy rằng hiệu quả tấn công mẫu được cải
thiện rõ rệt, đặc biệt trong trường hợp sử dụng khoảng cách tuyến tính còn giúp giảm thời
gian tính toán. Các kết quả tấn công TA trong bài báo sử dụng phương pháp lựa chọn POI
là DoM, tuy nhiên vẫn còn một số phương pháp khác đã được đề xuất. Trong các công
trình tiếp theo, tác giả sẽ đánh giá tấn công TA được đề xuất đối với các phương pháp lựa
chọn POI khác nhau.
TÀI LIỆU THAM KHẢO
[1]. Nguyễn Hồng Quang, “Trace năng lượng trong DPA”, Tạp chí Nghiên cứu Khoa
học và Công nghệ quân sự, 2013.
[2]. Nguyễn Hồng Quang, “Phân tích tiêu thụ điện năng của thiết bị mật mã”, Tạp chí
Nghiên cứu Khoa học và Công nghệ quân sự, 2014.
[3]. Trần Ngọc Quý, “Tấn công phân tích điện năng tiêu thụ lên AES-128,” Tạp chí
Nghiên cứu Khoa học và Công nghệ quân sự, 2015.
10
0
10
1
10
2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
So trace tan cong na (log)
T
y
le
th
a
n
h
c
o
n
g
-
S
R
So trace lap mau np=400
DLinear
DLog
MLP
10
0
10
1
10
2
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
So trace tan cong na (log)
G
E
(
b
it
s
)
So trace lap mau np=400
DLinear
DLog
MLP
Nghiên cứu khoa học công nghệ
Tạp chí Nghiên cứu KH&CN quân sự, Số 59, 02 - 2019 175
[4]. Kocher P, Jaffe J, Jun B. “Differential Power Analysis”, CRYPTO 1999, LNCS
1666. Springer: Heidelberg, 1999; 388–397.
[5]. Chari S, Rao JR, Rohatgi P. “Template Attacks”, CHES 2002, LNCS 2523. Springer:
Heidelberg, 2002; pp.13–28.
[6]. Brier E, Clavier C, Olivier F. “Correlation Power Analysis with a Leakage Model”,
CHES 2004, LNCS 3156. Springer: Heidelberg, 2004; 16–29.
[7]. E. Cagli, C. Dumas, and E. Prouff, “Enhancing dimensionality reduction methods for
side-channel attacks,” in CARDIS 2015.
[8]. Girelichs B, Batina L, Tuyls P, Preneel B. “Mutual Information Analysis”, CHES
2008, LNCS 5154. Springer: Heidelberg, 2008; 426–442.
[9]. Rechberger C, Oswald E. “Practical Template Attacks”, WISA 2004, LNCS 3325.
Springer: Heidelberg, 2004; 440–456.
[10]. Oswald E, Mangard S. “Template Attacks on MasingResistance is Futile”, CT- RSA
2007, LNCS 4377. Springer: Heidelberg, 2007; 243–256
[11]. Gierlichs B, Lemke-Rust K, Paar C. “Template vs. Stochastic Methods—A
Performance Analysis for Side Chennel Cryptanalysis”, CHES 2006.
[12]. Abdelaziz Elaabid M, Meynard O, Guilley S, Danger JL. “Combined Side-Channel
Attacks”, WISA 2010, LNCS 6513. Springer: Heidelberg, 2010;
[13]. Standaert F-X, Archambeau C. “Using SubspaceBased Template Attacks to Compare
and Combine Power and Electromagnetic Information Leakage”, CHES 2008,
LNCS 5154. Springer: Heidelberg, 2008; 411–425.
[14]. Fukunaga K. “Introduction to Statistical Pattern Recognition”. Elsevier: New York,
1990.
[15]. S. Mangard, E. Oswald, and T. Popp, “Power Analysis Attacks: Revealing
the Secrets of Smart Cards”. 1st ed. New York, NY, USA: Springer, 2010.
[16]. Standaert F-X, Malkin TG, Yung M. “A Unified Framework for the Analysis of Side-
Channel Key Recovery Attacks”, EUROCRYPT 2009.
[17]. V. Lomné, E. Prouff, and T. Roche, “Behind the scene of side channel attacks,”
ASIACRYPT 2013.
ABSTRACT
LINEAR DISTANCE BASED PROFILED ATTACKS
Profiled attacks are one of the most effective side channel attacks against the
cryptographic devices. This attack builds a template set of the device through the
side channel leaks collected during the operation of the device. At present,
determining of correct key in profiled attack is based on the maximum probability
principle of side channel leakages of attack device with the template set. In this
paper, the author proposes an effective method of attack in which the determination
of the secret key is based on calculating the linear distance of the side channel
leakage to the template set of the profiled device. In this paper, TA was done on
ATMEGA8515 smartcards installed with AES-128 cryptographic algorithm.
Keywords: Side channel attack; Profiled attack; Linear distance; Common covariance matrix.
Nhận bài ngày 29 tháng 11 năm 2018
Hoàn thiện ngày 19 tháng 12 năm 2018
Chấp nhận đăng ngày 19 tháng 02 năm 2019
Địa chỉ: Học viện Kỹ thuật Mật mã.
* Email: quyhvm@gmail.com.
Các file đính kèm theo tài liệu này:
- 19_quy_7752_2150317.pdf