使用AES-NI或GPU加速,每秒独立AES 256 CBC解密操作的数量

时间:2017-12-19 16:04:56

标签: aes gpu fpga aes-ni

AES-NI似乎已经过优化,可以加密/解密大块数据。但是我正在尝试解密密码而且我有很多非常小的位要尝试(iv +第一个cbc块,总共32个字节)。

我现在正在使用openssl,每个周期调用EVP_DecryptInit_exEVP_DecryptUpdate(每个线程调用一次EVP_CIPHER_CTX_init)。

我可以在一个核心上每秒执行大约200万次。

我认为这是我使用AES-NI指令所期望的那种性能,我不应该担心进一步优化它。这是对的吗?

有谁知道在高端GPU或不太昂贵的FPGA上可能会有多快?

1 个答案:

答案 0 :(得分:0)

FPGA:您可以在任何合理的FPGA上将输入模块转换为输出模块,具有数百MHz的2周期吞吐量,延迟为16个周期。因此,可能是256 Mblocks / s流水线,或者32 Mblocks / s不流水线。你可以在相当便宜的FPGA上获得其中的5个,或者在昂贵的FPGA上获得30+。 YMMV。