嵌入式设备加密与验证方法_2

文档序号:9249403阅读:来源:国知局
代码,否则执行S106。
[0048]嵌入式设备的CPU终止运行后,计算机一侧将进行以下处理步骤:
[0049]S108、采用计算机从所述存储器的数据安全区中提取所述芯片号。
[0050]S109、计算机根据输入的嵌入式设备的设备型号采用加密软件从内部检索到对应的设备版本序列号。
[0051]S110、计算机采用所述加密软件将检索到的设备版本序列号和所述芯片号加密形成第二设备密码,并写入至所述存储器的数据安全区中,其中,所述加密软件的加密方式和S104的加密方式相同。
[0052]S111、重启嵌入式设备,返回执行S102。
[0053]实施本发明,具有如下有益效果:
[0054]1、无需额外增加加密芯片,降低生产成本;
[0055]2,NAND FLASH芯片ID数据受保护,无法更改,确保了每台设备的设备密码全球唯一,即使复制了全部的软件和硬件也无法正常运行;
[0056]3、增加设备版本加密因素,可防止具有相同加密方式的不同版本之间的软硬件非法移植,且设备版本序列号位于核心代码的特定位置,难以从庞大的二进制数据中破解出来;
[0057]4、加密方式可由厂家按照自身要求开发,个性化较强,破解难度极大。
[0058]5、计算机侧加密软件的加密代码和验证时CPU加密代码一样,无需额外增加工作量。
[0059]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0060]在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0061]专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能宄竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0062]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0063]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【主权项】
1.一种嵌入式设备加密与验证方法,其特征在于,包括步骤: 5101、将驱动代码和核心代码烧录至嵌入式设备;其中,所述驱动代码包含有加密程序和存储器的驱动程序,所述核心代码中含有核心应用程序和适用于本型号设备的设备版本序列号; 5102、嵌入式设备上电后,嵌入式设备的CPU运行所述驱动代码; 5103、所述CPU从所述存储器中读取出所述存储器的芯片号,并从所述核心代码中提取出所述设备版本序列号; 5104、所述CPU通过所述加密程序将所述芯片号和所述设备版本序列号加密形成第一设备密码; 5105、所述CPU从所述存储器的设备密码区中读取第二设备密码;若读取到的第二设备密码为空,则执行S106,否则执行S107 ; 5106、所述CPU将所述芯片号输出至所述存储器的数据安全区,并终止运行; 5107、所述CPU对所述第一设备密码和所述第二设备密码进行一致性验证;若一致,则验证通过,所述CPU运行所述核心代码,否则执行S106。2.如权利要求1所述的嵌入式设备加密与验证方法,其特征在于,还包括步骤: 5108、采用计算机从所述存储器的数据安全区中提取所述芯片号; 5109、计算机根据输入的嵌入式设备的设备型号采用加密软件从内部检索到对应的设备版本序列号; 5110、计算机采用所述加密软件将检索到的设备版本序列号和所述芯片号加密形成第二设备密码,并写入至所述存储器的数据安全区中,其中,所述加密软件的加密方式和S104的加密方式相同; 5111、重启嵌入式设备,返回执行S102。3.如权利要求1或2所述的嵌入式设备加密与验证方法,其特征在于,所述S104包括步骤: 51041、CPU将读取的芯片号加密; 51042、CPU将读取的设备版本序列号加密; 51043、CPU将加密后的芯片号和加密后的设备版本序列号再综合加密生成第一设备密码。4.如权利要求1或2所述的嵌入式设备加密与验证方法,其特征在于,所述存储器具体为 NAND FLASH。5.如权利要求1或2所述的嵌入式设备加密与验证方法,其特征在于,所述芯片号为所述存储器自带的全球唯一芯片ID。
【专利摘要】本发明公开了一种嵌入式设备加密与验证方法,包括S101、将驱动代码和核心代码烧录至嵌入式设备;S102、嵌入式设备上电后,嵌入式设备的CPU运行驱动代码;S103、CPU从存储器中读取出存储器的芯片号,并从核心代码中提取出设备版本序列号;S104、CPU通过加密程序将芯片号和设备版本序列号加密形成第一设备密码;S105、CPU从存储器的设备密码区中读取第二设备密码;若读取到的第二设备密码为空,则执行S106,否则执行S107;S106、CPU将芯片号输出至存储器的数据安全区,并终止运行;S107、CPU对第一设备密码和第二设备密码进行一致性验证;若一致,则验证通过,CPU运行核心代码,否则执行S106。本发明不增加额外加密器件,可以避免嵌入式设备的核心代码和硬件被恶意复制和篡改。
【IPC分类】G06F21/79, G06F21/12
【公开号】CN104966003
【申请号】CN201510323773
【发明人】蔡亮亮, 陈磊, 卢家力
【申请人】国电南京自动化股份有限公司
【公开日】2015年10月7日
【申请日】2015年6月12日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1