并行加密算法系列(三)之AES on Intel CPU
来源:互联网 发布:银行笔试通过率 知乎 编辑:程序博客网 时间:2024/05/21 22:32
1. Intel之AES NI 指令集性能测试
Intel AES New Instructions (AES NI) is a new encryption instruction set, which can improve the AES algorithm, accelerate the encryption of data and strengthen related AES applications. Specifically, the performance improvement expected with the use of AES-NI would depend on the applications. For example, for non-parallel modes of AES operation such as CBC-encrypt AES-NI can provide a 2-3 fold gain in performance over a completely software approach. For parallelizable modes such as CBC-decrypt and CTR, AES-NI can provide a 10x improvement over software solutions. For more details, readers can refer to Intel homepage.
2. 测试结果
The experimental platform, involving software and hardware, is introduced as follows. OPENSSL, an existing crypto library providing a standard version of AES implementation, is employed in this paper. The C source codes are complied with GCC 4.8 and ran on an Intel Core I5 CPU and an 8G Memory.
Fig 1 shows the performance of AES with ECB on CPU. The results show that the traditional AES algorithm on CPU is maybe not really good enough, especially in terms of the processing time. Another point should be noticed is that the traditional AES consumes more resources and needs more time when the data block size is relatively big.
It is hard to deny that Intel hardware-based CPU provides a pretty good method like hardware-based AES implementation to improve the AES performance, achieving a 10x improvement over software solutions. However, comparing to implement parallel AES on Intel CPUs, a more promising choice for parallel computing must be GPUs, which will be further discussed in the following section.
- 并行加密算法系列(三)之AES on Intel CPU
- 并行加密算法系列(四)之AES on Nvidia GPU
- 并行加密算法系列(二)之AES算法核心
- 并行加密算法系列(一)之AES单个加密模式的可并行性分析
- 每日一得--对称加密算法之(AES)
- 加密算法之DES/AES
- AES加密算法(转载)
- 《程序员密码学》之AES加密算法
- Java对称加密算法之AES
- java加密算法之AES小记
- 获得INTEL系列CPU序列号
- AES加密算法(c语言)
- Intel Threading Building Blocks 之 并行循环(一)
- 笔记本CPU(Intel)
- AES加密算法
- AES加密算法
- AES加密算法
- AES加密算法
- ztreecustomer
- JS语法基础_数组_选择法排序
- 计算机网络数据链路层重要概念
- 一次读写一行字符(fgets fputs)
- windows U盘安装Ubuntu双系统(win10适用)
- 并行加密算法系列(三)之AES on Intel CPU
- Retrofit和OkHttp的简单配合使用
- ExtJs gridPanel 显示查询无数据
- 链式队列的入队出队操作
- js的事件委托
- 计算机网络物理层
- cs231n(五)矩阵求导篇
- vidwpager
- APUE学习小问题记录