Вместо текста иероглифы, квадратики и крякозабры (в браузере, Word, тексте, окне Windows)
Вопрос пользователя
Здравствуйте.
Подскажите пожалуйста, почему у меня некоторые странички в браузере отображают вместо текста иероглифы, квадратики и не пойми что (ничего нельзя прочесть). Раньше такого не было.
Заранее спасибо.
Доброго времени суток!
Действительно, иногда при открытии какой-нибудь интернет-странички вместо текста показываются различные «крякозабры» (как я их называю), и прочитать это нереально.
Происходит это из-за того, что текст на страничке написан в одной кодировке (более подробно об этом можете узнать из Википедии ), а браузер пытается открыть его в другой. Из-за такого рассогласования, вместо текста — непонятный набор символов.
Попробуем исправить это.
Исправляем иероглифы на текст
Браузер
Вообще, раньше Internet Explorer часто выдавал подобные крякозабры, 👉 современные же браузеры (Chrome, Яндекс-браузер, Opera, Firefox) — довольно неплохо определяют кодировку, и ошибаются очень редко. 👌
Скажу даже больше, в некоторых версиях браузера уже убрали выбор кодировки, и для «ручной» настройки этого параметра нужно скачивать дополнения, или лезть в дебри настроек за 10-ток галочек.
Итак, предположим браузер неправильно определили кодировку и вы увидели следующее (как на скрине ниже 👇).

Вместо текста одни лишь крякозабры // Браузер выставил кодировку неверно!
📌 Кстати!
Чаще всего путаница бывает между кодировками UTF (Юникод) и Windows-1251 (большинство русскоязычных сайтов выполнены в этих кодировках).
Поэтому, я рекомендую в ручном режиме попробовать их обе. Для этого нам понадобиться браузер MX5 (ссылка на офиц. сайт). Он один из немногих позволяет в ручном режиме выбирать кодировку (при необходимости):
- необходимо открыть нужный сайт;
- далее зайти в меню «Инструменты / кодировка» ;
- выбрать вручную UTF 8 или «Авто-определение» ;
- перезагрузить страницу. И, ву-а-ля, — иероглифы на страничке сразу же стали обычным текстом (скрин ниже 👇) !
📌 В помощь!
Если у вас иероглифы в браузере Chrome — ознакомьтесь с этим

Браузер MX5 — выбор кодировки UTF8 или авто-определение

Теперь отображается русский текст норм.
📌 Еще один совет : если вы в своем браузере не можете найти, как сменить кодировку (а дать инструкцию для каждого браузера — вообще нереально!), я рекомендую попробовать открыть страничку в другом браузере (например, в MX5). Очень часто другая программа открывает страницу так, как нужно!
Текстовые документы
Очень много вопросов по крякозабрам задаются при открытии каких-нибудь текстовых документов. Особенно старых, например, при чтении Readme в какой-нибудь программе прошлого века (скажем, к играм) .
Разумеется, что многие современные блокноты просто не могут прочитать DOS‘овскую кодировку, которая использовалась ранее. Чтобы решить сию проблему, рекомендую использовать редактор Bread 3.
Bred 3
Сайт: http://www.astonshell.ru/freeware/bred3/
Простой и удобный текстовый блокнот. Незаменимая вещь, когда нужно работать со старыми текстовыми файлами.
Bred 3 за один клик мышкой позволяет менять кодировку и делать не читаемый текст читаемым! Поддерживает кроме текстовых файлов довольно большое разнообразие документов. В общем, рекомендую! ✌
Попробуйте открыть в Bred 3 свой тексто вый документ (с которым наблюдаются проблемы) . Пример показан у меня на скрине ниже. 👇
Иероглифы при открытии текстового документа
Далее в Bred 3 есть кнопка для смены кодировки: просто попробуйте поменять ANSI на OEM — и старый текстовый файл станет читаемым за 1 сек.!
Исправление иероглифов на текст
👉 Для работы с текстовыми файлами различных кодировок также подойдет еще один блокнот — Notepad++. Вообще, конечно, он больше подходит для программирования, т.к. поддерживает различные подсветки, для более удобного чтения кода.
Notepad++
Сайт: https://notepad-plus-plus.org/
Надежный, удобный, поддерживающий громадное число форматов файлов блокнот. Позволяет легко и быстро переключать различные кодировки.
Пример смены кодировки показан ниже: чтобы прочитать текст, достаточно в примере ниже, достаточно было сменить кодировку ANSI на UTF-8.
Смена кодировки в блокноте Notepad++
Штирлиц
Сайт разработчика: http://www.shtirlitz.ru/
Эта программа специализируется на «расшифровке» текстов, написанных в разных кодировках: Win-1251, KOI-8r, DOS, ISO-8859-5, MAC и др.
Причем, программа нормально работает даже с текстами со смешанной кодировкой (что не могут др. аналоги). Пример см. на скрине ниже. 👇

