数据加密系统、方法及装置与流程

文档序号:11138234阅读:491来源:国知局
数据加密系统、方法及装置与制造工艺

本发明涉及加密技术领域,特别涉及一种数据加密系统、方法及装置。



背景技术:

为了保证单片机中数据的安全性,通常需要对单片机所要发送的数据进行加密。

由于单片机本身的运算能力非常差,一般不具有生成密钥的能力,在对单片机中的数据进行加密时,需要与烧录机结合实现数据加密。

单片机中常用的加密方式是:烧录机生成密钥,将生成的密钥烧写入单片机,单片机将得到的密钥发送给服务器,由服务器存储该单片机所对应的密钥;单片机需要向服务器发送数据时,首先根据烧写得到的密钥对将要发送的数据进行加密,并将加密后的数据发送至服务器;服务器根据存储的该单片机所对应的密钥对数据进行解密。

在实现本发明的过程中,发明人发现相关技术至少存在以下问题:在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高。



技术实现要素:

为了解决相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题,本发明实施例提供了一种数据加密系统、方法及装置。所述技术方案如下:

第一方面,提供了一种数据加密系统,所述系统包括烧录机、单片机和服务器;

所述烧录机利用预定生成算法生成第一公钥和第一私钥;

所述服务器利用所述预定生成算法生成第二公钥和第二私钥;

所述烧录机获取所述服务器生成的所述第二公钥,利用所述第一私钥和所 述第二公钥进行密钥协商,将得到的共享密钥以及所述第一公钥烧写至所述单片机中;

所述单片机利用烧写入的所述共享密钥对明文数据进行加密,将加密后的密文以及烧写入的所述第一公钥发送至所述服务器;

所述服务器在接收到所述密文和所述第一公钥后,根据所述第一公钥和利用所述预定生成算法生成的第二私钥进行密钥协商,得到所述共享密钥,利用所述共享密钥对所述密文进行解密,得到解密后的明文数据。

可选的,所述烧录机和所述服务器通过有线网络方式或无线网络方式连接,

当所述服务器提供所述预定生成算法时,所述烧录机从所述服务器下载所述预定生成算法;或者,

当所述烧录机提供所述预定生成算法时,所述烧录机将所述预定生成算法推送至所述服务器。

可选的,所述烧录机获取所述服务器生成的所述第二公钥,包括:

当所述烧录机中未存储有所述服务器的第二公钥时,所述烧录机向所述服务器发送请求获取所述服务器生成的第二公钥的获取请求,所述获取请求用于触发所述服务器反馈所述第二公钥,所述烧录机接收所述第二公钥;或者,所述烧录机接收所述服务器生成并发送的所述第二公钥;

当所述烧录机中存储有所述服务器的第二公钥时,所述烧录机读取预先存储的所述服务器的第二公钥。

可选的,所述烧录机每次利用所述预定生成算法生成的一组第一公钥和第一私钥均不同。

第二方面,提供了一种数据加密方法,应用于烧录机中,所述方法包括:

根据预定生成算法生成第一公钥和第一私钥;

获取服务器生成的第二公钥,所述第二公钥是所述服务器根据所述预定生成算法生成的;

利用所述第一私钥和所述第二公钥进行密钥协商,将得到的共享密钥以及所述第一公钥烧写入单片机,由所述单片机根据所述共享密钥对明文数据进行加密,并将加密后得到的密文以及所述第一公钥发送至所述服务器。

可选的,所述获取服务器生成的第二公钥,包括:

当所述烧录机中未存储有所述服务器的第二公钥时,向所述服务器发送请 求获取所述服务器生成的第二公钥的获取请求,所述获取请求用于触发所述服务器反馈所述第二公钥,接收所述服务器反馈的所述第二公钥;或者,接收所述服务器生成并发送的所述第二公钥;

当所述烧录机中存储有所述服务器的第二公钥时,所述烧录机读取预先存储的所述服务器的第二公钥。

可选的,所述烧录机和所述服务器通过有线网络方式或无线网络方式连接,所述方法还包括:

当所述服务器提供所述预定生成算法时,从所述服务器下载所述预定生成算法;或者,

当所述烧录机提供所述预定生成算法时,将所述预定生成算法推送至所述服务器。

可选的,所述烧录机每次利用所述预定生成算法生成的一组第一公钥和第一私钥均不同。

第三方面,提供了一种数据加密方法,应用于服务器中,所述方法包括:

接收单片机发送的密文和第一公钥,所述密文是所述单片机被烧录机烧写入共享密钥以及第一公钥后,利用所述共享密钥对明文数据进行加密后得到,所述共享密钥是所述烧录机根据预定生成算法生成第一公钥和第一私钥,根据第一私钥和第二公钥进行密钥协商后得到的并烧写至所述单片机中的,所述第二公钥是所述烧录机从所述服务器中获取的;

根据所述第一公钥和预存的第二私钥进行密钥协商,得到所述共享密钥,所述第二公钥和所述第二私钥是所述服务器根据所述预定生成算法生成的;

根据所述共享密钥对所述密文进行解密,得到解密后的明文数据。

第四方面,提供了一种数据加密装置,应用于烧录机中,所述装置包括:

生成模块,用于根据预定生成算法生成第一公钥和第一私钥;

获取模块,用于获取服务器生成的第二公钥,所述第二公钥是所述服务器根据所述预定生成算法生成的;

烧写模块,用于利用所述生成模块生成的所述第一私钥和所述获取模块获取的所述第二公钥进行密钥协商,将得到的共享密钥和所述第一公钥烧写入单片机,由所述单片机根据所述共享密钥对明文数据进行加密,并将加密后得到的密文以及所述第一公钥发送至所述服务器。

可选的,所述获取模块,包括:

发送单元,用于当所述烧录机中未存储有所述服务器的第二公钥时,向所述服务器发送请求获取所述服务器生成的第二公钥的获取请求,所述获取请求用于触发所述服务器反馈所述第二公钥,第一接收单元,用于接收所述服务器反馈的所述第二公钥;或者,第二接收单元,用于接收所述服务器生成并发送的所述第二公钥;

读取单元,用于当所述烧录机中存储有所述服务器的第二公钥时,所述烧录机读取预先存储的所述服务器的第二公钥。

可选的,所述烧录机和所述服务器通过有线网络方式或无线网络方式连接,所述装置还包括:

下载模块,用于当所述服务器提供所述预定生成算法时,从所述服务器下载所述预定生成算法;或者,

推送模块,用于当所述烧录机提供所述预定生成算法时,将所述预定生成算法推送至所述服务器。

可选的,所述烧录机每次利用所述预定生成算法生成的一组第一公钥和第一私钥均不同。

第五方面,提供了一种数据加密装置,应用于服务器中,所述装置包括:

接收模块,用于接收单片机发送的密文和第一公钥,所述密文是所述单片机被烧录机烧写入共享密钥以及第一公钥后,利用所述共享密钥对明文数据进行加密后得到,所述共享密钥是所述烧录机根据预定生成算法生成第一公钥和第一私钥,根据第一私钥和第二公钥进行密钥协商后得到的并烧写至所述单片机中的,所述第二公钥是所述烧录机从所述服务器中获取的;

协商模块,用于根据所述第一公钥和预存的第二私钥进行密钥协商,得到所述共享密钥,所述第二公钥和所述第二私钥是所述服务器根据所述预定生成算法生成的;

解密模块,用于根据所述共享密钥对所述密文进行解密,得到解密后的明文数据。

本发明实施例提供的技术方案带来的有益效果是:

通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密 钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时,可以大大降低对服务器存储能力的要求的效果。

附图说明

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

图1是本发明一个实施例中提供的数据加密系统所涉及的实施环境的示意图;

图2A是本发明一个实施例中提供的数据加密系统的结构方框图;

图2B是本发明一个实施例中提供的数据机密系统在对数据进行加密和解密过程的示意图;

图3是本发明一个实施例中提供的数据加密方法的方法流程图;

图4是本发明另一个实施例中提供的数据加密方法的方法流程图;

图5A是本发明一个实施例中提供的数据加密装置的结构方框图;

图5B是本发明另一个实施例中提供的数据加密装置的结构方框图;

图6是本发明再一个实施例中提供的数据加密装置的结构方框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1是本发明一个实施例中提供的数据加密系统所涉及的实施环境的示意 图。该实施环境包括烧录机10、服务器20和至少一个单片机30。

烧录机10可以向各个单片机30中烧写相关的数据。

烧录机10可以通过有线网络方式或无线网络方式与服务器20连接,或者,烧录机10也可以不与服务器20连接。

单片机30通过有线网络方式或无线网络方式与服务器20连接,并可以向服务器20发送数据。这里所讲的单片机30的运算能力比较差,通常不具备密钥生成能力,因此单片机30需要烧录机10为其生成密钥,并将生成的密钥烧写入单片机30。

图2A是本发明一个实施例中提供的数据加密系统的结构方框图,该数据加密系统可以应用于图1所示实施环境中。该数据加密系统包括烧录机201、单片机202和服务器203。

该烧录机201利用预定生成算法生成第一公钥和第一私钥。

这里所讲的预定生成算法为用于生成公私钥的算法,用于生成公私钥的预定生成算法是本领域的技术人员均能够实现的,这里就不再举例说明。

需要说明的是,烧录机201在利用预定生成算法生成公私钥时,每次生成的公私钥均不相同,但生成的公私钥中公钥和私钥通常是相对的。

该服务器203利用该预定生成算法生成第二公钥和第二私钥。

服务器203也同样可以利用相同的预定生成算法生成公私钥,服务器203所使用的预定生成算法与烧录机201中使用的预定生成算法是相同的。

在一种可选的实现方式中,该烧录机201和该服务器203通过有线网络方式或无线网络方式连接,当该服务器203提供该预定生成算法时,该烧录机201从该服务器203下载该预定生成算法;或者,当该烧录机201提供该预定生成算法时,该烧录机201将该预定生成算法推送至该服务器203。

显然,在实际应用中,烧录机201和服务器203也可以从第三方设备下载该预定生成算法,或者由管理人员向烧录机201和服务器203输入该预定生成算法,总之,该预定生成算法时烧录机201和服务器203预先约束好的。

该烧录机201获取该服务器203生成的该第二公钥,利用该第一私钥和该第二公钥进行密钥协商,将密钥协商后得到的共享密钥以及该第一公钥烧写至该单片机202中。

在一种可选的实现方式中,该烧录机201获取该服务器203生成的该第二公钥,包括如下三种情况:

在第一种情况下,当该烧录机201中未存储有该服务器203的第二公钥时,该烧录机201向该服务器203发送请求获取该服务器203生成的第二公钥的获取请求,该获取请求用于触发该服务器反馈该第二公钥,该烧录机201接收该第二公钥。

在第二种情况下,当该烧录机201中未存储有该服务器203的第二公钥时,服务器203可以在与烧录机201连接后,或者在与烧录机201连接后且生成第二公钥之后,主动向该烧录机201推送该第二公钥,此时,该烧录机201可以接收到该服务器203生成并发送的该第二公钥。

在第三种情况下,当该烧录机201中存储有该服务器203的第二公钥时,该烧录机201读取预先存储的该服务器203的第二公钥。在这种情况下,由于服务器203仅生成一次第二公钥即可,因此烧录机201仅需要获取一次服务器203的第二公钥,在后续过程中,不论烧录机201第几次生成第一公钥和第一私钥,均可以直接利用已经获取的该服务器203生成的第二公钥。

由于单片机202为不具备生成密钥功能的低功耗设备,因此为了保证单片机202可以正常使用密钥,烧录机201可以预先根据生成的第一私钥和从服务器203获取的第二公钥进行密钥协商,将密钥协商后得到的共享密钥以及第一公钥烧写至单片机202中。

