【技术实现步骤摘要】
一种序列号生成验证方法
本专利技术涉及一种数据加密的方法,具体地说是一种序列号生成验证方法。
技术介绍
现代商业软件产品通常作为包含软件代码和字母数字的产品密钥的物理介质来交付。软件供应商在对待特定用户和计算机启用与该软件相关联的完全权限之前要求其产品完成“激活”过程是常见的。序列号安装可以有效的保护软件,使得开发者与消费者的权利可以得到保障。虽然目前的序列号生成与验证方法很多,但多较为复杂,不够灵活。而且验证方式多为一次性验证,不具有检查与更新的功能。
技术实现思路
本专利技术的技术任务是针对在现有技术的不足,提供一种采用小巧、简单、灵活的方法完成较高复杂系数的密钥生成与验证,并且能够对序列号进行有效管理,提供校验功能的序列号生成和验证方法。本专利技术的技术方案是按以下方式实现的,该一种序列号生成验证方法,该方法的具体实现过程为:1)、确定一组随机数字和关键数字,组合成为第一组关键字,该随机数字不重复;2)、确定自定义部分并分别与第一组关键字进行异或操作,成为第二组关键字;3)、用加密算法对第一组和第二组关键字进行加密,得到第三组关键字;4)、将三组关键字组合为明文序列,并用分配秘钥算法得到的私有密钥对明文序列加密得到序列号;5)、对步骤4)所得序列号进行验证。所述步骤3)中的加密算法为SHA1加密算法。所述步骤4)中的分配秘钥算法是指RSA算法。所述验证过程为:使用公有密钥对序列号进行解密,得到明文序列;将明文序列还原为三组关键字;分别对明文序列的相应部分进行异或操作,得到每个字段的值,在字典中查找这些值相应的操作,进而完成验证。本专利技术与现有技术相比所 ...
【技术保护点】
一种序列号生成验证方法,其特征在于该方法的具体实现过程为:1)、确定一组随机数字和关键数字,组合成为第一组关键字,该随机数字不重复;2)、确定自定义部分并分别与第一组关键字进行异或操作,成为第二组关键字;3)、用加密算法对第一组和第二组关键字进行加密,得到第三组关键字;4)、将三组关键字组合为明文序列,并用分配秘钥算法得到的私有密钥对明文序列加密得到序列号;5)、对步骤4)所得序列号进行验证。
【技术特征摘要】
1.一种序列号生成验证方法,其特征在于该方法的具体实现过程为:步骤101,确定当前的系统日期Time,此日期需要精确到天,长度为16bit;步骤102,确定一组随机数字Random,用来保证序列号不会重复,长度为8bit;步骤103,将Time与Random组合,得到Keystr,长度为24bit;步骤104,将软件的编号与步骤103所得到的Keystr的高14bit进行异或操作,得到值为Option,长度为14bit;步骤105,将软件的版本代号与步骤103所得的Keystr的次高6bit进行异或操作,得到值为Product,长度为6bit;步骤106,将软件的安装类型代号与步骤103所得的Keystr的低4bit进行异或操作,得到值为Type,长度为4bit;步骤107,将Option,Product,Type组合,得到Payloadstr,长度为24bit;步骤108,将步骤103所得...
【专利技术属性】
技术研发人员:宗栋瑞,吴楠,谢若鸿,丛戎,孟祥飞,郭美思,
申请(专利权)人:浪潮电子信息产业股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。