Добрый день, подскажите пожалуйста, как наиболее правильным образом реализовать следующее:
В наличии имеется таблица, в которой есть столбец с датами, которые, как правило идут по порядку (могут повторяться), например:
Необходимо на основе даты сгенерировать некую уникальную последовательность 7-9 символов, например "45АB9F11C", соответственно, для каждой конкретной даты будет своя последовательность. На данный момент я перевожу дату в число и в шестнадцатеричную систему вот так:
Проблема в том, что например дате 01.01.2020 соответствует 3E9F883, дате 02.01.2020 соответствует 3E9F884, то есть кодирование получается достаточно предсказуемым, если проанализировать несколько стоящих рядом дат.
Как можно добавить больше энтропии, чтобы, например 01.01.2020 соответствовало 3E9F883, а 02.01.2020 соответствовало например 6AF991D, далее 03.01.2020 соответствовало 3DD79FC например и так далее, но в тоже время имелась возможность декодировать код обратно в дату ?
Я пробовал переводить дату в число, возводить в степени, умножать между собой части дат и тому подобное, но чего-то отдаленно похожего на хеш-функцию не получается (нужно именно простейшее кодирование, реализация нормального хеша не требуется)
В наличии имеется таблица, в которой есть столбец с датами, которые, как правило идут по порядку (могут повторяться), например:
Скрытый текст | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Код |
---|
=ДЕС.В.ШЕСТН(СЦЕП(КОДСИМВ(ПСТР(ДЕС.В.ШЕСТН(ТДАТА());1;1));КОДСИМВ(ПСТР(ДЕС.В.ШЕСТН(ТДАТА());2;1));КОДСИМВ(ПСТР(ДЕС.В.ШЕСТН(ТДАТА());3;1));КОДСИМВ(ПСТР(ДЕС.В.ШЕСТН(ТДАТА());4;1)))) |
Как можно добавить больше энтропии, чтобы, например 01.01.2020 соответствовало 3E9F883, а 02.01.2020 соответствовало например 6AF991D, далее 03.01.2020 соответствовало 3DD79FC например и так далее, но в тоже время имелась возможность декодировать код обратно в дату ?
Я пробовал переводить дату в число, возводить в степени, умножать между собой части дат и тому подобное, но чего-то отдаленно похожего на хеш-функцию не получается (нужно именно простейшее кодирование, реализация нормального хеша не требуется)