网址转换方法及装置制造方法及图纸

技术编号:22366875 阅读:30 留言:0更新日期:2019-10-23 05:35
本发明专利技术是关于网址转换方法及装置。该方法包括:对长网址做哈希运算,获得H位散列值,H大于等于32;以预设顺序,每次从散列值中选取M位码,取N次,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n大于等于1,M大于等于6,N大于等于8;将每次选取的M位码转换为0~2

Website conversion method and device

【技术实现步骤摘要】
网址转换方法及装置
本专利技术涉及互联网
,尤其涉及一种网址转换方法及装置。
技术介绍
短网址是指在形式上比较短的网址,通常是根据原来冗长的长网址计算获得,并用来替换原来的长网址,从而方便使用者进行网址分享。然而,采用现有的方法获得短网址时,短网址的长度不固定,短网址的长度会随着长网址中所加入的数值序列的增加而变长,长度不固定,而且,获得的短网址有序,存在不安全的风险;以及,获得的不同短网址之间重复的可能性也较高。
技术实现思路
本专利技术实施例提供网址转换方法及装置。所述技术方案如下:根据本专利技术实施例的第一方面,提供一种网址转换方法,包括:对长网址做哈希运算,获得H位散列值,H为大于或等于32的整数;以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数;将每次选取的M位码转换为0~2M的数值范围中的相应数值;从预设字符组中获取与所述相应数值对应的一个字符,其中,所述预设字符组至少包括2M+1个不同字符,且每个字符与所述0~2M的数值范围中的一个数值相对应;将由获取的N个字符所组成的字符串,作为所述长网址转换后的短网址输出。优选地,所述H位的散列值表示包括H/8个元素的字节数组,所述方法还包括:从所述字节数组中选取Y个元素,Y为大于或等于4的整数;将所选取的Y个元素进行进制数转换,获得十六进制的字符串;将所述十六进制的字符串进行翻转处理,获得翻转后的字符串;将所述翻转后的字符串初始化为X位的大整数,X为大于或等于32的整数;所述以预设顺序,每次从所述散列值中选取M位码,共取N次,包括:以预设顺序,每次从所述X位的大整数中选取M位码,共取N次。优选地,当H大于或等于64时,所述以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,包括:从所述散列值的低位或高位开始,每次连续取M位码,共取N次,其中,第n次选取的M位码的末位,与第n+1次选取的M位码的初始位相邻。优选地,所述预设字符数组至少由以下字符组成:“a”~“z”、“A”~“Z”、“0”~“9”、“=”、“-”。优选地,采用MD5、MD4、SHA和CRC-32中的任一种哈希函数,对所述长网址进行哈希运算。根据本专利技术实施例的第二方面,提供一种网址转换装置,包括:处理模块,用于对长网址做哈希运算,获得H位散列值,H大于或等于32;第一选取模块,用于以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数;第一转换模块,用于将每次选取的M位码转换为0~2M的数值范围中的相应数值;获取模块,用于从预设字符组中获取与所述相应数值对应的一个字符,其中,所述预设字符组至少包括2M+1个不同字符,且每个字符与所述0~2M的数值范围中的一个数值相对应;输出模块,用于将由获取的N个字符所组成的字符串,作为所述长网址转换后的短网址输出。优选地,所述H位的散列值表示包括H/8个元素的字节数组,所述装置还包括:第二选取模块,用于从所述字节数组中选取Y个元素,Y为大于或等于4的整数;第二转换模块,用于将所选取的Y个元素进行进制数转换,获得十六进制的字符串;翻转模块,用于将所述十六进制的字符串进行翻转处理,获得翻转后的字符串;第三转换模块,用于将所述翻转后的字符串初始化为X位的大整数,X为大于或等于32的整数;所述第一选取模块还包括第一选取子模块,用于以预设顺序,每次从所述X位的大整数中选取M位码,共取N次。优选地,当H大于或等于64时,所述第一选取模块还包括:第二选取子模块,用于从所述散列值的低位或高位开始,每次连续取M位码,共取N次,其中,第n次选取的M位码的末位,与第n+1次选取的M位码的初始位相邻。优选地,所述预设字符数组至少由以下字符组成:“a”~“z”、“A”~“Z”、“0”~“9”、“=”、“-”。根据本专利技术实施例的第三方面,提供一种网址转换装置,包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器被配置为执行上述第一方面提供的网址转换方法。本专利技术的实施例提供的技术方案可以包括以下有益效果:通过对长网址做哈希运算,获得H位散列值,H为大于或等于32的整数;以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数;将每次选取的M位码转化为0~2M的数值范围中的相应数值;从预设字符组中获取与所述相应数值对应的一个字符,其中,所述预设字符组至少包括2M+1个不同字符,且每个字符与所述0~2M的数值范围中的一个数值相对应;将由获取的N个字符所组成的字符串,作为所述长网址转换后的短网址;可以使短网址的长度固定且无序,降低安全风险;可以获得至少648(281万亿)种组合的短网址,大大降低短网址之间的碰撞率;以及,还可以保证相同的长网址都能映射到同一个短网址中,对于内部使用场景来说,既可以实现资源复用,还能节省资源存储空间。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是根据一示例性实施例示出的网址转换方法的流程图。图2是根据一示例性实施例示出的网址转换方法的流程图。图3是根据一示例性实施例示出的网址转换方法的流程图。图4是根据一示例性实施例示出的网址转换装置的框图。图5是根据一示例性实施例示出的网址转换装置的框图。图6是根据一示例性实施例示出的网址转换装置的框图。图7是根据一示例性实施例示出的网址转换装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。图1是根据一示例性实施例示出的一种网址转换方法的流程图,如图1所示,该网址转换方法包括以下步骤101-105:在步骤101中,对长网址做哈希运算,获得H位散列值,H为大于或等于32的整数。这里,长网址为字符串类型的长网址。示例的,可以采用MD5、MD4、SHA、CRC-32中的任一种哈希函数对长网址进行哈希处理,以获得至少包括32bit的散列值。在步骤102中,以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数。示例的,可以在获得至少32bit的散本文档来自技高网...

