У меня есть система обмена сообщениями, которая использует REST, Websockets AND Files на диске для передачи сообщений с Java по обеим сторонам соединения.Отправленные сообщения затем используются в качестве маркеров безопасности для запроса различных индексов и баз данных, и здесь размер имеет решающее значение.Я рассмотрел такие вещи, как Base64.encodeBase64 () с байтом Long, но он чувствителен к регистру и также не сильно экономит пространство.Я рассмотрел преобразование в hex и toString (), но экономия невелика по сравнению.Я ожидал бы, что для чего-то подобного существует отраслевой стандарт, и я либо очень не везу, либо идиот и не замечаю чего-то очень очевидного, либо использую неправильный язык.Нет фактического требования декодировать строку до тех пор, пока токен используется как есть на другой стороне, он просто должен быть уникальным, повторяемым, надежным и небольшим.
Я должен иметь возможность отправлять токены какпростые строки
Я должен иметь возможность повторного кодирования Long в строку
Токены должны быть без учета регистра (a == A)
Токены должны быть сжаты каквозможно, важен размер
Значения Long не имеют начальных 0, отрицательных чисел и десятичных знаков