Mã hóa là gì? Người ta đã mã hóa văn bản như thế nào?

Chúng ta đã thấy thuật ngữ “mã hóa” được sử dụng trên internet. Đó có thể là công nghệ quan trọng nhất mà chúng ta có. Hầu hết các biện pháp bảo mật kỹ thuật số, mọi thứ từ duyệt web đến email an toàn đều phụ thuộc vào nó. Nếu không có mã hóa,

Chúng ta đã thấy thuật ngữ “mã hóa” được sử dụng trên internet. Đó có thể là công nghệ quan trọng nhất mà chúng ta có. Hầu hết các biện pháp bảo mật kỹ thuật số, mọi thứ từ duyệt web đến email an toàn đều phụ thuộc vào nó. Nếu không có mã hóa, chúng ta sẽ không có quyền riêng tư cũng như bảo mật thông tin.

Bài viết gốc từ: https://itrum.org/threads/ma-hoa-la-gi-va-cach-thuc-hoat-dong-cua-ma-hoa.1974/

Mã hóa là gì?

Nếu chúng ta viết một cái gì đó quan trọng, riêng tư hoặc nhạy cảm, bạn có thể lo lắng rằng người khác sẽ đọc nó. Nếu bạn cần phải đưa nó cho một người đưa tin để đưa cho một người khác, nguy cơ những người đọc nhầm tin nhắn đó sẽ tăng lên. Mã hóa thay đổi thành phần của tin nhắn hoặc dữ liệu để chỉ những người biết cách đưa nó về dạng ban đầu mới có thể đọc được. Đối với người lạ, nó sẽ xuất hiện dưới dạng một bộ sưu tập các ký tự và biểu tượng vô nghĩa.


Một số loại mã hóa cổ xưa

Gậy mật mã (Scytale)

Kể từ những ngày đầu tiên, con người đã sử dụng nhiều công nghệ khác nhau để ngăn không cho người khác đọc tin nhắn riêng tư. Gậy mật mã là một dạng mật mã học bắt nguồn từ Hy Lạp, nó gồm một băng giấy bằng da được quấn theo hình xoắn ốc xung quanh một cây gậy có hình trụ (được gọi là scytale). Thông điệp được viết lên băng giấy theo hàng dọc, khi mở băng giấy ra, nó sẽ vô nghĩa.

Người đưa tin sẽ chuyển gói giấy da với chữ viết đến tay người nhận, người nhận sẽ quấn nó quanh scytale của mình và đọc lời nhắn. Đây là một dạng mật mã chuyển vị.

Đó là một kỹ thuật sơ khai, nhưng nó lại có các yếu tố trong các hệ thống mã hóa hiện đại. Cả người gửi và người nhận đều phải biết trước cách mã hóa và cách giải mã.

Hình vuông Polybius

Một phương pháp khác được người Hy Lạp cổ đại sử dụng là hình vuông Polybius. Đây là một lưới gồm năm hoặc năm hoặc sáu x sáu các chữ cái,… Một chữ cái được tham chiếu bởi tọa độ của nó. Chữ cái đầu tiên trong hàng đầu tiên được mã là “11”, chữ cái thứ tư trên hàng thứ hai sẽ được viết là “42”,…

Ví dụ minh họa:

  • Câu mẫu: Kill the king tomorrow
  • Mật mã: 25243131 442315 25243322 4434323442423452

Tất nhiên, có nhiều cách để điền vào lưới bằng các chữ cái. Việc giải mã là rất khó, trừ khi người giải đã biết bố cục của các chữ cái. Điều này cho phép bạn thiết lập một lược đồ có nhiều ô vuông với các bố cục khác nhau. Ví dụ, bạn có thể tạo bảy hình vuông và sử dụng một hình vuông khác nhau cho mỗi ngày trong tuần. Các lược đồ sử dụng nhiều bảng chữ cái được gọi là mật mã đa pha. Hình vuông Polybius là một dạng mã thay thế các ký tự khác cho các chữ cái, trong ví dụ này là các chữ số.

Mật mã Ceasar

Julius Caesar đã tạo ra mật mã này và lấy tên của mình đặt cho nó. Mật mã Caesar sử dụng quy tắc “xoay vòng”. Ví dụ chúng ta cho độ dịch chuyển là hai, “A” sẽ được viết là “C” và “D” sẽ được viết là “F”. Người nhận phải biết độ dịch chuyển chính xác để sử dụng để giải mã thông điệp bằng cách trừ đi độ lệch từ các chữ cái mà họ đã nhận được.

Ví dụ minh họa:

  • Câu mẫu: Kill the king tomorrow
  • Mật mã: Mknn vjg mkpi vqoqttqy

Mật mã Caesar có độ dịch chuyển là 13 – được gọi là “vòng quay 13” hoặc ROT13. Có 26 chữ cái trong bảng chữ cái tiếng Anh tiêu chuẩn, và 13 chữ cái chia thành 26 chính xác hai lần. Để giải mã điều gì đó, bạn có thể đưa nó qua quy trình giải mã một lần nữa. Kết thúc hai lần sẽ đưa bạn trở lại văn bản gốc.

  • Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ
  • ROT13: NOPQRSTUVWXYZABCDEFGHIJKLM

Nếu chúng ta chọn các chữ cái “GEEK” trong bảng chữ cái trên cùng và ghi chú các chữ cái phù hợp trong bảng chữ cái dưới thì sẽ nhận được “TRRX”. Nếu làm điều đó một lần nữa với “TRRX” trong bảng chữ cái trên cùng, chúng ta sẽ nhận được các chữ cái “GEEK” từ bảng chữ cái dưới cùng.

Bài viết gốc từ: https://itrum.org/threads/ma-hoa-la-gi-va-cach-thuc-hoat-dong-cua-ma-hoa.1974/

Cảm ơn các bạn đã xem.

Nguồn: viblo.asia

Bài viết liên quan

Thay đổi Package Name của Android Studio dể dàng với plugin APR

Nếu bạn đang gặp khó khăn hoặc bế tắc trong việc thay đổi package name trong And

Lỗi không Update Meta_Value Khi thay thế hình ảnh cũ bằng hình ảnh mới trong WordPress

Mã dưới đây hoạt động tốt có 1 lỗi không update được postmeta ” meta_key=

Bài 1 – React Native DevOps các khái niệm và các cài đặt căn bản

Hướng dẫn setup jenkins agent để bắt đầu build mobile bằng jenkins cho devloper an t

Chuyển đổi từ monolith sang microservices qua ví dụ

1. Why microservices? Microservices là kiến trúc hệ thống phần mềm hướng dịch vụ,