根据公私钥进行密钥协商时,可以通过现有的密钥协商协议进行协商,以得到共享密钥,具体的密钥协商协议是本领域的普通技术人员均熟知的技术,这里就不再详述。

需要说明的是,这里所讲的服务器203生成的第二公钥以及对应的第二私钥仅是一种区分烧录机生成的公私钥的表述,在实际应用中,服务器203的第二公钥和第二私钥也可以是其他设备生成后存储至服务器203中,本实施例对服务器203中第二公钥和第二私钥的生成方式不作具体限定。

该单片机202利用烧写入的共享密钥对明文数据进行加密,将加密后的密文以及烧写入的该第一公钥发送至该服务器203。

为了保证数据的私密性,该单片机202可以利用该共享密钥对明文数据进行加密,将加密后得到的密文以及该第一公钥发送至该服务器203。显然,这里 所讲的明文数据是即将需要发送至服务器203中的,因为为了保证这些明文数据的安全性,防止非法用户截获到这些明文数据,需要利用生成的共享密钥对这些明文数据进行加密,得到加密后的密文。

该服务器203在接收到该单片机202发送的该密文和该第一公钥后,根据该第一公钥和利用该预定生成算法生成的第二私钥进行密钥协商,得到该共享密钥,利用该共享密钥对该密文进行解密,得到解密后的明文数据。

由于服务器203所生成的第二公钥和第二私钥是按照预定生成算法生成的,且烧录机201所生成的第一公钥和第一私钥也是按照预定生成算法生成的,根据公私钥的特性可知,利用第一私钥和第二公钥进行密钥协商得到的共享密钥与利用第二私钥和第一公钥进行密钥协商得到的共享密钥相同。

因此,服务器203在接收到该密文和该第一公钥后,根据该第一公钥和利用该预定生成算法生成的第二私钥进行密钥协商,得到该共享密钥,利用该共享密钥即可实现对该密文进行成功解密,得到解密后的明文数据。

举例来讲,请参见图2B所示,其是本发明一个实施例中提供的数据机密系统在对数据进行加密和解密过程的示意图,在图2B中,服务器203生成第二公钥和第二私钥;烧录机201从服务器203获取第二公钥,且烧录机201利用与服务器203相同的预定生成算法生成第一公钥和第一私钥,烧录机201将获取的第二公钥以及生成的第一私钥进行密钥协商,将密钥协商后得到的共享密钥以及生成的第一公钥烧写至单片机202;单片机202利用烧写入的该共享密钥对将要发送的明文数据进行加密,将加密后的到的密文以及烧写入的第一公钥发送至服务器203;服务器203利用生成的第二私钥以及从单片机202接收到的第一公钥进行密钥协商,得到共享密钥,根据该共享密钥对从单片机202接收到的密文进行解密,可以成功得到解密后的明文数据。

由于烧录机和服务器均利用相同的预定生成算法生成公私钥,烧录机利用生成的第一私钥和服务器生成的第二公钥进行密钥协商,得到共享密钥,然后将共享密钥烧写入单片机;单片机利用烧写入的该共享密钥对明文数据进行加密,然后将加密后的数据以及烧写入的第一公钥发送至服务器;服务器利用单片机发送的第一公钥和服务器自己生成的第二私钥进行密钥协商,得到相同的共享密钥,因此可以利用生成的共享密钥对密文进行成功解密。这样,服务器仅需要存储一对公私钥,即可实现对各个单片机发送来的密文进行解密,降低 了对服务器的存储能力的要求。

综上所述,本发明实施例提供的数据加密系统,通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时,可以大大降低对服务器存储能力的要求的效果。

图3是本发明一个实施例中提供的数据加密方法的结构方框图,该数据加密方法可以应用于图1所示实施环境中的烧录机10中。该数据加密方法可以包括:

步骤301,根据预定生成算法生成第一公钥和第一私钥。

该烧录机利用预定生成算法生成第一公钥和第一私钥。

这里所讲的预定生成算法为用于生成公私钥的算法,用于生成公私钥的预定生成算法是本领域的技术人员均能够实现的,这里就不再举例说明。

需要说明的是,烧录机在利用预定生成算法生成公私钥时,每次生成的公私钥均不相同,但生成的公私钥中公钥和私钥通常是相对的。也就是说,该烧录机每次利用该预定生成算法生成的一组第一公钥和第一私钥均不同。

一般的,该烧录机和该服务器可以通过有线网络方式或无线网络方式连接,该方法还包括:当该服务器提供该预定生成算法时,从该服务器下载该预定生成算法;或者,当该烧录机提供该预定生成算法时,将该预定生成算法推送至该服务器。

也就是说,服务器可以提供预定生成算法,并将预定生成算法推送至烧录机,或者由烧录机从服务器进行下载。另一种情况下,烧录机可以提供预定生成算法,该烧录机在与服务器成功建立连接后,则可以向服务器推送该预定生 成算法。

显然,在实际应用中,烧录机和服务器也可以从第三方设备下载该预定生成算法,或者由管理人员向烧录机和服务器输入该预定生成算法,总之,该预定生成算法时烧录机和服务器预先约束好的。

步骤302,获取服务器生成的第二公钥,该第二公钥是该服务器根据该预定生成算法生成的。

烧录机在获取服务器生成的第二公钥时,可以包括如下三种情况:

第一种情况下,当该烧录机中未存储有该服务器的第二公钥时,向该服务器发送请求获取该服务器生成的第二公钥的获取请求,该获取请求用于触发该服务器反馈该第二公钥,接收该服务器反馈的该第二公钥。

第二种情况下,当该烧录机中未存储有该服务器的第二公钥时,服务器可以在与烧录机连接后,或者在与烧录机连接后且生成第二公钥之后,主动向该烧录机推送该第二公钥,此时,烧录机可以接收该服务器生成并发送的该第二公钥。

第三种情况下,当该烧录机中存储有该服务器的第二公钥时,该烧录机读取预先存储的该服务器的第二公钥。在这种情况下,由于服务器仅生成一次第二公钥即可,因此烧录机仅需要获取一次服务器的第二公钥,在后续过程中,不论烧录机第几次生成第一公钥和第一私钥,均可以直接利用已经获取的该服务器成的第二公钥。

步骤303,利用该第一私钥和该第二公钥进行密钥协商,将得到的共享密钥以及该第一公钥烧写入单片机,由该单片机根据该共享密钥对明文数据进行加密,并将加密后得到的密文以及该第一公钥发送至该服务器。

综上所述,本发明实施例提供的数据加密方法,通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解 密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时,可以大大降低对服务器存储能力的要求的效果。

图4是本发明另一个实施例中提供的数据加密方法的方法流程图,该数据加密方法可以应用于图1所示实施环境中的服务器20中。该数据加密方法可以包括:

步骤401,接收单片机发送的密文和第一公钥,该密文是该单片机被烧录机烧写入共享密钥以及第一公钥后,利用该共享密钥对明文数据进行加密后得到,该共享密钥是该烧录机根据预定生成算法生成第一公钥和第一私钥,根据第一私钥和第二公钥进行密钥协商后得到的并烧写至该单片机中的,该第二公钥是该烧录机从该服务器中获取的。

步骤402,根据该第一公钥和预存的第二私钥进行密钥协商,得到该共享密钥,该第二公钥和该第二私钥是该服务器根据该预定生成算法生成的。

步骤403,根据该共享密钥对该密文进行解密,得到解密后的明文数据。

综上所述,本发明实施例提供的数据加密方法,通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时,可以大大降低对服务器存储能力的要求的效果。

图5A是本发明一个实施例中提供的数据加密装置的结构方框图,该数据加密装置可以应用于图1所示实施环境中的烧录机10中。该数据加密装置可以包括:生成模块510、获取模块520和烧写模块530。

