著录项信息
专利名称 | 一种无线信标防伪造方法 |
申请号 | CN201410850015.7 | 申请日期 | 2014-12-31 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-03-25 | 公开/公告号 | CN104469773A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04W12/06 | IPC分类号 | H;0;4;W;1;2;/;0;6查看分类表>
|
申请人 | 平安科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区八卦岭工业区平安大厦六楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 平安科技(深圳)有限公司 | 当前权利人 | 平安科技(深圳)有限公司 |
发明人 | 赖众程;岳昂;祖新星;付山阳 |
代理机构 | 深圳市精英专利事务所 | 代理人 | 冯筠 |
摘要
本发明公开了一种无线信标防伪造方法,该方法基于无线信标、移动终端和服务器实现,该方法包括如下步骤:步骤A,缺少生成码的无线信标发出无线广播,待移动终端与该无线信标建立连接;步骤B,所述无线信标和移动终端相互验证对方的合法性;步骤C,相互验证通过后,移动终端向服务器获取生成码,并将生成码写入无线信标。上述防伪造方法中,所述无线信标和移动终端基于无线方式通信,并且无线信标与移动终端之间通过所述验证方法验证对方的合法性,仅当相互验证通过后,移动终端方可向服务器获取生成码,再将生成码写入无线信标,使得生成码的写入过程更加安全,有效达到了防伪造的效果。
1.一种无线信标防伪造方法,其特征在于,该方法基于无线信标、移动终端和服务器实现,该方法包括如下步骤:
步骤A,缺少生成码的无线信标发出无线广播,待移动终端与该无线信标建立连接;
步骤B,所述无线信标和移动终端相互验证对方的合法性;
步骤C,相互验证通过后,移动终端向服务器获取生成码,并将生成码写入无线信标;
其中,所述移动终端向服务器获取生成码,并将生成码写入无线信标的过程为:相互验证通过后,无线信标发送无线信标ID及其芯片ID至移动终端,等待移动终端向无线信标写入生成码;移动终端将无线信标ID及其芯片ID发送至服务器,并向服务器获取生成码;所述服务器后台预设有数据库,所述服务器接收到移动终端发来的生成码获取请求时,向数据库查询该无线信标ID所对应的生成码是否已下发,并判断:若生成码未下发,则服务器将对应的生成码发送至移动终端,并在数据库中将生成码与无线信标ID及无线信标的芯片ID绑定,以表示该无线信标ID对应的生成码已被下发;若生成码已下发,则服务器拒绝向移动终端返回生成码;移动终端将无线信标ID和生成码写入无线信标。
2.如权利要求1所述的无线信标防伪造方法,其特征在于,所述移动终端获取生成码后,将无线信标ID和生成码写入无线信标,所述无线信标收到无线信标ID和生成码后断开与移动终端的连接,且该无线信标对生成码加密,再将无线信标ID和加密后的生成码存储于无线信标的Flash中,并标记该无线信标为已写入无线信标ID和生成码的状态。
3.如权利要求1至2任一项所述的无线信标防伪造方法,其特征在于,所述步骤B相互验证具体为:
基于一发起端及一受验端实现,所述无线信标和移动终端为发起端和受验端;
所述发起端和受验端设有相同的令牌Token,验证时,所述发起端生成随机数nonce,并将随机数nonce发送至受验端,所述发起端和受验端利用相同算法对随机数nonce和令牌Token运算,分别得出运算结果,再由发起端将其得出的运算结果与受验端返回的运算结果进行对比,若两个运算结果相等,则表示受验端合法,若两个运算结果不相等,则表示受验端不合法;
所述发起端和受验端的运算结果均通过以下方式得出:将随机数nonce和令牌Token融合成一个二进制的中间数X,再利用逐位循环异或运算将长度为m比特的中间数X变换为一个预设长度为n比特的二进制数Y;
所述逐位循环异或运算的运算过程包括:
步骤1,取二进制的中间数X,所述中间数X的最高位为MSB:0,最低位为MSB:(m-1);
步骤2,取中间数X的MSB:0至MSB:(n-1),记为Y0;
步骤3,取中间数X的第MSB:1至MSB:(n),与Y0作异或运算,得到结果记为Y1;
步骤4,取中间数X的第MSB:2至MSB:(n+1),与Y1作异或运算,得到结果记为Y2;
依次运算......步骤h,取中间数X的第MSB:(m-n)至MSB:(m-1),与Y(m-n-1)作异或,得到结果记为Y(m-n),将Y=Y(m-n)作为逐位循环异或运算的运算结果。
4.如权利要求3所述的无线信标防伪造方法,其特征在于,所述中间数X在融合之前,先判断随机数nonce和令牌Token是否等长度:
若二者长度相等,则将等长度的随机数nonce和令牌Token融合成中间数X;
若二者长度不相等,则将二者延长至等长度后,将等长度的随机数nonce和令牌Token融合成中间数X。
5.如权利要求4所述的无线信标防伪造方法,其特征在于,若随机数nonce和令牌Token长度不相等,则将随机数nonce和令牌Token按重复延长的方式分别延长至二者的最小公倍数长度。
6.如权利要求5所述的无线信标防伪造方法,其特征在于,将随机数nonce和令牌Token利用穿插融合运算融合成一个二进制的中间数X,所述穿插融合运算包括:
步骤a,取随机数nonce的MSB:0,作为中间数X的MSB:0;
步骤b,取令牌Token的MSB:0,作为中间数X的MSB:1;
步骤c,取随机数nonce的MSB:1,作为中间数X的MSB:2;
步骤d,取令牌Token的MSB:1,作为中间数X的MSB:3;
依次运算......步骤p,取随机数nonce的MSB-i,作为中间数X的MSB:2i;
步骤q,取令牌Token的MSB:i,作为中间数X的MSB-(2i+1)。
一种无线信标防伪造方法\n技术领域\n[0001] 本发明涉及信息安全防护方法,尤其涉及一种无线信标防伪造方法。\n背景技术\n[0002] 目前,市场上出现了一种通过低功耗无线通信技术进行精确微定位的无线信标产品,当用户的移动终端靠近一个无线信标时,设备能够感应到无线信标发出的信号,其覆盖范围可以达到50米。无线信标技术类似于室内的GPS,移动终端可以接收无线信标传输的信号,并获得各种准确的定位信息。比如,当用户开车到商场的地下停车场,购物后返回停车场时,移动终端可以根据该信号指导用户找到自己机车的精确位置。\n[0003] 但是,定位只是无线信标技术的一部分,无线信标还允许用户的移动终端发出简单的“我在这”信号,这意味着无线信标技术可以完成更多事情,比如,当用户逛街路过一家商店,这家商店可以发出无线信号,这时用户的手机就能获得当天可用的优惠券。再比如,用户带着一部移动终端走入一家购物中心的店铺,同时这也意味着用户已经进入了这家店铺的信号区域,无线信标便可以向用户的移动终端传输优惠券、店内导航信息等各种信息,甚至当用户走到某些柜台前面时,无线信标还会提供个性化的商品推荐信息。也就是说,在无线信标的信息区域内,用户通过手中的移动终端能够获取个性化的位置信息以及通知。\n[0004] 基于上述优势,公共场所将出现越来越多的无线信标,每一个无线信标可以是一个独立的硬件,为了完善信息的传输、广播,各大运营商都将开发自己的无线信标,此类产品在生产过程中,需要对流水线上的无线信标增设固件制作工序,但是每个无线信标都有独立的无线信标ID和生成码,所以需要为每个无线信标单独制作固件,导致生产效率低下,此外,无线信标在开发、生产、使用的过程中还存在如下安全隐患:\n[0005] 1、为抵抗伪造无线信标,无线信标ID对应的生成码需严格保密,但现有操作需将生成码明文交给制造商来为每个无线信标制作固件,不利于信息安全;\n[0006] 2、由于制造商要现场制作固件,因而运营商还要将固件的源代码交给制造商,不利于技术保密;\n[0007] 3、无线信标通常设置在公共场合,攻击者很容易盗取无线信标,再克隆无线信标中已存的固件来伪造无线信标。即,用硬件调试器从已有无线信标中完全读取出Flash内容,再自行仿造一个相同硬件原理图的空白无线信标,将读取出的Flash内容原文写入仿造的空白无线信标的Flash,这样仿造的无线信标将与广播原产品完全一样的数据包,从而达到伪造的目的,使得攻击者的移动终端和伪造的无线信标能够轻易的通过验证,导致无线信标的信息安全受到严重威胁。\n发明内容\n[0008] 本发明要解决的技术问题在于提供一种能提高信息安全、有利于技术保密的无线信标防伪造方法。\n[0009] 为解决上述技术问题,本发明采用如下技术方案。\n[0010] 一种无线信标防伪造方法,该方法基于无线信标、移动终端和服务器实现,该方法包括如下步骤:步骤A,缺少生成码的无线信标发出无线广播,待移动终端与该无线信标建立连接;步骤B,所述无线信标和移动终端相互验证对方的合法性;步骤C,相互验证通过后,移动终端向服务器获取生成码,并将生成码写入无线信标。\n[0011] 优选地,所述步骤C具体为:C1,相互验证通过后,无线信标发送无线信标ID及其芯片ID至移动终端,等待移动终端向无线信标写入生成码;C2,移动终端将无线信标ID及其芯片ID发送至服务器,并向服务器获取生成码;C3,移动终端将无线信标ID和生成码写入无线信标。\n[0012] 优选地,所述服务器后台预设有数据库,所述服务器接收到移动终端发来的生成码获取请求时,向数据库查询该无线信标ID所对应的生成码是否已下发,并判断:若生成码未下发,则服务器将对应的生成码发送至移动终端,并在数据库中将生成码与无线信标ID及无线信标的芯片ID绑定,以表示该无线信标ID对应的生成码已被下发;若生成码已下发,则服务器拒绝向移动终端返回生成码。\n[0013] 优选地,所述移动终端获取生成码后,将无线信标ID和生成码写入无线信标,所述无线信标收到无线信标ID和生成码后断开与移动终端的连接,且该无线信标对生成码加密,再将无线信标ID和加密后的生成码存储于无线信标的Flash中,并标记该无线信标为已写入无线信标ID和生成码的状态。\n[0014] 优选地,所述无线信标对生成码的加密过程包括:无线信标将无线信标ID作为随机数nonce,设定令牌Token=Token-HW,利用所述发起端和受验端的运算结果推导方法得出运算结果answer,再将生成码的每字节分别与answer异或,生成加密结果Z,并将加密结果Z作为加密后的生成码存储于无线信标的Flash中。\n[0015] 优选地,所述步骤B相互验证具体为:基于一发起端及一受验端实现,所述无线信标和移动终端为发起端和受验端;所述发起端和受验端设有相同的令牌Token,验证时,所述发起端生成随机数nonce,并将随机数nonce发送至受验端,所述发起端和受验端利用相同算法对随机数nonce和令牌Token运算,分别得出运算结果,再由发起端将其得出的运算结果与受验端返回的运算结果进行对比,若两个运算结果相等,则表示受验端合法,若两个运算结果不相等,则表示受验端不合法;所述发起端和受验端的运算结果均通过以下方式得出:将随机数nonce和令牌Token融合成一个二进制的中间数X,再利用逐位循环异或运算将长度为m比特的中间数X变换为一个预设长度为n比特的二进制数Y;所述逐位循环异或运算的运算过程包括:步骤1,取二进制的中间数X,所述中间数X的最高位为MSB:0,最低位为MSB:(m-1);步骤2,取中间数X的MSB:0至MSB:(n-1),记为Y0;步骤3,取中间数X的第MSB:1至MSB:(n),与Y0作异或运算,得到结果记为Y1;步骤4,取中间数X的第MSB:2至MSB:(n+1),与Y1作异或运算,得到结果记为Y2;依次运算......步骤h,取中间数X的第MSB:(m-n)至MSB:\n(m-1),与Y(m-n-1)作异或,得到结果记为Y(m-n),将Y=Y(m-n)作为逐位循环异或运算的运算结果。\n[0016] 优选地,所述中间数X在融合之前,先判断随机数nonce和令牌Token是否等长度:\n若二者长度相等,则将等长度的随机数nonce和令牌Token融合成中间数X;若二者长度不相等,则将二者延长至等长度后,将等长度的随机数nonce和令牌Token融合成中间数X。\n[0017] 优选地,若随机数nonce和令牌Token长度不相等,则将随机数nonce和令牌Token按重复延长的方式分别延长至二者的最小公倍数长度。\n[0018] 优选地,将随机数nonce和令牌Token利用穿插融合运算融合成一个二进制的中间数X,所述穿插融合运算包括:步骤a,取随机数nonce的MSB:0,作为中间数X的MSB:0;步骤b,取令牌Token的MSB:0,作为中间数X的MSB:1;步骤c,取随机数nonce的MSB:1,作为中间数X的MSB:2;步骤d,取令牌Token的MSB:1,作为中间数X的MSB:3;依次运算......步骤p,取随机数nonce的MSB-i,作为中间数X的MSB:2i;步骤q,取令牌Token的MSB:i,作为中间数X的MSB-(2i+1)。\n[0019] 本发明公开的无线信标防伪造方法中,所述无线信标和移动终端基于无线方式通信,并且无线信标与移动终端之间通过所述验证方法验证对方的合法性,仅当相互验证通过后,移动终端方可向服务器获取生成码,再将生成码写入无线信标,使得生成码的写入过程更加安全,有效达到了防伪造的效果。\n附图说明\n[0020] 图1为本发明无线信标防伪造方法的流程图。\n[0021] 图2为图1中步骤C的具体流程图。\n[0022] 图3为发起端与受验端相互验证过程的流程图。\n[0023] 图4为Beacon硬件防伪造方法的流程图。\n具体实施方式\n[0024] 下面结合附图和实施例对本发明作更加详细的描述。\n[0025] 本发明公开了一种无线信标防伪造方法,如图1所示,该方法基于无线信标、移动终端和服务器实现,该方法包括如下步骤:\n[0026] 步骤A,缺少生成码的无线信标发出无线广播,待移动终端与该无线信标建立连接;\n[0027] 步骤B,所述无线信标和移动终端相互验证对方的合法性;\n[0028] 步骤C,相互验证通过后,移动终端向服务器获取生成码,并将生成码写入无线信标。\n[0029] 上述防伪造方法中,所述无线信标和移动终端基于蓝牙实现无线通信,并且无线信标与移动终端之间通过所述验证方法验证对方的合法性,仅当相互验证通过后,移动终端方可向服务器获取生成码,再将生成码写入无线信标,使得生成码的写入过程更加安全,有效达到了防伪造的效果。\n[0030] 进一步地,如图2所示,所述步骤C具体为:\n[0031] C1,相互验证通过后,无线信标发送无线信标ID及其芯片ID至移动终端,等待移动终端向无线信标写入生成码;\n[0032] C2,移动终端将无线信标ID及其芯片ID发送至服务器,并向服务器获取生成码;\n[0033] C3,移动终端将无线信标ID和生成码写入无线信标。\n[0034] 实际应用中,当无线信标和移动终端相互验证通过后,无线信标的指示灯闪烁,操作人员根据该指示灯的闪烁状态,将无线信标ID输入至移动终端,该无线信标ID可记载于无线信标包装盒或者其说明书内。\n[0035] 当移动终端和服务器相互验证通过后,服务器响应移动终端的生成码获取请求,具体地,所述服务器后台预设有数据库,所述服务器接收到移动终端发来的生成码获取请求时,向数据库查询该无线信标ID所对应的生成码是否已下发,并判断:\n[0036] 若生成码未下发,则服务器将对应的生成码发送至移动终端,再由服务器发送到移动终端,并在数据库中将生成码与无线信标ID及无线信标的芯片ID绑定,以表示该无线信标ID对应的生成码已被下发;\n[0037] 若生成码已下发,则服务器拒绝向移动终端返回生成码。从而避免了生成码被重复下发,取得了一个无线信标仅对应一个生成码的效果。\n[0038] 当所述移动终端获取生成码后,将无线信标ID和生成码写入无线信标,所述无线信标收到无线信标ID和生成码后断开与移动终端的连接,且该无线信标对生成码加密,再将无线信标ID和加密后的生成码存储于无线信标的Flash中,并标记该无线信标为已写入无线信标ID和生成码的状态。\n[0039] 上述过程中,所述无线信标对生成码的加密过程包括:\n[0040] 无线信标将无线信标ID作为随机数nonce,设定令牌Token=Token-HW,利用所述发起端和受验端的运算结果推导方法得出运算结果answer,再将生成码的每字节分别与answer异或,生成加密结果Z,并将加密结果Z作为加密后的生成码存储于无线信标的Flash中。\n[0041] 当移动终端获取无线信标的生成码时,还包括生成码解密过程:\n[0042] 移动终端设定随机数nonce=无线信标ID,设定令牌Token=Token-HW,利用所述发起端和受验端的运算结果推导方法得出answer=f(Token-HW,无线信标ID),再将加密结果Z的每字节分别与answer异或,得到无线信标的生成码。\n[0043] 上述加密、解密方式是在无线信标和移动终端相互验证通过的条件下进行的,因而保证了生成码加密、解密过程的信息安全,加密、解密过程中,由于对一个数进行两次异或后等于没有异或,所以运算结果回到原数,本发明充分利用了异或运算的上述特点,实现了对生成码的加密、解密。\n[0044] 作为一种优选方式,如图3所示,所述步骤B相互验证具体为:\n[0045] 基于一发起端及一受验端实现,所述无线信标和移动终端为发起端和受验端;\n[0046] 所述发起端和受验端设有相同的令牌Token,验证时,所述发起端生成随机数nonce,并将随机数nonce发送至受验端,所述发起端和受验端利用相同算法对随机数nonce和令牌Token运算,分别得出运算结果,再由发起端将其得出的运算结果与受验端返回的运算结果进行对比,若两个运算结果相等,则表示受验端合法,若两个运算结果不相等,则表示受验端不合法;\n[0047] 所述发起端和受验端的运算结果均通过以下方式得出:将随机数nonce和令牌Token融合成一个二进制的中间数X,再利用逐位循环异或运算将长度为m比特的中间数X变换为一个预设长度为n比特的二进制数Y;\n[0048] 所述逐位循环异或运算的运算过程包括:\n[0049] 步骤1,取二进制的中间数X,所述中间数X的最高位为MSB:0,最低位为MSB:(m-1);\n[0050] 步骤2,取中间数X的MSB:0至MSB:(n-1),记为Y0;\n[0051] 步骤3,取中间数X的第MSB:1至MSB:(n),与Y0作异或运算,得到结果记为Y1;\n[0052] 步骤4,取中间数X的第MSB:2至MSB:(n+1),与Y1作异或运算,得到结果记为Y2;\n[0053] 依次运算......\n[0054] 步骤h,取中间数X的第MSB:(m-n)至MSB:(m-1),与Y(m-n-1)作异或,得到结果记为Y(m-n),将Y=Y(m-n)作为逐位循环异或运算的运算结果。\n[0055] 其中,高位有效位(Most Significant Bit,MSB)是从二进制数左侧起算的比特位,即中间数X左侧起算的第1位是MSB:0,中间数X左侧起算的第2位是MSB:1,依次类推......\n[0056] 上述验证过程中,发起端和受验端利用相同算法对随机数nonce和令牌Token运算,发起端和受验端在运算过程中,利用逐位循环异或运算对随机数nonce和令牌Token融合成的中间数X进行处理,并得到运算结果,逐位循环异或运算过程中,取中间数X的第MSB:\n(m-n)至MSB:(m-1)位与Y(m-n-1)作多次异或,得到运算结果Y(m-n),由于该运算结果是通过不同二进制数的多次异或得出的,并且发起端和受验端仅保存运算结果,因此,即使攻击者得知运算结果Y和随机数nonce,也无法推导出令牌Token,使得伪造的受验端无法通过验证。在实际应用中,无线信标与移动终端均采用该验证方法验证对方的合法性,使得攻击者仿造的无线信标与移动终端之间无法通过验证。此外,在该验证方法的支持下,无线信标的制造商仅将未写入生成码且包含有令牌Token的统一固件写入每个无线信标,大大提高了生产效率,而当无线信标投入使用时,由运营商利用移动终端对每个合法的无线信标写入生成码,运营商仅为制造商提供固件,不提供源代码和生成码,有效保护了信息安全,有利于技术保密。\n[0057] 作为一种优选方式,所述中间数X在融合之前,先判断随机数nonce和令牌Token是否等长度:\n[0058] 若二者长度相等,则将等长度的随机数nonce和令牌Token融合成中间数X;\n[0059] 若二者长度不相等,则将二者延长至等长度后,将等长度的随机数nonce和令牌Token融合成中间数X,该步骤中,将随机数nonce和令牌Token按重复延长的方式分别延长至二者的最小公倍数长度。比如:随机数nonce为1011,令牌Token为11010011,利用重复融合的方式,将随机数nonce重复延长为10111011,使得延长后的随机数nonce和令牌Token长度相等。\n[0060] 进一步地,中间数X的融合过程是将随机数nonce和令牌Token利用穿插融合运算融合成一个二进制的中间数X,所述穿插融合运算包括:\n[0061] 步骤a,取随机数nonce的MSB:0,作为中间数X的MSB:0;\n[0062] 步骤b,取令牌Token的MSB:0,作为中间数X的MSB:1;\n[0063] 步骤c,取随机数nonce的MSB:1,作为中间数X的MSB:2;\n[0064] 步骤d,取令牌Token的MSB:1,作为中间数X的MSB:3;\n[0065] 依次运算......\n[0066] 步骤p,取随机数nonce的MSB-i,作为中间数X的MSB:2i;\n[0067] 步骤q,取令牌Token的MSB:i,作为中间数X的MSB-(2i+1)。\n[0068] 但是这仅是本发明的一种优选方式,在其他方式下,还可以对随机数nonce和令牌Token以前端加0的方式延长至相同长度,比如随机数nonce为1011,令牌Token为11010011,可将随机数nonce延长至00001011后与令牌Token融合成中间数X=0101000110001111。\n[0069] 实施例1:\n[0070] 本发明涉及的穿插融合运算,其用于把两个等长的二进制数X和Y生成一个两倍长度的二进制数Z,方法如下:\n[0071] 取X的MSB-0,作为Z的MSB-0;\n[0072] 取Y的MSB-0,作为Z的MSB-1;\n[0073] 取X的MSB-1,作为Z的MSB-2;\n[0074] 取Y的MSB-1,作为Z的MSB-3;\n[0075] 依此进行,即取X的MSB-i,作为Z的MSB-2i,取Y的MSB-i,作为Z的MSB-(2i+1);\n[0076] 示例:若X=0xaa,Y=0xbb,则计算Z的方法如下:\n[0077] 二进制表示X为10101010,Y为10111011,于是算得Z为1100110111001101,即Z=\n0xcdcd。\n[0078] 实施例2:\n[0079] 本发明涉及的逐位循环异或运算,其用于把一个长度为m bit的二进制数X,变换为一个指定长度为n bit(n<m)的二进制数Y,计算方法如下:\n[0080] 用二进制表示X,高位在前低位在后,即最高位为MSB:0,最低位为MSB:(m-1);\n[0081] 取X的MSB:0至MSB:(n-1),共n bit,记为Y0;\n[0082] 取X的第MSB:1至MSB:(n),共n bit,与Y0作异或运算,得到结果记为Y1;\n[0083] 取X的第MSB:2至MSB:(n+1),共n bit,与Y1作异或运算,得到结果记为Y2;依此类推......\n[0084] 取X的第MSB:(m-n)至MSB:(m-1),共n bit,与Y(m-n-1)作异或,得到结果记为Y(m-n),Y取为Y(m-n)\n[0085] 示例:若X=0x12ab,指定n=8位,则X=0001001010101011,m=16,n=8;\n[0086] Y0=00010010;\n[0087] Y1=Y0^00100101=00110111;\n[0088] Y2=Y1^01001010=01111101;\n[0089] Y3=Y2^10010101=11101000;\n[0090] Y4=Y3^00101010=11000010;\n[0091] Y5=Y4^01010101=10010111;\n[0092] Y6=Y5^10101010=00111101;\n[0093] Y7=Y6^01010101=01101000;\n[0094] Y8=Y7^10101011=11000011;\n[0095] 于是Y=Y8=11000011=0xC3。\n[0096] 实施例3:\n[0097] 本发明涉及的生成码的加密、解密方法中,使用硬件ID和Token-HW加密生成码,由于无线信标和移动终端通过所述验证方法验证对方的合法性,因此,即使在固件被克隆的情况下,在其他具有相同硬件原理图的仿造硬件上烧录该固件,也无法仿造无线信标,也就是说,由于硬件ID是芯片内置的,每一片芯片都有唯一的硬件ID,就算伪造了一模一样的硬件电路,但无法伪造芯片内置的硬件ID,所以仿造的固件在仿造的芯片上运行,必然是用错误的硬件ID来解密生成码,从而得到的是错误的生成码。此外,由于其运算过程存在不可逆性,所以,即使攻击者事先知道仿造硬件的硬件ID,且了解加密算法的实现,也无法倒推出Token-HW。\n[0098] 应用举例:设定生成码明文为0x11223344,Token-HW为0x12345678,硬件ID=\n0xaabbcc,则加密流程:\n[0099] Answer=f(0x12345678,0xaabbcc)=01100010=0x62;\n[0100] 将生成码0x11223344的每字节与0x62异或,即\n[0101] 0x11^0x62=0x73;\n[0102] 0x22^0x62=0x40;\n[0103] 0x33^0x62=0x51;\n[0104] 0x44^0x62=0x26;\n[0105] 于是Y=0x73405126,将Y保存至无线信标的Flash。\n[0106] 解密流程:\n[0107] Answer=f(0x12345678,0xaabbcc)=01100010=0x62;\n[0108] 将加密后的生成码0x73405126的每字节与0x62异或,即\n[0109] 0x73^0x62=11;\n[0110] 0x40^0x62=22;\n[0111] 0x51^0x62=33;\n[0112] 0x26^0x62=44;\n[0113] 于是解密后的生成码为0x11223344。\n[0114] 本发明公开的防伪造方法中,在预设验证方法的支持下,运营商仅为制造商提供统一的固件,不提供源代码和生成码,有效保护了信息安全,有利于技术保密。另外,本发明无线信标防伪造方法中采用了所述验证方法,使得生成码的写入过程更加安全,有效达到了防伪造的效果。\n[0115] 结合图3和图4所示,本发明以Beacon硬件为例,其中的Beacon硬件和移动终端基于蓝牙实现无线通信,并且Beacon硬件与移动终端之间通过所述验证方法验证对方的合法性,仅当相互验证通过后,移动终端方可向服务器获取生成码,再将生成码写入Beacon硬件,使得生成码的写入过程更加安全,有效达到了Beacon硬件防伪造的效果。\n[0116] 以上所述只是本发明较佳的实施例,并不用于限制本发明,凡在本发明的技术范围内所做的修改、等同替换或者改进等,均应包含在本发明所保护的范围内。
法律信息
- 2018-08-24
- 2015-04-22
实质审查的生效
IPC(主分类): H04W 12/06
专利申请号: 201410850015.7
申请日: 2014.12.31
- 2015-03-25
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
2012-05-03
| | |
2
| |
2012-07-11
|
2012-01-10
| | |
3
| |
2010-06-16
|
2008-11-20
| | |
4
| |
2012-06-13
|
2011-12-07
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |