一种加密方法、系统、存储介质及加密文件访问方法技术方案

技术编号:34054375 阅读:9 留言:0更新日期:2022-07-06 16:36
本发明专利技术公开了一种加密方法,包括:计数器循环递增计数值并依次输出至多个加密模块;加密模块从密钥组缓存中取出密钥对循环递增的计数值进行加密生成密钥流;多个加密模块生成的密钥流输出至密钥流缓存;从密钥流缓存中依次取出密钥流与明文分组进行加密运算生成密文分组。其中计数器按照第一间隔时间或事件触发循环递增计数值并依次输出至多个加密模块,加密模块的CPU或加密芯片上运行有不同的加密任务。本发明专利技术通过设置密钥组缓存和多个加密模块并行运算大大提升了密钥更换效率和加密效率,通过密钥流预先处理和缓存机制,提升了加密模块的CPU或加密芯片资源空闲时利用率;并且利用计数器触发的密钥高频更新,防止单一密钥长期使用,安全性强。安全性强。安全性强。

An encryption method, system, storage medium and encrypted file access method

【技术实现步骤摘要】
一种加密方法、系统、存储介质及加密文件访问方法


[0001]本专利技术涉及加密
,具体为一种加密方法、系统、存储介质及加密文件访问方法。

技术介绍

[0002]传统密码学的加密模式有很多种,如ECB、CBC、CTR、OFB、CFB等模式。其中CTR模式(计数器模式)是一种通过将逐次累加的计数器值进行加密来生成密钥流的流密码。如附图1所示,在CTR模式中,每个分组对应一个逐次累加的计数器,并通过对计数器值进行加密来生成密钥流。也就是说,最终的密文分组是通过将计数器加密而得到的比特序列,与明文分组进行XOR(异或)而得到的,每次加密时都会生成一个不同的值作为计数器的初始值。CTR模式中可以以任意顺序对分组进行加密和解密,因为在加密和解密时需要用到的“计数器”的值可以由计数器和分组序号直接计算出来。能够以任意顺序处理分组,意味着能够实现并行计算。在支持并行计算的系统中,CTR模式的速度非常快。采用CTR模式的计数器计算密钥使用次数可以准确控制加密数据量,避免按时间更换密钥由于流量不均导致加密数据量难预估的问题。如何设计一个并行计算和密钥高速更新的机制是CTR模式效率最大化发挥的重点问题。

技术实现思路

