part2 seems to be a timestamp. Maybe we can try to forge the value to "now - 10 seconds".
And if the implementation has been done right, the "part3" should be a signature of part1 and part2, not a "salt" (so forging part2 should be detected and code rejected).
Ordering the world population by birthday becomes so easy. Plus no endless discussion on wether or not we should use UUID as primary key.