mã hóa dữ liệu bằng phương pháp des có demo

59 2.3K 10
mã hóa dữ liệu bằng phương pháp des có demo

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC TIÊU: - Đề tài giới thiệu về hệ thống mã hóa và đi sâu nghiên cứu phương pháp mã hóa DES, đưa ra hướng dẫn cài đặt chương trình mã hóa văn bản, file văn bản một cách đơn giản, hiệu quả. PHẠM VI ĐỀ TÀI: - Tìm hiểu mã hóa thông tin - Tìm hiểu hệ mã chuẩn DES - Cài đặt chương trình mã hóa và giải mã file, văn bản sử dụng hệ mã DES BỐ CỤC ĐỀ TÀI: Nội dung của đồ án được trình bày trong 4 chương Chương 1: Tổng quan Giới thiệu tổng quan các khái niệm bản về mật học và hệ thống hóa, đồng thời giới thiệu sơ lược về hệ thống hóa quy ước và hệ thống hóa công cộng. Chương 2: Một số phương pháp mã hóa quy ước Nội dung chương 2 sẽ giới thiệu chi tiết hơn về hệ thống hóa quy ước( hay còn gọi là hệ thống hóa đối xứng). Một số phương pháp hóa quy ước kinh điển như phương pháp dịch chuyển, phương pháp thay thế… và giới thiệu qua hóa theo khối DES. Chương 3: Mật mã hóa DES Chương này em giới thiệu chi tiết về đặc điểm cũng như thuật toán của phương pháp mã hóa DES Chương 4: Mô phỏng và kết quả Nội dung chương IV sẽ phân tích chức năng của bài toán đặt ra, quá trình kiểm thử, kết quả của chương trình Demo. - 1 - ĐỊNH NGHĨA, VIẾT TẮT : AES Advanced Encyption Standard Chuẩn mã hóa nâng cao Cryptography Mật Cryptosystem Hệ thống hóa Symmetric key Khóa đối xứng Secret key Khóa bí mật Substtution Cipher hóa thay thế DES Data Encryption Standard Chuẩn hóa dữ liệu EP Expansion Permutation Hoán vị mở rộng IP Initial Permutation Hoán vị đầu Permutation Mã hóa hoán vị - 2 - A D E I C P DANH MỤC HÌNH VẼ Hình 2.1: Mô hình hệ thống mã hóa quy ước 7 Hình 2.2: Biểu diễn dãy 64 bit thành 2 thành phần L và R 14 Hình 2.3: Trình phát sinh dãy L i R i từ dãy L i-1 R i-1 và khóa K i 15 Hình 3.1: Chuẩn dữ liệu DES 16 Hình 3.2: Sơ đồ khối chương trình DES 20 Hình 3.3: Sơ đồ khối quá trình sinh khóa 21 Hình 3.4: Sơ đồ mã hóa DES 23 Hình 3.5: Sơ đồ một vòng DES 24 Hình 3.6: Sơ đồ hàm F 27 Hình 3.7: Sơ đồ tạo khóa con 28 Hình 3.8: Sơ đồ của hàm mở rộng 30 Hình 4.1: Sơ đồ chức năng của chương trình mô phỏng 40 Hình 4.2:Biểu đồ hoạt động của chương trình mô phỏng 41 Hình 4.3: Giao diện chính của chương trình 43 DANH MỤC BẢNG Bảng 3.1:Các khóa yếu của DES 18 Bảng 3.2:Các khóa nửa yếu của DES 18 Bảng 3.3:Hoán vị IP 25 Bảng 3.4: Hoán vị IP-1 25 Bảng 3.5: Hoán vị PC-1 29 Bảng 3.6: Bảng dịch bit tại các vòng lặp của DES 29 Bảng 3.7: Hoán vị PC-2 30 Bảng 3.8: Hàm mở rộng E 31 Bảng 3.9: 8 hộp S-Box 33 Bảng 3.10: Bảng hoán vị P 34 - 3 - CHƯƠNG 1 TỔNG QUAN 1.1. MẬT MÃ HỌC: Mật là ngành khoa học ứng dụng toán học vào việc biến đổi thông tin thành một dạng khác với mục đích che dấu nội dung, ý nghĩa thông tin cần hóa. Đây là một ngành quan trọng và nhiều ứng dụng trong đời sống xã hội. Ngày nay, các ứng dụng hóa vào bảo mật thông tin đang được sử dụng ngày càng phổ biến hơn trong các lĩnh vực khác nhau trên thế giới, từ các lĩnh vực an ninh, quân sự, quốc phòng…, cho đến các lĩnh vực dân sự như trong thương mại điện tử, ngân hàng… Cùng với sự phát triển của khoa học máy tính và internet, các nghiên cứu và ứng dụng của khoa học mật ngày càng trở nên đa dạng hơn, mở ra nhiều hướng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng đặc thù với những đặc trưng riêng. Ứng dụng của khoa học mật không chỉ đơn thuần là hóa và giải thông tin còn bao gồm nhiều vấn đề khác nhau cần được nghiên cứu và giải quyết: chứng thực nguồn gốc nội dung thông tin (kỹ thuật chữ ký điện tử), chứng nhận tính xác thực về người sở hữu khóa ( chứng nhận khóa công cộng), các quy trình giúp trao đổi thông tin và thực hiện giao dịch điện tử an toàn trên mạng… Những kết quả nghiên cứu về mật cũng đã được đưa vào trong các hệ thống phức tạp hơn, kết hợp với những kỹ thuật khác để đáp ứng yêu cầu đa dạng của các hệ thống ứng dụng khác nhau trong thực tế, ví dụ như hệ thống bỏ phiếu bầu cử qua mạng, hệ thống đào tạo từ xa, hệ thống quản lý an ninh của các đơn vị với hướng tiếp cận sinh trắc học, hệ thống cung cấp dịch vụ multinedia trên mạng với yêu cầu cung cấp dịch vụ và bảo vệ bản quyền sở hữu trí tuệ đối với thông tin số… 1. 2. HỆ THỐNG MÃ HÓA (CRYPTOSYSTEM) Định nghĩa 1.1 : Hệ thống hóa (cryptosystem) là một bộ băm (P, C, K, E ,D) thỏa mãn các điều kiện sau: 1. Tập nguồn P là tập hữu hạn tất cả các mẫu tin nguồn cần hóa thể 2. Tập đích C là tập hữu hạn tất cả các mẫu tin thể sau khi hóa 3. Tập khóa K là tập hữu hạn các khóa thể được sử dụng 4. E và D lần lượt là tập luật hóa và giải mã. Với mỗi khóa K∈ D tương ứng Luật hóa e k : P → C và luật giải e k : C → P là hai ánh xạ thỏa mãn ( ) ( ) , k k d e x x x P= ∀ ∈ Tính chất 4, là chính chất chính và quan trọng của một hệ thống hóa. Tính chất này đảm bảo một mẩu tin x∈P được hóa bằng luật hóa e k ∈E thể giải chính xác bằng luật d k ∈D. - 4 - Định nghĩa 1. 2: Z m được định là tập hợp {0, 1, , m-1}, được trang bị phép cộng( ký hiệu +) và phép nhân(ký hiệu x). Phép cộng và phép nhân trong Z m được thực hiện tương tự như trong Z, ngoại trừ kết quả tính toán theo modulo m Ví dụ: Giả sử cần tính giá trị 11x13 trong Z 16. Trong Z, ta kết quả của phép nhân 11x13=143. Do 143≡15(mod 16) nên 11x13=15 trong Z 16. Một số tính chất của Z m 1. Phép cộng đóng trong Z m , i.e., ∀ a, b ∈ Z m , a+b ∈ Z m 2. Tính giao hoán của phép cộng trong Z m , i.e., ∀ a, b ∈ Z m , a+b =b+a 3. Tính kết hợp của phép cộng trong Z m , i.e., ∀ a, b, c ∈ Z m , (a+b)+c . =a+(b+c) 4. Z m phần trung hòa là 0, i.e., ∀ a ∈ Z m , a+0 = 0+a=a 5. Mọi phần tử a trong Z m đều phẩn tử đối là m-a 6. Phép nhân đóng trong Z m , i.e., ∀ a, b ∈ Z m , a×b∈ Z m 7. Tính giao hoán của phép cộng trong Z m , i.e., ∀ a, b ∈ Z m , a×b=b×a 8. Tính kết hợp của phép cộng trong Z m , i.e., ∀ a, b, c ∈ Z m , (a×b)×c . = a×(b×c) 9. Z m , phần tử đơn vị là 1, i.e., ∀ a ∈ Z m , a×1=1×a=a 10. Tính phân phối của phép nhân đối với phép cộng, i.e., ∀ a, b, c ∈ Z m , . . (a+b)×c =(a×c)+(b×c) 11. Z m , các tính chất 1, 3, -5 nên tạo thành 1 nhóm, Do Z m , tính chất 2 nên tạo thành nhóm Abel, Z m , các tính chất (1) – (10) nên tạo thành 1 vành 1. 3. HỆ THỐNG MÃ HÓA QUY ƯỚC: Trong hệ thống hóa quy ước, quá trình hóa và giải một thông điệp sử dụng cùng một khóa gọi là KHÓA BÍ MẬT (secret key) hay KHÓA ĐỐI XỨNG (symmetric key). Do đó vấn đề bảo mật thông tin đã hóa hoàn toàn phụ thuộc vào việc giữ bí mật nội dung của khóa đã được sử dụng. Với tốc độ và khả năng xử lý ngày càng được nâng cao của các bộ vi xử lý hiện nay, phương pháp hóa chuẩn (Data Encyption Standard – DES) đã trở nên không an toàn trong bảo mật thông tin. Do đó, Viện tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (National Institute of Standard and Technology – NIST) đã quyết định chọn một chuẩn hóa mới với độ an toàn cao nhằm phục vụ nhu cầu bảo mật thông tin liên lạc của Chính phủ Hoa Kỳ cũng như trong các ứng dụng dân sự. thuật toán Rijndael do Vincent Rijmen và Joan Daeman đã được chính thức chọn trở thành chuẩn hóa nâng cao (Advanced Encyption Standard – AES) từ 02 tháng 10 năm 2000 - 5 - 1.4. HỆ THỐNG MÃ HÓA CÔNG CỘNG (MÃ HÓA BẤT ĐỐI XỨNG): Nếu như vấn đề khó khăn đặt ra đối với các phương pháp hóa quy ước chính là bài toán trao đổi khóa thì ngược lại, các phương pháp hóa công cộng giúp cho việc trao đổi khóa trở nên dễ dàng hơn. Nội dung của khóa công cộng (public key) không cần giữ bí mật như đối với khóa bí mật trong các phương pháp hóa quy ước. Sử dụng khóa công cộng, chúng ta thể thiết lập một quy trình an toàn để truy đổi khóa bí mật được sử dụng trong hệ thống hóa quy ước. Những năm gần đây, các phương pháp hóa công cộng, đặc biệt là phương pháp RSA [45] , được sử dụng ngày càng nhiều trong các ứng dụng hóa trên thế giới và thể xem đây là phương pháp chuẩn được sử dụng phổ biến nhất trên Internet, ứng dụng trong việc bảo mật thông tin liên lạc cũng như trong lĩnh vực thương mại điện tử 1.5. KẾT HỢP MÃ HÓA QUY ƯỚC VÀ MÃ HÓA CÔNG CỘNG Các phương pháp hóa quy ước ưu điểm xử lý rất nhanh và khả năng bảo mật cao so với các phương pháp hóa công cộng nhưng lại gặp phải vấn đề khó khăn trong việc trao đổi khóa. Ngược lại, các phương pháp hóa khóa công cộng tuy xử lý thông tin chậm hơn nhưng lại cho phép người sử dụng trao đổi khóa dễ dàng hơn. Do đó, trong các ứng dụng thực tế, chúng ta cần phối hợp được ưu điểm của mỗi phương pháp hóa để xây dựng hệ thống hóa và bảo mật thông tin hiệu quả và an toàn. - 6 - CHƯƠNG 2 MỘT SỐ PHƯƠNG PHÁP HÓA QUY ƯỚC 2.1. HỆ THỐNG MÃ HÓA QUY ƯỚC Hệ thống hóa quy ước là hệ thống hóa trong đó quy trình hóa và giải đều được sử dụng chung một khóa – khóa bí mật. Việc bảo mật thông tin phụ thuộc vào việc bảo mật khóa Trong hệ thống hóa quy ước, thông điệp nguồn được hóa với khóa k được thống nhất trước giữa người gửi A và người nhận B. Người A sẽ sử dụng khóa k để hóa thông điệp x thành thông điệp y và gửi y cho người B, người B sẽ sử dụng khóa k để giải thông điệp y này. Vấn đề an toàn bảo mật thông tin được hóa phụ thuộc vào việc giữ bí mật nội dung khóa k. Nếu người C biết được khóa k thì C thể “mở khóa” thông điệp đã được hóa người A gửi cho người B. Hình 2.1. Mô hình hệ thống hóa quy ước 2.2. PHƯƠNG PHÁP MÃ HÓA DỊCH CHUYỂN Phương pháp hóa dịch chuyển là một trong những phương pháp lâu đời nhất được sử dụng để hóa. Thông điệp được hóa bằng cách dịch chuyển xoay vòng từng ký tự đi k vị trí trong bảng chử cái. Trong trường hợp đặc biệt k =3, phương pháp hóa bằng dịch chuyển được gọi là phương pháp mã hóa Caesar - 7 - Cho P=C=K= Zn Với mỗi khóa k ∈ K, định nghĩa: e k (x)=(x+k)mod n và d k (y)=(y-k)mod n với x,y ∈ Zn E={ e k , k ∈ K} và D={ d k, k ∈ K} Thuật toán 2.1. Phương pháp hóa dịch chuyển hóa dịch chuyển là một phương pháp hóa đơn giản, thao tác xử lý hóa và giải được thực hiện nhanh chóng. Tuy nhiên, trên thực tế, phương pháp này thể dễ dàng bị phá vỡ bằng cách thử mọi khả năng khóa k ∈ K. Điều này hoàn toàn thể thực hiện được do không gian khóa K chỉ n phần tử để chọn lựa • Ví dụ : Để hóa một thông điệp được biểu diễn bằng các chữ cái từ A đến Z (26 chữ cái ). Ta sử dụng P=C=K= Z 26 . Khi đó, thông điệp được hóa sẽ không an toàn và thể dễ dàng bị giải bằng cách thử lần lượt 26 giá trị khóa k∈K. Tính trung bình, thông điệp đã được hóa thể bị giải sau khoảng n/2 lần thử khóa k∈K 2.3. PHƯƠNG PHÁP MÃ HÓA THAY THẾ Phương pháp hóa thay thế (Substtution Cipher) là một trong những phương pháp hóa nổi tiếng và đã được sử dụng từ hàng trăm năm nay. Phương pháp này thực hiện việc hóa thông điệp bằng cách hoán vị các phần tử trong bảng chữ cái hay tổng quát hơn là hoán vị các phần tử trong tập nguồn P. Cho P=C=Z K là tập hợp tất cả các hoán vị của n phần tử 0,1, ,n-1. Như vậy, mỗi khóa π ∈ K là một hoán vị của n phần tử 0,1, ,n-1. Với mỗi khóa π ∈ K, định nghĩa : e π (x)= π(x) và d π (y)=π -1 (y) với x,y ∈ Z n E={e π , π∈ K} và D={D π , π∈K} Thuật toán 2.2. phương pháp hóa bằng thay thế Đây là phương pháp đơn giản, thao tác hóa và giải được thực hiện nhanh chóng. Phương pháp này khắc phục điểm hạn chế của phương pháp hóa bằng dịch chuyển là không gian khóa K nhỏ nên dễ dàng bị giải bằng cách thử nghiệm lần lượt n giá trị khóa k∈K. Trong phương pháp hóa thay thế không gian khóa K rất lớn với n! phần tử nên không thể bị giải bằng cách ‘vét cạn’ mọi trường hợp khóa k. Tuy nhiên, trên thực tế thông điệp được hóa bằng phương pháp này vẫn thể bị giải nếu như thể thiết lập được bảng tần số xuất hiện của các ký tự trong thông điệp hay nắm được một số từ, ngữ trong thông điệp nguồn ban đầu - 8 - 2.4. PHƯƠNG PHÁP AFFINE Nếu như phương pháp bằng dịch chuyển là một trường hợp đặc biệt của phương pháp hóa bằng thay thế, trong đó chỉ sử dụng n giá trị khóa k trong số n! phần tử, thì phương pháp Affine lại là một trường hợp đặc biệt khác của hóa bằng thay thế Cho P=C=Z n K={(a,b)∈Z n x Z n : gcd (a,b)=1} Với mỗi khóa k=(a,b) ∈ K, định nghĩa: e k (x)=(ax+b)mod n và d k (x)=(a -1 (y-b))mod n với x,y∈Z n E={e k ,k∈K} và D={D k , k ∈ K} Thuật toán 2.3 Phương pháp Affine Để thể giải chính xác thông tin đã được hóa bằng hàm e k ∈E thì e k phải là một song ánh. Như vậy, với mỗi giá trị y∈ Z n , phương trình ax+b≡y(mod n) phải nghiệm duy nhất x∈ Z n Phương trình ax+b≡y(mod n) tương đương với ax≡(y-b)(mod n).Vậy, ta chỉ cần khảo sát phương trình ax≡(y-b)(mod n) Định lý 2.1 : Phương trình ax+b≡y(mod n) nghiệm duy nhất x∈Z n với mỗi giá trị b∈ Z n , khi và chỉ khi a và n nguyên tố cùng nhau. Vậy, điều kiện a và n nguyên tố cùng nhau bảo đảm thông tin được hóa bằng hàm e k ,có thể được giải một cách chính xác Gọi φ(n) Z n và nguyên tố cùng nhau với n. Trong phương pháp hóa Affine, ta n khả năng chọn giá trị b, φ(n) khả năng chọn giá trị a. vậy không gian khóa K tất cả nφ (n) phần tử. Vấn đề đặt ra cho phương pháp hóa Affine là để thể giải được thông tin đã được hóa cần phải tính giá trị phần tử nghịch đảo a -1 ∈Z n . Thuật toán Euclide mở rộng thể giải quyết trọn vẹn vấn đề này. - 9 - Trước tiên cần khảo sát thuật toán Euclide (ở dạng bản) sử dụng trong việc tìm ước số chung lớn nhất của hai số nguyên dương r 0 và r 1 với r 0 > r 1 . Thuật toán Euclide bao gồm một dãy các phép chia. r 0 =q 1 r 1 +r 2 , 0 < r 2 < r 1 r 1 =q 2 r 2 + r 3 ,0 < r 3 < r 2 . . . r m-2 = q m-1 r m-1 +r m , 0 < r m < r m-1 r m-1 = q m r m Dễ dàng nhận thấy rằng gcd( r 0 , r 1 )= gcd( r 1 , r 2 )= = gcd( r m-1 , r m )= r m Như vậy, ước số chung lớn nhất của r 0 , r 1 là r m Xây dựng dãy số t 0 , t 1 , t m theo công thức truy hồi sau : t 0 =0 t 1 =1 t j = (t j-2 – q j-1. t j-1 )mod r 0 với j ≥ 2 Định lý 2.3 : Với mọi j, 0 ≤ j ≤ m, ta r j ≡ t j r 1 (mod 0), với q j và r j được xác định theo thuật toán Euclide và t j được xác định theo công thức truy hồi nêu trên. Định lý 2.4 : nếu r 0 và r 1 nguyên tố cùng nhau (với r 1 > r 1 ) thì t m là phần tử nghịch đảo của r 1 trong Z r0 . Gcd(r 0, r 1 )=1=> t m = r 1 -1 mod r 0 Trong thuật toán Euclide, dãy số { t j } thể được tính đồng thời với dãy số {q j } và {r j }. Thuật toán Euclide mở rộng dưới đây được sử dụng để xác định phần tử nghịch đảo (nếu có) của một số nguyên dương a(modulo n). trong thuật toán không cần sử dụng đến cấu trúc dữ liệu mảng để lưu giá trị của dãy số {t j } , {q j } hay {r j } vì tại mỗi thời điểm, ta chỉ cần quan tâm đến giá trị của hai phần tử cuối cùng mỗi dãy tại thời điểm đang xét. n 0 = n - 10 - [...]... ràng, hóa bằng phương pháp Hill với ma trận k π hoàn toàn tương đương với hóa bằng phương pháp hoán vị với hoán vị π - 13 - 2.8 PHƯƠNG PHÁP DES ( DATA ENCYPTION STANDARD ) 2.8.1 Phương pháp DES Khoảng những năm 1970, Tiến sĩ Horst Feistel đã đặt nền móng đầu tiên cho chuẩn hóa dữ liệu DES với phương pháp hóa Feistel Cipher Vào năm 1976 quan bảo mật Quốc gia Hoa kỳ (NSA) đã công nhận DES. .. trên phương pháp Feistel là chuẩn mã hóa dữ liệu Kích thước khóa của DES ban đầu là 128 bit nhưng tại bản công bố FIPS kích thước khóa được rút xuống còn 56 bit Trong phương pháp DES, kích thước khối là 64 bit DES thực hiện hóa dữ liệu qua 16 vòng lặp hóa, mỗi vòng sử dụng một khóa chu kỳ 48 bit được tạo ra từ khóa ban đầu độ dài 56 bit DES sử dụng 8 bảng hằng số S-box để thao tác Quá trình mã. .. trúc đại số thì việc đa hóa sẽ được xem ngang bằng với việc đơn hóadụ như hai khóa bất kỳ K1 và K2 thì sẽ luôn được khóa K3 như sau : - 18 - EK2(EK1(X))=EK3(X) Nói một cách khác, việc hóa DES mang tính chất “nhóm”, đầu tiên hóa bản rõ bằng khóa K1 sau đó là khóa K2 sẽ giống với việc hóa ở khóa K3 Điều này thực sự quan trọng nếu sử dụng DES trong đa hóa Nếu một “nhóm” được phát... với mỗi khóa k∈K, một song ánh được thiết lập từ P vào C Khác với hướng tiếp cận này, phương pháp Vigenere sử dụng một từ khóa độ dài m thể xem như phương pháp hóa Vigenere Cipher bao gồm m phép hóa bằng dịch chuyển được áp dụng luân phiên nhau theo chu kỳ Không gian khóa K của phương pháp Vigenere Cipher số phần tử là “n”, lớn hơn hẳn phương pháp số lượng phần tử của không gian khóa K... mọi phép toán số học đều được thực hiện trên Zn Thuật toán 2.6 Phương pháp hóa Hill 2.7 PHƯƠNG PHÁP MÃ HÓA HOÁN VỊ Những phương pháp hóa nêu trên đều dựa trên ý tưởng chung: thay thế mỗi ký tự trong thông điệp nguồn bằng một ký tự khác để tạo thành thông điệp đã được hóa. Ý tưởng chính của phương pháp hóa hoán vị (Permutation) là vẫn giữ nguyên các ký tự trong thông điệp nguồn... thuật toán hóa này thành miễn phí và phát triển nó thành chuẩn hóa dữ liệu và công bố vào ngày 15/02/1977 3.2 PHƯƠNG PHÁP BẢO MẬT DES là thuật toán hóa với input là khối 64 bit, output cũng là khối 64 bit Khóa hóa độ dài 56 bit, thực ra chính xác hơn phải là 64 bit với các bit ở vị trí chia hết cho 8 thể sử dụng là các bit kiểm tra tính chẵn lẻ Số khóa của không gian khóa K là 256... Bảng 3.2.Các khóa nửa yếu của DES 3.3.3.3 DES cấu trúc đại số Với 64 bit khối bản rõ thể được ánh xạ lên tất cả các vị trí của khối 64 bit khối bản trong 264 cách Trong thuật toán DES, với 56 bit khóa thể cho chúng ta 2 56 (khoảng 1017 ) vị trí ánh xạ Với việc đa hóa thì không gian ánh xạ còn lớn hơn Tuy nhiên điều này chỉ đúng nếu việc hóa DES là không cấu trúc Với DES cấu trúc... tử là “n”, lớn hơn hẳn phương pháp số lượng phần tử của không gian khóa K trong phương pháp hóa bằng dịch chuyển.Do đó, việc tìm ra khóa k để giải thông điệp đã được hóa sẽ khó khăn hơn đối với phương pháp hóa bằng dịch chuyển Chọn số nguyên dương m Định nghĩa P=C=K =(Zn)m K={(k0,k1,…,kr-1) ∈ (Zn)r} Với mỗi khóa k=(k0,k1,…,kr-1)∈K, định nghĩa: Ek(x1,x2,…,xm)=((x1+k1) mod n, (x2+k2)mod... – qa0 end while if a0 ≠ 1 then a không phần tử nghịch đảo modulo n else a-1=t mod n end if Thuật toán 2.4 Thuật toán Euclide mở rộng xác định phần tử nghịch đảo của a(modulo n) - 11 - 2.5 PHƯƠNG PHÁP VIGENERE Trong phương pháp hóa bằng thay thế cũng như các trường hợp đặc biệt của phương pháp này (mã hóa bằng dịch chuyển, hóa Affine…), ứng với một khóa k được chọn, mỗi phần tử x∈P được ánh... nếu ta biết y được hóa từ thông tin x với khóa K thì ta suy được bản y được hóa từ bản rõ x với khóa k Tính chất này là một yếu điểm của DES bởi vì - 17 - qua đó đối phương thể loại bỏ đi một số khóa phải thử khi tiến hành thử giải theo kiểu vét cạn 3.3.2.2 khóa yếu Khóa yếu là các khóa theo thuật toán sinh khóa con thì tất cả 16 khóa con đều như nhau : K1=K2= =K16 Điều đó khiến . pháp mã hóa bằng thay thế Đây là phương pháp đơn giản, thao tác mã hóa và giải mã được thực hiện nhanh chóng. Phương pháp này khắc phục điểm hạn chế của phương pháp mã hóa bằng dịch chuyển là có. của không gian khóa K trong phương pháp mã hóa bằng dịch chuyển.Do đó, việc tìm ra mã khóa k để giải mã thông điệp đã được mã hóa sẽ khó khăn hơn đối với phương pháp mã hóa bằng dịch chuyển. Chọn. mã hóa quy ước( hay còn gọi là hệ thống mã hóa đối xứng). Một số phương pháp mã hóa quy ước kinh điển như phương pháp dịch chuyển, phương pháp thay thế… và giới thiệu qua mã hóa theo khối DES.

Ngày đăng: 28/04/2014, 18:57

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan