Kiến thức nền

Encoding, encryption và hashing khác nhau thế nào?

Ba khái niệm thường bị gọi chung là “mã hóa”, nhưng giải quyết ba bài toán khác nhau. Encoding đổi cách biểu diễn, encryption bảo vệ tính bí mật bằng khóa, còn hashing tạo dấu vân tay một chiều.

Trả lời nhanh

Điểm cần nhớ

  • Encoding đảo ngược bằng quy tắc định dạng công khai và không tạo ranh giới bảo mật.
  • Encryption dùng khóa để người không được phép không thể lấy lại plaintext.
  • Hashing mật mã được thiết kế một chiều, không decode về input ban đầu.
01

Ba kỹ thuật, ba mục đích khác nhau

Encoding giúp dữ liệu tương thích với một cách biểu diễn hoặc kênh truyền. Ai biết định dạng đều có thể decode. UTF-8, Base64 và cách hiển thị Binary của app là ví dụ.

Encryption bảo vệ tính bí mật. Hệ thống hiện đại dùng khóa; việc lấy plaintext khi không có khóa được cấp phép phải bất khả thi về mặt tính toán. Hash function lại ánh xạ input thành digest và được thiết kế để không có thao tác “decode” digest về nguồn.

  • Encoding: tương thích hoặc biểu diễn; không có khóa bí mật; đảo ngược theo định dạng.
  • Encryption: bảo mật nội dung; dùng khóa; bên được phép thực hiện decrypt.
  • Hashing: dấu vân tay hoặc thành phần kiểm tra toàn vẹn; không có thao tác đảo ngược thông thường.
02

Encode Keyboard phân loại 12 codec ra sao?

Base64, Base64URL, Base32 và Base16 theo RFC 4648; URL Percent theo profile canonical của RFC 3986; Morse bắt đầu từ ITU-R M.1677-1. Binary UTF-8 là profile app xây trên chuẩn UTF-8. Các nhãn này giúp phân biệt chuẩn công bố với profile triển khai.

ROT13 và Mã riêng là quy ước. Emoji, Kaomoji và Leetspeak là phép biến đổi biểu đạt, chiều ngược có thể chỉ mang tính diễn giải hoặc không hỗ trợ. Không nhóm nào tự động có nghĩa là encryption.

03

Cùng một tin nhắn qua các phép biến đổi

Với “Hello”, Base64 tạo SGVsbG8= và ROT13 tạo Uryyb. Cả hai đều đảo ngược ngay bằng quy tắc công khai. Binary phơi bày byte UTF-8 dưới dạng bit; Morse ánh xạ ký tự được hỗ trợ sang mẫu tín hiệu công khai.

Output encryption thật cũng trông lạ, nhưng hình thức lạ mắt không phải tiêu chí. Những yếu tố quan trọng là mục tiêu bảo mật xác định, thuật toán vững, quản lý khóa và triển khai đúng.

04

Chọn kỹ thuật theo mục tiêu thật

Dùng Encode Keyboard cho biểu đạt, học tập, thử nghiệm khả năng tương thích và biến đổi đảo ngược text không nhạy cảm. Nhãn chính xác/chuẩn hóa/diễn giải cho biết một vòng encode-decode giữ lại được gì.

Nếu mục tiêu là bảo vệ mật khẩu, thông tin tài chính, giấy tờ, recovery phrase hoặc tin nhắn bí mật, đừng đưa qua Base64, Binary, Morse, ROT13 hay Mã riêng rồi xem là đã an toàn. Hãy dùng sản phẩm và giao thức bảo mật đúng với rủi ro.

?

Câu hỏi thường gặp

Base64 có phải encryption không?

Không. Đây là encoding công khai, có thể đảo ngược và không dùng khóa bí mật.

ROT13 có an toàn không?

Không. Áp dụng ROT13 lần thứ hai khôi phục bản gốc và bất kỳ ai cũng làm được.

Hash có decode được không?

Hash mật mã được thiết kế không có thao tác đảo ngược. Kẻ tấn công vẫn có thể đoán input rồi so sánh, nên lưu mật khẩu cần cơ chế password hashing chuyên dụng có salt.

Mã riêng có phải encryption không?

Không. Đây là mapping cụm từ được chia sẻ cho biểu đạt và phối hợp, không phải hệ thống mật mã.

Nguồn chính thống

Bài viết ưu tiên tài liệu từ tổ chức sở hữu tiêu chuẩn hoặc nền tảng.

  1. NIST glossary: Encryption
  2. NIST glossary: Hash function
  3. RFC 4648: Base-N Encodings
  4. RFC 3986: URI Generic Syntax
  5. RFC 3629: UTF-8
  6. ITU-R M.1677-1: Mã Morse quốc tế

Encode Keyboard

Dùng ngay tại nơi bạn gõ

Encode Keyboard biến đổi văn bản trên thiết bị trong app hoặc bàn phím custom của iOS. Không cần bật Full Access.

Tải Encode Keyboard trên App Store