Hiện nay các giao dịch tài chính, chuyển khoản, mua sắm trực tuyến, thư tín, tài liệu, ...được thực hiện qua nhiều môi trường mạng đòi hỏi phải được bảo mật tốt... Khả năng bảo mật đượ
Trang 1Vài Phương Pháp Mã Hóa trong CrypTool
Môn: Xây dựng Chuẩn Chính Sách An Toàn Thông Tin trong doanh nghiệp
GVHD: Nguyễn Duy
Nhóm TH: Mai Đức An
Nguyễn Cảnh Hà Hoàng Ngọc Tùng Phạm Ngọc Thắng Cao Nguyễn Trung Sang
Lê Trung Trường Giang
Trang 3I – Giới Thiệu
Mật mã hóa được sử dụng từ thời cổ đại cho đến ngày nay
Hiện nay các giao dịch tài chính, chuyển khoản, mua sắm trực tuyến, thư tín, tài liệu, được thực hiện qua nhiều môi trường mạng đòi hỏi phải được bảo mật tốt
Trang 5I – Giới Thiệu(tt)
Khóa: là thông số đầu vào của phép mã hóa và giải mã Khóa dùng để mã hóa ký hiệu là: Ke
Khóa dùng để giải mã ký hiệu là: Kd
Chuỗi mật mã: là chuỗi thông báo đã qua phép mã hóa, được ky hiệu là c , c = e (m, Ke).
Phép giải mã : là quá trình xác định thông báo từ chuỗi mật mã c và khóa Kd, được ký hiệu là : d(c,
Kd), d(c,Kd) = m.
Trang 6I – Giới Thiệu(tt)
Trang 7 Mật mã học có 2 phần:
Mật mã học cổ điển : Caesar, Vigenere, Substitution …., các chữ tượng hình của Ai Cập cổ đại, mã hóa thay thế Atbash có khoản năm 500 – 600 tr.CN
Mật mã học hiện đại : IDEA, RC4, DES, ASE …., cha đẻ của nó là Claude Shannon.
Các yêu cầu cơ bản của mật mã hóa là:
+ Có tính bảo mật cao
+ Công khai, dễ hiểu Khả năng bảo mật được chốt vào khóa cứ không phải vào giải thuật.
+ Triển khai được trên các thiết bị điện tử.
Trang 8II – Các phương pháp mã hóa
Substitution Cipher (mã hóa thay thế đơn giản).
Trong phép này, khóa là 1 hoán vị h của bản chữ cái Z và mỗi ký hiệu thông báo được thay thế bằng
ảnh của nó qua hoán vị h
Khóa thường biểu diễn bằng 1 chuỗi 26 ký tự (bản chữ cái ABC), có 26! (~4.10 26) hoán vị (khóa).
Ví dụ: khóa là chuỗi UITPRO … , ký hiệu A trong chuỗi thông báo thay bằng U, ký hiệu B thay bằng I
…
Trang 9II – Các phương pháp mã hóa(tt)
Ví dụ, chọn 1 hoán vị p làm khóa như hình sau, ta được: mã hóa Ep(a) = X và giải mã Dp(A)= d
Trang 10II – Các phương pháp mã hóa(tt)
Mở rộng: thay thế n-gram
Thay vì thay thế các ký tự, người ta có thể thay thế cho từng cụm 2 ký tự (diagram), 3 ký tự (trigram),
hay cho n ký tự (n-gram)
Với bản chữ cái gồm 26 ký tự thì phép thay thế n-gram sẽ có khóa là 1 hoán vị của 26n n-gram khác
nhau.
Trang 11II – Các phương pháp mã hóa(tt)
Ví dụ thay thế diagram thì hoán vị của nó gồm 262 diagram và có thể biễu diễn bằng 1 dãy 2 chiều trong đó các hàng biểu diễn ký hiệu đầu tiên, các cột biểu diễn ký hiệu thứ 2, minh họa như sau:
Trang 12II – Các phương pháp mã hóa(tt)
IDEA (International Data Encryption Algorithm) là một phương pháp mã khối, được đưa ra để thay
thế cái cũ là DEA (Data Encryption Algorithm), công bố năm 1991.
Cách thực hiện
IDEA là hệ mã thao tác trên từng khối 64bit, mã khối 64bit plantext thành khối 64bit ciphertext, sử dụng 128bit làm khóa bao gồm 1 chuỗi 8 lần biến đổi liên tiếp và tiếp theo là 1 lần biến đổi đầu ra Lần biến đổi thứ r sử dụng 6 khối khóa con 16 bit Ki(r), 1<=i<=6, để biến đổi 64bit đầu vào X thành
1 đầu ra với 4 khối 16bit và đầu ra này lại là đầu vào cho lần biến đổi tiếp theo Đầu ra của lần biến đổi thứ 8 là đầu vào cho lần biến đổi cuối cùng là đầu ra của phương pháp này Trong lần biến đổi này nó dùng 4 khóa con Ki(9), 1<=i<=4, để tính toán mật mã cuối cùng Y= (Y1,Y2, Y3, Y4) Tất cả các khóa con nhận được từ K
Trang 13 Khóa 128 bit được chia ra thành 8 khóa 16 bit mà các khóa này là 8 khóa phụ đầu tiên
Những chữ số của khóa 128 bit được dịch trái 25 bit để tạo ra khóa mới mà khóa mới này sẽ được chia ra thành 8 khóa phụ 16 bit tiếp theo
Bước thứ 2 được lặp lại cho đến khi 52 khóa phụ được phát sinh
Quá trình mã hóa bao gồm phép nhân đồng dư với ((2^16)+1) và phép cộng đồng dư với (2^16)
Khối plaintext 64 bit được chia thành từng đoạn 16 bit mà chúng ta kí hiệu là p1, p2, p3, p4.Những khóa phụ là s1, s2 ,s3, s4
Trang 15II – Các phương pháp mã hóa(tt)
Sau khi thực hiện xong bước này, các khối d12 ,d 13 xuất ra sẽ được trao đổi để d11 và d13, d12 và d14 được dùng làm đầu vào trong vòng lặp kế tiếp cùng với 6 khóa phụ tiếp theo ,bao gồm từ s7 đến s12 Thủ tục này được lặp lại trong 8 vòng nữa để cuối cùng xuất ra tổng cộng 4 khối mà chúng ta gọi
Trang 17 Sự biến đổi cuối cùng s1* s2# s3# s4*
sXX* = phép nhân đảo ngược đồng dư của ((2^16)+1)
sXX# = phép cộng đảo ngược đồng dư của sXX (2^16)
Trang 18II – Các phương pháp mã hóa(tt)
RC4: phương pháp hiện đại ,khóa đối xứng,được thiết kế bởi Ron Rivest vào năm 1987.
RC4 phát sinh 1 luồng mã giả bit để mã hóa , nó được kết hợp với plaintext bằng phép toán XOR , quá trình giải mã cũng tương tự Để phát sinh luồng khóa, thuật toán chia làm 2 phần :
1 Hóan vị tất cả 256 bit (biểu thị \ S \)
2 Hai con trỏ 8 bit (biểu thị \ i \ và \ j \).Quá trình hóan vị này được khởi tạo với 1 khóa có độ dài thay đổi , thay đổi trong khoảng 40 – 256 bits , sử dụng thuật tóan RSA Một khi đã hòan thành, luồng bits này được sinh ra dùng giải thuật phát sinh mã giả ngẫu nhiên
Trang 20II – Các phương pháp mã hóa(tt)
Giải thuật phát sinh mả giã (PRGA) Trong quá trình lặp đi lặp lại, PRGA sửa đổi trạng thái và xuất
ra 1 byte của luồng khóa.Trong mỗi quá trình lặp , PRGA tăng dần i, và tính ra 2 giá trị của S tại 2 byte i và j , sau đó cộng 2 giá trị S[i] S[j] ,rồi xuất ra giá trị S chính là khóa k Mỗi giá trị của S được thay đổi ít nhất 1 lần đến 256 lần lặp đi lặp lại
Trang 21III – Kết Luận
Substitution Cipher là phương pháp mã hóa cổ điển, hoạt động bằng cách thay thế ký tự nên thời gian
mã hóa lâu hơn so với 2 giải thuật mã hóa IDEA và RC4
IDEA: Nhanh hơn 3DES, nhưng chậm hơn Arcfour và Blowfish
RC4 : Thuật toán đơn giản, ý nghĩa từng bước rõ ràng
Trang 22IV – Tài Liệu Tham Khảo
Books:
[1]: Slide An toàn mạng máy tính –
Tô Nguyễn Nhật Quang – ĐHCNTT [2]: Cryptography And Network Security -
Trang 23Cảm ơn các bạn đã lắng nghe!
Trang 24Q & A