самый короткий полезный алгоритм хеширования будет md5. генерирует 16 байтов = 128-битный хэш. если вы используете кодирование base 64 ... это 6 полезных бит на байт / символ.
Вы должны быть в состоянии уменьшить md5 до 22 символов (ascii). у вас есть шестнадцатеричная версия, где 2 байта представляют один фактический байт
(оставляя задний отступ, введенный b64)
с дополнительным преимуществом использования того же самого для допустимых имен файлов. (Конечно, вам придется заменить символы по умолчанию / и + любым другим символом, который не вступает в противоречие с соглашением об именах файлов вашей ОС.
base64 (путем замены / и +) гарантирует, что ваш хеш не испортит URL со специальными символами, которые могут означать что-то еще для вашего веб-сервера
ASCII85 добавляет символы, с которыми трудно иметь дело при использовании в качестве имен файлов и URL
md5 («Эта строка будет хэширована»)
'37aa3296c523f6c5a7fd2102a9155dcc' (шестнадцатеричный) (32 байта)
raw md5 («Эта строка будет хеширована»)
[55, 170, 50, 150, 197, 35, 246, 197, 167, 253, 33, 2, 169, 21, 93, 204] = (16 байт)
base64 необработанной строки md5
N6oylsUj9sWn_SECqRVdzA ==
Мой последний хэш
N6oylsUj9sWn_SECqRVdzA на самом деле это полный md5 из 22 символов ascii
([вы можете убрать два завершающих = всегда будет два для md5, добавьте их позже при декодировании. Также замените символы + и / в b64 на любые другие, которые я предпочитаю - (тире) и _ (подчеркивание)] *