一种单片机程序的加密系统及方法技术方案

技术编号:24331500 阅读:36 留言:0更新日期:2020-05-29 19:47
本发明专利技术公开了一种单片机程序的加密系统,所述单片机用户板设置有加密单元和程序单元,所述加密单元用于把用户板单片机的ID读取用UART接口发送给单片机加密板,再接收单片机加密板计算后的数据存储到OTP指定地址;程序单元,用于运行时先读取ID再读OTP指定地址的数据,运行和加密板同样的算法,如果数据相等,即运行用户正常使用的代码;本发明专利技术利用单片机拥有唯一芯片ID号和内部OTP存储内存,加上用加密板自定义算法将数据存储在一次性OTP中,因ID和芯片是绑定的在加密后每个产品的程序都不一样,只能在本产品芯片中运行,使得程序难盗取和盗取后无法使用,克服了现有技术中单片机安全系数不高的缺点,可以提高单片机使用的安全效果。

A encryption system and method of single chip microcomputer program

【技术实现步骤摘要】
一种单片机程序的加密系统及方法
本专利技术涉及单片机
,更具体地说,特别涉及一种单片机程序的加密系统及方法。
技术介绍
市场上很多由单片机开发出来的产品无加密或采用芯片原有的加密方法,产品在市面上销售时,有些不法人员如使用相同型号的开发工具或其它强型工具易盗取里面的程序快速模仿产品其安全性不高.为保护开发者公司的知识产权和产品的安全性需要对产品程序专利技术一种更有效的加密方法.本专利技术是采用读取单片机芯片原有的全球唯一ID进行自定义算法后再存储到单片机OTP指定的地址中,用户程序使用时再读取指定的OTP地址内容,再运行同样的自定义算法,达到程序加密,因ID号是全球唯一的只能用在本芯片及用分离式加密板自定义算法所以难破解.即达到更高的产品安全性的保护。
技术实现思路
本专利技术的目的在于提供一种单片机程序的加密系统及方法。为了达到上述目的,本专利技术采用的技术方案如下:一种单片机程序的加密系统,系统包括以下部件:单片机用户板、用于接收单片机加密板的发送的数据;单片机加密板、用于读取单边机用户板的ID,并向单片机用户板发送数据;所述单片机用户板设置有加密单元和程序单元,所述加密单元用于把用户板单片机的ID读取用UART接口发送给单片机加密板,再接收单片机加密板计算后的数据存储到OTP指定地址;程序单元,用于运行时先读取ID再读OTP指定地址的数据,运行和加密板同样的算法,如果数据相等,即运行用户正常使用的代码;所述单片机加密板设有计算单元,用于使用UART接口接收单片机用户板发送的ID数据再进行计算,单片机加密板将计算后的数据发送给单片机用户板。优选地,所述单片机用户板包括以下部件:数据收发模块、用于单片机用户板与单片机加密板之间的数据收发;对比模块,用于将加密后的数据与加密板的数据进行比对,若相同是则运行用户正常使用的代码,否则不运行。优选地,所述单片机加密板包括以下部件:随机码模块、用于接收单片机用户板发送的ID,并根据ID生成带有ID标识的随机码:加密模块、采用加密算法对带有ID标识的随机码进行加密生成加密码;输出模块、用于将加密码发送给单片机用户板。优选地,所述单片机用户板为GD32E103C8T6芯片。一种单片机程序的加密方法,包括以下步骤:烧录时先插上单片机加密板再上电,单片机用户板检测到加密板,运行加密程序即把ID读取发送给单片机加密板;单片机加密板接收到ID数据通过自定义算法计算得出结果值后发送回给单片机用户板;单片机用户板将结果值数据存储到OTP指定地址即加密完成,拔掉加密板,再读取OTP指定地址数据与结果值对比,如果相等即运行用户正常使用的代码,不相等就不运行。与现有技术相比,本专利技术的优点在于:本专利技术利用单片机拥有唯一芯片ID号和内部OTP存储内存,加上用加密板自定义算法将数据存储在一次性OTP中,因ID和芯片是绑定的在加密后每个产品的程序都不一样,只能在本产品芯片中运行,使得程序难盗取和盗取后无法使用,克服了现有技术中单片机安全系数不高的缺点,可以提高单片机使用的安全效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一种单片机程序的加密系统的框架图;图2是本专利技术一种单片机程序的加密方法的流程图。具体实施方式下面结合附图对本专利技术的优选实施例进行详细阐述,以使本专利技术的优点和特征能更易于被本领域技术人员理解,从而对本专利技术的保护范围做出更为清楚明确的界定。参阅图1所示,本专利技术提供一种单片机程序的加密系统,系统包括单片机用户板、用于接收单片机加密板的发送的数据;单片机加密板、用于读取单边机用户板的ID,并向单片机用户板发送数据;单片机用户板设置有加密单元和程序单元,加密单元用于把用户板单片机的ID读取用UART接口发送给单片机加密板,再接收单片机加密板计算后的数据存储到OTP指定地址;程序单元,用于运行时先读取ID再读OTP指定地址的数据,运行和加密板同样的算法,如果数据相等,即运行用户正常使用的代码;单片机加密板设有计算单元,用于使用UART接口接收单片机用户板发送的ID数据再进行计算,单片机加密板将计算后的数据发送给单片机用户板。本实施例中,单片机用户板包括以下部件:数据收发模块、用于单片机用户板与单片机加密板之间的数据收发;对比模块,用于将加密后的数据与加密板的数据进行比对,若相同是则运行用户正常使用的代码,否则不运行。本实施例中,单片机加密板包括以下部件:随机码模块、用于接收单片机用户板发送的ID,并根据ID生成带有ID标识的随机码:加密模块、采用加密算法对带有ID标识的随机码进行加密生成加密码;输出模块、用于将加密码发送给单片机用户板。本实施例中,单片机用户板为GD32E103C8T6芯片,GD32E103C8T6芯片拥有全球唯一芯片ID号和内部OTP存储内存。参阅图2所示,一种单片机程序的加密方法,包括以下步骤:烧录时先插上单片机加密板再上电,单片机用户板检测到加密板,运行加密程序即把ID读取发送给单片机加密板;单片机加密板接收到ID数据通过自定义算法,如自定义算法计算ID/2-8得出结果值后发送回给单片机用户板,不法人员无法知道加密板中的算法;单片机用户板将结果值数据存储到OTP指定地址如指定地址如0x1fff7068即加密完成,拔掉加密板,再读取OTP指定地址数据与结果值对比,如果相等即运行用户正常使用的代码,不相等就不运行。虽然结合附图描述了本专利技术的实施方式,但是专利所有者可以在所附权利要求的范围之内做出各种变形或修改,只要不超过本专利技术的权利要求所描述的保护范围,都应当在本专利技术的保护范围之内。本文档来自技高网...

