一种JSON数据加密解密的方法技术

技术编号:32346809 阅读:28 留言:0更新日期:2022-02-20 02:06
本发明专利技术提供一种JSON数据加密解密的方法,包括:JSON数据加密过程:传入明文JSON数据;计算明文JSON数据的签名;对明文JSON数据进行压缩处理及类型转换,得到Uint8Array类型数据;采用数据签名ASCII编码字符串的ASCII编码码值,对Uint8Array类型数据头部m位和尾部m位进行逐位加偏移值进行替换;向替换后的数据头部添加加密标识位数以及加密标识、签名字符串位数以及数据签名ASCII编码字符串的ASCII编码码值。本发明专利技术利用JSON格式优势表示数据,利用加密、解密方法对JSON数据进行处理,保证数据传输安全,防止数据被窃取和篡改,同时保留JSON格式数据的表现优势。JSON格式数据的表现优势。JSON格式数据的表现优势。

【技术实现步骤摘要】
一种JSON数据加密解密的方法


[0001]本专利技术属于数据安全
,具体涉及一种JSON数据加密解密的方法。

技术介绍

[0002]JSON基于ECMAScript规范,是一种轻量级的数据交换格式,完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言,易于阅读和编写,易于机器解析和生成,有效地提升网络传输效率,被广泛使用成为主流的数据格式。
[0003]然而,现有的JSON数据,具有数据传输安全性差的问题。

技术实现思路

[0004]针对现有技术存在的缺陷,本专利技术提供一种JSON数据加密解密的方法,可有效解决上述问题。
[0005]本专利技术采用的技术方案如下:
[0006]本专利技术提供一种JSON数据加密解密的方法,包括以下步骤:
[0007]步骤1,JSON数据加密过程:
[0008]步骤1.1,传入明文JSON数据;
[0009]步骤1.2,按签名算法计算所述明文JSON数据的签名,得到数据签名
[001本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种JSON数据加密解密的方法,其特征在于,包括以下步骤:步骤1,JSON数据加密过程:步骤1.1,传入明文JSON数据;步骤1.2,按签名算法计算所述明文JSON数据的签名,得到数据签名;步骤1.3,对所述明文JSON数据进行压缩处理,得到明文JSON压缩数据;将所述明文JSON压缩数据进行类型转换,转换为ArrayBuffer类型数据;步骤1.4,将所述ArrayBuffer类型数据转换为Uint8Array类型数据;步骤1.5,对步骤1.2得到的数据签名进行ASCII编码,得到ASCII编码形式的数据签名ASCII编码字符串;步骤1.6,假设数据签名ASCII编码字符串的位数为m位,编码值分别表示为:P1,P2,...,P
m
;Uint8Array类型数据的位数为n位,n>2m;采用数据签名ASCII编码字符串的ASCII编码码值,对Uint8Array类型数据的头部m位进行逐位加偏移值进行替换;具体方法为:假设Uint8Array类型数据的前m位编码值分别表示为:B1,B2,...,B
m
;则:B1′
=B1+P1;B2′
=B2+P2,...,B
m

=B
m
+P
m
;其中:B1′
,B2′
,...,B
m

分别代表Uint8Array类型数据的前m位编码值替换后的值;步骤1.7,采用数据签名ASCII编码字符串的ASCII编码码值,对Uint8Array类型数据的尾部m位进行逐位加偏移值进行替换;具体方法为:假设Uint8Array类型数据的尾部m位编码值自后向前分别表示为:E1,E2,...,E
m
;则:E1′
=E1+P1,E2′
=E2+P2,...,E
m

=E
m
+P
m
;其中:E1′
,E2′
,...,E
m

分别代表Uint8Array类型数据的尾部m位编码值替换后的值;步骤1.8,由此得到头部和尾部替换后的Uint8Array类型数据,表示为:Uint8Array类型数据data(1);向Uint8Array类型数据data(1)的数据头部添加加密标识位数以及加密标识,得到Uint8Array类型数据data(2);向Uint8Array类型数据data(2)的数据头部添加签名字符串位数以及数据签名ASCII编码字符串的ASCII编码码值,得到Uint8Array类型数据data(3);步骤1.9,将Uint8Array类型数据data(3)转为ArrayBuffer类型数据,再将ArrayBuffer类型数据转为JSON字符串形式,由此得到密文JSON数据;步骤2,JSON数据解密过程:步骤2.1,获得待解密的密文JSON数据;步骤2.2,将密文JSON数据转为ArrayBuffer类型数据;将ArrayBuffer类型数据转为Uint8Array类型数据;步骤2.3,在步骤2.2得到的Uint8Array类型数据中,定位到头部表示加密标识位数的存储位,再从加密标识位数的存储位往后,读取相应位数的码值,将码值转化为字符串;然后,判断读取到的字符串是否与预存储的加密标识一致,如果一致,则表示加密标识合法,执行步骤2.4;否则,表示加密标识非法,解...

【专利技术属性】
技术研发人员:李兴平江伟伟
申请(专利权)人:四三九九网络股份有限公司
类型:发明
国别省市:

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

1