декодированная строка base64 дает странные символы - PullRequest
0 голосов
/ 02 февраля 2020

eyJpc3MiOiJodHRwczpcL1wvYXV0aC5zbmFwY2hhdC5jb21cL3NuYXBfdG9rZW5cL3Rva2VuIiwidHlwIjoiSldUIiwiZW5jIjoiQTEyOENCQy1IUzI1NiIsImFsZyI6ImRpciIsImtpZCI6InNuYXAtYWNjZXNzLXRva2VuLWExMjhjYmMtaHMyNTYuMCJ9..mpqjrn8IPdzqrQC0VhJwMA.JJN9Rrc1k_qh1Iq-JGS-1754-iI_L5mISH7mHix5WCIXx4wqkQz3z8o9nDcBRUJijioV_EMFYW9OayWGHaFR5NlG0ROKHfkJPPWSz4Y47jyZwQxKjEQDMCdPi9HcpNJM_ao6umAQj3gdfFqGK8M9e2_oYy-q6bR6UzeqFvQVLt599KLwl2yJhevgLRFBs7kLd5NG8ZsKGNhTwWs7zYPPZFutyhOmPY13zt1hJsSwek1UXRRZm8qZEEQZsmSbuSQ0sAMvyIh9uZyMCEwdMfo6pU31cnya29Pi_vHJP_TLHH0PNgddOPzpp911Yp4c1lfEY99C3dknQ5DJFtkfdaA3MAUrqKj8NAsIcrX8qPrxpVhDgZ2tqqrkgQb6EMoxEIdRGssIRdR5_jL-F8_8xfhNxIM3mv1NEPkSPIBfOsbSRbBGPecCUwmaB-yP9OmPEyUWv0ieQkGKp5B1J6cFykrMlpmmGkB7H9WIwuDNM4IPLBBBaLgGegIBdwrTU22Yv7Qn2RXKpDObPRuSghUmIvLpr_LwGZ78N4YW-G-nTw_EOjlD58UDHOuth_EcKszBeLs0_EIe9JZzykjulg3ffROHI-

1002 * Это знак. когда base64 декодируется, он дает некоторый корректный вывод, но затем он начинает печатать странные символы. Это действительно только B64 или их даже способ сказать. Я снял несколько символов по понятным причинам.

1 Ответ

0 голосов
/ 02 февраля 2020

Это не кодировка base 64, это код base 64 URL . Замените - на + и _ (символ подчеркивания) на символ /, затем дополните его символами =, пока у вас не будет кратно 4 базовым 64 символам (без учета пробелов). Затем декодируйте и результат должен быть правильным. В противном случае URL-код базы 64, вероятно, был поврежден.

Я предполагаю, что вы удалили символы и заменили их точкой, потому что точки не должны присутствовать в безопасной базе URL 64.


Конечно, поиск и использование декодера base64url будет более эффективным, чем упомянутая здесь схема c find / replace / append.

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