一种基于前缀编码的数据压缩和加密方法技术

技术编号:37966348 阅读:8 留言:0更新日期:2023-06-30 09:41
一种基于前缀编码的数据压缩和加密方法。涉及数据传输技术领域。包括以下步骤:S1、所有自组网终端设置一个初始全量字符集{x1,x2,

【技术实现步骤摘要】
一种基于前缀编码的数据压缩和加密方法


[0001]本专利技术涉及数据传输
,尤其涉及一种基于前缀编码的数据压缩和加密方法。

技术介绍

[0002]自组网是基于MESH技术为核心,宽带自组网系统采用无中心同频自组网技术及分布式网络架构。由于网络无中心,任意节点既是主机又是路由;因此,存在数据安全隐患。这样,数据需要加密传输,同时为了让自组网终端轻便,一般不会有太大的发射功率,因此实际带宽远远小于理论值,需要数据压缩传输。
[0003]然而,传统加密技术加密处理后,消息内容的长度和存储空间要远大于加密前的消息内容。如何能够实现加密和压缩是目前亟需解决的问题。
[0004]国家知识产权局于2016.09.28授权公告的公告号为CN 103178968 B,名称为“基于哈夫曼压缩的数据传输门限方案的加密方法”,包括:用户通过客户端将明文数据发送至服务器端;哈夫曼压缩算法根据明文中字符出现的概率进行编码,从而构建哈夫曼树;将哈夫曼树的每个字节作为共享的密钥s,门限方案为(t,n),计算得到n个影子,客户端将其中的m份影子发送到可信第三方CA;客户端将其t

m份影子和密文通过网络发送给服务器端;服务器端根据在收到t

m份影子和密文之后,向可信第三方CA发起获取m份影子的请求;可信第三方CA通过对服务器端的身份认证后,对服务器端的请求进行响应,发送m份影子给服务器端;服务器端根据门限方案,利用插值多项式恢复出哈夫曼树;服务器端根据哈夫曼树和密文,利用哈夫曼进行解压缩,得到明文。
[0005]其应用于明文数据传输接收中,可以利用其简洁高效的编码解码效率,大大降低了密文的长度及存储空间,增强信道的传输速率,从而减少数据的传输延迟;同时,利用门限方案和可信第三方增加了传输数据的安全性。
[0006]然而,其存在的缺陷为:该方法需要一个可信的第三方CA托管m份影子,如果没有第三方CA,门限方案将无法实施,对于自组网环境很难找到可信的第三方CA。

技术实现思路

[0007]本专利技术旨在至少解决现有技术中存在的技术问题之一。
[0008]本专利技术的技术方案为:一种基于前缀编码的数据压缩和加密方法,包括以下步骤:S1、所有自组网终端设置一个初始全量字符集{x1,x2,

,x
n
},此时每个字符出现频次都为1;S2、在所有终端上安装计算最优前缀编码程序;S3、通过计算最优前缀编码程序对全量字符集{x1,x2,

,x
n
}计算出前缀编码,设置编码表版本号为一;S4、任一终端发送命令A,此命令A使用版本号为一的前缀编码进行编码;S5、其余终端通过查询版本号为一的编码表,还原出命令A;
S6、终端继续发送若干命令,在设定的时间周期内,若命令A重复出现次数最多;S7、将若干命令加入到全量字符集,得到新的字符集合;S8、重复步骤S3,对新的字符集计算出新的前缀编码,新的编码表版本号为二;S9、任一终端再次发送命令A,此命令A使用版本号为二的前缀编码进行编码;S10、其余终端通过查询版本号为二的编码表,还原出命令A;S11、再依次重复执行步骤S6

S10 。
[0009]步骤S2中,所述计算最优前缀编码程序为哈夫曼编码程序。
[0010]步骤S6中,所述时间周期为1天、2天或n天,n>2。
[0011]本专利技术在工作中,先在各自主网终端设置初始全量字符集,再通过哈夫曼编码对全量字符集计算前缀编码,设置版本号一,通过使用前缀编码进行发送命令A,其余终端在还原命令A时,需要使用版本号一进行还原。
[0012]下次在设定时间周期内,发送最多的命令A时,通过形成新的字符集合,再计算前缀编码,设置版本号,再使用新的前缀编码进行发送命令A,其余终端在还原命令A时,需要使用版本号二进行还原。
[0013]通过这样依次循环进行生成最优前缀编码,同时,在解码时,需要相应的版本号进行解密还原。
[0014]本专利技术使用历史消息生成最优前缀编码,使得前缀编码更具随机性,使得加密效果更好。
具体实施方式
[0015]本专利技术提供了一种基于前缀编码的数据压缩和加密方法,包括以下步骤:S1、所有自组网终端设置一个初始全量字符集{x1,x2,

,x
n
},此时每个字符出现频次都为1,表示为f(x
i
) =1;S2、在所有终端上安装计算最优前缀编码程序;S3、通过计算最优前缀编码程序对全量字符集{x1,x2,

,x
n
}计算出前缀编码,设置编码表版本号为一;S4、任一终端发送命令A,此命令A使用版本号为一的前缀编码进行编码;S5、其余终端通过查询版本号为一的编码表,还原出命令A;S6、终端继续发送若干命令,此时每个字符的出现频次将发生变化,即f(x
i
)值将不再是1,在设定的时间周期内,若命令A重复出现次数最多,那么命令A内包含的字符出现频次f(x
i
)将比较高;S7、将若干命令加入到全量字符集,得到新的字符集合,字符集合不变,但字符出现的频次将发生变化,此时常用的字符频次将会变大;S8、重复步骤S3,对新的字符集(即字符集合与新频次)计算出新的前缀编码,新的编码表版本号为二;对出现频次较高的字符,压缩效果会更好。
[0016]S9、任一终端再次发送命令A,此命令A使用版本号为二的前缀编码进行编码;S10、其余终端通过查询版本号为二的编码表,还原出命令A;S11、再依次重复执行步骤S6

S10 。字符的频次在变化,那么最优前缀编码表也在动态变化。前缀编码表的变化具有动态性和随机性。
[0017]本专利技术使用历史消息生成最优前缀编码,使得前缀编码更具随机性,使得加密效果更好。
[0018]随着历史消息增多,常用的字符权重会变高,使消息内容具备更高的压缩率,加密后消息内容变得更短。
[0019]同时,所有终端用历史数据在本地计算最优前缀编码,这样最优前缀编码无需在网络中传输,网络中传输的只有密文。
[0020]步骤S2中,所述计算最优前缀编码程序为哈夫曼编码程序。
[0021]步骤S6中,所述时间周期为1天、2天或n天,n>2。具体时间周期根据需要,可进行自主设定。
[0022]具体应用如下:S1、所有自组网终端上放入所有可能用到的字符集合;S2、所有自组网终端上安装计算最优前缀编码程序(即哈夫曼编码程序);S3、用最优前缀编码程序对全量字符计算出前缀编码,设置编码表版本号为一,假设此时全量字符集为:“abcdefghijklmnopqrstuvwxyz
ꢀ”
,使用编码程序进行编码;所有自组网终端内得到一样的前缀编码为:
ꢀ‑‑
>01010a
‑‑
>01011b
‑‑
&本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于前缀编码的数据压缩和加密方法,其特征在于,包括以下步骤:S1、所有自组网终端设置一个初始全量字符集{x1,x2,

,x
n
},此时每个字符出现频次都为1;S2、在所有终端上安装计算最优前缀编码程序;S3、通过计算最优前缀编码程序对全量字符集{x1,x2,

,x
n
}计算出前缀编码,设置编码表版本号为一;S4、任一终端发送命令A,此命令A使用版本号为一的前缀编码进行编码;S5、其余终端通过查询版本号为一的编码表,还原出命令A;S6、终端继续发送若干命令,在设定的时间周期内,若命令A重复...

【专利技术属性】
技术研发人员:周思远尹国亮钱灿军鄂恒
申请(专利权)人:扬州万方科技股份有限公司
类型:发明
国别省市:

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

1