论文部分内容阅读
Galois/Counter Mode(GCM)能同时提供数据的加密与认证,它在伽罗华(Galois)域利用泛散列函数对数据提供认证并利用计数器模式进行分组加密。随着对加密认证工作模式的需求越来越高,先后产生了许多加密认证的算法模式,比如OCB,CCM等算法模式,但这些加密认证算法模式有其弱点,比如OCB模式有专利产权问题,CCM模式不适合高速的实现。GCM工作模式随即产生了,它利用伽华罗域乘法算法提供认证,采用分组密码的计数器模式提供数据加密,满足高速设计的需求,并且硬件实现上它具有低延时、低成本以及高速率的特点。此外它可以单独的提供信息的认证,并且可以支持任意长的初始化向量,满足不同的初始化向量的选择需求。GCM算法模式被通用的基础安全理论支撑,由于采用了加密与认证相结合的方法,它的安全性高于分组密码安全性的要求。
本文对加密认证GCM(The Galois/Counter Mode)算法原理与结构进行了研究,设计并实现了一种面向大量应用的干兆网络的GCM功能,将实现后的GCM设计在FPGA开发平台--FPGAnic上进行了实际网络测试。在此平台上,实现了基于以太网应用的线速GCM算法,其资源消耗少,空间复杂度低,性能上能达到实际网络的线路速率。基于FPGAnic平台,组建了一个集安全加密与认证于一体的高速的GCM加密认证系统,并进行了实际网络测试,使该加密认证系统能应用于高速的网络环境中。此外,还通过对GE网络帧的结构进行分析,提出了一个实际的对GE网络帧进行GCM加密与认证的方案。
本文主要做了以下工作:
1.结合GCM算法原理对GCM加密认证操作与解密认证操作的数据流进行了详细的分析,对AES与GHASH算法模块原理进行研究。结合根据802.3协议调测TEMAC IP core使FPGAnic平台能正确收发千兆以太网网络帧。
2.在FPGAnic平台上高效的实现了面向大量应用的千兆网络的GCM算法,使其能处理实际中的网络数据帧,对网络帧进行加密认证,获得了具有低空间复杂度的GCM算法IP核。
3.对GCM加密强度进行优化,将GCM支持的密钥从128位提高到能支持192位和256位,增强了GCM的安全性。
4.对GCM加密认证支持的最小帧长进行了扩充,由原来的最小帧长只支持64字节扩充到最小能支持16字节的数据流,使得实现的GCM算法不仅能应用于以太网中,还能应用于其他扩充网络中。
5.组建了一集安全加密与认证为一体高速接入认证系统,并对此加密认证系统进行了系统级的测试,对由Ixia产生的千兆比特率的以太网帧进行加密操作,并将加密数据传给系统接收端并解出正确的数据帧,获得具有正确功能的系统级的实现。
基于上述工作,本文提出了一种能面向于大量应用的千兆网络中的GCM高效设计,并在FPGAnic平台上对该设计进行了实现,通过在真实的千兆PON网络中实际测试,其功能与性能均达到了实际应用的需求,本文实现的GCM算法能支持128bit,192bit,256bit长度密钥,最小帧长能支持16字节,能应用于多种场合的千兆网络中。