【技术实现步骤摘要】
加密加速器以及用于加密的系统和方法
[0001]本专利技术涉及密码学领域,并且具体地涉及利用相关数据加密方案的认证加密中的虚拟数据去除。
技术介绍
[0002]在一些情况下,安全通信场景中的消息包括至少两个部分——仅被认证的附加认证数据部分(AAD)以及既被认证又被加密的明文部分。执行该认证加密的加密操作称为具有相关联数据的认证加密(AEAD)。AEAD可以用于同时确保数据的机密性和真实性。通常,AAD部分包括消息报头信息,而明文部分包括消息有效载荷。
技术实现思路
[0003]在一些实现中,一种加密加速器包括:输入缓冲器,用于将第一数据存储在第一地址范围中,其中第一数据包括消息的第一部分,并且用于将第二数据存储在第二地址范围中,其中第二数据包括消息的第二部分;一个或更多个部件,用于确定第一部分的长度和第二部分的长度,基于第一部分的长度从第一地址范围读取第一部分,基于第一部分的长度和第一地址范围中的第一数据的端点的指示而丢弃第一地址范围中的任何虚拟数据,基于第二部分的长度从第二地址范围读取第二部分,基于第二部分的长度和第二地址范围中的第二数据的端点的指示而丢弃第二地址范围中的任何虚拟数据;以及加密引擎,用于使用第一部分和第二部分执行加密操作。
[0004]在一些实现中,一种系统包括:存储器,用于存储消息的第一部分和消息的第二部分;直接存储器访问部件,用于向加密加速器提供第一数据,第一数据包括消息的第一部分,并且用于向加密加速器提供第二数据,第二数据包括消息的第二部分;以及加密加速器,用于将第一 ...
【技术保护点】
【技术特征摘要】
1.一种加密加速器,包括:输入缓冲器,用于:将第一数据存储在第一地址范围中,所述第一数据包括消息的第一部分,以及将第二数据存储在第二地址范围中,所述第二数据包括所述消息的第二部分;一个或更多个部件,用于:确定所述第一部分的长度和所述第二部分的长度,基于所述第一部分的长度从所述第一地址范围读取所述第一部分,基于所述第一部分的长度和所述第一地址范围中的所述第一数据的端点的指示,丢弃所述第一地址范围中的任何虚拟数据,基于所述第二部分的长度从所述第二地址范围读取所述第二部分,基于所述第二部分的长度和所述第二地址范围中的所述第二数据的端点的指示,丢弃所述第二地址范围中的任何虚拟数据;以及加密引擎,用于使用所述第一部分和所述第二部分来执行加密操作。2.根据权利要求1所述的加密加速器,其中,所述消息的所述第一部分是所述消息的附加认证数据部分,并且所述消息的所述第二部分是所述消息的明文部分。3.根据权利要求1所述的加密加速器,其中,在所述第一数据被存储在所述第一地址范围中之后并且在所述第二数据被存储在所述第二地址范围中之后,确定所述第一部分的长度和所述第二部分的长度。4.根据权利要求1所述的加密加速器,其中,所述第一部分的长度和所述第二部分的长度从相应的软件可访问长度寄存器来被确定。5.根据权利要求1所述的加密加速器,其中,所述第一地址范围中的所述第一数据的端点的指示是基于与所述第一数据相关联的字节计数器或与存储所述第一数据相关联的所存储的写指针位置。6.根据权利要求1所述的加密加速器,其中,当丢弃所述第一地址范围中的任何虚拟数据时,所述一个或更多个部件用于:基于所述第一部分的长度和所述第一地址范围中的所述第一数据的端点的指示,识别所述第一地址范围中的一位或更多位虚拟数据,以及通过以下中至少之一而丢弃所述一位或更多位虚拟数据:从所述输入缓冲器读取所述一位或更多位虚拟数据,而不处理所述一位或更多位虚拟数据,和将与从所述输入缓冲器读取数据相关联的读指针设置到与存储所述第一数据相关联的所存储的写指针位置。7.根据权利要求1所述的加密加速器,其中,所述第二地址范围中的所述第二数据的端点的指示是基于与所述第二数据相关联的字节计数器或与存储所述第二数据相关联的所存储的写指针位置。8.根据权利要求1所述的加密加速器,其中,当丢弃所述第二地址范围中的任何虚拟数据时,所述一个或更多个部件用于:基于所述第二部分的长度和所述第二地址范围中的所述第二数据的端点的指示,识别所述第二地址范围中的一位或更多位虚拟数据,以及
通过以下中至少之一而丢弃所述一位或更多位虚拟数据:从所述输入缓冲器读取所述一位或更多位虚拟数据,而不处理所述一位或更多位虚拟数据,和将与从所述输入缓冲器读取数据相关联的读指针设置到与存储所述第二数据相关联的所存储的写指针位置。9.根据权利要求1所述的加密加速器,其中,所述输入缓冲器还用于将第三数据存储在特定地址范围中,所述第三数据包括所述消息的第三部分,其中,所述特定地址范围是第三地址范围或所述第一地址范围,所述一个或更多个部件还用于:确定所述第三部分的长度,基于所述第三部分的长度从所述特定地址范围读取所述第三部分,基于所述第三部分的长度和所述特定地址范围中的所述第三数据的端点的指示,丢弃所述特定地址范围中的任何虚拟数据,并且所述加密引擎还用于使用所述第三部分来执行所述加密操作。10.一种用于加密的系统,包括:存储器,用于存储消息的第一部分和所述消息的第二部分;直接存储器访问部件,用于:向加密加速器提供第一数据,所述第一数据包括所述消息的所述第一部分,以及向所述加密加速器提供第二数据,所述第二数据包括所述消息的所述第二部分;以及所述加密加速器,用于:将所述第一数据存储在输入缓冲器的第一地址范围中;将所述第二数据存储在所述输入缓冲器的第二...
【专利技术属性】
技术研发人员:曼努埃拉,
申请(专利权)人:英飞凌科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。