The embodiment of the invention provides a storage and verification method and device for exchange codes. The method includes: generating random values, and determine the random value index generated in accordance with the order of the random value; the random value and the index of the random value arranged value pairs, the value of the mapping of strings to form and exchange code; according to the random value of the index to determine the storage location of the random value, and save the random value at the storage location. The embodiment of the invention can save data storage space and ensure the success rate of the exchange code cracking. Moreover, in the embodiment of the invention, the strings are mapped into numerical pairs for verification, and the verification efficiency of the exchange codes is improved.
【技术实现步骤摘要】
本专利技术实施方式涉及信息处理
,更具体地,涉及一种兑换码的存储、验证方法和装置。
技术介绍
兑换码(Redeemcode),又叫推广码(promocode或promotioncode),一般是开发者用来推广实际产品或计算机程序产品的代码,其构成一般包括数字和字符等,例如:YWERE77RMJA9。用户可以使用兑换码获得计算机程序或者其他各种实体产品。在用户兑换完程序或者其他实体产品之后,兑换码一般就失效。在现有技术中,一般的兑换码生成和存储方式是采用随机算法生成若干个字符串,该随机生成的字符串即作为兑换码完整保存在数据库中。而且,兑换码的验证方式则是通过字符串比较的方式来查找数据库中是否存在该验证码或验证码是否已经兑出。然而,这种现有技术的缺陷在于:首先,兑换码生成环节效率低下。即使是随机生成字符串,在兑换码量非常巨大的情况下也可能重复,所以这种方式产生的兑换码需要有去除重复生成的兑换码的步骤,或者生成后马上查找兑换码是否重复, ...
【技术保护点】
一种兑换码的存储方法,其特征在于,该方法包括:生成随机值,并按照该随机值的生成顺序确定该随机值的索引;将该随机值以及该随机值的索引排列成数值对,将该数值对映射成字符串对,以形成兑换码;根据该随机值的索引确定该随机值的存储位置,并在所确定的存储位置处保存所述随机值。
【技术特征摘要】
1.一种兑换码的存储方法,其特征在于,该方法包括:
生成随机值,并按照该随机值的生成顺序确定该随机值的索引;
将该随机值以及该随机值的索引排列成数值对,将该数值对映射成字符串
对,以形成兑换码;
根据该随机值的索引确定该随机值的存储位置,并在所确定的存储位置处
保存所述随机值。
2.根据权利要求1所述的兑换码的存储方法,其特征在于,该方法进一步
包括:
确定兑换码的期望生成数目,并根据兑换码的期望生成数目确定索引的位
数;确定兑换码破解概率门限值,并根据所述兑换码破解概率门限值确定随机
值的位数,
所述生成随机值,并按照该随机值的生成顺序确定该随机值的索引为:按
照该随机值的位数生成随机值,并且按照该随机值的生成顺序和索引的位数确
定该随机值的索引。
3.根据权利要求1所述的兑换码的存储方法,其特征在于,所述根据该随
机值的索引确定该随机值的存储位置,并保存所述随机值包括:
以位图(bitmap)、哈希(hash)或数组(array)的方式,根据该随机值的
索引确定该随机值在兑换索引表中的存储位置,并在所确定的兑换索引表中的
存储位置处保存所述随机值,并且在兑换索引表中保存表明随机数是否已兑换
的兑换状态位。
4.根据权利要求1所述的兑换码的存储方法,其特征在于,所述将该数值
对映射成字符串对为:
利用数值到字符串函数(num2str)将该数值对中的每个数值转换为对应的
24进制的字符串表示,并根据每个数值的字符串表示组成字符串对。
5.根据权利要求1所述的兑换码的存储方法,其特征在于,所述将该数值
\t对映射成字符串对,以形成兑换码包括:
将该数值对映射成字符串对;
对所述字符串对执行混淆处理以形成兑换码。
6.一种兑换码的验证方法,其特征在于,该方法包括:
接收兑换码,其中该兑换码的生成方法包括:
生成随机值,并按照该随机值的生成顺序确定该随机值的索引;将
该随机值以及该随机值的索引排列成数值对,将该数值对映射成字
符串对,并且混淆所述字符串对以形成兑换码;
对所述兑换码执行反混淆以获取所述字符串对,并将所述字符串对反映射
为数值对,并按照该数值对中的该随机值的索引确定存储位置;
当判定所述存储位置处储存的该随机值没有被兑换时,进一步判断该数值
对中的该随机值与在所述存储位置处储存的该随机值是否一致,如果是,则判
定兑换码验证成功。
7.根据权利要求6所述的兑换码的验证方法,其特征在于,
所述将该数值对映射成字符串对为:利用数值到字符串函数(num2str)将
该数值对中的每个数值转换为对应的24进制的字符串表示,并根据每个数值的
字符串表示组成字符串对;
所述将字符串对反映射为数值对为:利用字符串到数值函数(str2num)将
字符串对中的每个24进制的字符串表示转换为对应的数值,并根据每个数值组
成数值对。
8.根据权利要求6所述的兑换码的验证方法,其特征在于,所述按照该数
值对中的...
【专利技术属性】
技术研发人员:周健,
申请(专利权)人:腾讯科技北京有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。