Sự khác biệt giữa Mật mã khối và Mật mã dòng

Tác Giả: Laura McKinney
Ngày Sáng TạO: 1 Tháng Tư 2021
CậP NhậT Ngày Tháng: 10 Có Thể 2024
Anonim
Sự khác biệt giữa Mật mã khối và Mật mã dòng - Công Nghệ
Sự khác biệt giữa Mật mã khối và Mật mã dòng - Công Nghệ

NộI Dung


Mã hóa khối và mật mã dòng là các phương thức được sử dụng để chuyển đổi đồng bằng thành mật mã trực tiếp và thuộc họ mật mã khóa đối xứng.

Sự khác biệt chính giữa mật mã khối và mật mã luồng là mã hóa khối mã hóa và giải mã một khối tại một thời điểm. Mặt khác, mã hóa luồng mã hóa và giải mã mã hóa bằng cách lấy một byte của một lần.

  1. Biểu đồ so sánh
  2. Định nghĩa
  3. Sự khác biệt chính
  4. Phần kết luận

Biểu đồ so sánh

Cơ sở để so sánhKhóa mật mãMật mã dòng
Căn bản

Chuyển đổi đồng bằng bằng cách lấy khối của nó tại một thời điểm.
Chuyển đổi bằng cách lấy một byte của đồng bằng tại một thời điểm.
Phức tạp
Thiết kế đơn giản

Phức tạp tương đối
Không có bit nào được sử dụng
64 bit trở lên
8 bit
Nhầm lẫn và khuếch tán

Sử dụng cả nhầm lẫn và khuếch tánChỉ dựa vào sự nhầm lẫn
Các chế độ thuật toán được sử dụng

ECB (Sách mã điện tử)
CBC (Chuỗi khối mã hóa)
CFB (Phản hồi mật mã)
OFB (Phản hồi đầu ra)
Sự đảo ngược
Đảo ngược mã hóa là khó.

Nó sử dụng XOR để mã hóa có thể dễ dàng đảo ngược về đồng bằng.
Thực hiện
Mật mã Feistel
Mật mã Vernam


Định nghĩa về mật mã khối

Mật mã khối lấy một và phá vỡ nó thành một khối có kích thước cố định và chuyển đổi một khối ngay lập tức. Ví dụ, chúng tôi có một STREET_BY_STREET trong đơn giản, bắt buộc phải được mã hóa. Sử dụng mật mã bock, ban đầu, STREET phải được mã hóa, sau đó là mã _BY_ Lần và cuối cùng là tại STREET Lần cuối cùng.
Trong thực tế, giao tiếp chỉ diễn ra trong bit. Do đó, STREET thực sự có nghĩa là tương đương nhị phân của ký tự ASCII của STREET. Sau đó, bất kỳ thuật toán mã hóa những điều này; các bit kết quả được chuyển đổi trở lại thành tương đương ASCII của chúng.

Một vấn đề rõ ràng liên quan đến việc sử dụng thuật toán mã khối là lặp lại , mà mật mã tương tự được tạo ra. Do đó, nó sẽ đưa ra một gợi ý cho nhà phân tích mật mã, điều này giúp dễ dàng tìm ra các chuỗi định kỳ của đồng bằng. Kết quả là, nó có thể tiết lộ toàn bộ.


Để khắc phục vấn đề này chế độ xích Được sử dụng. Trong kỹ thuật này, khối mật mã trước được trộn với khối hiện tại, do đó, đối với mật mã mơ hồ, điều này tránh được các mẫu lặp lại của các khối có cùng nội dung.

Định nghĩa về mật mã dòng

Luồng mã hóa thường mã hóa một byte của thời điểm đó thay vì sử dụng các khối. Hãy để Lừa mất một thí dụ, giả sử bản gốc (đơn giản) là màu xanh da trời màu xanh da trời ở ASCII (định dạng). Khi bạn chuyển đổi các ASCII này thành các giá trị nhị phân tương đương, nó sẽ cung cấp đầu ra ở dạng 0 và 1. Hãy để nó được dịch vào 010111001.

Để mã hóa và giải mã, một trình tạo bit giả được sử dụng trong đó một khóa và đồng bằng được tải. Trình tạo bit giả ngẫu nhiên tạo ra một luồng các số 8 bit dường như ngẫu nhiên được gọi là dòng chính. Đặt khóa đầu vào là 100101011. Bây giờ khóa và đơn giản là XORed. Logic XOR rất đơn giản để hiểu.
XOR tạo ra đầu ra là 1 khi một đầu vào bằng 0 và đầu vào khác là 1. Đầu ra là 0 nếu cả hai đầu vào đều 0 hoặc cả hai đầu vào đều 1.

Sự hoang mang là một phương thức đảm bảo rằng một mật mã không đưa ra manh mối nào về đồng bằng ban đầu.
Khuếch tán là một chiến lược được sử dụng để tăng cường sự dư thừa của đồng bằng bằng cách trải rộng nó trên các hàng và cột.

  1. Kỹ thuật mã hóa khối liên quan đến mã hóa một khối tại một thời điểm, tức là đơn lẻ. Tương tự, giải mã bằng cách lấy hết khối này đến khối khác. Ngược lại, kỹ thuật mã hóa Stream liên quan đến mã hóa và giải mã một byte của một lần.
  2. Mật mã khối sử dụng cả nhầm lẫn và khuếch tán trong khi mật mã luồng chỉ dựa vào nhầm lẫn.
  3. Kích thước thông thường của khối có thể là 64 hoặc 128 bit trong mật mã khối. Ngược lại, 1 byte (8 bit) tại một thời điểm được chuyển đổi trong mật mã luồng.
  4. Sử dụng mật mã khối ECB (Sách mã điện tử)CBC (Chuỗi khối mã hóa) chế độ thuật toán. Ngược lại, sử dụng mật mã Stream CFB (Phản hồi mật mã)OFB (Phản hồi đầu ra) chế độ thuật toán.
  5. Mật mã luồng sử dụng chức năng XOR để chuyển đổi đồng bằng thành mật mã, đó là lý do tại sao nó dễ dàng đảo ngược các bit XORed. Trong khi đó, mật mã khối không sử dụng XOR để làm như vậy.
  6. Mật mã khối sử dụng cùng một khóa để mã hóa từng khối trong khi mật mã luồng sử dụng một khóa khác nhau cho mỗi byte.

Phần kết luận:

Mã hóa khối và mật mã dòng khác nhau theo cách mà đồng bằng được mã hóa và giải mã. Ý tưởng đằng sau mật mã khối là chia đồng bằng thành các khối mã hóa thêm các khối đó. Trong khi mật mã luồng chuyển đổi từng bit đơn giản tương tự như luồng.