CN112367157B - 一种物联网环境加密方法及装置 - Google Patents
一种物联网环境加密方法及装置 Download PDFInfo
- Publication number
- CN112367157B CN112367157B CN202011195187.7A CN202011195187A CN112367157B CN 112367157 B CN112367157 B CN 112367157B CN 202011195187 A CN202011195187 A CN 202011195187A CN 112367157 B CN112367157 B CN 112367157B
- Authority
- CN
- China
- Prior art keywords
- encryption
- matrix
- data
- plaintext information
- preset
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- 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
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
- G16Y30/10—Security thereof
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y40/00—IoT characterised by the purpose of the information processing
- G16Y40/50—Safety; Security of things, users, data or systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种物联网环境加密方法,包括S1、获取明文信息及其携带的加密参数;其中,加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;S2、设置加密次数并初始为1;S3、判断当前加密次数是否小于等于加密总数;S4、若是,则基于加密参数中除加密总数之外的多个参数值,并结合当前加密次数,加密明文信息,得到加密矩阵,待将加密矩阵更新为明文信息以及将当前加密次数加一后,返回步骤S3;S5、若否,则将最后一次得到的加密矩阵作为密文输出。实施本发明,适用物联网计算和通信资源不充足的情况,解决了现有技术中加密方案开销过高且动态适应性差的问题。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种物联网环境加密方法及装置。
背景技术
配电网数字化转型过程中,各类传感器的大量部署促进了物联网技术的广泛应用。在基于物联网技术的配电网中,可以利用射频识别、二维码、传感器、内置移动通信模块等感知、捕获、测量技术随时随地地对电力设备、终端以及运行环境进行信息采集和获取。
随着大量连接实体的出现,使得基于物联网技术的配电网中的网络流量和存储容量也呈指数级增长,会因大量隐私信息的产生而带来网络安全方面的挑战。因此,数据机密性、数据完整性、身份验证等安全性措施是基于物联网技术的配电网中最具挑战性的要求。
任何物联网架构及其标准协议,必须确保物联网设备和云中心之间交换的信息在传输之前得到足够的安全加密。目前,互联网经常使用超平面分割、朴素贝叶斯和决策树等分类器等实现同态加密,并构建了Paillier加密方案、ElGamal加密方案和BGN加密方案,但上述加密方案带来的开销过高,且上述加密方案仅基于计算和通讯资源都充足的网络架构上,导致动态适应性差,无法适用物联网计算和通信资源不充足的情况。
发明内容
本发明实施例所要解决的技术问题在于,提供一种物联网环境加密方法及装置,适用物联网计算和通信资源不充足的情况,解决了现有技术中加密方案开销过高且动态适应性差的问题。
为了解决上述技术问题,本发明实施例提供了一种物联网环境加密方法,所述方法包括以下步骤:
S1、获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
S2、设置加密次数并初始为1;
S3、判断当前加密次数是否小于等于所述加密总数;
S4、若是,则基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一后,返回步骤S3;
S5、若否,则将最后一次得到的加密矩阵作为密文输出。
其中,在所述明文信息是以数据块为二进制编码0或1排列而成的单行矩阵时,通过对所述明文信息采用取反加密、右迁加密及重排加密之中至少一种操作,得到所述加密矩阵。
其中,所述对所述明文信息采用取反加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第一运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述数据取反操作具体为1变0,0变1。
其中,所述利用预设的第一运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第一运算公式rer=mod((K×(M-r)),B),计算得到数据取反操作所需的起始位置;其中,rer为第r次加密次数所对应数据取反操作所需的起始位置;mod()为取余函数;K为密钥长度;M为运算常量因子,且大于所述加密总数;r为当前加密次数;B为加密数据块的大小;
按照从左至右的顺序,统计出所述明文信息中每一个数据块的位置i及其对应的二进制编码;其中,i=1、2、…、B;
基于所得到的数据取反操作所需的起始位置,采用预设的数据取反规则,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述预设的数据取反规则为,若i≥rer,则对所述明文信息中位置i上数据块的二进制编码采用1变0或0变1的操作;若i<rer,则保留所述明文信息中位置i上数据块原有的二进制编码。
其中,在对所述明文信息采用取反加密操作之后,还通过对所述明文信息采用取反加密操作所得到的数据取反矩阵采用右迁加密操作,得到所述加密矩阵。
其中,所述对所述明文信息取反加密操作方式所得到的数据取反矩阵采用右迁加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第二运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,得到数据右迁操作所需的起始位置,且进一步根据所得到的数据右迁操作所需的起始位置,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出。
其中,所述利用预设的第二运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,得到数据右迁操作所需的起始位置,且进一步根据所得到的数据右迁操作所需的起始位置,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第二运算公式rgr=mod((K×(M+r)),B),计算得到数据右迁操作所需的起始位置;其中,rgr为第r次加密次数所对应数据右迁操作所需的起始位置;
按照从左至右的顺序,统计出所述数据取反矩阵中每一个数据块的位置i及其对应的二进制编码;
基于所得到的数据右迁操作所需的起始位置,采用预设的数据右迁规则,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出;其中,所述预设的数据右迁规则具体为,若i<rgr,则保留所述数据取反矩阵中位置i上数据块原有的二进制编码;若rgr≤i<rgr+r,则将所述数据取反矩阵中位置i上数据块的二进制编码与位置i+r上数据块的二进制编码进行互换;若rgr+r≤i≤B,则将所述数据取反矩阵中位置i上数据块的二进制编码与位置i-r上数据块的二进制编码进行互换。
其中,在对所述数据取反矩阵采用右迁加密操作之后,还通过对所述数据取反矩阵采用右迁加密操作所得到的数据右迁矩阵采用重排加密操作,得到所述加密矩阵。
其中,所述对所述数据取反矩阵采用右迁加密操作所得到的数据右迁矩阵采用重排加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第三运算公式,计算所述明文信息的比特特征值,用以形成比特特征矩阵,且让所述比特特征矩阵按照预定规则排序生成参考矩阵,进一步以所述参考矩阵为依据,对所述数据右迁矩阵中数据块进行位置调整,得到数据重排矩阵并作为所述加密矩阵输出。
其中,所述利用预设的第三运算公式,计算所述明文信息的比特特征值,用以形成比特特征矩阵,且让所述比特特征矩阵按照预定规则排序生成参考矩阵,进一步以所述参考矩阵为依据,对所述数据右迁矩阵中数据块进行位置调整,得到数据重排矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第三运算公式vi=mod((B×(K-i)),K),以比特为单位计算出所述明文信息的比特特征值,并根据所计算出的比特特征值,生成所述比特特征矩阵;其中,vi为数据块位置i的比特特征值;
在所述比特特征矩阵中,按照从小到大的顺序排列比特特征值,生成与所述数据右迁矩阵中数据块位置形成映射关系的参考矩阵;
根据所述参考矩阵,对应对所述数据右迁矩阵中数据块位置进行调整,得到数据重排矩阵并作为所述加密矩阵输出。
本发明实施例还提供了一种物联网环境加密装置,包括:
获取单元,用于获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
初始单元,用于设置加密次数并初始为1;
判断单元,用于判断当前加密次数是否小于等于所述加密总数;
加密单元,用于若当前加密次数小于等于所述加密总数,则基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一;
输出单元,用于若当前加密次数大于所述加密总数,则将最后一次得到的加密矩阵作为密文输出。
实施本发明实施例,具有如下有益效果:
1、本发明在加密过程中,不仅数据加密分成多次且加密次数是可变的,可在高速和高安全性之间进行灵活选择,同时加密数据块的大小可灵活选择,能够能适应不同数据长度的设备并可根据通信资源灵活选择,而且密钥长度和运算常量因子可公开发布,适用于物联网环境下海量终端与用户之间或与云平台之间的访问控制,因此非常适用于物联网计算和通信资源不充足的情况下使用,解决了现有技术中加密方案动态适应性差的问题;
2、本发明的明文信息是以数据块为二进制编码0或1排列而成的单行矩阵,可通过取反加密、右迁加密及重排加密之中至少一种操作进行加密,不仅数据加密性强,且开销小,因此解决了现有技术中加密方案开销过高的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,根据这些附图获得其他的附图仍属于本发明的范畴。
图1为本发明实施例提供的一种物联网环境加密方法的流程图;
图2为本发明实施例提供的一种物联网环境加密装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
如图1所示,为本发明实施例中,提供的一种物联网环境加密方法,所述方法包括以下步骤:
步骤S1、获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
步骤S2、设置加密次数并初始为1;
步骤S3、判断当前加密次数是否小于等于所述加密总数;若是,则执行下一步骤S4;若否,则跳转至步骤S5;
步骤S4、基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一后,返回步骤S3;
步骤S5、将最后一次得到的加密矩阵作为密文输出。
具体过程为,在步骤S1中,明文信息以多种方式组合得到,如数字、字母、字符等单一或混合排列。鉴于物联网计算和通信资源不充足的情况,可以采用的明文信息是以数据块为二进制编码0或1排列而成的单行矩阵。例如,明文信息pd=[pd1,pd2,pdi,…,pdB];其中,pd1至pdB为0或1的数据块。
同时,该明文信息设置有加密参数,该加密参数包括密钥长度K、加密数据块的大小B、运算常量因子M及加密总数N。应当说明的是密钥K和运算常量因子M可以公开发布;加密数据块的大小B可以灵活选择(如所有数据块),能够能适应不同数据长度的设备并根据通信资源灵活选择;加密总数N预先设置,其大小应尽量小于运算常量因子M。
在步骤S2中,对加密次数r初始化,初始值r=1。
在步骤S3中,对明文信息的加密过程是否完毕进行判断;若当前加密次数r≤加密总数N,则执行步骤S4,进行加密得到加密矩阵;否则,跳转至步骤S5,输出最后一次加密得到的加密矩阵为密文。
在步骤S4中,可以根据当前加密次数r以及加密参数中密钥长度K、加密数据块的大小B和运算常量因子M,加密明文信息,得到加密矩阵。
此时,由于明文信息pd=[0 1 1 ... 0],因此可以通过对明文信息采用取反加密、右迁加密及重排加密之中至少一种操作,得到加密矩阵。可以理解的是,明文信息可以单独取反加密、右迁加密及重排加密之中一种重复加密直至加密总数达到N为止,也可以取反加密、右迁加密及重排加密之中进行混合加密重复加密直至加密总数达到N为止,且在混合加密时,混合的多种加密操作的先后次序可以调整。
最后,将加密矩阵更新为明文信息以及将当前加密次数r=r+1后,返回步骤S3,重复执行加密,直至加密总数N执行完毕。
在本发明实施例中,可以通过包括但不限于以下几种加密操作来得到加密矩阵。
(1)在第一个实施例中,对明文信息采用取反加密操作,得到加密矩阵。
该方式具体实现为,利用预设的第一运算公式,提取当前加密次数r以及加密参数中密钥长度K、加密数据块的大小B和运算常量因子M进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对明文信息进行数据取反操作,得到数据取反矩阵并作为加密矩阵输出;其中,数据取反操作具体为1变0,0变1。
例如,第一步、通过预设的第一运算公式(1),计算得到数据取反操作所需的起始位置;
rer=mod((K×(M-r)),B) (1);
其中,rer为第r次加密次数所对应数据取反操作所需的起始位置;mod()为取余函数;
第二步、按照从左至右的顺序,统计出明文信息pd=[pd1,pd2,pdi,…,pdB]中每一个数据块的位置i及其对应的二进制编码;其中,i=1、2、…、B;
第三步、基于所得到的数据取反操作所需的起始位置,采用预设的数据取反规则,对明文信息进行数据取反操作,得到数据取反矩阵pd′=[pd′1,pd′2,pd′i,…,pd′B]并作为加密矩阵输出。
其中,预设的数据取反规则为,若i≥rer,则对明文信息中位置i上数据块的二进制编码采用1变0或0变1的操作,即i≥rer时,pd′i=1-pdi;
若i<rer,则保留明文信息中位置i上数据块原有的二进制编码,即i<rer时,pd′i=pdi。
(2)在第二个实施例中,对明文信息采用右迁加密操作,得到加密矩阵。
该方式具体实现为,利用预设的第二运算公式,提取当前加密次数r以及加密参数中密钥长度K、加密数据块的大小B和运算常量因子M进行计算,计算得到数据右迁操作所需的起始位置,且进一步根据所得到的数据右迁操作所需的起始位置,对明文信息进行数据右迁操作,得到数据右迁矩阵并作为加密矩阵输出。
例如,第一步、预设的第二运算公式(2),计算得到数据右迁操作所需的起始位置;
rgr=mod((K×(M+r)),B) (2);
其中,rgr为第r次加密次数所对应数据右迁操作所需的起始位置。
第二步、按照从左至右的顺序,统计出明文信息pd=[pd1,pd2,pdi,…,pdB]中每一个数据块的位置i及其对应的二进制编码;其中,i=1、2、…、B;
第三步、基于所得到的数据右迁操作所需的起始位置,采用预设的数据右迁规则,对明文信息进行数据右迁操作,得到数据右迁矩阵pd″=[pd″1,pd″2,pd″i,…,pd″B]并作为加密矩阵输出。
其中,预设的数据右迁规则具体为,若i<rgr,则保留明文信息中位置i上数据块原有的二进制编码,即i<rgr时,pd″i=pdi;
若rgr≤i<rgr+r,则将明文信息中位置i上数据块的二进制编码与位置i+r上数据块的二进制编码进行互换,即rgr≤i<rgr+r时,pd″i=pdi+r;
若rgr+r≤i≤B,则将明文信息中位置i上数据块的二进制编码与位置i-r上数据块的二进制编码进行互换,即rgr+r≤i≤B时,pd″i=pdi-r。
(3)在第三个实施例中,对明文信息采用重排加密操作,得到加密矩阵。
该方式具体实现为,利用预设的第三运算公式,计算明文信息的比特特征值,用以形成比特特征矩阵,且让比特特征矩阵按照预定规则排序生成参考矩阵,进一步以参考矩阵为依据,对明文信息中数据块进行位置调整,得到数据重排矩阵并作为加密矩阵输出。
例如,第一步、通过预设的第三运算公式(3),以比特为单位计算出明文信息pd=[pd1,pd2,pdi,…,pdB]的比特特征值;
vi=mod((B×(K-i)),K) (3);
其中,vi为数据块位置i的比特特征值;
根据所计算出的比特特征值vi,生成比特特征矩阵V,如下式(4)所示;
V=[v1,v2,vi,…,vB] (4)。
第二步、在比特特征矩阵V中,按照从小到大的顺序排列比特特征值,生成与明文信息中数据块位置形成映射关系的参考矩阵V′=[v′1,v′2,v′j,…,v′B]。
第三步、根据参考矩阵V/,对应对明文信息数据块位置进行调整,得到数据重排矩阵pd″′=[pd″′1,pd″′2,pd″′i,…,pd″′B]并作为加密矩阵输出。其中,若v′j=vi,则pd″′j=pdi。
(4)在第三个实施例中,先对明文信息采用取反加密操作,其次进行右迁加密操作,之后进行排列加密操作,得到加密矩阵。
该方式具体实现为,首先,参照上述第(1)种情况对明文信息pd=[pd1,pd2,pdi,…,pdB]采用取反加密操作,得到数据取反矩阵pd′=[pd′1,pd′2,pd′i,…,pd′B],在此不再赘述;
其次,在对明文信息采用取反加密操作之后,还通过对明文信息采用取反加密操作所得到的数据取反矩阵pd′=[pd′1,pd′2,pd′i,…,pd′B]采用右迁加密操作,此时,在参照上述第(2)种情况的前提下,将明文信息替换成数据取反矩阵进行位置统计和数据右迁。
即,统计数据取反矩阵pd′=[pd′1,pd′2,pd′i,…,pd′B]中每一个数据块的位置i及其对应的二进制编码,采用预设的数据右迁规则,对数据取反矩阵进行数据右迁操作,得到数据右迁矩阵pd″=[pd″1,pd″2,pd″i,…,pd″B]。
其中,若i<rgr,则保留数据取反矩阵中位置i上数据块原有的二进制编码,即i<rgr时,pd″i=pd′i;
若rgr≤i<rgr+r,则将数据取反矩阵中位置i上数据块的二进制编码与位置i+r上数据块的二进制编码进行互换,即rgr≤i<rgr+r时,pd″i=pd′i+r;
若rgr+r≤i≤B,则将数据取反矩阵中位置i上数据块的二进制编码与位置i-r上数据块的二进制编码进行互换,即rgr+r≤i≤B时,pd″i=pd′i-r。
最后,在对数据取反矩阵采用右迁加密操作之后,还通过对数据取反矩阵采用右迁加密操作所得到的数据右迁矩阵pd″=[pd″1,pd″2,pd″i,…,pd″B]采用重排加密操作,得到数据重排矩阵pd″′=[pd″′1,pd″′2,pd″′i,…,pd″′B]并作为加密矩阵输出。此时,在参照上述第(3)种情况的前提下,只需将明文信息替换成数据右迁矩阵进行位置统计和重排。
即,根据参考矩阵V′=[v′1,v′2,v′j,…,v′B],让数据右迁矩阵pd″=[pd″1,pd″2,pd″i,…,pd″B]中数据块进行位置调整,得到数据重排矩阵pd″′=[pd″′1,pd″′2,pd″′i,…,pd″′B]并作为加密矩阵输出即可。
在本发明实施例中,以初始的明文信息为[10 0 1 0 0 1 0 0 0]为例进行说明,具体如下:
设置密钥K=52,运算常量因子M=3,加密数据块的大小B=10,加密总数N=1。
采用取反加密、右迁加密及重排加密的顺序依次对该明文信息进行加密操作,具体为:
根据公式(1),计算得到取反加密操作所需的起始位置为4,从而得到数据取反矩阵pd′=[1 0 0 0 1 1 0 1 1 1];
根据公式(2),计算得到右迁加密操作所需的起始位置为8,从而得到数据右迁矩阵pd″=[1 0 0 1 0 1 1 0 1 1];
根据公式(3),得到比特特征矩阵为[42 32 22 12 2 44 34 24 14 4],并让比特特征矩阵升序排列后的参考矩阵V′=[2 4 12 14 22 24 32 34 42 44],最后根据参考矩阵,得到数据重排矩阵pd″′=[0 1 1 1 0 0 0 1 1 1]并作为加密矩阵输出。
由于加密总数N=1,因此该数据重排矩阵pd″′=[0 1 1 1 0 0 0 1 1 1]作为最终的密文。
如图2所示,为本发明实施例中,提供的一种物联网环境加密装置,包括:
获取单元110,用于获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
初始单元120,用于设置加密次数并初始为1;
判断单元130,用于判断当前加密次数是否小于等于所述加密总数;
加密单元140,用于若当前加密次数小于等于所述加密总数,则基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一;
输出单元150,用于若当前加密次数大于所述加密总数,则将最后一次得到的加密矩阵作为密文输出。
实施本发明实施例,具有如下有益效果:
1、本发明在加密过程中,不仅数据加密分成多次且加密次数是可变的,可在高速和高安全性之间进行灵活选择,同时加密数据块的大小可灵活选择,能够能适应不同数据长度的设备并可根据通信资源灵活选择,而且密钥长度和运算常量因子可公开发布,适用于物联网环境下海量终端与用户之间或与云平台之间的访问控制,因此非常适用于物联网计算和通信资源不充足的情况下使用,解决了现有技术中加密方案动态适应性差的问题;
2、本发明的明文信息是以数据块为二进制编码0或1排列而成的单行矩阵,可通过取反加密、右迁加密及重排加密之中至少一种操作进行加密,不仅数据加密性强,且开销小,因此解决了现有技术中加密方案开销过高的问题。
值得注意的是,上述装置实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种物联网环境加密方法,其特征在于,所述方法包括以下步骤:
S1、获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
S2、设置加密次数并初始为1;
S3、判断当前加密次数是否小于等于所述加密总数;
S4、若是,则基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一后,返回步骤S3;
S5、若否,则将最后一次得到的加密矩阵作为密文输出;
其中,在所述明文信息是以数据块为二进制编码0或1排列而成的单行矩阵时,通过对所述明文信息采用取反加密、右迁加密及重排加密之中至少一种操作,得到所述加密矩阵;
其中,所述对所述明文信息采用取反加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第一运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述数据取反操作具体为1变0,0变1;
其中,所述利用预设的第一运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第一运算公式rer=mod((K×(M-r)),B),计算得到数据取反操作所需的起始位置;其中,rer为第r次加密次数所对应数据取反操作所需的起始位置;mod()为取余函数;K为密钥长度;M为运算常量因子,且大于所述加密总数;r为当前加密次数;B为加密数据块的大小;
按照从左至右的顺序,统计出所述明文信息中每一个数据块的位置i及其对应的二进制编码;其中,i=1、2、…、B;
基于所得到的数据取反操作所需的起始位置,采用预设的数据取反规则,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述预设的数据取反规则为,若i≥rer,则对所述明文信息中位置i上数据块的二进制编码采用1变0或0变1的操作;若i<rer,则保留所述明文信息中位置i上数据块原有的二进制编码。
2.如权利要求1所述的物联网环境加密方法,其特征在于,在对所述明文信息采用取反加密操作之后,还通过对所述明文信息采用取反加密操作所得到的数据取反矩阵采用右迁加密操作,得到所述加密矩阵。
3.如权利要求2所述的物联网环境加密方法,其特征在于,所述对所述明文信息取反加密操作方式所得到的数据取反矩阵采用右迁加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第二运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,得到数据右迁操作所需的起始位置,且进一步根据所得到的数据右迁操作所需的起始位置,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出。
4.如权利要求3所述的物联网环境加密方法,其特征在于,所述利用预设的第二运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,得到数据右迁操作所需的起始位置,且进一步根据所得到的数据右迁操作所需的起始位置,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第二运算公式rgr=mod((K×(M+r)),B),计算得到数据右迁操作所需的起始位置;其中,rgr为第r次加密次数所对应数据右迁操作所需的起始位置;
按照从左至右的顺序,统计出所述数据取反矩阵中每一个数据块的位置i及其对应的二进制编码;
基于所得到的数据右迁操作所需的起始位置,采用预设的数据右迁规则,对所述数据取反矩阵进行数据右迁操作,得到数据右迁矩阵并作为所述加密矩阵输出;其中,所述预设的数据右迁规则具体为,若i<rgr,则保留所述数据取反矩阵中位置i上数据块原有的二进制编码;若rgr≤i<rgr+r,则将所述数据取反矩阵中位置i上数据块的二进制编码与位置i+r上数据块的二进制编码进行互换;若rgr+r≤i≤B,则将所述数据取反矩阵中位置i上数据块的二进制编码与位置i-r上数据块的二进制编码进行互换。
5.如权利要求4所述的物联网环境加密方法,其特征在于,在对所述数据取反矩阵采用右迁加密操作之后,还通过对所述数据取反矩阵采用右迁加密操作所得到的数据右迁矩阵采用重排加密操作,得到所述加密矩阵。
6.如权利要求5所述的物联网环境加密方法,其特征在于,所述对所述数据取反矩阵采用右迁加密操作所得到的数据右迁矩阵采用重排加密操作,得到所述加密矩阵的具体步骤包括:
利用预设的第三运算公式,计算所述明文信息的比特特征值,用以形成比特特征矩阵,且让所述比特特征矩阵按照预定规则排序生成参考矩阵,进一步以所述参考矩阵为依据,对所述数据右迁矩阵中数据块进行位置调整,得到数据重排矩阵并作为所述加密矩阵输出。
7.如权利要求6所述的物联网环境加密方法,其特征在于,所述利用预设的第三运算公式,计算所述明文信息的比特特征值,用以形成比特特征矩阵,且让所述比特特征矩阵按照预定规则排序生成参考矩阵,进一步以所述参考矩阵为依据,对所述数据右迁矩阵中数据块进行位置调整,得到数据重排矩阵并作为所述加密矩阵输出的具体步骤包括:
通过预设的第三运算公式vi=mod((B×(K-i)),K),以比特为单位计算出所述明文信息的比特特征值,并根据所计算出的比特特征值,生成所述比特特征矩阵;其中,vi为数据块位置i的比特特征值;
在所述比特特征矩阵中,按照从小到大的顺序排列比特特征值,生成与所述数据右迁矩阵中数据块位置形成映射关系的参考矩阵;
根据所述参考矩阵,对应对所述数据右迁矩阵中数据块位置进行调整,得到数据重排矩阵并作为所述加密矩阵输出。
8.一种物联网环境加密装置,其特征在于,包括:
获取单元,用于获取明文信息及其携带的加密参数;其中,所述加密参数包括密钥长度、加密数据块的大小、运算常量因子及加密总数;
初始单元,用于设置加密次数并初始为1;
判断单元,用于判断当前加密次数是否小于等于所述加密总数;
加密单元,用于若当前加密次数小于等于所述加密总数,则基于所述加密参数中除所述加密总数之外的多个参数值,并结合当前加密次数,加密所述明文信息,得到加密矩阵,待将所述加密矩阵更新为所述明文信息以及将当前加密次数加一;
输出单元,用于若当前加密次数大于所述加密总数,则将最后一次得到的加密矩阵作为密文输出;
其中,在所述加密单元中,所述加密矩阵是在所述明文信息以数据块为二进制编码0或1排列而成的单行矩阵时,通过对所述明文信息采用取反加密、右迁加密及重排加密之中至少一种操作得到的;
其中,对所述明文信息采用取反加密操作得到所述加密矩阵是执行以下反加密模块来实现的;其中,所述反加密模块,用于利用预设的第一运算公式,提取当前加密次数以及所述加密参数中密钥长度、加密数据块的大小和运算常量因子进行计算,计算得到数据取反操作所需的起始位置,且进一步根据所得到的数据取反操作所需的起始位置,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述数据取反操作具体为1变0,0变1;
其中,所述反加密模块还包括:
起始位置定位子模块,用于通过预设的第一运算公式rer=mod((K×(M-r)),B),计算得到数据取反操作所需的起始位置;其中,rer为第r次加密次数所对应数据取反操作所需的起始位置;mod()为取余函数;K为密钥长度;M为运算常量因子,且大于所述加密总数;r为当前加密次数;B为加密数据块的大小;
位置统计子模块,用于按照从左至右的顺序,统计出所述明文信息中每一个数据块的位置i及其对应的二进制编码;其中,i=1、2、…、B;
取反加密子模块,用于基于所得到的数据取反操作所需的起始位置,采用预设的数据取反规则,对所述明文信息进行数据取反操作,得到数据取反矩阵并作为所述加密矩阵输出;其中,所述预设的数据取反规则为,若i≥rer,则对所述明文信息中位置i上数据块的二进制编码采用1变0或0变1的操作;若i<rer,则保留所述明文信息中位置i上数据块原有的二进制编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011195187.7A CN112367157B (zh) | 2020-10-31 | 2020-10-31 | 一种物联网环境加密方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011195187.7A CN112367157B (zh) | 2020-10-31 | 2020-10-31 | 一种物联网环境加密方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112367157A CN112367157A (zh) | 2021-02-12 |
CN112367157B true CN112367157B (zh) | 2023-05-12 |
Family
ID=74513921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011195187.7A Active CN112367157B (zh) | 2020-10-31 | 2020-10-31 | 一种物联网环境加密方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112367157B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110944A (zh) * | 2007-08-31 | 2008-01-23 | 湖北科创高新网络视频股份有限公司 | 一种视频数据的加密方法和装置 |
CN101237321A (zh) * | 2008-02-03 | 2008-08-06 | 西北农林科技大学 | 基于循环队列移位规则的加密方法 |
CN105281894A (zh) * | 2015-11-25 | 2016-01-27 | 深圳供电局有限公司 | 一种基于七阶幻立方的明文加密方法和系统 |
WO2018107949A1 (zh) * | 2016-12-13 | 2018-06-21 | 深圳市全同态科技有限公司 | 一种基于模运算的全同态加密处理方法 |
CN108400844A (zh) * | 2017-02-04 | 2018-08-14 | 华为技术有限公司 | 信息处理的方法、装置、通信设备和通信系统 |
-
2020
- 2020-10-31 CN CN202011195187.7A patent/CN112367157B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110944A (zh) * | 2007-08-31 | 2008-01-23 | 湖北科创高新网络视频股份有限公司 | 一种视频数据的加密方法和装置 |
CN101237321A (zh) * | 2008-02-03 | 2008-08-06 | 西北农林科技大学 | 基于循环队列移位规则的加密方法 |
CN105281894A (zh) * | 2015-11-25 | 2016-01-27 | 深圳供电局有限公司 | 一种基于七阶幻立方的明文加密方法和系统 |
WO2018107949A1 (zh) * | 2016-12-13 | 2018-06-21 | 深圳市全同态科技有限公司 | 一种基于模运算的全同态加密处理方法 |
CN108400844A (zh) * | 2017-02-04 | 2018-08-14 | 华为技术有限公司 | 信息处理的方法、装置、通信设备和通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112367157A (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Saračević et al. | Data encryption for Internet of Things applications based on catalan objects and two combinatorial structures | |
Zhang et al. | Embedding cryptographic features in compressive sensing | |
Wu et al. | Local Shannon entropy measure with statistical tests for image randomness | |
CN108898539B (zh) | 一种兼容jpeg压缩标准的彩色图像加密方法 | |
Ye et al. | A secure image encryption algorithm based on chaotic maps and SHA‐3 | |
CN111404943B (zh) | 数据的处理方法、装置、电子设备及计算机可读存储介质 | |
KR20150037913A (ko) | 공유 비밀키 생성 장치, 암호화 장치, 복호화 장치, 공유 비밀키 생성 방법, 암호화 방법, 복호화 방법, 및 프로그램 | |
CN1251232A (zh) | 对传输用的信号进行加密的方法和设备 | |
CN103888637B (zh) | 多路图像数字信息混沌加密的方法 | |
Abusukhon et al. | New direction of cryptography: A review on text-to-image encryption algorithms based on RGB color value | |
CN105447361A (zh) | 加密和相似性度量的方法、终端及服务器 | |
Bouslehi et al. | Innovative image encryption scheme based on a new rapid hyperchaotic system and random iterative permutation | |
Kumar et al. | Intertwining logistic map and Cellular Automata based color image encryption model | |
CN112202511A (zh) | 基于信道特征的物理层密钥生成方法及系统 | |
CN1032039C (zh) | 用于数字蜂窝式通信的加密系统 | |
CN113807534B (zh) | 联邦学习模型的模型参数训练方法、装置和电子设备 | |
Bhat et al. | Fuzzy extractor and chaos enhanced elliptic curve cryptography for image encryption and authentication | |
US6301361B1 (en) | Encoding and decoding information using randomization with an alphabet of high dimensionality | |
CN112367157B (zh) | 一种物联网环境加密方法及装置 | |
CN115022346B (zh) | 一种基于区块链的在线数据同步方法 | |
Hamdi et al. | An appropriate system for securing real-time voice communication based on ADPCM coding and chaotic maps | |
CN115567219A (zh) | 基于5g虚拟专网切片的安全通信方法、装置及存储介质 | |
CN115632765A (zh) | 加密方法、解密方法、装置、电子设备及存储介质 | |
CN112954388A (zh) | 一种数据文件的获取方法、装置、终端设备和存储介质 | |
Yang et al. | Encryption scheme with mixed homomorphic signature based on message authentication for digital image |
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 |