CN108052836B - 一种补丁包的防篡改方法、装置及服务器 - Google Patents
一种补丁包的防篡改方法、装置及服务器 Download PDFInfo
- Publication number
- CN108052836B CN108052836B CN201711311892.7A CN201711311892A CN108052836B CN 108052836 B CN108052836 B CN 108052836B CN 201711311892 A CN201711311892 A CN 201711311892A CN 108052836 B CN108052836 B CN 108052836B
- Authority
- CN
- China
- Prior art keywords
- information
- preset
- sub
- key information
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种补丁包的防篡改方法、装置及服务器,以增强破解难度及篡改难度,确保补丁包的安全性。该方法包括:获取所述补丁包的各子包;按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各所述秘钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种补丁包的防篡改方法、装置及服务器。
背景技术
补丁在交给厂商签名前,需要对其进行加密处理,避免非正常用户对补丁进行解密,盗取补丁。
但是,在现有技术中,对补丁的加密方式简单,使得非正常用户能够很容易就破解,导致补丁的安全性得不到保证。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种补丁包的防篡改方法、装置及服务器,用于增强破解难度及篡改难度,进而确保了补丁包的安全性。
本发明的技术方案是这样实现的:
第一方面,本发明实施例提供一种补丁包的防篡改方法,所述方法包括:获取所述补丁包的各子包;按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各所述秘钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中。
第二方面,本发明实施例提供一种补丁包的防篡改装置,所述装置包括:获取单元,用于获取所述补丁包的各子包;提取单元,用于按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各秘钥信息;加密单元,用于基于各所述秘钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;隐藏单元,用于按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中。
第三方面,本发明实施例提供一种服务器,包括:存储器和处理器,其中,所述处理器被配置为运行所述存储器中的程序指令,所述程序指令用以实现上述的防篡改方法。
本发明实施例提供了一种补丁包的防篡改方法、装置及服务器,获取补丁包的各子包;按照预设的提取规则分别随机提取各子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中;如此,随机在各子包中分别提明文信息当作秘钥信息,基于各个秘钥信息分别对各子包进行加密后,按照预设的隐藏规则将各秘钥信息隐藏在密文信息中,这样由于秘钥信息的随机性比较大,且每个子包的秘钥信息都不相同,且隐藏在各子包的字段中,增强了破解难度及篡改难度,进而确保了补丁包的安全性。
附图说明
图1为本发明实施例一提供的补丁包的防篡改方法的流程示意图;
图2为本发明实施例二提供的补丁包的防篡改装置的结构示意图;
图3为本发明实施例提供的服务器结构示意图。
具体实施方式
为了解决现有技术中补丁的加密方式太过简单,容易被非正常用户破解,导致补丁的安全性得不到保证的技术问题,本发明实施例提供了一种补丁包的防篡改方法、装置及服务器,方法包括:获取补丁包的各子包;按照预设的提取规则分别随机提取各子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中。
下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。
实施例一
本实施例提供一种补丁包的防篡改方法,如图1所示,方法包括:
S101:获取补丁包的各子包;
这里,补丁包在交给厂商进行签名之前,需要对补丁包进行加密处理,防止非正常用户对补丁包进行篡改。
这里,补丁包一般是由多个子包构成,因而需要获取到各个子包。
S102:按照预设的提取规则分别随机提取各子包的明文信息;
这里,获取到各个子包后,按照预设的提取规则分别随机提取各子包的明文信息,并将随机提取到的各明文信息作为各秘钥信息;这样各秘钥信息就是随机产生的,没有规律可以参照,增强了秘钥信息的破解难度。
具体地,按照预设的提取规则分别随机提取各子包的明文信息,包括:基于指定的提取位置从各子包的字段中提取预设长度的明文信息。
比如,当指定的各提取位置相同时,指定的各提取位置均为第十个字节,预设的长度为十字节,那么在提取明文信息时,从第十个字开始提取长度为十字节的明文信息。
当指定的各位置不同时,比如为第一个子包指定的提取位置为第十个字节,为第二个子包指定的提取位置为第十一个字节;那么在提取第一个子包的明文信息时,从第十个字节开始提取长度为十字节的明文信息。在提取第二个子包的明文信息时,从第十一个字节开始提取长度为十字节的明文信息。
当然,每个子包提取的明文信息的长度可以是相同,也可以是不同的。
这里,按照预设的提取规则分别随机提取各子包的明文信息,还可以包括:获取各子包标识ID的字符串;根据预设的提取参照位分别从各ID的字符串中获取各参照字符;按照预设的第一转换规则,分别将各参照字符转换为相应的数值;基于各数值确定各提取位置,基于各提取位置分别提取预设长度的各明文信息。
其中,预设的第一转换规则可以包括多种:比如将字符与十进制数值对应转换,将字符与ASCII码值进行对应转换。
当将字符与ASCII码值进行对应转换时,获取各子包标识ID的字符串后,根据预设的提取参照位从各ID的字符串中获取各参照字符;获取各字符对应的ASCII码值;以ASCII码值为参照值确定各提取位置,基于各提取位置分别提取预设长度的明文信息。
具体地,以补丁包的第一个子包为例,获取第一个子包的ID字符串,根据预设的提取参照位ID字符串中获取参照字符;其中,提取参照位可以为ID字符串中的任意一位,比如首位或末位。
比如第一个子包的ID字符串为″12345″,提取参照位为末位,那么提取参照位对应的字符就为″5″,再获取到″5″对应的ASCII码为″53″,以第″53″个字节为提取位置,提取预设长度的明文信息。
这里,按照预设的提取规则分别随机提取各子包的明文信息,还包括:利用散列函数分别随机提取各子包的明文信息。
比如,对散列函数输入任意长度的字符串,可以输出一个具体的数值,那么就可以以这个数值为提取位置,提取预设长度的明文信息。
进一步地,按照预设的提取规则分别随机提取各子包的明文信息,还可以包括:获取各子包标识ID的字符串;按照预设的第一转换规则,分别将字符串中的各字符转换为相应的数值;对各数值取平均值;基于平均值确定提取位置;基于提取位置分别提取预设长度的各明文信息。
同样还是以补丁包的第一个子包为例,获取第一个子包的ID字符串,根据预设的提取参照位ID字符串中获取参照字符;其中,提取参照位可以为ID字符串中的任意一位,比如首位或末位。
比如第一个子包的ID字符串为″12345″,那么对应的字符就分别为″1″、″2″、″3″、″4″和″5″,再分别获取到各个字符对应的ASCII码值,分别为″49″、″50″、″51″、″53″和″53″,上述ASCII码值的平均值为″51″,那么就以第″51″个字节为提取位置,提取预设长度的明文信息。
S103:基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;提取到各秘钥信息后,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息。
这里,预设的加密算法可以为任何一种加密算法,比如RES加密算法、DES加密算法等,在此不做限制。
S104:按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中。
这里,对各子包的明文信息进行加密,形成各密文信息后,为了增强秘钥信息的隐秘性,还需按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中。
进一步地,按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中,可以包括:将各秘钥信息拆分为多个固定长度的子秘钥信息;确定各秘钥信息的各初始***位置;基于各初始***位置及预设的位置偏移量依次将各子秘钥信息穿插在相应的各密文信息中。
这里,以第一子包的秘钥信息为例,比如第一子包的秘钥信息为″0123456789″,固定长度为5,那么就可以将秘钥信息拆分为两个子秘钥信息,分别为:第一子秘钥信息″01234″和第二子秘钥信息″56789″。
在本发明其他实施例中,确定出第一子包的秘钥信息在密文中的初始***位置,初始***位置是预设的,然后将第一子秘钥信息***初始***位置。再基于初始***位置及预设的位置偏移量确定第二***位置,将第二子秘钥信息***第二***位置处,完成隐藏。
或者,按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中,还可以包括:将各秘钥信息拆分为多个固定长度的子秘钥信息;确定各秘钥信息的各***参照位;获取各***参照位的参照字符;按照预设的第二转换规则,分别将各参照字符转换为相应的数值;基于各数值确定秘钥信息的各初始***位置;基于各初始***位置及预设的穿插间隔依次将各子秘钥信息穿插在相应的各密文信息中。
其中,***参照位可以为秘钥信息中的任意一位,比如首位或末位。
同样地,预设的第二转换规则也可以包括多种:比如将字符与十进制数值对应转换,将字符与ASCII码值进行对应转换。
这里,当将字符与ASCII码值进行对应转换时,获取各秘钥信息的各***参照位后,根据预设的***参照位从各秘钥信息的字符串中获取各参照字符;获取各字符对应的ASCII码值;以ASCII码值为参照值确定各初始***位置,基于各***位置预设的穿插间隔分别、依次将各子秘钥信息穿插在各密文信息中。
以第一子包的秘钥信息为例,比如第一子包的秘钥信息为″0123456789″,固定长度为5,那么就可以将秘钥信息拆分为两个子秘钥信息,分别为:第一子秘钥信息″01234″和第二子秘钥信息″56789″。
进一步地,确定出***参照位为末位,提取参照位为末位,那么提取参照位对应的字符就为″9″,再获取到″9″对应的ASCII码为″57″,以第″57″个字节为初始***位置,就可以把第一子秘钥信息***初始位置处;再基于初始***位置及预设的穿插间隔确定第二***位置,将第二子秘钥信息***第二***位置处,完成隐藏。
这样,在加密后如果秘钥信息所在字段发生变化,解密时按照常规的破解方法提取的秘钥信息肯定不正确,解密后的明文就面目全非;如果密文所在字段发生变化,按照常规方法解密后,解密后的明文也会跟原文存在显著差异。
为了进一步避免补丁包被篡改,当按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密钥信息中后,还包括:按照预设的集成协议对加密后的各子包进行集成;集成协议中包括:循环冗余校验算法CRC校验值及补丁包版本信息的消息摘要算法MD5校验值。即客户端接收到补丁包后,即使对补丁包解密成功,还需要计算CRC校验值及MD5校验值,当CRC校验值与集成协议中的CRC校验值一致,且MD5校验值与集成协议中的MD5校验值均一致时,才能确定客户端为正常用户,可以正常使用该补丁包。
本发明实施例提供的一种补丁包的防篡改方法中,获取补丁包的各子包;按照预设的提取规则分别随机提取各子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中;如此,随机在各子包中分别提明文信息当作秘钥信息,基于各个秘钥信息分别对各子包进行加密后,按照预设的隐藏规则将各秘钥信息隐藏在密文信息中,这样由于秘钥信息是的随机性比较大,且每个子包的秘钥信息都不相同,且隐藏在各子包的字段中,增强了破解难度及篡改难度;另外,同时配合CRC校验值及MD5校验值对客户端进行校验,当解密成功且校验成功后,方可使用补丁包,进而确保了补丁包的安全性。
实施例二
基于前述实施例,本实施例还提供一种补丁包防篡改的装置,该装置可以应用于服务器,如图2所示,该装置20包括:获取单元21、提取单元22、加密单元23及隐藏单元24;其中,获取单元21用于获取补丁包的各子包;提取单元22用于按照预设的提取规则分别随机提取各子包的明文信息;随机提取到的各明文信息为各秘钥信息;加密单元23用于基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;隐藏单元24用于按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中。
具体地,补丁包在交给厂商进行签名之前,需要对补丁包进行加密处理,防止非正常用户对补丁包进行篡改。
这里,补丁包一般是由多个子包构成,因而获取单元需要获取到各个子包。
在本发明其他实施例中,获取到各个子包后,提取单元还可以用于按照预设的提取规则分别随机提取各子包的明文信息,并将随机提取到的各明文信息作为各秘钥信息;这样各秘钥信息就是随机产生的,没有规律可以参照,增强了秘钥信息的破解难度。
具体地,提取单元按照预设的提取规则分别随机提取各子包的明文信息,包括:基于指定的提取位置从各子包的字段中提取预设长度的明文信息。
比如,当指定的各提取位置相同时,指定的各提取位置均为第十个字节,预设的长度为十字节,那么在提取明文信息时,从第十个字开始提取长度为十字节的明文信息。
当指定的各位置不同时,比如为第一个子包指定的提取位置为第十个字节,为第二个子包指定的提取位置为第十一个字节;那么在提取第一个子包的明文信息时,从第十个字节开始提取长度为十字节的明文信息。在提取第二个子包的明文信息时,从第十一个字节开始提取长度为十字节的明文信息。
当然,每个子包提取的明文信息的长度可以是相同,也可以是不同的。
在本发明其他实施例中,提取单元可以具体用于:获取各子包标识ID的字符串;根据预设的提取参照位分别从各ID的字符串中获取各参照字符;按照预设的第一转换规则,分别将各参照字符转换为相应的数值;基于各数值确定各提取位置,基于各提取位置分别提取预设长度的各明文信息。
其中,预设的第一转换规则可以包括多种:比如将字符与十进制数值对应转换,将字符与ASCII码值进行对应转换。
这里,当将字符与ASCII码值进行对应转换时,获取各子包标识ID的字符串后,根据预设的提取参照位分别从各ID的字符串中获取各参照字符;获取各字符对应的ASCII码值;以ASCII码值为参照值确定各提取位置,基于各提取位置分别提取预设长度的各明文信息。
具体地,以补丁包的第一个子包为例,获取第一个子包的ID字符串,根据预设的提取参照位ID字符串中获取参照字符;其中,提取参照位可以为ID字符串中的任意一位,比如首位或末位。
比如第一个子包的ID字符串为″12345″,提取参照位为末位,那么提取参照位对应的字符就为″5″,再获取到″5″对应的ASCII码为″53″,以第″53″个字节为提取位置,提取预设长度的明文信息。
在本发明其他实施例中,提取单元可以具体用于:利用散列函数分别随机提取各子包的明文信息。
比如,对散列函数输入任意长度的字符串,可以输出一个具体的数值,那么就可以以这个数值为提取位置,提取预设长度的明文信息。
在本发明其他实施例中,提取单元可以具体用于:获取各子包标识ID的字符串;按照预设的第一转换规则,分别将字符串中的各字符转换为相应的数值;对各数值取平均值;基于平均值确定提取位置;基于提取位置分别提取预设长度的各明文信息。
同样还是以补丁包的第一个子包为例,获取第一个子包的ID字符串,根据预设的提取参照位ID字符串中获取参照字符;其中,提取参照位可以为ID字符串中的任意一位,比如首位或末位。
比如第一个子包的ID字符串为″12345″,那么对应的字符就分别为″1″、″2″、″3″、″4″和″5″,再分别获取到各个字符对应的ASCII码值,分别为″49″、″50″、″51″、″53″和″53″,上述ASCII码值的平均值为″51″,那么就以第″51″个字节为提取位置,提取预设长度的明文信息。
在本发明其他实施例中,当提取单元提取到各秘钥信息后,加密单元用于按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息。
这里,预设的加密算法可以为任何一种加密算法,比如RES加密算法、DES加密算法等,在此不做限制。
在本发明其他实施例中,加密单元对各子包的明文信息进行加密,形成各密文信息后,为了增强秘钥信息的隐秘性,隐藏单元还需按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中。
那么,隐藏单元可以具体用于,包括:将各秘钥信息拆分为多个固定长度的子秘钥信息;确定各秘钥信息的各初始***位置;基于各初始***位置及预设的位置偏移量依次将各子秘钥信息穿插在相应的各密文信息中。
以第一子包的秘钥信息为例,比如第一子包的秘钥信息为″0123456789″,固定长度为5,那么就可以将秘钥信息拆分为两个子秘钥信息,分别为:第一子秘钥信息″01234″和第二子秘钥信息″56789″。
接下来,确定出第一子包的秘钥信息在密文中的初始***位置,初始***位置是预设的,然后将第一子秘钥信息***初始***位置。再基于初始***位置及预设的位置偏移量确定第二***位置,将第二子秘钥信息***第二***位置处,完成隐藏。
或者,在本发明其他实施例中,隐藏单元还可以用于:将各秘钥信息拆分为多个固定长度的子秘钥信息;确定各秘钥信息的各***参照位;获取各***参照位的参照字符;按照预设的第二转换规则,分别将各参照字符转换为相应的数值;基于各数值确定秘钥信息的各初始***位置;基于各初始***位置及预设的穿插间隔依次将各子秘钥信息穿插在相应的各密文信息中。
其中,***参照位可以为秘钥信息中的任意一位,比如首位或末位。
同样地,预设的第二转换规则也可以包括多种:比如将字符与十进制数值对应转换,将字符与ASCII码值进行对应转换。
这里,当将字符与ASCII码值进行对应转换时,获取各秘钥信息的各***参照位后,根据预设的***参照位从各秘钥信息的字符串中获取各参照字符;获取各字符对应的ASCII码值;以ASCII码值为参照值确定各初始***位置,基于各***位置预设的穿插间隔分别、依次将各子秘钥信息穿插在各密文信息中。
以第一子包的秘钥信息为例,比如第一子包的秘钥信息为″0123456789″,固定长度为5,那么就可以将秘钥信息拆分为两个子秘钥信息,分别为:第一子秘钥信息″01234″和第二子秘钥信息″56789″。
接下来,确定出***参照位为末位,提取参照位为末位,那么提取参照位对应的字符就为″9″,再获取到″9″对应的ASCII码为″57″,以第″57″个字节为初始***位置,就可以把第一子秘钥信息***初始位置处;再基于初始***位置及预设的穿插间隔确定第二***位置,将第二子秘钥信息***第二***位置处,完成隐藏。
这样,在加密后如果秘钥信息所在字段发生变化,解密时按照常规的破解方法提取的秘钥信息肯定不正确,解密后的明文就面目全非;如果密文所在字段发生变化,按照常规方法解密后,解密后的明文也会跟原文存在显著差异。
为了进一步避免补丁包被篡改,当按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密钥信息中后,集成单元25还用于:按照预设的集成协议对加密后的各子包进行集成;集成协议中包括:循环冗余校验算法CRC校验值及补丁包版本信息的消息摘要算法MD5校验值。即客户端接收到补丁包后,即使对补丁包解密成功,还需要计算CRC校验值及MD5校验值,当CRC校验值与集成协议中的CRC校验值一致,且MD5校验值与集成协议中的MD5校验值均一致时,才能确定客户端为正常用户,可以正常使用该补丁包。
本发明实施例提供的一种补丁包防篡改的装置,该装置获取补丁包的各子包;按照预设的提取规则分别随机提取各子包的明文信息;随机提取到的各明文信息为各秘钥信息;基于各秘钥信息,按照预设的加密算法对各子包的明文信息进行加密,形成各密文信息;按照预设的隐藏规则分别将各秘钥信息隐藏至相应的各密文信息中;如此,随机在各子包中分别提明文信息当作秘钥信息,基于各个秘钥信息分别对各子包进行加密后,按照预设的隐藏规则将各秘钥信息隐藏在密文信息中,这样由于秘钥信息是的随机性比较大,且每个子包的秘钥信息都不相同,且隐藏在各子包的字段中,增强了破解难度及篡改难度;另外,同时配合CRC校验值及MD5校验值对客户端进行校验,当解密成功且校验成功后,方可使用补丁包,进而确保了补丁包的安全性。
基于同一发明构思,本发明实施例还提供一种服务器,如图3所示,该服务器30可以包括:存储器31和处理器32,处理器32被配置为运行存储器31中的程序指令301,所述程序指令301用以实现上述一个或者多个技术方案所述的补丁包的防篡改方法的步骤。
本发明实施例还提供一种补丁包的防篡改方法,所述方法包括:
获取所述补丁包的各子包;
按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各秘钥信息;
基于各所述秘钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;
按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中。
按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密钥信息中后,还包括:
按照预设的集成协议对加密后的各所述子包进行集成;所述集成协议中包括:循环冗余校验算法CRC校验值及所述补丁包版本信息的消息摘要算法MD5校验值。
A3、根据A1所述的方法,所述按照预设的提取规则分别随机提取各所述子包的明文信息,包括:
基于指定的各提取位置从各所述子包中提取预设长度的所述明文信息。
A4、根据A1所述的方法,所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
获取各所述子包标识ID的字符串;
根据预设的提取参照位分别从各所述ID的字符串中获取各参照字符;
按照预设的第一转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定各提取位置,基于各所述提取位置分别提取预设长度的各明文信息。
A5、根据A1所述的方法,所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
利用散列函数分别随机提取各所述子包的明文信息。
A6、根据A1所述的方法,所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
获取各所述子包标识ID的字符串;
按照预设的第一转换规则,分别将所述字符串中的各字符转换为相应的数值;
对各所述数值取平均值;
基于所述平均值确定提取位置;
基于所述提取位置分别提取预设长度的各明文信息。
A7、根据A1所述的方法,所述按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中,包括:
将各所述秘钥信息拆分为多个固定长度的子秘钥信息;
确定各所述秘钥信息的各初始***位置;
基于各所述初始***位置及预设的位置偏移量依次将各所述子秘钥信息穿插在相应的各所述密文信息中。
A8、根据A1所述的方法,所述按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中,还包括:
将各所述秘钥信息拆分为多个固定长度的子秘钥信息;
确定各所述秘钥信息的各***参照位;
获取各所述***参照位的参照字符;
按照预设的第二转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定所述秘钥信息的各初始***位置;
基于各所述初始***位置及预设的穿插间隔依次将各所述子秘钥信息穿插在相应的各所述密文信息中。
本发明实施例还提供B9、一种补丁包的防篡改装置,所述装置包括:
获取单元,用于获取所述补丁包的各子包;
提取单元,用于按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各秘钥信息;
加密单元,用于基于各所述秘钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;
隐藏单元,用于按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密文信息中。
B10、根据B9所述的装置,所述装置还包括:集成单元,在所述隐藏单元按照预设的隐藏规则分别将各所述秘钥信息隐藏至相应的各所述密钥信息中的情况下,用于按照预设的集成协议对加密后的各所述子包进行集成;所述集成协议中包括:循环冗余校验算法CRC校验值及所述补丁包版本信息的消息摘要算法MD5校验值。
B11、根据B9所述的装置,所述提取单元具体用于:
基于指定的提取位置从各所述子包中提取预设长度的所述明文信息。
B12、根据B9所述的装置,所述提取单元具体还用于:
获取各所述子包标识ID的字符串;
根据预设的提取参照位分别从各所述ID的字符串中获取各参照字符;
按照预设的第一转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定各提取位置,基于各所述提取位置分别提取预设长度的各明文信息。
B13、根据B9所述的装置,所述提取单元具体还用于:
利用散列函数分别随机提取各所述子包的明文信息。
B14、根据B9所述的装置,所述提取单元具体还用于:
获取各所述子包标识ID的字符串;
按照预设的第一转换规则,分别将所述字符串中的各字符转换为相应的数值;
对各所述数值取平均值;
基于所述平均值确定提取位置;
基于所述提取位置分别提取预设长度的各明文信息。
B15、根据B9所述的装置,所述隐藏单元具体用于:
将各所述秘钥信息拆分为多个固定长度的子秘钥信息;
确定各所述秘钥信息的各初始***位置;
基于各所述初始***位置及预设的位置偏移量依次将各所述子秘钥信息穿插在相应的各所述密文信息中。
B16、根据B9所述的装置,所述隐藏单元具体还用于:
确定各所述秘钥信息的各***参照位;
获取各所述***参照位的参照字符;
按照预设的第二转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定所述秘钥信息的各初始***位置;
基于各所述初始***位置及预设的穿插间隔分别将各所述子秘钥信息穿插在相应的各所述密文信息中。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网关、代理服务器、***中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种补丁包的防篡改方法,其特征在于,所述方法包括:
获取所述补丁包的各子包;
按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各密钥信息;
基于各所述密钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;
按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各所述密文信息中;所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
获取各所述子包标识ID的字符串;
根据预设的提取参照位分别从各所述ID的字符串中获取各参照字符;
按照预设的第一转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定各提取位置,基于各所述提取位置分别提取预设长度的各明文信息。
2.如权利要求1所述的方法,其特征在于,所述按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各密文信息中后,还包括:
按照预设的集成协议对加密后的各所述子包进行集成;所述集成协议中包括:循环冗余校验算法CRC校验值及所述补丁包版本信息的消息摘要算法MD5校验值。
3.如权利要求1所述的方法,其特征在于,所述按照预设的提取规则分别随机提取各所述子包的明文信息,包括:
基于指定的各提取位置从各所述子包中提取预设长度的所述明文信息。
4.如权利要求1所述的方法,其特征在于,所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
利用散列函数分别随机提取各所述子包的明文信息。
5.如权利要求1所述的方法,其特征在于,所述按照预设的提取规则分别随机提取各所述子包的明文信息,还包括:
获取各所述子包标识ID的字符串;
按照预设的第一转换规则,分别将所述字符串中的各字符转换为相应的数值;
对各所述数值取平均值;
基于所述平均值确定提取位置;
基于所述提取位置分别提取预设长度的各明文信息。
6.如权利要求1所述的方法,其特征在于,所述按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各所述密文信息中,包括:
将各所述密钥信息拆分为多个固定长度的子密钥信息;
确定各所述密钥信息的各初始***位置;
基于各所述初始***位置及预设的位置偏移量依次将各所述子密钥信息穿插在相应的各所述密文信息中。
7.如权利要求1所述的方法,其特征在于,所述按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各所述密文信息中,还包括:
将各所述密钥信息拆分为多个固定长度的子密钥信息;
确定各所述密钥信息的各***参照位;
获取各所述***参照位的参照字符;
按照预设的第二转换规则,分别将各所述参照字符转换为相应的数值;
基于各所述数值确定所述密钥信息的各初始***位置;
基于各所述初始***位置及预设的穿插间隔依次将各所述子密钥信息穿插在相应的各所述密文信息中。
8.一种补丁包的防篡改装置,其特征在于,所述装置包括:
获取单元,用于获取所述补丁包的各子包;
提取单元,用于按照预设的提取规则分别随机提取各所述子包的明文信息;随机提取到的各明文信息为各密钥信息;
加密单元,用于基于各所述密钥信息,按照预设的加密算法对各所述子包的明文信息进行加密,形成各密文信息;
隐藏单元,用于按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各所述密文信息中;所述提取单元具体还用于:获取各所述子包标识ID的字符串;根据预设的提取参照位分别从各所述ID的字符串中获取各参照字符;按照预设的第一转换规则,分别将各所述参照字符转换为相应的数值;基于各所述数值确定各提取位置,基于各所述提取位置分别提取预设长度的各明文信息。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:集成单元,在所述隐藏单元按照预设的隐藏规则分别将各所述密钥信息隐藏至相应的各所述密钥信息中的情况下,用于按照预设的集成协议对加密后的各所述子包进行集成;所述集成协议中包括:循环冗余校验算法CRC校验值及所述补丁包版本信息的消息摘要算法MD5校验值。
10.根据权利要求8所述的装置,其特征在于,所述提取单元具体用于:基于指定的提取位置从各所述子包中提取预设长度的所述明文信息。
11.根据权利要求8所述的装置,其特征在于,所述提取单元具体还用于:利用散列函数分别随机提取各所述子包的明文信息。
12.根据权利要求8所述的装置,其特征在于,所述提取单元具体还用于:获取各所述子包标识ID的字符串;按照预设的第一转换规则,分别将所述字符串中的各字符转换为相应的数值;对各所述数值取平均值;基于所述平均值确定提取位置;基于所述提取位置分别提取预设长度的各明文信息。
13.根据权利要求8所述的装置,其特征在于,所述隐藏单元具体用于:将各所述密钥信息拆分为多个固定长度的子密钥信息;确定各所述密钥信息的各初始***位置;基于各所述初始***位置及预设的位置偏移量依次将各所述子密钥信息穿插在相应的各所述密文信息中。
14.根据权利要求8所述的装置,其特征在于,所述隐藏单元具体还用于:确定各所述密钥信息的各***参照位;获取各所述***参照位的参照字符;按照预设的第二转换规则,分别将各所述参照字符转换为相应的数值;基于各所述数值确定所述密钥信息的各初始***位置;基于各所述初始***位置及预设的穿插间隔分别将各子密钥信息穿插在相应的各所述密文信息中。
15.一种服务器,其特征在于,包括:存储器和处理器,其中,所述处理器被配置为运行所述存储器中的程序指令,所述程序指令用以实现权利要求1-7任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711311892.7A CN108052836B (zh) | 2017-12-11 | 2017-12-11 | 一种补丁包的防篡改方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711311892.7A CN108052836B (zh) | 2017-12-11 | 2017-12-11 | 一种补丁包的防篡改方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108052836A CN108052836A (zh) | 2018-05-18 |
CN108052836B true CN108052836B (zh) | 2021-06-04 |
Family
ID=62124120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711311892.7A Active CN108052836B (zh) | 2017-12-11 | 2017-12-11 | 一种补丁包的防篡改方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108052836B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309655B (zh) * | 2019-07-05 | 2021-08-17 | 武汉绿色网络信息服务有限责任公司 | 一种检测app更新过程中安全性的方法以及检测装置 |
CN110912680B (zh) * | 2019-11-26 | 2023-06-27 | 福建汉特云智能科技有限公司 | 一种提高车况数据安全性的数据传输方法及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1659494A (zh) * | 2002-04-12 | 2005-08-24 | 英特尔公司 | 微码补丁验证 |
CN102073829A (zh) * | 2011-01-10 | 2011-05-25 | 杭州电子科技大学 | 基于声纹的文档加密及解密方法 |
CN104410493A (zh) * | 2014-11-07 | 2015-03-11 | 南方电网科学研究院有限责任公司 | 基于分布式***基础架构的数据安全存储及读取方法 |
CN104954050A (zh) * | 2015-05-08 | 2015-09-30 | 深圳君正时代集成电路有限公司 | 一种蓝牙设备间的连接建立方法、***及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020007453A1 (en) * | 2000-05-23 | 2002-01-17 | Nemovicher C. Kerry | Secured electronic mail system and method |
-
2017
- 2017-12-11 CN CN201711311892.7A patent/CN108052836B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1659494A (zh) * | 2002-04-12 | 2005-08-24 | 英特尔公司 | 微码补丁验证 |
CN102073829A (zh) * | 2011-01-10 | 2011-05-25 | 杭州电子科技大学 | 基于声纹的文档加密及解密方法 |
CN104410493A (zh) * | 2014-11-07 | 2015-03-11 | 南方电网科学研究院有限责任公司 | 基于分布式***基础架构的数据安全存储及读取方法 |
CN104954050A (zh) * | 2015-05-08 | 2015-09-30 | 深圳君正时代集成电路有限公司 | 一种蓝牙设备间的连接建立方法、***及装置 |
Non-Patent Citations (1)
Title |
---|
"补丁管理***数据库研究与实现";余超;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108052836A (zh) | 2018-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324143B (zh) | 数据传输方法、电子设备及存储介质 | |
CN108023874B (zh) | 单点登录的校验装置、方法及计算机可读存储介质 | |
KR102539111B1 (ko) | 메시지 부호화 및 복호화를 위한 블록 암호화 방법 및 이 방법을 구현하기 위한 암호화 장치 | |
CN110401615B (zh) | 一种身份认证方法、装置、设备、***及可读存储介质 | |
CN104104517B (zh) | 一次性密码验证的方法和*** | |
US9537657B1 (en) | Multipart authenticated encryption | |
US8995653B2 (en) | Generating a secret key from an asymmetric private key | |
CN106789075B (zh) | Pos数字签名防切机*** | |
CN108259407B (zh) | 一种基于时间戳的对称加密方法及*** | |
JP2016515235A5 (zh) | ||
CN103595698B (zh) | 一种数字权益管理方法 | |
AU2018200866A1 (en) | POS System with white box encryption key sharing | |
CN106027228B (zh) | 一种网页标识的加解密方法及其加解密*** | |
US9252944B2 (en) | Key wrapping for common cryptographic architecture (CCA) key token | |
JP5206992B2 (ja) | 認証システム、認証装置、端末装置、認証方法、及びプログラム | |
CN100401309C (zh) | 税控设备软件版本智能升级加密验证方法 | |
CN108052836B (zh) | 一种补丁包的防篡改方法、装置及服务器 | |
US10726161B2 (en) | Information processing device and malicious message detection method | |
CN117436043A (zh) | 待执行文件的来源验证方法、设备以及可读存储介质 | |
CN110149205B (zh) | 一种利于区块链保护物联网终端的方法 | |
Keleman et al. | Secure firmware update in embedded systems | |
CN111081338A (zh) | 安全型人体健康参数采集方法 | |
CN111949996A (zh) | 安全私钥的生成方法、加密方法、***、设备及介质 | |
US10200348B2 (en) | Method to detect an OTA (over the air) standard message affected by an error | |
CN116781265A (zh) | 一种数据加密的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |