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

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

pdf142 trang | Chia sẻ: honganh20 | Ngày: 15/03/2022 | Lượt xem: 417 | Lượt tải: 2download
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.52-2 1.52-2 2 -3 1.12-3 1.552-2 1.452-2 2 L 2 -6 1.52-4 1.882-3 1.252-2 1.192-6 1.692-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.912 -3 1.522-13 1.112-3 1.422-2 1.272-2 1.642-4 2 L 1.252 -2 1.522-15 1.12-6 1.512-4 1.722-3 1.052-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.252-3 1.252-2 1.252-2 1.252-3 2 -5 7-55 2-5 1.52-4 1.8752-3 1.252-2 1.8752-3 1.52-4 2 -6 56 2-5 1.252-3 1.252-2 1.252-2 1.252-3 2 -5 - 57 2-4 22 1.52 -2 2 -2 2-4 - - 58 2-3 1.52-2 1.52-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ó PP. 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.12 -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+P01.42 -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.42-19)6 7.52-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à 210. 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)  27. 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 = 26. 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)  267. Đối với thuật toán ngẫu nhiên giá trị LC có độ lệch b  264 > 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}, ti, và ti+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.852-282-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 p20.932 -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 p1.142-13. Vì vậy xác suất của đặc trưng vi sai ba vòng sẽ là P(3) = p2p1.32-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  32p ( ) 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.42-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:

  • pdfluan_an_nghien_cuu_xay_dung_giai_phap_bao_mat_du_lieu_thoi_g.pdf
Tài liệu liên quan