Я не в теме, но очевидно что это не кодирование а просто ID Так как это односторонний алгоритм, где конечных вариантов много меньше чем изначальных, то очевидно могут быть коллизии, то есть выбор алгоритма не важен, можно просто воспринимать как ID. И еще логично предположить, из выше сказанного, что лучше просто делать инкримент id, что бы не мучатся с совпадениями.