首页 / / 短链接算法原理详解

普通短链

活码系统

随机短链

跳转微信小程序

更多

短链接算法原理详解

更新时间:2024-4-20 21:13:47 作者:爱短链

短链接的算法是什么,短链接生成的原理是什么,很多伙伴都在资讯这个问题。那么今天爱短链小编就帮大家带来详细的介绍,相信你看了之后就会明白的。

短链接算法

MD5的生成的 ,其实这个算法主要是把长字符串变小 ,这个算法是不可逆的,所以别想着去直接反转短地址

利用MD5的算法,其具体过程为:

1. 将原始长链接进行MD5加密,为了避免防止算法泄漏,可以在原链接上添加自定义的字符串作为密钥。

2. 把128位的MD分成四组,每组32位,对应一个候选短链接。

3. 对于每个32位的数,将它与0x3FFFFFFF进行位与运算,取其低30位的数据。把得到的值与0x0000003D进行位与运算,再把得到的结果作为下标在字符表中选取字符,再把原数字右移5位进行相同操作,重复进行6次得到6个字符,即组成一个候选短链接地址。

4. 在4个候选短链接中随机选择一个作为最终的短链接,把长短链接映射关系存入数据库中。

短链接生成

服务器收到一个短链接请求时,需要把从http地址中解析出短链接,然后将得到的短链接在数据库中进行查询,找到其对应的长连接,进而重定向到该长长链接对应的地址。另外,服务器在此时可以随意进行一些需要的统计工作。

算法本质上就是一个长短链接的映射过程,那么一个简单的想法是用递增的序号来表示短链接,每次进来一个长链接时,把它映射成当前的序号,同时把序号递增以供下一个链接使用。因为链接地址同时使用的是a-z、A-Z和0-9这62个字符,把10进制的序号值转化为这个62进制的表示即可得到对应的短链接。

这个直接的想法非常简单粗暴,另外一个直观的想法是使用随机的方法生成长短链接的映射关系。每次进来一个长链接时就随机一个短链接来进行映射,如果通过数据库查询发现此短链接已经使用过,则重新进行随机直到产生一个未曾使用过的短链接为止。

由上面可知,纯粹在本地生成的短链接是没有作用的。因为短链接需要解析,需要跳转到短链接解析服务器,然后在服务器上查找对应的长链接,最后才可以进行对应的跳转。如果纯粹在本地生产的短链接,服务器上没有响应的数据,则是不能进行正常访问的。

爱短链平台各工具使用方法及功能汇总
短链接 活码
微信外链 抖音卡片

© 爱短链 2019|南京角浪网络科技有限公司版权所有|简单易用的在线生成短链接工具

联系客服
微信客服
扫码添加服务顾问微信
四重好礼免费领取

顾问1V1

超长试用

专属优惠

私域SOP