Пример работы ПО «Штирлиц»
BAT-файлы (скрипты)
Для начала простой пример о чем идет речь. 👇
На скрине видно, что вместо русского текста отображаются различные квадратики, буквы «г» перевернутые, и пр. иероглифы.

Как выглядит русский текст при выполнении BAT-файла
📌 Чтобы это исправить — можно прибегнуть к следующему:
- в начало BAT-файла добавить код @chcp 1251 ;
- установить программу Notepad++ и в меню выбрать OEM-866: «Кодировки/Кодировки/Кириллица/OEM-866» ;
- установить программу Akelpad, в разделе «Кодировки» выбрать «Сохранить в DOS-866» .
Документы MS WORD
Очень часто проблема с крякозабрами в Word связана с тем, что путают два формата Doc и Docx . Дело в том, что с 2007 года в Word (если не ошибаюсь) появился формат Docx (позволяет более сильнее сжимать документ, чем Doc, да и надежнее защищает его).
Так вот, если у вас старый Word, который не поддерживает этот формат — то вы, при открытии документа в Docx, увидите иероглифы и ничего более.
- скачать на сайте Microsoft спец. дополнение, которое позволяет открывать в старом Word новые документы (с 2020г. дополнение с офиц. сайта удалено) . Только из личного опыта могу сказать, что открываются далеко не все документы, к тому же сильно страдает разметка документа (что в некоторых случаях очень критично) ;
- использовать 👉 аналоги Word (правда, тоже разметка в документе будет страдать);
- обновить Word до современной версии (2019+);
- если речь идет о документы TXT — открыть его в Notepad++.
Так же при открытии любого документа в Word (в кодировке которого он «сомневается»), он на выбор предлагает вам самостоятельно указать оную. Пример показан на рисунке ниже, попробуйте выбрать:
- Widows (по умолчанию);
- MS DOS;
- Другая.
Переключение кодировки в Word при открытии документа
Окна в различных приложениях Windows
Бывает такое, что какое-нибудь окно или меню в программе показывается с иероглифами (разумеется, прочитать что-то или разобрать — нереально).
📌 Могу дать несколько рекомендаций:
- Русификатор. Довольно часто официальной поддержки русского языка в программе нет, но многие умельцы делают русификаторы. Скорее всего, на вашей системе — данный русификатор работать отказался. Поэтому, совет простой: попробовать поставить другой;
- Переключение языка. Многие программы можно использовать и без русского, переключив в настройках язык на английский. Ну в самом деле: зачем вам в какой-то утилите, вместо кнопки «Start» перевод «начать» ?
- Если у вас раньше текст отображался нормально, а сейчас нет — попробуйте 👉 восстановить Windows, если, конечно, у вас есть точки восстановления;
- Проверить настройки языков и региональных стандартов в Windows, часто причина кроется именно в них (👇).
Языки и региональные стандарты в Windows
Чтобы открыть меню настроек:
- нажмите Win+R ;
- введите intl.cpl , нажмите Enter.
intl.cpl — язык и регион. стандарты
Проверьте чтобы во вкладке «Форматы» стояло «Русский (Россия) / Использовать язык интерфейса Windows (рекомендуется)» (пример на скрине ниже 👇).
Формат — русский / Россия
Во вкладке «Местоположение» — укажите «Россия» .
И во вкладке «Дополнительно» установите язык системы «Русский (Россия)» .
После этого сохраните настройки и перезагрузите ПК. Затем вновь проверьте, нормально ли отображается интерфейс нужной программы.
Текущий язык программ
PS
И напоследок, наверное, для многих это очевидно, и все же некоторые открывают определенные файлы в программах, которые не предназначены для этого: к примеру в обычном блокноте пытаются прочитать файл DOCX или PDF.
Естественно, в этом случае вы вместо текста будут наблюдать за крякозабрами, используйте те программы, которые предназначены для данного типа файла (WORD 2016+ и Adobe Reader для примера выше).
Почему строка в кодировке base64 имеет знак = в конце
я знаю что base64 кодировка есть и как рассчитать base64 кодирования в C #, однако я несколько раз видел, что когда я конвертирую строку в base64, появляется = в конце.
Возникло несколько вопросов:
- Имеет ли base64 строка всегда заканчивается на = ?
- Почему = добавляются в конце?