【技术保护点】
1.一种网址转换方法,其特征在于,包括:对长网址做哈希运算,获得H位散列值,H为大于或等于32的整数;以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数;将每次选取的M位码转换为0~2

【技术特征摘要】
1.一种网址转换方法,其特征在于,包括:对长网址做哈希运算,获得H位散列值,H为大于或等于32的整数;以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,n为大于或等于1的整数,M为大于或等于6的整数,N为大于或等于8的整数;将每次选取的M位码转换为0~2M的数值范围中的相应数值;从预设字符组中获取与所述相应数值对应的一个字符,其中,所述预设字符组至少包括2M+1个不同字符,且每个字符与所述0~2M的数值范围中的一个数值相对应;将由获取的N个字符所组成的字符串,作为所述长网址转换后的短网址输出。2.根据权利要求1所述的网址转换方法,其特征在于,所述H位的散列值表示包括H/8个元素的字节数组,所述方法还包括:从所述字节数组中选取Y个元素,Y为大于或等于4的整数;将所选取的Y个元素进行进制数转换,获得十六进制的字符串;将所述十六进制的字符串进行翻转处理,获得翻转后的字符串;将所述翻转后的字符串初始化为X位的大整数,X为大于或等于32的整数;所述以预设顺序,每次从所述散列值中选取M位码,共取N次,包括:以预设顺序,每次从所述X位的大整数中选取M位码,共取N次。3.根据权利要求1所述的网址转换方法,其特征在于,当H大于或等于64时,所述以预设顺序,每次从所述散列值中选取M位码,共取N次,其中,与第n次选取的M位码相比,第n+1次选取的M位码中至少有一位码未包含在前n次选取的M位码中,包括:从所述散列值的低位或高位开始,每次连续取M位码,共取N次,其中,第n次选取的M位码的末位,与第n+1次选取的M位码的初始位相邻。4.根据权利要求1所述的网址转换方法,其特征在于,所述预设字符数组至少由以下字符组成:“a”~“z”、“A”~“Z”、“0”~“9”、“=”、“-”。5.根据权利要求1所述的网址转换方法,其特征在于,采用MD5、MD4、SHA和CRC-32中的任一种哈希函数,对所述长网址进行哈希运算。6.一种网址转...

【专利技术属性】
技术研发人员:刘国维
申请(专利权)人:无线生活杭州信息科技有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1