我想知道URL缩短的最佳算法是什么。我注意到大多数人都会这样做:
1)从数据库中获取唯一的自动生成ID。 2)将唯一的自动生成ID编码为Base 64值。
对用户来说,显而易见的是以前的网址可能是什么。我该怎么做才能让用户更难找出我正在使用的算法?
谢谢你, TESH
答案 0 :(得分:1)
可能你可以用SHA来哈希吧
编辑:更好地生成一个随机数并将其哈希为Jon指出
答案 1 :(得分:1)
随机生成一个id并检查它是否已被使用?
答案 2 :(得分:1)
首先,在URL中放置身份验证信息(例如用户名和密码)并不是一个好主意(用户只需通过复制/粘贴链接,等来显示其密码< / em>的)。
也就是说,如果您想模糊URL添加到缩短服务的顺序,您可以使用加密哈希函数的输出,例如MD5或SHA1(被认为是“不可逆转的”,即< / em>从输出中导出输入是不可行的),base-64编码,例如,取八个字符。哈希函数的输入可以是URL(也可能是当前时间)。