发明名称 Generating multiple secure hashes from a single data buffer
摘要 One embodiment provides an apparatus. The apparatus includes a single instruction multiple data (SIMD) hash module configured to apportion at least a first portion of a message of length L to a number (S) of segments, the message including a plurality of sequences of data elements, each sequence including S data elements, a respective data element in each sequence apportioned to a respective segment, each segment including a number N of blocks of data elements and to hash the S segments in parallel, resulting in S segment digests, the S hash digests based, at least in part, on an initial value and to store the S hash digests; a padding module configured to pad a remainder, the remainder corresponding to a second portion of the message, the second portion related to the length L of the message, the number of segments and a block size; and a non-SIMD hash module configured to hash the padded remainder, resulting in an additional hash digest and to store the additional hash digest.
申请公布号 US9425953(B2) 申请公布日期 2016.08.23
申请号 US201314050326 申请日期 2013.10.09
申请人 Intel Corporation 发明人 Gulley Sean M.;Gopal Vinodh;Feghali Wajdi K.;Guilford James D.;Wolrich Gilbert M.;Yap Kirk S.
分类号 H04L9/06 主分类号 H04L9/06
代理机构 Grossman, Tucker, Perreault & Pfleger, PLLC 代理人 Grossman, Tucker, Perreault & Pfleger, PLLC
主权项 1. An apparatus, comprising: a single instruction multiple data (SIMD) hash module configured to apportion at least a first portion of a message of length L to a number (S) of segments, the message comprising a plurality of sequences of data elements, each sequence comprising S data elements, a respective data element in each sequence apportioned to a respective segment, each segment comprising a number N of blocks of data elements and to hash the S segments in parallel, resulting in S segment digests, the S segment digests based, at least in part, on an initial value; the SIMD hash module is further configured to store the S segment digests; a padding module configured to pad a remainder, the remainder corresponding to a second portion of the message, the second portion related to the length L of the message, the number of segments and a block size; and a non-SIMD hash module configured to hash the padded remainder, resulting in an additional hash digest and to store the additional hash digest.
地址 Santa Clara CA US