Tải bản đầy đủ (.pptx) (17 trang)

GIỚI THIỆU MÃ HÓA IDEA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.37 MB, 17 trang )

GIỚI THIỆU MÃ HÓA IDEA
Giảng viên: PGS-TS Trịnh Nhật Tiến
Học viên: Nguyễn Ngọc Tuân
MSHV: 13025112
Nội dung trình bày

Giới thiệu mã hóa IDEA

Trình bày thuật toán

Độ an toàn của phương pháp

Chạy thử chương trình
Giới thiệu mã hóa IDEA

Mã hóa IDEA (International Data Encryption
Algorithm) có tên g c là IPES (Improved ố
Proposed Encryption Standard) là thu t toán ậ
mã hóa kh i đ i x ng đ c thi t k b i ố ố ứ ượ ế ế ở
James Massey và Xuejia Lai và gi i thi u l n ớ ệ ầ
đ u vào năm 1991. M c đích mã hóa này ầ ụ
dùng đ thay th DES. ể ế

IDEA là ph ng pháp mã kh i s d ng 128 ươ ố ử ụ
bit khoá đ mã kh i d li u 64 bitể ố ữ ệ
Trình bày thuật toán

IDEA s d ng 8,5 vòng mã hóa kh i đ th c ử ụ ố ể ự
hi n ệ

IDEA s d ng 3 phép toán:ử ụ



Phép XOR theo bit. Kí hi u là ệ ⊕

Phép c ng 2 s nguyên l y modulo 216 (65536)v i ộ ố ấ ớ
đ u vào và các đ u ra là các s nguyên không d u 16 ầ ầ ố ấ
bit. Kí hi u là ệ ⊞ .

Phép nhân hai s nguyên l y modulo 216 +1 v i đ u ố ấ ớ ầ
vào và đ u ra là các s nguyên không d u 16 bit. Quy ầ ố ấ
c là kh i toàn s 0 (0x0000) bi u th cho 216 và ướ ố ố ể ị
ng c l i. Kí hi u ượ ạ ệ ⊙
Trình bày thuật toán

L c đ : C u trúc c a IDEA theo l c ượ ồ ấ ủ ượ
đ Lai-Masseyồ
Thu t toán mã hóaậ

Sơ đồ 1 vòng i
(i=1, 8)

Trong đó

Xi : Là bản rõ
của khối thứ i
nhận được từ
64 bit bản rõ

Zi(j): là khối
khóa thứ i của
vòng j

Thu t toán mã hóaậ

Sơ đồ thuật toán vòng 8,5

Trong đó

Yi : Là bản mã của khối thứ i

Zi(9): là khóa của khối thứ i của vòng cuối
Thuật toán giải mã

Quá trình giải mã tương tự quá trình mã hóa , chỉ thay đổi khối
chìa khóa như hình vẽ với Z-1 của phép nhân theo modulo
của Z ,–Z là nghịch đảo của phép cộng theo modulo của Z
Vòng 1
Vòng 8
Vòng 8,5
.
.
.
Thuật toán sinh khối khóa

52 khối khóa sử dụng trong quá trình mã hóa được sinh từ 128 bít
khóa của người dùng tạo ra theo như các bước sau:
1. 128 bít được phân thành 8 khối được sử dụng trực tiếp bằng 8 khối mã đầu
với thứ tự của khối được thể hiện như sau:
Z1(1),Z2(1) ,Z6(1),Z1(2),…Z6(2), ,Z1(8), Z6(8),Z1(9),Z2(9),Z3(9),Z4(9)
2. 128 bit khóa do người dùng tạo ra được quay vòng trái 25 vị trí sau đó thì
kết quả được phân đoạn thành 8 khối con và đây chính là 8 khối khóa con
đầu, sau đó quá trình tiếp tục để có 8 khối con tiếp theo.

3. Quá trình được tiếp tục cho đến khi sinh đủ 52 khối khóa con
Độ an toàn của phương pháp

Phương pháp mã hóa này được đánh giá là
phương pháp với “khóa yếu”, do quá trình tạo
khối khóa con đơn giản. Người ta có thể dự đoán
mối quan hệ giữa bản rõ và bản mã. Theo nghĩa
phân tích cấu trúc của khóa chứ không cần liệt kê
khóa.

Phương pháp mã khóa này đã bị phá vào năm
2012 bằng phương pháp tấn công Narrow
bicliques. Đây là phương pháp cải tiến của tấn
công vét cạn tìm khóa (Brute-force)
Chạy thử chương trình
Kết quả ví dụ
Z[1][r] Z[2][r] Z[3][r] Z[4] [r] Z[5][r] Z[6][r]
1-st vòng 1 2 3 4 5 6
2-ad vòng 7 8 1024 1536 2048 2560
3-rd vòng 3072 3584 4096 512 16 20
4-th vòng 24 28 32 4 8 12
5-th vòng 10240 12288 14336 16384 2048 4096
6-th vòng 6144 8192 112 128 16 32
7-th vòng 48 64 80 96 0 8192
8-th vòng 16384 24576 32768 40960 49152 57345
output transf 128 192 256 320 — —
Khóa 12345678 thì sinh được các khối khóa để mã
hóa như dưới:
Kết quả ví dụ


Khóa 12345678 thì sinh được các
khối khóa để giải mã như dưới:
decryption key subblocks DK[i] [r]
1-st vòng 65025 43350 65280 65216 49152 57345
2-nd vòng 65533 21843 32768 24576 0 8192
3-rd vòng 42326 64513 65456 65440 16 32
4-th vòng 21835 65529 65424 65408 2048 4096
5-th vòng 13101 43686 51200 49152 8 12
6-th vòng 19115 53834 65504 65532 16 20
7-th vòng 43670 28069 61440 65024 2048 2560
8-th vòng 18725 57345 64512 64000 5 6
output transf 1 32769 65533 65532 — —
Kết quả ví dụ

Kết quả mã hóa từng bước:
Bản rõ 0 1 2 3
Sau 1 vòng 177 202 180
207
Sau 2 vòng 5054 10696 5085
10583
Sau 3 vòng 42790 64040 25583
15559
Sau 4 vòng 16281 58571 61463
33861
Sau 5 vòng 62321 51187 1399
59053
Sau 6 vòng 37668 1126 6125
42057
Sau 7 vòng 49700 61227 19644
21245

Sau 8 vòng 2688 12695 2372
1339
Bản mã 16379 12571
2628 1659
TT=cip(YY,DK)
Tài liệu tham khảo
1. Xuejia Lai and James L. Massey, A Proposal for a
New Block Encryption Standard, EUROCRYPT
1990, pp389–404
2. Wikipedia “International Data Encryption Algorithm”
/>yption_Algorithm
3. Khovratovich, D.; Leurent, G.; Rechberger, C.
"Narrow-Bicliques: Cryptanalysis of Full IDEA".
Advances in Cryptology – EUROCRYPT 2012.
Springer-Verlag.
Q & A ?
Cảm ơn!

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×