Parallel speculative encryption of multiple AES contexts on GPUs
Wagner M. Nunan Zola, Luis C. E. Bona · 2012
This work presents a high performance heterogeneous parallel method for encryption using GPUs. Our heterogeneous design executes most of the encryption processes on the GPU and partially on CPU. Aside from the AES 16 Byte block size, our parallel AES CTR algorithm divides work in small logical data blocks. We have devised a novel latency hiding scheme that suits the parallel CTR encryption mode by speculatively encrypting and caching data blocks ahead of time on the GPU. The algorithm also allows execution of all encryption process on GPU memory. We show that, in this GPU only mode, our algorithm outperforms current published implementations on comparable hardware. Our experiments demonstrate that our latency hiding scheme combined with the logical division of work results in high throughput and low latency when delivering encrypted data to CPU memory and permits simultaneous encryption of either related data contexts or different encryption flows.