Сохраняет ли кодировка base64 алфавитный порядок? - PullRequest
0 голосов
/ 14 ноября 2018

Допустим, у меня есть список из 100 слов, отсортированный в алфавитном порядке.Если я закодирую эти слова с помощью base64, а затем снова упорядочу полученный список, будет ли порядок, если элементы будут одинаковыми?

Если нет, есть ли другой алгоритм кодирования, который обеспечит мне такое поведение?

1 Ответ

0 голосов
/ 05 марта 2019

Нет, base64 не сохраняет порядок сортировки некодированных строк.

Это объясняется в RFC 4648, , который также определяет кодировку base32hex , которая, в частности, гарантирует, что он поддерживает порядок сортировки.

Если вы хотите придерживаться официального стандарта, base32hex - лучший вариант, который мне известен.

Если важна эффективность вашего кодирования в пространстве, то переход с base64 на base32 будет немного обломом. Если это так, вы всегда можете создать свою собственную кодировку (это не так уж сложно) или использовать чужую (пример JavaScript: https://github.com/dominictarr/d64).

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