Это не имеет абсолютно никакого отношения к C #. — BoltClock♦
На самом деле это связано с C #, не все языки будут включать =, например, многие библиотеки Perl опускают =, поэтому знание среды, которую использует пользователь, действительно важно. — Jay
Похоже, что в некоторых случаях это делает его менее эффективным методом обфускации, поскольку его вполне можно обнаружить. — dgo
@ user1167442 Base64 не предназначен для обфускации. Он предназначен для передачи двоичных данных (или строк с Unicode и другими специальными символами) в виде строки. — NH.
9 ответы
Более полный ответ заключается в том, что строка в кодировке base64 не всегда закончить = , он закончится только одним или двумя = если от них требуется набить струну до нужной длины.
ответ дан 02 авг.

«Один из случаев, когда требуются символы заполнения, — это объединение нескольких файлов в кодировке Base64». — Андре Пуэль
@ AndréPuel: повторно синхронизируйте один сингл = хватит. Если вы хотите найти границы, всегда должен присутствовать терминатор (и все же нужен только один символ). Вся концепция заполнения Base64 — это просто мозговой трюк . — 6502
Однако эта ссылка совершенно не имеет отношения к base64. — НХ.
Я просто хочу, чтобы была опубликована релевантная и надежная ссылка, которая объясняет о заполнении в base64 эффективно с иллюстрациями и примерами. Настоящая ссылка на википедию абсолютно неактуальна, как @NH. упомянул. — Fr0zenFyr
@ Fr0zenFyr Если вам нужна ссылка, en.wikipedia.org/wiki/Base64#Output_padding довольно хорошо. Но ответ Бадра действительно лучший (просто еще не набрал голосов). — НХ.
В Всегда ли строка base64 заканчивается на =?
В Почему в конце добавляется знак =?
О: В качестве краткого ответа: 65-й символ (знак «=») используется только в качестве дополнения (заполнения) в финальном процессе кодирования сообщения.
У вас не будет знака ‘=’, если ваша строка содержит число, кратное 3 символам, потому что Base64 кодирование занимает каждый три байтов (3 * 8 бит) и представляет их как 4 печатные символы в стандарте ASCII.
Пример:
(A) Если вы хотите закодировать
АБВГДЕЖ <=> [ ABC ] [ DEF ] [ G
Base64 будет работать с первым блоком (производящим 4 символа) и вторым (по мере их завершения). Но к третьему добавит двойную == в выводе, чтобы заполнить 4 необходимых символа. Таким образом, результат будет КУЖД REVG Rw == (без пробелов).
(B) Если вы хотите закодировать
ABCDEFGH <=> [ ABC ] [ DEF ] [ GH
точно так же он добавит только один = в конце вывода получить 4 символа.
Результат будет КУЖД REVG R0g = (без пробелов).
ИБ512 Модуль 3 Практикум Раздел 3.1 v.11. Автономная некоммерческая организация дополнительного профессионального образования Академия АйТи
Единственный в мире Музей Смайликов
Самая яркая достопримечательность Крыма
Скачать 0.53 Mb.
П Р А К Т И К У М
по программе
Информационная безопасность — 512
Модуль 3
Защита информации с использованием шифровальных (криптографических) средств
Криптографические методы защиты информации
Версия 10 от 17.05.2022
Тема 3.1.2. Криптографические методы защиты информации. (4 ак.ч.) 3
Упражнение № 3.1.2.1. Изучение базовых криптографических операций 3
Задача 3.1.2.1.1. Установка необходимых программ 3
Задача 3.1.2.1.2. Кодирование Base64 3
Задача 3.1.2.1.3. Похищение закрытого ключа шифрования с помощью кодирования Base64 4
Задача 3.1.2.1.4. Кодирование Hex (шестнадцатиричное) 6
Задача 3.1.2.1.5. Изучение операции XOR 7
Задача 3.1.2.1.6. Изучение шифра гаммирования на операции XOR 8
Упражнение № 3.1.2.2. Изучение основных криптографических алгоритмов 10
Задача 3.1.2.2.1. Изучение алгоритмов симметричного шифрования 10
Задача 3.1.2.2.2. Изучение алгоритма асимметричного шифрования RSA 11
Задача 3.1.2.2.3. Изучение алгоритмов хэширования 12
Задача 3.1.2.2.4. Изучение порядка простановки и проверки электронной подписи 12
С помощью технологии виртуальных машин для выполнения лабораторных работ разработана виртуальная машина CCServer. На ней будут проводиться все лабораторные работы.
Для работы используется учётная запись
Pa$$w0rd
В виртуальной машине все необходимые для работы файлы находятся на компакт-диске D:\ и флоппи-дискете A:\.
Тема 3.1.2. Криптографические методы защиты информации. (4 ак.ч.)
![]() |
Упражнения выполняется на удалённой виртуальной машине |
Упражнение № 3.1.2.1.
Изучение базовых криптографических операций
Описание упражнения
Данное упражнение предназначено для практического изучения способов кодирования и операции XOR.
![]() |
Время выполнения упражнения 90 минут |
Задача 3.1.2.1.1. Установка необходимых программ
- Присоединитесь к лабораторной машине (см. Введение) и войдите в систему от имени локальной учётной записи Administrator.
- Откройте программу Проводник.
- Скопируйте папку D:\Temp в диск C:\.
- Запустите программу установки приложения CryptoDemo: D:\Install\CryptoDemo\Setup.exe. Согласитесь со всеми параметрами программы установки по умолчанию.
Задача 3.1.2.1.2. Кодирование Base64
- Запустите программу cryptography_study, которая располагается по пути C:\Temp\cryptography_study\cryptography_study.exe. Выберете тип кодирования «Преобразование в Base64» как на рисунке.
- Данные для кодирования можно ввести в поле ввода «Источник» или загрузить из файла, нажав на кнопку
. Введите или загрузите из файла такое сообщение, чтобы сначала были латинские символы, а затем – кириллица, например «Hello world. Привет мир. ». Результат кодирования формируется в нижней части окна «Результат». - Переключите кодировку источника «Текст ASCII»/«Текст UTF-8». Убедитесь, что меняется размер и состав результата.
- Если в результате кодирования в конце есть символ(ы) «=», то дабавляйте к источнику латинские символы или цифры, пока символ(ы) не исчезнут.
- Продолжайте добавлять латинские символы или цыфры к исходному сообщению по одному. Убедитесь, что символы «=» появляются в результате на каждый добавленный первый и второй символ источника, и на третьий – исчезают.
/> Почему появляются символы «=» в результате?_______________________ __________________________________________________________________
Почему на каждый третий символ источника, символы «=» изчезают? _________________________________________________________________ - Убедитесь, что кодировка источника указана «Текст ASCII», и в источнике присутствуют кириллические символы.
- Скопируйте результат в буфер обмена. Для этого выделете результат целиком и нажмите правой кнопкой манипулятора типа «мышь» на выделеном. В появившемся контекстном меню выберете «Copy Ctrl+C». Удалите данные в поле источника и вставте либо через такое же контекстное меню, любо нажав комбинацию Ctrl+V.
- Переключите тип кодирования на «Преобразовать из Base64». Убедитесь, что в результате окажется исходное сообщение (как минимум латиница). При этом кириллические символы будут меняться в зависимости от выбора «Результат как ASCII»/«Результат как UTF-8».
- Введите в качестве источника исходное сообщение «Hello world. Привет мир. », выберете тип кодирования «Преобразовать в Base64» и выберети кодировку источника «Текст UTF-8». Далее выполните п. 7 и п. 8.
/> Меняет ли кодированиеBase64 исходную кодировку текста?__________ Почему?__________________________________________________________ __________________________________________________________________ Задача 3.1.2.1.3. Похищение закрытого ключа шифрования с помощью кодирования Base64
- Создайте текстовый файл на рабочем столе, добавьте в него любой текст и включите шифрование EFS для него. Для этого щёлкните правой кнопкой манипулятора типа «мышь» по файлу. Выберете пункт меню «Свойства». В открывшемся окне свойст во вкладке «Общие» выберете атрибуты «Другие…». В появившемся окне «Дополнительные атрибуты» установите «Шифровать содержимое для защиты данных» и в появившемся окне «Предупреждение при шифровании» выберете «Зашифровать только файл». Далее, нажимая на кнопки «ОК» нужно закрыть все онка.
- Для шифрования автоматически будет создан закрытый ключ шифрования и сертификат для учётной записи Администратор. Его нужно сохранить в файл. Для этого нажмите кнопку «Пуск» и выберете пункт меню «Выполнить». В открывшемся окне введите certmgr.msc и нажмите кнопку «ОК». Откроется оснастка управления сертификатами. Раскройте дерево в левой части окна «Сертификаты – текущий пользователь»\«Личное»\«Сертификаты».
- Справа в менеджере сертификатов должен отобразиться сертификат «Администратор». Для его сохранения в файл с закрытым ключём нужно нажать по сертификату правой кнопкой манипулятора типа «мышь». В появившемся окне выбрать пункт «Все задачи»\«Экспорт…». В открывшемся окне мастера экспорта сертификатов нажать «Далее >», и в следующем окне обязательно выбрать «Да, экспортировать закрытый ключ» и нажать кнопку «Далее >». В следующем окне ничего не выбирать и нажать кнопку «Далее». Откроется окно ввода нового пароля для сохраняемого ключа. Введите любой пароль, например «1» и нажмите «Далее >». В открывшемся окне с помощью кнопки «Обзор…» выберете имя нового файла и его раположение, например «C:\Temp\» и имя «my» и нажмите кнопку «Далее >». В последнем окне мастера нажмите кнопку «Готово». В указанном расположении появится файл с закрытым ключём. Для примера это будет файл «my.pfx» в директории C:\Temp\.
- Запустите программу cryptography_study, которая располагается по пути C:\Temp\cryptography_study\cryptography_study.exe. Она стартует в режиме кадирования «Преобразование в Base64». Выберете загрузку данных из файла «Загрузить как «сырые данные»… » и укажите сохранённый на предыдущем шаге файл.
- Кодирование будет выполнено автоматически. Полученные данные нужно сохранить в файл, нажав на кнопку
. Выберете имя файла C:\Temp\my.txt.
- Закройте программу cryptography_study. Проанализируйте полученный тектовый файл. Это и есть закрытый ключ, который можно распечатать на принтере и вынести за пределы предприятия без использования дисков, дискет и прочих технических средств.
Задача 3.1.2.1.4. Кодирование Hex (шестнадцатиричное)
- Запустите программу cryptography_study, которая располагается по пути C:\Temp\cryptography_study\cryptography_study.exe. Выберете тип кодирования «Преобразование в Hex» как на рисунке.
Задача 3.1.2.1.5. Изучение операции XOR

XOR — Сложение по модулю 2 («сумма по модулю 2», «не равно», исключающее «ИЛИ» (ИЛИ с исключением из правила четвёртой комбинации «1,1»), XOR,) — логическая операция (функция), по своему применению максимально приближённая к грамматической конструкции «либо … либо …» или «если операнды не равны, то истинно (1)». - Отредактируйте файл с симметричным ключём C:\Temp\cryptography_study\key.txt при необходимости.
- Запустите программу cryptography_study, которая располагается по пути C:\Temp\cryptography_study\cryptography_study.exe. Выберете тип кодирования «xOr шифрование»\«Ключ из файла» как на рисунке. При необходимости отредактируйте текст источника.
- Используя кнопку
загрузите ключ из файла C:\Temp\cryptography_study\key.txt. Шифрование будет выполнено автоматически. Результат не предназначен для текстового редактирования. Сохраните результат в файл C:\Temp\crypt.dat с помощью кнопки
. - Выполните обратное шифрование. Для этого загрузите файл C:\Temp\crypt.dat как источник «Загрузить как ASCII…», нажав на кнопку
(в разделе источник) и загрузите ключ из файла C:\Temp\cryptography_study\key.txt, используя кнопку
. Убедитесь, что расшифрование произошло корректно.
- Измените ключ в файле C:\Temp\cryptography_study\key.txt с «Это ключ шифрования» на «Эт кл ши ов ия» (часть символов заменяется пробелами, длина фразы не меняется!). Выполните расшифрование таким ключём. Проанализируйте результат.
__________________________________________________________________
Задача 3.1.2.1.6. Изучение шифра гаммирования на операции XOR

Гаммирование. - Запустите программу cryptography_study, которая располагается по пути C:\Temp\cryptography_study\cryptography_study.exe. Выберете тип кодирования «xOr шифрование»\«Гаммирование» как на рисунке. При необходимости отредактируйте текст источника.
- Укажите начальное значение генератора гаммы, например 3. Это начальное значение фактически явяется ключём. Полученный результат сохраните в файл C:\Temp\crypt.dat.
- Выполните обратное шифрование. Для этого загрузите файл C:\Temp\crypt.dat как источник «Загрузить как ASCII…», нажав на кнопку
(в разделе источник) и укажите то же самое начальное значение генератора гаммы. Убедитесь, что расшиврование производится корректно.
- Выберете другое начальное значение генератора гаммы и убедитесь, что расшифрование происходит некорректно.
- Закройте все открытые окна.

Сообщите преподавателю о завершении выполнения упражнения Упражнение № 3.1.2.2.
Изучение основных криптографических алгоритмовОписание упражнения
Данное упражнение предназначено для практического изучения алгоритмов симметричного и асимметричного шифрования и хэширования.
Почему строка в кодировке base64 имеет знак = в конце
Я знаю base64 кодирование и как вычислить base64 кодировка в C#, однако я видел несколько раз, что когда я преобразую строку в base64, есть = в конце.
возникло несколько вопросов:
- тут base64 строка всегда заканчивается = ?
- почему = добавить в конце?
8 ответов
более полный ответ заключается в том, что строка в кодировке base64 не всегда заканчивается = , это закончится только одним или двумя = если они необходимы для заполнения строки до надлежащей длины.
2 — в качестве короткого ответа : 65-й символ (знак» postinfo clearfix»>
последняя последовательность «= = «указывает, что последняя группа содержала только один байт, а» postinfo clearfix»>
- нет.
- для заполнения строки, закодированной в Base64, несколькими символами длиной 4, чтобы ее можно было правильно декодировать.
его определена в RFC 2045 как специальный символ заполнения, если в конце закодированных данных доступно менее 24 бит.
знак равенства ( = ) используется в качестве дополнения в некоторых формах кодировки base64. The статья в Википедии на base64 есть все детали.
предыдущая записьПочему появляется черный экран на компьютере во время работы

