Пока я вижу эти опции (псевдокод):
A. Довольно простой хеш MD5:
$identifier = MD5(object.id + created_at + app_secret)
=> 4c0dc8d3fdffacb65d04911291aac4cf
B. UUID:
$identifier = uuid()
=> fbcf6520-ab93-11e8-86b4-080027b55b5e
Но какая версия UUID имеет больше смысла? Я склонен к v4.
C. Мне бы хотелось иметь префикс для этих идентификаторов, чтобы я сразу понял, что это за объект, например. в журналах или запросе поддержки.
$identifier = 'trx_' + uuid()
=> trx_fbcf6520-ab93-11e8-86b4-080027b55b5e
Но это хороший стиль? Я мог бы хранить без префикса, но выставлять с префиксом и разрешать запросы с или без него.
Какая твоя лучшая практика?