一种基于MAC地址的加密方法及系统与流程

文档序号:12691960阅读:642来源:国知局
一种基于MAC地址的加密方法及系统与流程

本发明涉及网络摄像机技术领域,尤其涉及一种基于MAC地址的加密方法及系统。



背景技术:

网络摄像机是一种结合传统摄像机与网络技术所产生的新一代摄像机,它可以将影像通过网络传至地球另一端,且远端的浏览者不需用任何专业软件,只要标准的网络浏览器(如“Microsoft IE或Netscape)即可监视其影像。网络摄像机在给人们带来方便的同时,人们也非常担心和重视视频数据安全的问题,担心个人隐私泄露。

现有技术中,网络摄像机都是采用外挂加密芯片的方法进行程序加密,但是这个方式具有以下缺点:1.增加硬件和人力成本,在板卡生产前需要进行芯片烧录;2.在其他电路运行正常的情况下,加密芯片不稳定直接导致设备异常,影响产品质量;3.安全性差,加密芯片容易被人破解。



技术实现要素:

本发明所要解决的技术问题在于提供了一种基于MAC地址的加密方法及系统,采用软件加密方法,无需加密芯片、节约成本,有效提高产品可靠性。

为解决上述技术问题,本发明采用以下技术方案:

一方面,提供了一种基于MAC地址的加密方法,该加密方法包括:

获取设备的MAC地址;

生成第一预置位数的随机数;

将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据;

将所述加密数据写入flash中;

其中,所述预置加密算法对应的密钥在设备出厂前存储在设备的flash中。

其中,所述MAC地址的有效长度为m,所述第一预置位数为n,m、n为正整数,n>m;所述将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据包括:

取所述n位随机数中预置位置范围的m位数,将所述m位随机数对应与MAC地址中的数按特定规则生成一个新的m位数;

将所述n位随机数与所述新的m位数按预置规则组合成长度为第二预置位数的加密数据。

其中,所述第一预置位数为32,所述第二预置位数为32+m或64。

其中,在获取设备的MAC地址之前还包括:

设备上电,设备程序启动;

接收加密指令。

其中,在将所述加密数据写入flash中之后还包括:获取所述密钥对所述加密数据进行解密,解密成功则设备程序运行。

其中,在获取所述密钥对所述加密数据进行解密之后还包括:检测当前密钥是否与所述密钥匹配,若不匹配则退出设备程序。

另一方面,提供了一种基于MAC地址的加密系统,该加密系统,包括:

地址获取模块,用于获取设备的MAC地址;

随机数生成模块,用于生成第一预置位数的随机数;

加密模块,用于将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据;

写入模块,用于将所述加密数据写入flash中;

其中,所述预置加密算法对应的密钥在设备出厂前存储在设备的flash中。

其中,所述MAC地址的有效长度为m,所述第一预置位数为n,m、n为正整数,n>m;所述加密模块具体用于:

取所述n位随机数中预置位置范围的m位数,将所述m位随机数对应与MAC地址中的数按特定规则生成一个新的m位数;

将所述n位随机数与所述新的m位数按预置规则组合成长度为第二预置位数的加密数据。

其中,所述第一预置位数为32,所述第二预置位数为32+m或64。

其中,还包括:

启动模块,用于设备上电,设备程序启动;

指令接收模块,用于接收加密指令;

解密模块,用于获取所述密钥对所述加密数据进行解密,解密成功则设备程序运行;

检测模块,用于检测当前密钥是否与所述密钥匹配,若不匹配则退出设备程序。

与现有技术相比,本发明的有益效果为:本发明在设备出厂前通过按预置加密算法对设备的MAC地址进行加密,并把预置加密算法对应的密钥在设备出厂前存储在设备的flash中,实现了软件加密,无需加密芯片,节约成本,有效提高产品可靠性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。

图1是本发明具体实施方式中提供的一种基于MAC地址的加密方法的实施例的方法流程图。

图2是本发明具体实施方式中提供的一种基于MAC地址的加密系统的实施例的结构方框图。

具体实施方式

为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,其是本发明具体实施方式中提供的一种基于MAC地址的加密方法的实施例的方法流程图,在一些优选的实施例中,该加密方法包括:

步骤S101:获取设备的MAC地址((MediaAccess Control或者Medium Access Control)地址,媒体访问控制地址,或称为物理地址、硬件地址)。

步骤S102:生成第一预置位数的随机数。

步骤S103:将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据。

步骤S104:将所述加密数据写入flash中。

其中,所述预置加密算法对应的密钥在设备出厂前存储在设备的flash中。

本发明实施例在设备出厂前通过按预置加密算法对设备的MAC地址进行加密,并把预置加密算法对应的密钥在设备出厂前存储在设备的flash中,实现了软件加密,无需加密芯片,节约成本,有效提高产品可靠性。

在一些优选的实施方式中,MAC地址的有效长度为m,第一预置位数为n,m、n为正整数,n>m;步骤S103:将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据包括:

取所述n位随机数中预置位置范围的m位数,将所述m位随机数对应与MAC地址中的数按特定规则生成一个新的m位数,新的m位数称为m位MAC地址生成数;

将所述n位随机数与所述新的m位数按预置规则组合成长度为第二预置位数的加密数据。

一般MAC地址的有效长度为12位,所述第一预置位数为32,即随机生成32位随机数,作为一个优选的实施方式,取生成的随机数的第9~20位共12个数,每个数与MAC地址按特定规则生成一个新的数,得到一个新的12位MAC地址生成数,将生成的32位随机数与该新的12位MAC地址生成数组合成一个44位数,具体形式为:32位随机数+12位MAC地址生成数、或12位MAC地址生成数+32位随机数,则该44位数即为加密数据;作为另一个优选的实施方式,也可以是将32位随机数+前6位MAC地址生成数+重新生成12位随机数+后6位MAC地址生成数+再次生成8位随机数,得到一个64位数,该64位数即为加密数据,这种形式规则复杂有利于提高破解难度。最后将得到的44位或64位加密数据存储在设备的flash中。

