Encoding is not encryption · Кодирование — это не шифрование
A common mix-up
- People often say "encoded" when they mean "encrypted". They are not the same.
- Encoding changes the format of data so it can be stored or sent — it is not secret.
- Encryption changes data so that only someone with the key can read it — it is secret.
Частая ошибка
- Люди часто говорят «кодирование» вместо «шифрование». Это не одно и то же.
- Кодирование меняет формат данных для их хранения или передачи — оно не является секретным.
- Шифрование изменяет данные так, что прочитать их может только тот, кто обладает ключом — оно секретное.
Base64 — a famous encoding
- Base64 rewrites bytes using 64 safe characters. It is used to put images or files inside text (like email).
- Anyone can decode it — no key needed. So base64 hides nothing.
Base64 — известное кодирование
- Base64 переписывает байты с использованием 64 безопасных символов. Оно используется для помещения изображений или файлов внутрь текста (например, в электронной почте).
import base64
secret = base64.b64encode(b"hello").decode()
print(secret) # aGVsbG8=
print(base64.b64decode(secret).decode()) # back to hello
- Anyone может его декодировать — ключ не нужен. Поэтому base64 ничего не скрывает.
Why this matters for security
- If a website "protects" your password with base64, it is not protected at all.
- Real protection needs encryption (with a key) or hashing (one-way). Encoding is just a costume.
Почему это важно для безопасности
- Если сайт «защищает» ваш пароль с помощью base64, он вообще не защищен.
- Настоящая защита требует шифрования (с ключом) или хэширования (в одну сторону). Кодирование — просто маска.
Try it
- Encode
helloto base64 below. Then imagine decoding it — and remember it is not a secret.
Covers: foundation for IGCSE 2.3 / A-Level 17.1 (encryption).
Попробуйте
- Закодируйте
helloв base64 ниже. Затем представьте процесс декодирования — и помните, что это не секрет.
Охватывает: основа для IGCSE 2.3 / A-Level 17.1 (шифрование).
Common mistakes
- Base64 is encoding — anyone can reverse it, so it gives no security.
- Encoding changes the format; encryption protects the content.
Распространенные ошибки
- Base64 — это кодирование; любой может его расшифровать, поэтому оно не обеспечивает безопасности.
- Кодирование меняет формат; шифрование защищает содержимое.
Use base64 to encode the word hello. Encode its bytes and print the result as text. (Notice: anyone can decode it — encoding is not secret.) · Используйте base64 для кодирования слова hello. Закодируйте его байты и преобразуйте print результат в текст. (Заметьте: любой может декодировать его — кодирование не является секретным.)
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
An app 'protected' a message as base64 — prove that protects nothing. Decode captured with base64.b64decode and print the text. No key needed. · Приложение «защищало» сообщение в base64 — докажите, что это ничего не значит. Декодируйте captured с помощью base64.b64decode и выведите текст. Ключ не требуется.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.