【技术保护点】
1.一种单片机程序的加密系统,其特征在于,系统包括以下部件:/n单片机用户板、用于接收单片机加密板的发送的数据;/n单片机加密板、用于读取单边机用户板的ID,并向单片机用户板发送数据;/n所述单片机用户板设置有加密单元和程序单元,所述加密单元用于把用户板单片机的ID读取用UART接口发送给单片机加密板,再接收单片机加密板计算后的数据存储到OTP指定地址;程序单元,用于运行时先读取ID再读OTP指定地址的数据,运行和加密板同样的算法,如果数据相等,即运行用户正常使用的代码;/n所述单片机加密板设有计算单元,用于使用UART接口接收单片机用户板发送的ID数据再进行计算,单片机加密板将计算后的数据发送给单片机用户板。/n

【技术特征摘要】
1.一种单片机程序的加密系统,其特征在于,系统包括以下部件:
单片机用户板、用于接收单片机加密板的发送的数据;
单片机加密板、用于读取单边机用户板的ID,并向单片机用户板发送数据;
所述单片机用户板设置有加密单元和程序单元,所述加密单元用于把用户板单片机的ID读取用UART接口发送给单片机加密板,再接收单片机加密板计算后的数据存储到OTP指定地址;程序单元,用于运行时先读取ID再读OTP指定地址的数据,运行和加密板同样的算法,如果数据相等,即运行用户正常使用的代码;
所述单片机加密板设有计算单元,用于使用UART接口接收单片机用户板发送的ID数据再进行计算,单片机加密板将计算后的数据发送给单片机用户板。


2.根据权利要求1所述的一种单片机程序的加密系统,其特征在于:所述单片机用户板包括以下部件:
数据收发模块、用于单片机用户板与单片机加密板之间的数据收发;
对比模块,用于将加密后的数据与加密板的数据进行比对,若相同是则运行用户正常使用的代码,...

【专利技术属性】
技术研发人员:刘华平童小琴卢密余玉珍
申请(专利权)人:安徽光阵光电科技有限公司广东光阵光电科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1