发明内容
为解决上述问题,本发明的目的在于针对以上问题,提供一种基于设备MAC地址的认证方法,其中,密钥KEY不是由人工预先定义的,而是由设备的MAC地址通过算法计算来的。因为任意设备的MAC地址都是唯一的,因此用于每台设备上的解密的密钥KEY都不相同。
为实现上述目的,本发明提供了一种基于设备MAC地址的认证方法,包括:
主控装置获取设备的MAC地址,对所获取的设备MAC地址进行合法性验证;
所述主控装置通过密钥产生算法,将MAC地址数据转换成动态密钥KEY,并将所述动态密钥KEY发送至解密装置中;
所述主控装置产生随机数,将所述随机数与所述动态密钥KEY一起进行加密,生成加密密文,并将所述加密密文发送给所述解密装置;
所述解密装置根据所述动态密钥KEY对所述加密密文进行解密,得到解密明文,并将所述解密明文发送给所述主控装置;
所述主控装置对所述解密明文与所述随机数进行比对验证。
进一步地,所述主控装置对所述解密明文与所述随机数进行比对验证的步骤中,如果所述解密明文与所述随机数不相同,则设备不能通过认证。
进一步地,所述密钥产生算法包括:
将获取的MAC地址信息进行整理;
对整理后的数据按照预定位数进行填充;
对填充后的数据进行分割处理,分割成至少两组的组合数据;
对所述组合数据进行复合运算;
对进行所述复合运算后得出的数据进行整合,以形成动态密钥KEY。
进一步地,在获取设备MAC地址的步骤中,当不能获取所述设备的MAC地址,或者检测到网络内存在有与所述设备的MAC地址相同的MAC地址时,则设备不能进行认证。
进一步地,在认证结束后,所述解密装置对所存储的所述动态密钥KEY自动进行删除。
本发明还提供了一种使用基于设备MAC地址的认证系统,包括认证设备,所述加密系统还包括:主控装置以及与解密装置,所述待认证设备以及所述解密装置分别与所述主控装置相连接;
所述主控装置包括:MAC地址验证模块、密钥生成模块、加密模块以及验证模块;所述解密装置包括:解密模块以及信息发送模块;
所述MAC地址验证模块用于获取所述认证设备的MAC地址,并对所获取的设备MAC地址进行合法性验证;
所述密钥生成模块用于通过密钥产生算法,将MAC地址数据转换成动态密钥KEY,并将所述动态密钥KEY写入所述解密装置中;
所述加密模块用于产生随机数,将所述随机数与所述动态密钥KEY一起进行加密,生成加密密文,并将所述加密密文发送给所述解密装置。
所述解密模块用于根据所述动态密钥KEY对所述加密密文进行解密,得到解密明文;
所述信息发送模块用于将所述解密明文发送给所述主控装置;
所述验证模块用于对接收到的所述解密明文与所述随机数进行比对验证。
进一步地,所述解密装置还包括:存储模块;
所述存储模块用于接收并存储所述密钥生成模块所生成的动态密钥KEY。
进一步地,当所述MAC地址验证模块不能获取所述认证设备的MAC地址,或者检测到网络内存在有与所述认证设备的MAC地址相同的MAC地址时,则所述认证设备不能进行认证。
进一步地,所述验证模块验证结束后,所述解密装置中的所述存储模块对所存储的所述动态密钥KEY自动进行删除。
本发明所提供的基于设备MAC地址的认证方法及系统,是利用设备MAC地址通过密钥生成算法产生密钥KEY,密钥KEY因采用设备的MAC地址唯一性的特定,与现有技术相比,具有以下优点:
1)、认证的过程是在主控装置中进行,因此密钥KEY不会发生泄漏;
2)、密钥KEY是根据算法随机产生的,不需要进行人工进行保管,能够节省人力成本,并且由于密钥KEY不可预知,能够提高系统的安全性和可靠性;
3)、本发明中,密钥KEY是利用设备的MAC地址通过算法所产成的,设备的MAC地址是唯一的,在单次验证的过程中密钥KEY也是唯一的,因此即使密钥KEY被他人破解后,也不能再次使用。
另外,由于解密装置可以单独进行设置,能够使得解密装置与主控装置分别进行放置,安全效果能够得到进一步的加强。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参阅图2,为本发明实施例中的认证方法流程图,包括:
S101,主控装置获取设备的MAC地址,对所获取的设备MAC地址进行合法性验证;
由于设备的MAC地址具有唯一性,因此,在获取设备MAC地址的过程中,还应当对其合法性进行验证。例如:当有两个设备具有相同的MAC地址的时候,则可以判断出,其中的某一设备是非法的。
S102,主控装置通过密钥产生算法,将MAC地址数据转换成动态密钥KEY,并将动态密钥KEY发送至解密装置中;
请一并参阅图3,密钥产生算法具体包括:
S201,将获取的MAC地址信息进行整理;
S202,对整理后的数据按照预定位数进行填充;
S203,对填充后的数据进行分割处理,分割成至少两组的组合数据;
S204,对组合数据进行复合运算;
S205,对进行复合运算后得出的数据进行整合,以形成动态密钥KEY。
在本发明实施例中,提供一种具体的密钥产生的过程,可以参阅下述的处理步骤:
将所获取设备MAC地址中的特殊符号去除,生成48位的数据a;
将所生成的数据a填充生成512位的数据b;
将数据b分割成4组32位数据;
对上述的4组32位数据进行复合运算,以生成4个新的32位数据c、d、e、f;
将数据c、d、e、f进行连接生成128位密钥KEY。
在上述的内容,用来对整个密钥产生的过程进行解释说明,所涉及的各个数据,其具体位数并不限定。对应数据b的分割情况也不仅限于4组,具体情况可以按照个人的要求进行相应的调整。
在本发明实施例中,对数据b执行随机的分割操作,因此也能够保证每次所产生的4组32位数据均不相同,使得经过复合运算的数据c、d、e、f也不相同,从而保证最后连接生成的密钥KEY每次也不相同,因此该密钥KEY根据每次的生成内容,可以反映出一个动态的情况。
另外,一个设备所生成的密钥KEY,为该设备的专属密钥,不能适用于其他设备。
S103,主控装置产生随机数,将所述随机数与动态密钥KEY一起进行加密,生成加密密文,并将加密密文发送给解密装置;
在本实施方式中,主控装置会产生一个64位的随机数,将该随机数进行备份处理,并将上述随机数与生成的密钥KEY进行加密处理,能够生成一个加密密文,此加密密文只能之前发送给解密装置的密钥KEY进行解密,整个解密的过程是在解密装置中执行。
S104,解密装置根据动态密钥KEY对加密密文进行解密,得到解密明文,并将解密明文发送给主控装置;
解密装置执行解密的过程,生成的解密明文,在本实施例中,所得到的解密明文的数据位也应当为64位。
S105,主控装置对解密明文与随机数进行比对验证。
主控装置接收到解密装置发送的解密明文后,对该解密明文进行备份处理,并且同时调取之前生成的随机数与其进行比对。如果该解密明文与之前生成的随机数不相同,则对应的设备不能通过验证,即设备不可以进行操作。
在本发明的实施例中,由于每次产生的密钥KEY均不相同,因此当每次对设备进行验证后,解密装置都将自动删除其所获得的动态密钥KEY。当设备需要再次使用时,还需要重新进行整个验证的过程。
进一步的,主控装置还能能够对之前所备份的随即数以及解密装置发送的解密明文进行自动删除的动作。
本发明所提供的基于设备MAC地址的认证方法,是利用设备MAC地址通过密钥生成算法产生密钥KEY,密钥KEY因采用设备的MAC地址唯一性的特定,与现有技术相比,具有以下优点:
1)、认证的过程是在主控装置中进行,因此密钥KEY不会发生泄漏;
2)、密钥KEY是根据算法随机产生的,不需要进行人工进行保管,能够节省人力成本,并且由于密钥KEY不可预知,能够提高系统的安全性和可靠性;
3)、本发明中,密钥KEY是利用设备的MAC地址通过算法所产成的,设备的MAC地址是唯一的,在单次验证的过程中密钥KEY也是唯一的,因此即使密钥KEY被他人破解后,也不能再次使用。
第二、本发明所提供的基于设备MAC地址的认证方法及其系统,创造性的设置了用于验证的解密装置,将解密装置与设备分开放置,专人保管,进一步加强了保密的效果。
请参阅图4,为本发明的对所获取的设备MAC地址进行合法性验证步骤的方法流程图:
S301,获取设备的MAC地址;
S302,判断是否获取成功,如果获取成功,则进入S303,如果不能获得设备的MAC地址,则不对该设备进行验证结束。
在本步骤中,对于不能获取MAC地址的设备,可认定其具有一定的风险性,这种情况则不对其进行验证,该设备当前不可进行工作。
S303,判断网络内是否存在有与设备的MAC地址相同的MAC地址时,如果不存在相同的MAC地址,则进入S304,如存在有相同的MAC地址,则保留对该设备的验证。
在本步骤中主要用于确认设备的唯一性,以更好的防止非法设备的介入。
S304,开始对设备进行验证。
综上所述,可以得出,能够得到验证的设备,应当保证主控装置能够获取该设备的MAC地址,并且还要保证该MAC地址在当前工作网络中是唯一的。
参阅图5,为本发明实施例中认证系统的结构示意图,该系统包括认证设备40、主控装置41以及与解密装置42,其中认证设备40以及解密装置42分别与主控装置41相连接;
主控装置41包括:MAC地址验证模块411、密钥生成模块412、加密模块413以及验证模块414;解密装置42包括:存储模块421、解密模块422以及信息发送模块423;
MAC地址验证模块411用于获取认证设备40的MAC地址,并对所获取的设备MAC地址进行合法性验证;
密钥生成模块412用于通过密钥产生算法,将MAC地址数据转换成动态密钥KEY,并将动态密钥KEY写入解密装置42中;
加密模块413用于产生随机数,将随机数与动态密钥KEY一起进行加密,生成加密密文,并将加密密文发送给解密装置42。主控装置41对加密模块413所产生的随机数进行备份处理。
解密模块422用于根据动态密钥KEY对加密密文进行解密,得到解密明文;
信息发送模423块用于将解密明文发送给主控装置41;当主控装置41接收到解密装置42中的解密模块422所发出的解密明文后,将该解密明文进行备份处理。
验证模块414用于对接收到的解密明文与随机数进行比对验证。
在本发明的实施例中,验证模块414从主控装置41的备份中获取随机数以及解密明文,进而对上述两者进行比对验证。
进一步地,当MAC地址验证模块411不能获取认证设备40的MAC地址,或者检测到网络内存在有与认证设备40的MAC地址相同的MAC地址时,则认证设备40不能进行认证,即认证设备40不能进行工作。
可以得出,能够得到验证的认证设备40,应当保证主控装置41能够获取该设备的MAC地址,并且还要保证该MAC地址在当前工作网络中是唯一的。
存储模块421用于接收并存储密钥生成模块412所生成的动态密钥KEY,并且在验证模块414验证结束后,解密装置42中的存储模块421会对其所存储的动态密钥KEY自动进行删除。
在本发明的其他实施例中,解密装置具体可以为内嵌于主控装置中的芯片。
本发明所提供的基于设备MAC地址的认证系统,是利用设备MAC地址通过密钥生成算法产生密钥KEY,密钥KEY因采用设备的MAC地址唯一性的特定,与现有技术相比,具有以下优点:
1)、认证的过程是在主控装置中进行,因此密钥KEY不会发生泄漏;
2)、密钥KEY是根据算法随机产生的,不需要进行人工进行保管,能够节省人力成本,并且由于密钥KEY不可预知,能够提高系统的安全性和可靠性;
3)、本发明中,密钥KEY是利用设备的MAC地址通过算法所产成的,设备的MAC地址是唯一的,在单次验证的过程中密钥KEY也是唯一的,因此即使密钥KEY被他人破解后,也不能再次使用。
另外,由于解密装置可以单独进行设置,能够使得解密装置与主控装置分别进行放置,安全效果能够得到进一步的加强。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。