LỜI CAM ĐOAN . I
LỜI CẢM ƠN.II
MỤC LỤC. III
DANH MỤC CÁC KÍ HIỆU.IX
DANH MỤC CÁC BẢNG BIỂU . X
DANH MỤC CÁC HÌNH VẼ . XII
MỞ ĐẦU.XIV
Tính cấp thiết của đề tài nghiên cứu .XIV
Mục đích nghiên cứu . XV
Nhiệm vụ nghiên cứu . XV
Đối tượng và phạm vi nghiên cứu.XVI
Phương pháp nghiên cứu .XVI
Ý nghĩa lý luận và thực tiễn của luận án .XVI
Bố cục của luận án.XVII
CHƯƠNG 1. TỔNG QUAN VỀ GIẢI PHÁP BẢO MẬT DỮ LIỆU THỜI
GIAN THỰC TRÊN MẠNG IP.1
1.1. Giới thiệu.1
1.2. Tổng quan về một số giao thức bảo mật dữ liệu thời gian thực.3
1.2.1. Giao thức bảo mật truyền thời gian thực SRTP . 3
1.2.2. Giao thức bảo mật IPSec. 3
1.3. Tổng quan về tình hình nghiên cứu thuật toán mật mã khối .5
1.3.1. Tổng quan tình hình nghiên cứu ngoài nước . 5
1.3.2. Tổng quan tình hình nghiên cứu trong nước. 8
1.4. Hướng nghiên cứu của luận án.9
1.5. Một số cơ sở lý thuyết trong phát triển thuật toán mật mã khối .9
1.5.1. Hàm logic (hàm boole). 9
1.5.2. Mật mã khối . 10
1.6. Nguyên lý thiết kế mạng chuyển vị thay thế điều khiển được (CSPN) .15
1.6.1. Lớp phần tử nguyên thủy mật mã điều khiển được P2/1 . 15
142 trang |
Chia sẻ: honganh20 | Ngày: 15/03/2022 | Lượt xem: 478 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận án Nghiên cứu, xây dựng giải pháp bảo mật dữ liệu thời gian thực truyền trên mạng ip bằng thiết bị phần cứng chuyên dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1/2
P
0
X
2
Y 0( )
Y
1 1
0 2 1( / ) 2
Xp
1
0 0 1( / ) 2
Xp
1/2P
1
X
1
Y
0
V
1 1 0( / ) 1
Xp
1 1 1( / ) 1
Xp 1/2
P
2
X
2
Y )( Y0
1 -1
2 2 1( / ) 2
Xp
-1
2 0 1( / ) 2
Xp 1( )
V
Hình 2.6. Đặc trưng vi sai của CE P2/1
Hình 2.6 mô tả trường hợp khi một giá trị vi sai Lq nào đó với một bit chủ
động đi qua nhánh trái của thuật toán. Giá trị vi sai Lq có thể sinh ra hoặc loại bỏ w
cặp của các bit chủ động trong CP.
Xét trường hợp của khối P64/192 trong nhánh phải trong trường hợp q = 1. Giá
trị vi sai 1
L được biến đổi bởi khối mở rộng thành 3
V tại véctơ điều khiển của khối
P64/192, nghĩa là một bit chủ động trong nhánh trái gây ảnh hưởng lên ba CE P2/1 sẽ
thực hiện hoán vị sau bit khác nhau của khối dữ liệu bên nhánh phải. Phụ thuộc vào
giá trị của các bit được hoán vị và vi sai đầu vào Rq của khối P64/192, các giá trị vi
sai đầu ra Rg với số lượng các bit chủ động khác nhau có thể được hình thành với
khối này.
Bảng 2.3. Các giá trị của xác suất 64 192( )R R Lq g qP
P
0 0
R R 0 2
R R 0 4
R R 0 6
R R 1 1
R R 1 3
R R 1 5
R R
0
L 1 0 0 0 1 0 0
1
L 2
-3 1.52-2 1.52-2 2
-3 1.12-3 1.552-2 1.452-2
2
L 2
-6 1.52-4 1.882-3 1.252-2 1.192-6 1.692-4 2
-2
40
1 7
R R 2 0
R R 2 2
R R 2 4
R R 2 6
R R 2 8
R R
0
L 0 0 1 0 0 0
1
L 0.912
-3 1.522-13 1.112-3 1.422-2 1.272-2 1.642-4
2
L 1.252
-2 1.522-15 1.12-6 1.512-4 1.722-3 1.052-2
Hiệu ứng thác tương ứng với toán tử G được xác định bởi cấu trúc của nó, mà
đảm bảo mỗi bit vào sẽ ảnh hưởng đến vài bit (u) đầu ra (ngoại trừ bit vào thứ 64
chỉ ảnh hưởng đến bit ra thứ 64). Bảng 2.4 mô tả công thức biểu diễn hiệu ứng thác
gây ra bởi nghịch đảo bit li. Giả sử li biểu diễn sự thay đổi của li. Quan tâm tới
trường hợp khi dữ liệu và khóa là các giá trị ngẫu nhiên phân bố đều. Có thể thấy
rằng với li, ở đây 7 i 55, gây ra sự biến đổi xác định của bit đầu ra yi và biến đổi
xác suất của các bit đầu ra yi+1, yi+3, yi+6,, yi+9 mà nó thay đổi với xác suất p = 0.5
(với 1 i 6 sẽ có các biến đổi xác định của yi và yi+3, do đó yi+3=lili-6). Khi đi
qua toán tử G thì giá trị vi sai 1
L
i
có thể thay đổi với một xác suất nào đó với các vi
sai đầu ra 1
Y
i , 2
Y , ..., 7
Y (xem bảng 2.5 và 2.6).
41
Hình 2.7. Một số đặc trưng vi sai của CP
a –biểu diễn của trường hợp chung; b –vi sai 0 đi qua CP; c –hình thành 2 bit chủ
động; d –loại bỏ 2 bit chủ động
Bảng 2.4. Thay đổi các bit đầu ra gây ra bởi sự thay đổi 1 bit đơn (li=1) tại đầu vào của
toán tử G
# Công thức biểu diễn hiệu ứng thác Xác suất
1 i iy l ( 1) 1ip y
2 (4) (3) (4)1 1 1 8 5 8( )i i i i i i i iy l a a l a l l 1( 1) 1 2ip y
3 2 0iy 2( 1) 0ip y
4 3 6i i iy l l 3( 1) 1 2ip y
5 4 0iy 4( 1) 0ip y
6
5 0iy 5( 1) 0ip y
7 (4)
6 2 3 5 5( )i i i i i iy l l l l a 6( 1) 1 2ip y
8 (3)
7 5i i iy l a 7( 1) 1 2ip y
Pn/m
m=3n
n
n
E
n
P2/1
p( / ) = 2
-3
a)
b) Pn/m 0 0 0 0 0 0
0 0 0 0 0 0
c) 0 0 0 0 0 0
0 0 0 1 0 1
3
w 3
q
L
k
X
s
Y
0
v
1
v
0
X
0
Y
1
L
3q
V
p( / ) = 2
-3
( ) 0
X
2
Y
1
L
1
3 p( / ) = 2
-3
( )
0
X
2w
Y
1
L
w
p( / )
k
X
s
Y
q
L
d) 0 0 0 0 1 1
0 0 0 0 0 0
p( / ) = 2
2
X
0
Y
1
L 3
n(n-1) 0 0
Pn/m
-2
42
9
8 2i i iy l l 8( 1) 1 2ip y
10 (3) (4)
9 6 8 7 3 8 8(i i i i i i i iy l l l a l l a 9( 1) 1 2ip y
Bảng 2.5. Các giá trị của xác suất 1( )
L Y
i gP
G
i
1 1
L Y
i i 2
Y 3
Y 4
Y 5
Y 6
Y 7
Y
1-6 - 2-5 1.252-3 1.252-2 1.252-2 1.252-3 2
-5
7-55 2-5 1.52-4 1.8752-3 1.252-2 1.8752-3 1.52-4 2
-6
56 2-5 1.252-3 1.252-2 1.252-2 1.252-3 2
-5 -
57 2-4 22 1.52
-2 2
-2 2-4 - -
58 2-3 1.52-2 1.52-2 2
-3 - - -
59-61 2-2 2-1 2-2 - - - -
62,63 2-1 2-1 - - - - -
64 1 - - - - - -
Bảng 2.6. Các giá trị của xác suất 1 2( )
L Y
i i iP
G
i u
1 2 1
L Y
i i i 2 3
Y
i i 2 6
Y
i i 2 7
Y
i i 2 8
Y
i i 2 9
Y
i i
1-6 7 - 2-5 - - - -
7-55 7 2-6 2-6 2-6 2-6 2-6 2-6
56 6 2-5 2-5 2-5 2-5 2-5 -
57 5 2-4 2-4 2-4 2-4 - -
58 4 2-3 2-3 2-3 - - -
59-61 3 2-2 2-2 - - - -
62-63 2 2-1 - - - - -
64 1 - - - - - -
Thám mã lượng sai
Phương án tốt nhất để thám mã lượng sai (DCA) [6,19, 25] đối với thuật toán
SPECTR-128 tương ứng với đặc trưng hai vòng theo giá trị vi sai 0 1( ).
L R Giá trị
vi sai này đi qua hai vòng theo cách sau (hình 2.8). Dễ ràng thấy rằng giá trị vi sai
này đi qua vòng thứ nhất với xác suất bằng 2-6 và sau khi hoán đổi hai nửa khối dữ
43
liệu nó biến đổi thành 1 0( ).
L R Trong vòng thứ hai thì bit chủ động sẽ đi qua
nhánh trái của thuật toán sẽ gây ra tại đầu ra của toán tử G vi sai ,Yg ở đây
g{1,2,3,4,5,6,7}. Chỉ giá trị vi sai tại vị trí chẵn của các bit chủ động sẽ tạo ra xác
suất của đặc trưng vi sai hai vòng. Sự đóng góp lớn nhất là các giá trị vi sai 2 .
Y
i i k
Trong đó, đóng góp lớn nhất để hình thành đặc trưng vi sai hai vòng thuộc về các
trường hợp 1, 2 và 3, ở đây i{1,64} và k{1,3,6,7,8,9}, được mô tả như sau:
Trường hợp 1:
1) Giá trị vi sai 2 i i k
G được hình thành với xác suất ( )2 2 1Pr
i i k
i i k ip
GG tại
đầu ra của toán tử G.
2) Giá trị vi sai 2 ,
P
i i k
được hình thành với xác suất ( )
3 2 0Pr
i i k
i i kp
P P tại đầu
ra của khối P’.
3) Giá trị vi sai 0
P được hình thành với xác suất 3
1 0 02 Prp
P P tại đầu
ra của khối P”.
4) Sau khi XOR các giá trị vi sai 2
Y
i i k và 2R i i k , sẽ nhận được giá trị vi sai
bằng 0 0( ) tại đầu ra của khối P
*. Nó đi qua khối này với xác suất
3
4 0 02 Pr .p
PP
Có thể biểu diễn Trường hợp 1 như tập của các sự kiện sau:
2 1 2 0 0 0 0 0i i k i i i k
G PG P P PP P
Tương tự, có thể biểu diễn hai trường hợp 2 và 3 như sau:
Trường hợp 2: 2 1 2 0 0 0 0 0i i k i i i k
G PG P P PP P
Trường hợp 3: 2 1 0 0 0 0 0 2i i k i i i k
G PG P P PP P
44
1
R( ) -62ip
64/192P P
( , )
3
i i kp
64/192P P
1
64/192P P
0
L
R)(
i|1
'P
0
3
V
1|
L
i
( , )
2
i i kp
( )
2| ,
G
i i k
3
V
3
V
( )
0
P ( )
1
ip
( )
0
P
( ')
2| ,
P
i i k
2| ,
R
i i k
( ) -3
4 2
ip
1
R
0
L
Hình 2.8. Hình thành đặc trưng vi sai hai vòng với trường hợp 1
Các giá trị
( )
1
i i kp , ( )3
i i kp , và ( )4
i i kp được tính theo cách tương tự theo cấu trúc của
khối P64/192 và phân bố của các bit điều khiển trên các CE P2/1 (phân bố này được
mô tả trong bảng 2.7 và toán tử “>>>21”). Ví dụ, cần quan tâm đến giá trị vi sai
đóng góp nhiều nhất 143
L
khi tính
( )
3 .
i i kp Sau khi dịch vòng đi 21 bit thì vi sai này
gây ra vi sai 3 3109 133 182
V V
tại véctơ điều khiển 192bit của khối P64/192 để biến đối
nửa khối dữ liệu bên phải R. Giá trị bit thứ 43 của L điều khiển một CE P2/1tại mỗi
một trong ba lớp chủ động phía dưới của khối P64/192, và chính là các CE P2/1 số
109, 133, và 182 (các khối CE như vậy được gọi là chủ động). Với i = 43 sẽ có 6
phương án của 2 i j
G : 2 43 44
G , 2 43 46
G , 2 43 49
G , 2 43 50
G , 2 43 51
G , và 2 43 52
G . Với các
xác suất tương ứng
( )
3
i jp sẽ có giá trị 0, ngoại trừ (43 44) 33 2 .p
Giá trị cuối cùng
45
nhận được với trường hợp các khối 109 và 133 không sinh ra các vi sai đầu ra khác
không và khối 182 sinh ra hai bit chủ động.
Khi tính đến cấu trúc đối xứng của các vòng biến đổi và của các khối P64/192 và
P-164/192 thì dễ ràng thấy rằng P = P, ở đây P và P là phần đóng góp tới xác
suất của đặc trưng vi sai hai vòng tương ứng với trường hợp thứ nhất và thứ ba. Vì
vậy, cho phép tính được P và sau đó là P của trường hợp thứ hai. Vì sử dụng phép
dịch vòng với độ lớn khác nhau trước các khối mở rộng tương ứng với các khối P
và P nên sẽ có PP.
Xác suất P có thể được tính sử dụng công thức sau:
( ) ( ) ( ) 12 ( ) ( ) 211 2 3 4 2 32 1 5 2
i i i k i i k i i k i i k
i k i k
P p p p p p p p
ở đây p(i) = 2-6 tương ứng với xác suất sinh ra sau vòng thứ nhất với sự dịch chuyển
tới vị trí thứ i. Giá trị P được sinh ra chủ yếu tại giá trị 43i (khoảng 70 %) đối
với nó sẽ nhận được 0
(43 44) 3
3 2 .p
Khoảng 15% tương ứng với các giá trị i = 33
và i = 34 và khoảng 15% tương ứng tới các giá trị i = 3,7,8,11,12,15,16,20,54. Đối
với tất cả các giá trị khác thì đóng góp bằng không tới xác suất P.
Xác suất P có thể được tính tương tự với trường hợp P:
( ) ( ) ( ) 21
1 2 3 4 1 4 2
i i i k i i k
i k
P p p p p p
Các giá trị đóng góp sinh ra P chỉ tại
các giá trị sau: i = 54,57
(54 55) (57 60) 5
1 1( 2 )p p
, và i = 9,10,11,44
(9 15) (9 16) (10 13) (10 16) (1114) (44 45) (44 47) 7
1 1 1 1 1 1 1( 2 ).p p p p p p p
Nhờ cấu trúc
đối xứng của các khối P và P* sẽ có khả năng sinh ra thêm các sự kiện để đóng góp
vào xác suất của đặc trưng vi sai (tương tự với các trường hợp 1, 2 và 3) cặp bit chủ
động trong P và làm mất đi cặp bit này trong P*. Sự đóng góp của sự kiện như vậy
là P0 1.12
-21.
Vì vậy xác suất của đặc trưng vi sai hai vòng sẽ là: P(2)P+P+P+P01.42
-19.
(2.14)
46
Vì vậy đặc trưng vi sai sau 12 vòng của thuật toán SPECTR-128 sẽ là: P(16)
(1.42-19)6 7.52-114 và vì vậy nó chưa đủ khả năng khả năng chống lại thám mã vi
sai.
Để đảm bảo khả năng chống lại thám mã vi sai, có thể thực hiện theo một trong ba
phương án như sau:
1). Tăng số vòng mã hóa của thuật toán: để thực hiện phương án này, số vòng
mã hóa của thuật toán cần tăng thêm hai vòng. Tuy nhiên trong trường hợp này,
tốc độ và hiệu năng hoạt động của thuật toán sẽ bị giảm đi.
2). Sửa đổi phân bố của các bit của véctơ U. Trong trường hợp này, độ an toàn
của thuật toán đối với thám mã vi sai sẽ tăng lên, và không làm thay đổi hiệu
quả của thuật toán.
3). Thay đổi cấu trúc của khối P8/12 thành P8/16. Trong trường hợp này. Độ an
toàn của thuật toán đối với thám mã vi sai sẽ tăng lên, tuy nhiên sẽ làm giảm
hiệu quả của thuật toán.
Vì vậy, trong chương này chỉ xét đến trường hợp thứ hai.
2.2.2. Đánh giá độ an toàn đối với thám mã tuyến tính
Dựa trên các kết quả về đánh giá độ an toàn đã biết của các thuật toán mật mã
dựa trên DDP đã chỉ ra rằng, thám mã tuyến tính (linear cryptanalysis – LCA) [6,
13, 19, 51]sẽ ít hiệu quả hơn trên các thuật toán kiểu DDP so với thám mã vi sai
(DCA). Ví dụ, để kháng được thám mã tuyến tính đối với các thuật toán SPECTR-
H64 (DDP-64) thì chỉ cần bảy [51] (ba [13]) vòng là đủ, trong khi để kháng lại thám
mã vi sai thì cần sử dụng ít nhất mười [5] (tám [13]) vòng mới đủ. Các hoán vị cố
định và các toán tử DDP đảm bảo tính song ánh sẽ đảm bảo khoảng cách Hamming
(Hamming weight) của véctơ đầu vào, tuy nhiên sử dụng các tính chất này trong
thám mã tuyến tính sẽ tạo ra các mặt nạ (masks) có trọng lượng cực đại. Các mặt nạ
như vậy sẽ hiệu quả vì các toán tử phi tuyến được sử dụng cùng với DDP. Lý thuyết
chi tiết về đặc trưng tuyến tính (linear characteristics – LC) của các CP được mô tả
trong [51].
47
Giả sử với một mặt nạ đầu vào M và một mặt nạ đầu ra B. Trong phần này, nó sẽ
được chỉ ra rằng:
a) Độ lệch (bias) của LC bất kỳ đối với nó (M) (B) sẽ bằng 0;
b) Đối với các CP có bậc h 1 với(M) = (B) 1 thì độ lệch b của các toán
tử DDP thỏa mãn điều kiện
1
2
b
n
sẽ độc lập với mặt nạ được sinh ra bởi
véctơ điều khiển đầu vào của CP (đối với các khối P64/192sẽ cób 2
7); giá
trị
1
2
b
n
tương ứng với các mặt nạ với trọng lượng 1.
c) Các tấn công tuyến tính sử dụng các mặt nạ (1, 1, , 1) sẽ được ngăn chặn
hiệu quả với các toán tử kiểu G.
Thực hiện phân tích tuyến tính của vòng biến đổi của SPECTR-128, sẽ chỉ ra
rằng LC hiệu quả nhất tương ứng với các mặt nạ với hai bit chủ động nằm tại các vị
trí ngoài cùng bên trái của mỗi một trong hai khối dữ liệu con. Các mặt nạ như vậy
sẽ hiệu quả trong trường hợp khóa với các khóa con K1 và K2 cũng như K3 và K4 bao
gồm các bit như nhau tại các vị trí 18, 25, 29, 50, 57. Xác suất để lựa chọn các khóa
như vậy là 210. Ký hiệu mặt nạ tương ứng với véctơ X là
1| ,...,
,
q
X
q i iM ở đây q là số của
các bit chủ động và 1,..., qi i là chỉ số của các bit chủ động. Giá trị LC với các mặt nạ
đầu vào 0 01|1 1|1,L RM M và đầu ra 1 11|1 1|1,L RM M của vòng đầu tiên có độ lệch b(1) 27.
Giá trị này được tính như sau (hình 2.9). Chú ý rằng đối với trường hợp cụ thể của
các khóa thì khối P* sẽ chuyển các bit đầu vào ngoài cùng bên trái thành các bit
ngoài cùng bên trái tại đầu ra, nếu khối P’ chuyển các bit đầu vào ngoài cùng bên
trái thành các bit ngoài cùng bên trái tại đầu ra. Độ lệch LC của một vòng là:
0 0 1 10 1|1 0 1|1 1 1|1 1 1|1
1
(1) Pr 1 .
2
L R L Rb L M R M L M R M
Nếu khối P’ chuyển các bit đầu vào ngoài cùng bên trái thành các bit ngoài cùng
bên trái tại đầu ra, thì sẽ có:
(2.15)
48
0 0 1 1 (3)
0 1|1 0 1|1 1 1|1 1 1|1 01 1 11
L R L RL M R M L M R M l a z ,(2.16)
ở đây z1 là bit đầu tiên của véctơ Z tại đầu ra của khối P’. Xác suất của sự kiện này
là 1/n = 26. Xác suất để
(3)
01 1 1l a là t/n
2, ở đây t = (A(3)). Nếu khối P’
chuyển bất kỳ bit đầu vào thành bit tại vị trí ngoài cùng bên trái tại đầu ra của nó thì
(3)
01 1 1l a với xác suất 2
1(1 1/n) là độc lập với giá trị z1. Vì vậy sẽ có:
(3)01 1 2
1 1
Pr 1
2 2
t
l a
n n
và
2
1 1 1 1
(1) Pr 1 Pr 0
2 2 2 2
t
b
n n n
.
(2.17)
(2.18)
49
192/64P"P
1
192/64P*P
192/64P'P
0R
1|1M
01l
0L
1|1M
01r
)4(A
6
11 2)r'rPr(
011 r'r
1z1
n/t)1zPr( 1
1aly )3(1011
1"r
11 "r*r
1L
1|1M 1
R
1|1M
101
)3(
10111 zr1al*l
0111 lr
Hình 2.9. Hình thành đặc trưng tuyến tính của một vòng
Giá trị độ lệch sẽ đạt cực đại với các trường hợp (A(3)) = 1 và (A(3)) = 0. Đối
với đầy đủ các vòng của SPECTR-128 giá trị LC với các mặt nạ đầu vào
0 01|1 1|1,L RM M và đầu ra 12 121|1 1|1,L RM M có độ lệch:
12 73
12
1 1
(12) 2 (1) 2 .
2 2
b b
n
Đối với trường hợp mười một vòng sẽ có b(11) 267. Đối với thuật toán ngẫu
nhiên giá trị LC có độ lệch b 264 > b(11). Vì vậy, có thể kết luận rằng trong
(2.19)
50
trường hợp xấu nhất của khóa mật lựa chọn thì mười một vòng của SPECTR-128 là
đủ để kháng các tấn công tuyến tính.
2.3. Cải tiến thuật toán mật mã khối SPECTR-128
Phân tích vi sai chỉ ra rằng cấu trúc của khối mở rộng (nghĩa là bảng mô tả
phân bố của các bit của khối dữ liệu bên nhánh trái điều khiển các CE thuộc các
CP) là một thành phần quan trọng của SPECTR-128. Dễ ràng thấy rằng một sự
thay đổi nhỏ trong khối mở rộng sẽ dẫn đến sự thay tăng hoặc giảm lớn của xác suất
của đặc trưng vi sai hai vòng. Thực vậy, có thể làm giảm xác suất P(2) xuống
khoảng 28 nhờ sử dụng khối mở rộng được mô tả trong bảng sau:
Bảng 2.7. Phân bố các bit của véctơ U
V1 3334353637383940414243446263346035363743445455565758596061626364V1
V2 5041525342615657613848554546474964495051383940414248534546475233V2
V3 5859455862496463335152535455395457464460434748503435363759564051V3
V4 26272829 1 19101718312021142324253211 8 9 22151630 2 3 4 5 6 7 1213V4
V5 18192021142324252627282930313217 2 3 4 5 6 7 8 9 10 1 121322151611V5
V6 1 2 3 4 5 6 7 8 9 1011121314151617181920212823242526272229303132V6
Gọi thuật toán được sửa đổi là SPECTR’-128. Với SPECTR’-128, các trường 1, 2
và 3 đưa ra các đóng góp bằng 0 vào xác suất của đặc trưng vi sai của hai vòng. Sau
khi sửa đổi khối mở rộng E các trường hợp đóng góp nhiều nhất là (i,t,k với
i,t{1,2,...,64}, k{1,3,6,7,8,9}, ti, và ti+k).
Trường hợp 4a: 2 1 2 0 2 0 0 0i i k i i k t i t
G PG P P PP P
Trường hợp 4b: 2 1 2 0 2 0 0 0i i k i i t i k t
G PG P P PP P
Trường hợp 5a: 2 1 0 0 2 0 0 2i i k i i k t i t
G PG P P PP P
Trường hợp 5b: 2 1 0 0 2 0 0 2i i k i i t i k t
G PPG P P PP
Trường hợp 6a: 2 1 0 0 2 0 0 2i i k i i k t i t
G PPG P P PP
51
Trường hợp 6b: 2 1 0 0 2 0 0 2i i k i i t i k t
G PG P P PP P
Tính toán tổng các đóng góp của các trường hợp 4a, 4b, 5a, 5b, 6a, và 6b sẽ
nhận được P(2)=1.852-282-27. Vì vậy, sau khi sửa đổi khối mở rộng giá trị P(2) sẽ
giảm đáng kể. Bây giờ đặc trưng vi sai sau ba vòng sẽ trở nên hiệu quả nhất. Một
trong các khả năng để hình thành đặc trưng này được chỉ ra trên hình 2.10. Sự đóng
góp lớn nhất để hình thành lên đặc trưng vi sai ba vòng xảy ra tại vòng thứ hai và
ba, khi đó toán tử G sinh ra vi sai đầu ra lớn nhất với một bit chủ động.
Để tính xác suất 2 1 1i ip p
GG sẽ phải tính đến sự phụ thuộc của nó vào giá trị
i. Ký hiệu
( )
2
ip là xác suất để vi sai đầu ra của G có chính xác một bit chủ động
tương ứng với giá trị i. Xác suất
( )
2
ip sẽ bằng 2-6 với i{7,...,55}, 2-5với i = 56, 2-4
với i = 56, 2-3 với i = 58, 2-2 với i{59,60,61}, 2-1 với i{62,63}, 1 với i = 64, và 0
với i{1,...,6}. Với giá trị i ngẫu nhiên phân bố đều, vì vậy sẽ có giá trị trung bình
p20.932
-4 khi xét toán tử G như một khối đơn. Xác suất để trong vòng thứ hai khối
P không sinh ra cặp bit chủ động là p(i)=2-3với tất cả i. Sẽ xuất hiện cùng xác suất
như vậy tương ứng với các khối P’ và P*, tuy nhiên bởi vì cấu trúc đối xứng lẫn
nhau của chúng, nên sẽ xem hai khối này như một khối đơn. Xác suất để chúng
không sinh ra một cặp bit chủ động tại đầu ra của P* là
( ) 6
3 4 2
ip với
i{1,2,...,21,54,...,64} và
( ) 5
3 4 1 32 2
ip với i{22,23,...,53}. Giá trị có tính đến
các trường hợp có sinh ra hoặc loại bỏ cặp bit chủ động trong các khối P’ và P*.
Nếu tại đầu vào của vòng thứ nhất có vi sai 0 1( ),
L R thì tại đầu ra của vòng thứ hai
sẽ có vi sai 1 1( )
L R với xác suất:
6 ( ) ( ) ( ) 131 2 3 42 1 14 2
i i i
i
p p p p
Tại vòng thứ ba, bit chủ động đi qua khối P’ sẽ được XOR với một bit chủ
động đầu ra của toán tử G với xác suất p=2-6 và không có các bit chủ động mới
(2.20)
52
được sinh ra bởi các toán tử G, P’, P”, và P*với xác suất p1.142-13. Vì vậy xác
suất của đặc trưng vi sai ba vòng sẽ là P(3) = p2p1.32-32.
1
R( ) -62ip
64/192P P
-32p
64/192P P
1
64/92P P
64/192P P
64/192P P
-1
64/92*P P
0
L
( )
1|
R
i
3
V
3
V
32p
( )
1|
G
i
3
V
-32p
1|
L
i
-32p
3
V
'
3
V
-32p
( )
1|
G
h
-32p
-62p
R
h|1
"
3
V
1|
L
h
0
L 1|
R
h
-42p
-42p
Hình 2.10. Hình thành đặc trưng vi sai của ba vòng
53
Tổng xác suất ứng (12)P với đặc trưng vi sai hai vòng là P(2)(12)=P
6(2)
(2-27)6=2-162. Tổng xác suất ứng (12)P với đặc trưng vi sai ba vòng là
P(3)(12) = P
4(3) 1.42-127 >> P(2)(12). Xác suất để tại đầu ra thuật toán là ngẫu
nhiên có giá trị vi sai là 0 1( )
L R bằng 2
-127 P(3)(12). Vì vậy thuật toán
SPECTR’-128 với 12 vòng mã hóa là đủ để chống lại các kiểu thám mã lượng sai
hiệu quả nhất.
Đối với thám mã tuyến tính: để giảm hơn nữa các tấn công tuyến tính, sẽ đề
xuất sử dụng trong thuật toán sửa đổi SPECTR’-128 giá trị hằng số
C = (10101010) thay cho khóa con A(3). Vì thế trong trường hợp này sẽ có
t = (C) = n/2, độ lệch của các đặc trưng sẽ bằng 0, vì vậy một kẻ tấn công cần phải
đưa vào ít nhất một bit chủ động vào trong các mặt nạ được sử dụng và điều này sẽ
làm giảm sự nhạy của giá trị độ lệch nhờ các chuyển vị điều khiển được và toán tử
G.
2.4. Đánh giá hiệu quả của thuật toán cải tiến trên FPGA
Các mô hình đánh giá hiệu quả tích hợp của các thuật toán SPECTR-128 và
SPECTR’-128 được thực hiện dựa trên phụ lục B. Họ thuật toán này được cài đặt
trên FPGA theo mô hình vòng lặp cơ sở. Các kết quả nhận được được so sánh với
hiệu quả cài đặt của các thuật toán tham dự vòng chung khảo AES [4]. Chúng đã
chứng tỏ rằng, họ thuật toán SPECTR-128 có tốc độ hoạt động và hiệu quả tích
hợp cao hơn so với các thuật toán chung khảo AES.
Các kết quả nhận được đã chứng tỏ rằng họ thuật toán SPECTR-128 rất phù hợp
cho tích hợp trên nền tảng FPGA. Và chúng hoàn toàn phù hợp để sử dụng trong
xây dựng các ứng dụng truyền số liệu thời gian thực.
Bảng 2.8. So sánh hiệu quả tích hợp của các thuật toán trên FPGA
Thuật toán
Số
vòng
N
Tài
nguyên
(#CLB)
Tần số
(MHz)
Tốc
độ
(Mb/s)
Hiệu quả
Mbps/CLB
SPECTR-128 12 1 2,176 86 917 0.421
54
SPECTR’128 12 1 2,173 86 917 0.422
SPECTR-128 14 1 2,357 82 750 0.319
AES [15] 10 2 5,302 14.1 300 0.057
AES [15] 10 1 3,528 25.3 294 0.083
AES [16] 10 1 3,552 54 493 0.138
Twofish [15] 16 1 2,666 13 104 0.039
Serpent [15] 32 8 7,964 13.9 444 0.056
RC6 [15] 20 1 2,638 13.8 88.5 0.034
Nhận xét: dựa trên các kết quả được chỉ ra trên bảng 2.8, có thể dễ dàng thấy
rằng, họ thuật toán SPECTR-128 có tốc độ và hiệu quả tích hợp cao hơn so với các
thuật toán tham dự vòng chung khảo AES. Do đó, họ thuật toán Spectr-128 có thể
được sử dụng để thay thế thuật toán AES trong thiết kế các thiết bị bảo mật dữ liệu
thời gian thực nhằm nâng cao chất lượng dịch vụ truyền dữ liệu thời gian thực.
2.5. Kết luận chương
Trong chương này, luận án đã đạt được các kết quả chính như sau:
- Dựa trên các kết quả đánh giá độ an toàn bằng các phân tích thám mã lượng
sai và tuyến tính trên thuật toán mật mã khối SPECTR-128, đề xuất các
phương án cải tiến của thuật toán này nhằm sử dụng để bảo mật dữ liệu thời
gian thực.
- Chứng minh về độ an toàn trước các kiểu tấn công thám mã lượng sai và
thám mã tuyến tính của thuật toán cải tiến.
- Thực hiện cài đặt họ thuật toán SPECTR-128 trên FPGA. Kết quả nhận
được đã chứng tỏ, họ thuật toán này có thể sử dụng hiệu quả trong các ứng
dụng bảo mật dữ liệu thời gian thực.
- Kết quả được công bố trong công trình nghiên cứu số [2].
55
CHƯƠNG 3. XÂY DỰNG MỘT SỐ THUẬT TOÁN MẬT MÃ KHỐI DỰA
TRÊN CÁC LỚP NGUYÊN THỦY MẬT MÃ F2/1 VÀ F2/2
Chương này sẽ trình bày một số kết quả nghiên cứu mới của luận án về kết
quả xây dựng một họ thuật toán mật mã khối mới dựa trên các lớp nguyên thủy mật
mã F2/1 và F2/2. Đây là các lớp phần tử điều khiển được (CE) đã được nghiên cứu và
chứng minh là rất phù hợp để phát triển các thuật toán mật mã khối có tốc độ và
hiệu quả tích hợp cao trên các nền tảng phần cứng kiểu VLSI (FPGA và ASIC). Vì
vậy các thuật toán này sẽ đảm bảo hoạt động hiệu quả và phù hợp cho bảo mật dữ
liệu thời gian thực. Kết quả này đã được công bố trong công trình nghiên cứu số
[4,5,7].
Dựa trên các lớp CE F2/1 và F2/2, trong chương sẽ tập trung vào trình bày kết
quả xây dựng họ thuật toán mật mã khối tốc độ cao TMN64 và TMN128. Các
chứng minh, đánh giá về độ an toàn và hiệu quả của các thuật toán phát triển sẽ
được trình bày tổng hợp trong chương. Các kết quả đánh giá nhận được sẽ chỉ ra
rằng, họ thuật toán này hoàn toàn có thể sử dụng trong thực tiễn để phát triển các
ứng dụng bảo mật dữ
Các file đính kèm theo tài liệu này:
- luan_an_nghien_cuu_xay_dung_giai_phap_bao_mat_du_lieu_thoi_g.pdf