4 ms·
The checksum idea is interesting. I'm considering whether it makes sense to add it as part of the TypeID spec.
by dloreto 3y ago
The checksum idea is interesting. I'm considering whether it makes sense to add it as part of the TypeID spec.
- veec_cas_tant 3y agoWhat value does the checksum provide? I think I'm missing something because I really don't see a benefit.
- diroussel 3y agoThe benefit is that you can reject bad requests to an API more easily. For one application I used a base 58 encoded value. Part of it was a truncated hmac, which I used like check digits. This meant I could validate IDs before hitting the DB. As an attacker or script kiddie could otherwise try a resource exhaustion attack. So in the age of public internet faceing APIs and app urls, I think built in optional check digit support is a good idea.
- veec_cas_tant 3y agoI struggle to see how 10 bits of check data will help much. I guess if the extra bits aren’t persisted to storage it doesn’t hurt so why not?
- diroussel 3y agoStorage can get corrupted, columns can be truncated. For the applications I tend to touch correctness and the ability to detect errors and tamper are more important that a couple of bytes per row. But every application and domain is different.
- bumbledraven 3y agoChecksums facilitate error detection. For typed UUIDs, checksums help detect errors introduced by changing the prefix/type or changing a “digit”.