一种轻量级文本快速加密及解密方法技术

技术编号:31907768 阅读:20 留言:0更新日期:2022-01-15 12:46
本发明专利技术涉及一种轻量级文本快速加密及解密方法,本发明专利技术主要利用数组的下标(索引位置)与其位置存放的代码点的转换关系实现快速的加、解密,本发明专利技术面向文本字符,对文本数据一次读入即实现加解密,无需二次扫描,因此,能够满足大数据量的快速加密和解密要求。同时本发明专利技术在数据管理实际工作当中,可以实现不修改现有表结构定义(包括字段数据类型、字段数据长度)的情况下,对数据进行加密,同时满足加密数据不影响查询性能。不影响查询性能。不影响查询性能。

【技术实现步骤摘要】
一种轻量级文本快速加密及解密方法


[0001]本专利技术涉及数据管理保护
,尤其涉及一种轻量级文本快速加密及解密方法。

技术介绍

[0002]随着现代化信息技术的发展,信息系统产生的数据体量越来越大,数据资产的价值体现越来越明显,为了有效保护这些数据,传统的技术往往使用权限管理、通用数据加密等方式。使用权限控制不能避免数据流通过程中被窃听、截取;通用的数据加密方式如AES、DES等并不适合海量数据查询的场景,因为进行数据查询时,要么对全部数据进行解密,然后再根据查询条件进行匹配,这会对服务器产生巨大的计算压力,明显不能应用于实际的场景中;要么对查询条件进行加密,然后使用加密的结果进行匹配,但这只适用于精确查询,对于模糊查询,包括前匹配、后匹配并不适用。申请号为201911039012.4的信息安全加密方法及装置,在目标文本的字符之间插入随机获取的汉字的方式进行数据保护,这种方式也不适用于加密数据的查询,同时抗破解能力也有所欠缺。

技术实现思路

[0003]本专利技术为克服上述的不足之处,目的在于提供一种轻量级文本快速加密及本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种轻量级文本快速加密及解密方法,其特征在于,包括如下步骤:(1)分别对ASCII字符集与汉字字符集进行混淆,得到ASCII字符混淆字典与汉字字符混淆字典,并对上述两字典进行加密;(2)分别对ASCII字符混淆字典与汉字字符混淆字典进行数据初始化,得到ASCII字符混淆数组与汉字字符混淆数组;(3)读取待加密字符,判断并根据其字符类型进行ASCII字符转换或汉字字符转换处理,输出加密字符,实现字符加密。2.根据权利要求1所述的一种轻量级文本快速加密及解密方法,其特征在于:所述的轻量级文本快速加密及解密方法还包括:(4)读取待解密字符,判断并根据其字符类型进行ASCII字符转换或汉字字符转换处理,输出解密字符,实现字符解密。3.根据权利要求1所述的一种轻量级文本快速加密及解密方法,其特征在于:所述步骤(1)具体如下:(1.1)分别取ASCII字符集、汉字字符集中的字符,按照UTF

8代码点的大小排序,放到各自的字符数组中,假设ASCII字符集的数组为arr_ascii、汉字字符集的数组为arr_ch;(1.2)由于arr_ascii、arr_ch数组长度已知,分别对arr_ascii、arr_ch数组进行混淆,得到ASCII字符混淆字典与汉字字符混淆字典;(1.3)将得到的ASCII字符混淆字典与汉字字符混淆字典使用通用的加密算法进行加密后保存到文件中或数据库中。4.根据权利要求1所述的一种轻量级文本快速加密及解密方法,其特征在于:所述步骤(1.2)中,假设数组的长度为n,数组起始位置index为0,进行混淆的方法如下:(i)生成一个index到n之间的随机数p,其中p不等于n;(ii)将数组中位置为index的字符和位置为p的字符进行互换;(iii)将index向后移一位,即index=index+1;(iv)重复步骤(i)到步骤(iii),直到index到达数组末尾,即index=n

1,至此得到混淆的字典。5.根据权利要求1所述的一种轻量级文本快速加密及解密方法,其特征在于:所述步骤(2)具体如下:(2.1)读取加密的文件或从数据库中读取加密的字符,并进行解密;(2.2)分别创建ASCII字符集代码点数组arrAscii和汉字字符集代码点数组arrChar,按照读取顺序,取其对应的UTF

8代码点,依次放到对应的代码点数组中;(2.3)分别创建ASCII字符集代码点数组arrDestAscii和汉字字符集代码点数组arrDestChar,按照读取顺序,取其对应的UTF

8代码点,到对应的数组位置为UTF

8代码点处写入顺序号;至此得到两套混淆数组,其中步骤(2.2)得到的数组用于加密,步骤(2.3)得到的数组用于解密。6.根据权利要求5所述的一种轻量级文本快速加密及解密方法,其特征在...

【专利技术属性】
技术研发人员:王珏陈晓亮张绩晨
申请(专利权)人:上海银江智慧智能化技术有限公司
类型:发明
国别省市:

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

1