Рассчитать фактический размер данных из длины строки в кодировке Base64 - PullRequest
11 голосов
/ 25 июля 2011

Учитывая данные, закодированные как строку в кодировке Base64, могу ли я каким-то образом рассчитать фактическую длину необработанных данных, которые были закодированы только , посмотрев на длину строки в кодировке Base64?

Я не хочу проходить строку, если в этом нет необходимости (это также включает строковые операции над последними символами закодированной строки для проверки заполнения).

1 Ответ

12 голосов
/ 25 июля 2011

Длина точная не может быть рассчитана, если вы не посмотрите на отступы. Без поиска отступов лучшее, что вы можете сделать, - это рассчитать верхнюю границу длины, умножив длину кодированной строки на 3/4 (кодированная длина гарантированно будет делиться точно на 4).

Рассчитанная таким образом верхняя граница будет N, N+1 или N+2, где N - длина необработанных данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...