关于“将军令”工作原理与算法思想的研究_第1页
关于“将军令”工作原理与算法思想的研究_第2页
关于“将军令”工作原理与算法思想的研究_第3页
关于“将军令”工作原理与算法思想的研究_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关于“将军令事情原理与算法头脑的研究摘要:“将军令是每隔1in产生一个全新的、不克不及重复利用的暗码(6位),用来庇护网易通行证(游戏账号)、直销商账号的暗码。文章按照作者的研究,阐述了几种可行的“将军令的事情原理与算法头脑。关键词:将军令;动态暗码;原理;算法“将军令是广州网易互动娱乐自主研发的、具有完全知识产权的高科技身份认证产物,专门用来庇护网易通行证(游戏账号)、直销商账号的暗码。“将军令是每隔1in(60s)产生一个全新的、不克不及重复利用的暗码(6位),俗称“动态暗码。接纳“将军令后,网易以“账号+暗码+动态暗码的情势对游戏id举行庇护,大大进步了账号的宁静性。对付将军令的事情原理

2、,许多人提出自己的假想,笔者也就自己的研究,举行如下阐述。“将军令的现实事情流程很简朴:即用户端(“将军令自己)产生一个动态暗码,然后将这个动态暗码和办事器端举行匹配。由于用户端在出厂之后,同办事器端就再没有物理上直接的接洽,因此,怎样与办事器端保持逻辑上的同步是最大的题目,即怎样包管用户端产生的动态暗码与办事器端验证的动态暗码是一个暗码。1第一种假想在“将军令内置微型芯片,内里保存大量“以6位数字为一组的预定命组(6位数字动态码),每60s主动读取下一组新数组,数组的摆列挨次无纪律并无一雷同,但全部已经预先存放好,利用循环形式,当读完末了一组数后便重新再开始读取第一组数组。主机办事器端也同样

3、预先存放好同样的数组列,启用“将军令时以序列号来识别该取用哪一条数组列。这种要领是一种最易实现的要领,但这也是一种最易被破解的要领,宁静性较低。2第二种假想这种假想是利用算法来实现动态暗码的产生。算法头脑1:用户端在出厂时就植入一个算法,这个算法同样会被保存在办事器端。这个算法不必然要很庞大,好比f(x)=ax+b,x最好是一些奇特的,各个“将军令都不重复的数字,好比“将军令的序列号等。a可以是一个结实的数字,而b可以是一个动态变革的数字,如第1次产生动态暗码,b就为“1;第2次产生动态暗码,b就为“2算法头脑2:用户端产生的动态暗码是一个与时间有关的动态暗码,即暗码与时间t之间存在着干系:=

4、rand(tx),rand()为随机函数,tx为随机函数的种子,x为另一因素,好比“将军令的序列号等。这里,x是一个办事器端的变量,出厂时就已经设定了,最大的大概是“将军令的序列号所对应的一个因子,在消费“将军令写入初始数据的时间,同时被植入用户端和办事器端,由于每个“将军令的序列号是唯一的,因此,拿不到“将军令就无法知道x,也就无法知道动态暗码。显然,只有因子x是不敷的,=rand(x)是可以产生一个暗码,但这个暗码显然无法动态变革,也就失去了意义,因此时间因子t也同样不成缺少。但是,引入时间因子t之后,又将产生一个题目:就是用户端和办事器端时间同步的题目。时间同步的同题,笔者以为可以如许办

5、理:办事器端结实t0,引入因子t,办事器端植入t,t为用户端时钟同办事器端时钟之差,即t=t3-t1如许,用户端的暗码=rand(t3x),办事器端暗码=rand(t1+t)x)。对付成千上万的用户端在办事器端只要记载了t就可以了。这个t,可以在“将军令消费的时间植入办事器端予以记载。开通“将军令后,在提交序列号和动态暗码的时间,办事器端动态的调解t,办事器端盘算=rand(t2+t)x,而且在t的底子上,盘算出,t-5*60,t-4*60,t-3*60,t-2*60,t-1*60,t,t+1*60,t+2*60,t+3*60,t+4*60,t+5*60,这个数列。详细数列长度按照必要来定,由

6、于是产生随机6位数的函数,在这个数列中是不会出现重复的的。如许,就可以盘算出t四周前后相差n分钟所产生的暗码,只必要比对提交的动态暗码与数列中的哪个值对应,就可以动态的调解t。假设,动态暗码与t-2*60对应的暗码雷同,就可以调解t=t-2*60。如许,办理了用户端从出厂到开通利用所产生的时间偏向。这个n,按照现实必要订定。在利用“将军令的时间,接纳同样的要领可以同步。在确定了at后,办事器端在每次验证的时间,只要算出1=rand(ti+t-y)x,=rand(ti+at)x,2=rand(t)+t+y)x,就可以算出at四周y秒的时间的暗码,就是容许“将军令有y秒的时间偏向。利用上面的算法来实现动态暗码的产生显然要比第一种要领的宁静性要高许多。3第三种假想这种假想利用一个相对庞大的映射来实现动态暗码的产生。它大概是按照:年,月,日,时,分,秒。如许的话,可以把“将军令当作是一个盘算器,盘算出用户所必要的数字,然后与办事器通过同样要领对盘算出来的数字举行比对。假设:“将军令出现的6位数字,我们别离设为a,b,d,e,f,将军令的序列号为x。a=年*xb=月*2x=日*3xd=时*4xe=分*5xf=秒*6x但是,假设通过这个映射来盘算出动态暗码的话,同样也会偶然间同步的题目必要办理,这就可以参照上面的算法头脑举行处置惩罚。4竣事语以上3种方案就是笔者以为比力可行的方案,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论