I’m a big fan of base58
+ almost as efficient as base64 + no special characters + no padding characters
+ almost as efficient as base64 + no special characters + no padding characters
> u8 divmod 58 can be reduced to a u8->u16 multiply, a right shift, and three conditional subtractions; that's not great, but on a modern CPU it's a afterthought compared to the quadratic loop over the input size.
Same topic from 2018: https://news.ycombinator.com/item?id=18409344
No special characters... I mean it's true, but there's not many places I'm worried about inability to mix in some - and _.
Base58 also avoids a couple confusable characters, but that only matters when copying by hand, and if I'm copying by hand I'd rather use base32.