[0003]本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一个目的在于提供了一种加密方法,通过设置密钥组缓存和多加密模块并行运算大大提升了密钥更换效率和加密效率,通过密钥流预先处理和缓存机制,提升了加密模块的CPU或加密芯片的资源空闲时利用率;并且利用CTR模式计数触发的密钥高频更新,防止单一密钥长期使用,安全性强。
[0004]本专利技术的第二个目的在于提出一种存储介质。
[0005]本专利技术的第三个目的在于提出一种加密文件访问方法,可以更快速解密得到密文。
[0006]本专利技术的第四个目的在于提出一种加密系统。
[0007]为实现上述目的,本专利技术第一方面实施例提出了一种加密方法,包括:计数器循环递增计数值并依次输出至多个加密模块;加密模块从密钥组缓存中取出密钥对循环递增的计数值进行加密生成密钥流;多个所述加密模块生成的密钥流输出至密钥流缓存;从密钥流缓存中依次取出密钥流与明文分组进行加密运算生成密文分组。
[0008]根据本专利技术的第一个实施例,所述计数器循环递增计数值并依次输出至多个加密模块包括,计数器按照第一间隔时间或事件触发循环递增计数值并依次输出至多个加密模块,所述加密模块采用CPU、加密芯片或FPGA器件。
[0009]根据本专利技术的第一个实施例,所述加密模块从密钥组缓存中取出密钥对计数值进
行加密生成密钥流包括,所述加密模块上运行有不同的加密任务,加密任务运用SM1、SM4或AES加密算法对计数值进行加密。
[0010]根据本专利技术的第一个实施例,当计数器递增溢出或达到预设使用次数时,计数器重置或者随机生成新的计数值,不同加密任务从密钥组缓存中取出新的密钥进行更换,并使用新的密钥对循环递增的计数值进行加密生成密钥流。
[0011]根据本专利技术的第一个实施例,所述多个所述加密模块生成的密钥流输出至密钥流缓存包括,不同加密模块产生的密钥流在密钥流缓存中按照被加密的计数值大小由小至大进行排序形成队列。
[0012]根据本专利技术的第一个实施例,所述从密钥流缓存中取出密文流与明文分组进行加密运算生成密文分组包括,从密钥流缓存中取出密文流与明文分组进行异或运算生成密文分组。
[0013]根据本专利技术的第一个实施例,所述密钥流缓存配置有反馈机制,所述反馈机制包括当密钥流缓存中的密钥流数量大于第一阈值时,增大第一间隔时间,当密钥流缓存中的密钥流数量小于第二阈值时,减小第一间隔时间。
[0014]为达到上述目的,本专利技术第二方面实施例提出了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的加密方法。
[0015]根据本专利技术实施例的存储介质,通过前述的加密方法,不仅能够提升密钥更换效率和加密效率,而且还提升了加密的安全性。
[0016]为达到上述目的,本专利技术第三方面实施例提出了一种加密文件访问方法,所述加密文件采用前述的加密方法进行加密,所述加密文件包括多个密文分组,所述访问方法包括:获取待访问密文的偏移地址;根据偏移地址计算待访问密文所处分组序号;根据分组序号和计数器初始计数值,调取该分组下计数值和加密密钥的对应关系表;将待访问密文、计数值和加密密钥输入至解密模块进行解密生成明文。
[0017]根据本专利技术实施例的加密文件访问方法,无需从头进行解密计算,而是直接找到访问密文的偏移地址,根据偏移地址计算CTR计数器分组序号,再根据初始化的计数器计数值和密文偏移地址计算出CTR计数值,再从CTR计数值和密钥KEY映射表中找到对应的加密密钥KEY,随后将CTR计数值、加密密钥KEY和密文一起输入解密模块,即可快速解密得到明文,在充分保证解密安全的情况下能够提高解密速度。
[0018]为达到上述目的,本专利技术第四方面实施例提出了一种加密系统,系统包括计数器、密钥组缓存、密钥流缓存和多个加密模块,所述计数器与多个所述加密模块均相连接,所述计数器循环递增计数值并依次输出至不同加密模块,加密模块从密钥组缓存中取出密钥对循环递增的计数值进行加密生成密钥流,多个所述加密模块生成的密钥流输出至密钥流缓存,从密钥流缓存中取出密钥流与明文分组进行加密运算生成密文分组。
[0019]根据本专利技术实施例的加密系统,通过设置密钥组缓存和多加密模块并行运算大大提升了密钥更换效率和加密效率,通过密钥流预先处理和缓存机制,提升了加密模块的CPU或加密芯片的资源空闲时利用率;并且利用CTR模式计数触发的密钥高频更新,防止单一密
钥长期使用,安全性强。
[0020]与现有技术相比,本专利技术的有益效果是:本专利技术的加密方法通过设置密钥组缓存和多加密模块并行运算大大提升了密钥更换效率和加密效率,通过密钥流预先处理、缓存机制和反馈机制,提升了加密模块的CPU或加密芯片的资源空闲时利用率,进一步提升了加密效率。并且利用CTR模式计数触发的密钥高频更新,密钥更换通过计数器自动计数触发更新,防止单一密钥长期使用,实现简单,安全性强。加密模式为流加密,异或运算几乎不增加任何时延,加密后的密文与明文等长,在网络数据传输中不增加额外开销,进一步提升了加密通信效率。
附图说明
[0021]图1为现有技术中CTR模式的加密原理图;图2为本专利技术一种加密方法中的加密原理图;图3为本专利技术一种加密方法中的解密原理图。
[0022]图4为本专利技术一种加密方法应用于通信加密的原理图;图5为本专利技术一种加密文件访问方法的原理图;图6为本专利技术第六种实施例的流程图;图7为本专利技术第六种实施例的原理图。
具体实施方式
[0023]为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种加密方法,其特征在于,包括:计数器循环递增计数值并依次输出至多个加密模块;加密模块从密钥组缓存中取出密钥对循环递增的计数值进行加密生成密钥流;多个所述加密模块生成的密钥流输出至密钥流缓存;从密钥流缓存中依次取出密钥流与明文分组进行加密运算生成密文分组。2.根据权利要求1所述的加密方法,其特征在于,所述计数器循环递增计数值并依次输出至多个加密模块包括,计数器按照第一间隔时间或事件触发循环递增计数值并依次输出至多个加密模块,所述加密模块采用CPU、加密芯片或FPGA器件。3.根据权利要求2所述的加密方法,其特征在于,所述加密模块从密钥组缓存中取出密钥对计数值进行加密生成密钥流包括,所述加密模块上运行有不同的加密任务,加密任务运用SM1、SM4或AES加密算法对计数值进行加密。4.根据权利要求3所述的加密方法,其特征在于,当计数器递增溢出或达到预设使用次数时,计数器重置或者随机生成新的计数值,不同加密任务从密钥组缓存中取出新的密钥进行更换,并使用新的密钥对循环递增的计数值进行加密生成密钥流。5.根据权利要求4所述的加密方法,其特征在于,所述多个所述加密模块生成的密钥流输出至密钥流缓存包括,不同加密模块产生的密钥流在密钥流缓存中按照被加密的计数值大小由小至大进行排序形成队列。6.根据权利要求5所述的加密方法,其特征在于,所述从密钥流缓存中取...

【专利技术属性】
技术研发人员:苗春华董超王新莲王剑锋张一丹张明理
申请(专利权)人:中科问天量子科技天津有限公司
类型:发明
国别省市:

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

1