论文部分内容阅读
自NVIDIA发布第一款GPU (Graphic Processing Unit)以来,GPU的发展一直保持很高的速度,随着以CUDA(Compute Unified Device Architecture)为代表的GPU通用计算API (Application Programming Interface)的普及,GPU在计算机中的作用将更为重要,GPU的含义已经从图形处理器扩展为通用处理器(General Purpose Unit)。利用GPU的强大计算能力,能为大数据的处理提供新的解决方案。信息时代的发展中数据安全有着重要地位,其中对数据进行保护的重要手段是进行加密,但是在明文与密文的转换过程中,需要大量的运算。当对大量数据加解密时,对CPU提出较高的要求。因此,将加密解密过程中最耗时间的部分交给GPU完成,能有效提高加密的效率。国内外对运用GPU加速密码算法做了大量研究都表明了GPU能对密码算法进行有效加速,但是它们都是针对具体的分组密码算法而言,缺少对CPU/GPU协处理下分组密码工作模式的深入描述,有时甚至无法得到满意的结果。因此,研究CPU/GPU协处理下的分组密码工作模式有重要意义。目前,分组密码工作模式是利用分组密码解决实际问题的密码方案,好的模式可以弥补分组密码的缺陷,不好的工作模式可能带来隐患。大部分传统分组加密模式不能有效应用于GPU上。本文基于CUDA并行技术,重点研究了CPU/GPU下加密工作模式的设计及实现。主要研究包括:(1)研究了传统GPU通用计算的处理流程,分析了传统GPU通用计算应用领域受限的原因,重点研究了CUDA计算架构以及实验平台的体系架构,为后续工作打下研究架构基础。(2)研究及分析基本分组密码工作模式,分析其在CPU/GPU协处理下的并行化模式,对比实验得出相关结论。(3)在CPU/GPU协处理下,以CBC为实验对象,提出结合混沌算法的RCBC模式,基于CUDA计算架构设计了该模式到CUDA的映射方案,从算法实现的高性能角度出发,讨论模型中采用的优化技术;并通过实验对RCBC模式的安全性及性能进行分析对比,得该模式的优劣。