在一些优选的实施例中,该加密方法在步骤S101:获取设备的MAC地址之前还包括:

步骤S100a:设备上电,设备程序启动。

步骤S100b:接收加密指令。

在设备在出厂前对MAC地址进行加密,设备系统在获取设备的的MAC地址之前需要上电,并启动设备程序,待接收到加密指令之后便继续执行步骤S101~步骤S104的加密动作。

在一些优选的实施例中,该加密方法在步骤S104:将所述加密数据和密钥写入flash中之后,设备产品出厂,用户得到设备,使设备上电,设备程序启动,设备便执行以下步骤:获取所述密钥对所述加密数据进行解密,解密成功则设备程序运行。设备必须要解密成功,设备程序才能运行,否则设备程序将会关闭或死机。因为MAC地址是唯一不冲突的,所以根据MAC地址产生的密钥,基本保证只能在本机上使用。当多个设备使用同一个密钥时,因为MAC地址的唯一性,加密算法无法检测通过,相应的功能也就无法使用,从而达到保护产品的目的。

设备程序运行一段时间之后,即获取所述密钥对所述加密数据进行解密之后还包括:检测当前密钥是否与所述密钥匹配,若不匹配则退出设备程序。这是避免用户篡改设备的MAC地址,如果MAC地址改变,则对应的密钥也会改变,所以若当前密钥与所述密钥不匹配说明设备的MAC地址被篡改则退出设备程序,以起到保护产品的作用。

本发明实施例在设备出厂前通过按预置加密算法对设备的MAC地址进行加密,并把预置加密算法对应的密钥在设备出厂前存储在设备的flash中,实现了软件加密,无需加密芯片,节约成本,有效提高产品可靠性,而且在出厂后增加了密钥的校验功能,有效提升破解难度,起到保护产品的作用。

以下是本发明具体实施方式中提供的一种基于MAC地址的加密系统的实施例,系统的实施例基于上述的方法的实施例实现,在系统中未尽的描述,请参考前述方法的实施例。

如图2所示,其是本发明具体实施方式中提供的一种基于MAC地址的加密系统的实施例的结构方框图,在一些优选的实施例中,该加密系统包括地址获取模块21、随机数生成模块22、加密模块23和写入模块24;地址获取模块21,用于获取设备的MAC地址;随机数生成模块22,用于生成第一预置位数的随机数;加密模块23,用于将MAC地址与所述随机数按预置加密算法生成第二预置位数的加密数据;写入模块24,用于将所述加密数据写入flash中;其中,所述预置加密算法对应的密钥在设备出厂前存储在设备的flash中。

本发明实施例在设备出厂前通过按预置加密算法对设备的MAC地址进行加密,并把预置加密算法对应的密钥在设备出厂前存储在设备的flash中,实现了软件加密,无需加密芯片,节约成本,有效提高产品可靠性。

在一些优选的实施方式中,所述MAC地址的有效长度为m,所述第一预置位数为n,m、n为正整数,n>m;所述加密模块23具体用于:取所述n位随机数中预置位置范围的m位数,将所述m位随机数对应与MAC地址中的数按特定规则生成一个新的m位数;将所述n位随机数与所述新的m位数按预置规则组合成长度为第二预置位数的加密数据。作为一个优选的实施方式,第一预置位数为32,所述第二预置位数为32+m或64。一般MAC地址的有效长度为12位,即m为12。

在一些优选的实施例中,该加密系统还包括有启动模块、指令接收模块、解密模块和检测模块。启动模块,用于设备上电,设备程序启动;指令接收模块,用于接收加密指令;解密模块,用于获取所述密钥对所述加密数据进行解密,解密成功则设备程序运行;检测模块,用于检测当前密钥是否与所述密钥匹配,若不匹配则退出设备程序。加密系统对MAC地址进行加密之前,启动模块使设备上电,设备程序启动,接着指令接收模块将接收加密指令之后,地址获取模块21、随机数生成模块22、加密模块23依次完成相应作用完成对MAC地址的加密,最后写入模块24将加密数据写入flash中。在产品出厂后,用户得到设备,使设备上电,设备程序启动,则解密模块获取所述密钥对所述加密数据进行解密,解密成功则设备程序运行,设备必须要解密成功,设备程序才能运行,否则设备程序将会关闭或死机。因为MAC地址是唯一不冲突的,所以根据MAC地址产生的密钥,基本保证只能在本机上使用。当多个设备使用同一个密钥时,因为MAC地址的唯一性,加密算法无法检测通过,相应的功能也就无法使用,从而达到保护产品的目的。

设备程序运行一段时间之后,检测模块将检测当前密钥是否与所述密钥匹配,若不匹配则退出设备程序。这是避免用户篡改设备的MAC地址,如果MAC地址改变,则对应的密钥也会改变,所以若当前密钥与所述密钥不匹配说明设备的MAC地址被篡改则退出设备程序,以起到保护产品的作用。

综上所述,本实施例提供基于MAC地址的加密系统在设备出厂前通过按预置加密算法对设备的MAC地址进行加密,并把预置加密算法对应的密钥在设备出厂前存储在设备的flash中,实现了软件加密,无需加密芯片,节约成本,有效提高产品可靠性,而且在出厂后增加了密钥的校验功能,有效提升破解难度,起到保护产品的作用。

以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1