| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как узнать что строка base64 |
| Автор: XperT 13.2.2010, 00:13 |
| На входе есть строка, но она может быть как обычная, так и зашифрована методом base64, но не указано зашифрована она или нет. Есть ли какие то способы узнать это программно? (сначала думал проверять наличие пробелов, но их может и не быть в обычной строке, если она состоит из одного слова) Пока что у меня есть только 3 признака: - нету пробелов - количество символов кратно 4 - 0-3 знака "=" в конце закодированного текста (тут плохо, что может быть 0) |
| Автор: Matematik 13.2.2010, 11:00 | ||
| Почти правильно. Чтобы расшифровать строка должна быть - длина кратна 4 - состоит только из символов «ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/» - может оканчиваться на "=" Еще, например в почтовых сообщениях, base64 может нарезаеться на строки одной длинны, типа
|
| Автор: bems 14.2.2010, 01:47 |
| Ну еще расшифруй и проверь получился ли текст (в ожидеаемой кодировке) Добавлено через 45 секунд Ну или если там приходят бинарные данные, то проверь их осмысленность |