我正在开发一个不显示记录数的 webapp,因为它隐藏了主键。我正在寻找一种更好的方法来做到这一点。
我最喜欢的想法是使用分组密码加密 ID 本身,因为这不需要额外的跟踪表,并且如果块大小等于密钥大小,它应该可以正常工作。
但是,我不想要 128 位块大小,因为键入需要一段时间example.com/records/MTZjaHJzRm9yMTI4Yml0cw(Base 64 表示)
理想的块大小将是完全可调的。我希望能够进行 8 位 ID 输入,从而产生 8 位输出,即通过使用永久存储的随机密钥无冲突。输入将是真正的主键,输出将是向公众显示的标识符。我可能决定更改数字长度,或切换到 Base64 标识符,我希望算法足够灵活以适应这一点?
您能否为如此短的数据和输出推荐一个加密例程?我不在乎密钥是否短,只有数据和输出必须是。