生成模块510,用于根据预定生成算法生成第一公钥和第一私钥;

获取模块520,用于获取服务器生成的第二公钥,该第二公钥是该服务器根据该预定生成算法生成的;

烧写模块530,用于利用该生成模块510生成的该第一私钥和该获取模块520获取的该第二公钥进行密钥协商,将得到的共享密钥和该生成模块510生成的第一公钥烧写入单片机,由该单片机根据该共享密钥对明文数据进行加密,并将加密后得到的密文以及该第一公钥发送至该服务器。

在一种可能的实现方式中,请参见图5B所示,其是本发明另一个实施例中提供的数据加密装置的结构方框图。图5B中的数据加密装置也应用于烧录机10中,在图5B中,该获取模块520,包括:发送单元521、第一接收单元522,或者,第二接收单元523,或者,读取单元524。

发送单元521,用于当该烧录机中未存储有该服务器的第二公钥时,向该服务器发送请求获取该服务器生成的第二公钥的获取请求,该获取请求用于触发该服务器反馈该第二公钥,第一接收单元522,用于接收该服务器反馈的该第二公钥;或者,第二接收单元523,用于接收该服务器生成并发送的该第二公钥;

读取单元524,用于当该烧录机中存储有该服务器的第二公钥时,该烧录机读取预先存储的该服务器的第二公钥。

在一种可能的实现方式中,仍旧参见图5B,该烧录机和该服务器通过有线网络方式或无线网络方式连接,该数据加密装置还可以包括:下载模块540和推送模块550。

下载模块540,用于当该服务器提供该预定生成算法时,从该服务器下载该预定生成算法;或者,

推送模块550,用于当该烧录机提供该预定生成算法时,将该预定生成算法推送至该服务器。

在一种可能的实现方式中,该烧录机每次利用该预定生成算法生成的一组第一公钥和第一私钥均不同。

综上所述,本发明实施例提供的数据加密装置,通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得 到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时,可以大大降低对服务器存储能力的要求的效果。

图6是本发明再一个实施例中提供的数据加密装置的结构方框图,该数据加密装置可以应用于图1所示实施环境中的服务器20中。该数据加密装置可以包括:接收模块610、协商模块620和解密模块630。

接收模块610,用于接收单片机发送的密文和第一公钥,该密文是该单片机被烧录机烧写入共享密钥以及第一公钥后,利用该共享密钥对明文数据进行加密后得到,该共享密钥是该烧录机根据预定生成算法生成第一公钥和第一私钥,根据第一私钥和第二公钥进行密钥协商后得到的并烧写至该单片机中的,该第二公钥是该烧录机从该服务器中获取的;

协商模块620,用于根据该第一公钥和预存的第二私钥进行密钥协商,得到该共享密钥,该第二公钥和该第二私钥是该服务器根据该预定生成算法生成的;

解密模块630,用于根据该共享密钥对该密文进行解密,得到解密后的明文数据。

综上所述,本发明实施例提供的数据加密装置,通过在烧录机中按照预定生成算法生成第一公钥和第一私钥,并获取服务器按照同样的预定生成算法生成的第二公钥,利用第一私钥和第二公钥进行密钥协商,将得到的共享密钥以及第一公钥烧写至单片机中;单片机根据共享密钥对明文数据进行加密,将得到的密文以及第一公钥发送至服务器;服务器根据第一公钥和根据预定生成算法生成的与第二公钥对应的第二私钥对密文进行解密,得到解密后的数据;由于烧录机可以实时的为每个单片机生成不同的第一公钥和第一私钥,且服务器仅需要存储一组第二公钥和第二私钥,即可实现对单片机发送来的密文进行解密,因此解决了相关技术中在单片机的数量非常多时,服务器需要存储大量的密钥,对服务器的存储能力要求比较高的问题;达到了在保证数据安全的同时, 可以大大降低对服务器存储能力的要求的效果。

需要说明的是:上述实施例中提供的数据加密装置在对数据进行加密传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将烧录机和服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据加密装置与数据加密方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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