资源描述
密路系统开发设计方案
密路系统设计方案
V1.0
XX信息技术有限公司
2014年 4月25日
修订历史记录
日期
版本
作者
备注
2014-4-25
V1.0
新建
编制
姓名
签字
日期
涂嫒
2014-4-25
廖泉
2014-4-25
审核
姓名
签字
日期
刘智超
2014-4-26
彭诚
2014-4-26
郭昀辉
2014-4-26
刘书玲
2014-4-26
批准
姓名
签字
日期
卢涛
2014-4-26
目录
1.引言 4
1.1编写目的 4
1.2使用范围 4
1.3术语、定义和缩略语 4
2.项目概述 5
2.1项目需求概述 5
2.2条件与限制 5
3.技术方案 6
3.1方案系统的概述 6
3.2设计目标 6
3.3设计功能 8
3.4系统设计原则 10
3.5系统设计依据 12
3.6系统总体设计 13
3.6.1 Windows模块 13
3.6.2 Linux模块 16
3.6.3 Unix模块 18
3.7系统特性 19
3.7.1 过滤策略 19
3.7.2加密类型 20
3.8系统部署环境 29
3.9运行环境 29
3.9.1 Windows下运行环境 29
3.9.2 Linux下运行环境 29
3.9.3 Unix下运行环境 30
1.引言
1.1编写目的
本文为密路系统的设计方案,作为后续的详细设计和程序设计提供依据和指导,同时也将规约项目开发规范,提供系统设计的整体思路。
1.2使用范围
本文描述了密路系统的基本组成、设计依据和实现框架。针对的读者主要是普天信息技术有限公司密路系统的开发、测试、实施相关人员。
1.3术语、定义和缩略语
Windows:微软公司研发的桌面操作系统
UNIX:AT&T公司研发的一个强大的多用户、多任务操作系统,支持多种处理器架构
LINUX:一套免费使用和自由传播的类UNIX操作系统
RC4:一种在电子信息领域加密的技术手段,用于无线通信网络
DES :一种对称密码体制,又被称为美国数据加密标准
3DES:三重DES
AES:高级加密标准,又称为Rijndael加密法
2.项目概述
2.1项目需求概述
密路系统主要针对信息系统的最核心部分——操作系统进行网络数据传输阶段的安全加固,免疫了针对操作系统的木马、蠕虫、病毒等的最后一道网络传播途径,有效地保护了最后阶段数据传输的安全。并且拥有很好的兼容性,能稳定地运行于各类操作系统,包括:Windows Server系列、Windows XP、UNIX、Redhat等主流的操作系统,不会影响到用户正常的业务应用,具有很强的实用性。主要包括以下功能:数据传输通道保护、非法访问阻断及监控、通信状态监控、日志查询与分析、策略配置、报警功能、数据传输通道加解密、用户管理。
2.2条件与限制
本项目设计的前提条件:
密路系统产品需要在PC的如下操作系统工作:
Windows 2000、
Windows XP、
Windows 2003、
Windows 7、
Windows 2008、
LINUX、
UNIX、
详细描述系统所受的内部和外部条件的约束和限制说明。包括业务和技术方面的条件与限制以及资金、进度、管理等方面的限制。
3.技术方案
3.1方案系统的概述
密路系统通过对业务主机操作系统网络数据的拦截、过滤,阻断针对操作系统进行破坏的木马、蠕虫、病毒等的传播途径,有效地保护了最后阶段网络数据传输的安全。
3.2设计目标
在进行密路系统设计的时候,依照密路系统需求说明书对该系统的基本需求,本着架构合理、安全可靠、产品主流、低成本、低维护量的出发点,并依此为客户提供先进、安全、可靠、高效的系统解决方案。本项目力求做到系统结构配置先进性、实用性强,且经济实惠,性价比高。
1、架构合理
就是要采用先进合理的技术来架构系统,使整个系统安全平稳的运行,并具备未来良好的扩展条件。
2、稳定性和安全性:
这是最关心的问题,只有稳定运行的系统,才能确保密路系统平稳运行。系统的技术先进性是系统高性的保证和基础,同时可有效地提高使用人员和系统维护人员的效率。良好的可扩展性则是为了用户以后的发展考虑。随着密路系统应用时间的增长,未来对密路系统的要求会不断提高。可扩展性时保证当用户有更多的需求时,引入的新设备可以顺利地与本次配备的设备共同工作,进一步扩展与提高系统的性能。
3、产品主流:
系统是否采用当今主流产品,关系到系统的整体质量和未来能否得到良好技术支持以以保证系统将来安全、平稳的发展。在设备选型时,我们将主要依据具体需求,同时考虑产品厂家的技术先进性,原厂商的技术支持力量和产品制造企业的发展前景,原厂商的产品技术资料的完整性。所有这些是保证用户得到良好售后技术支持的条件,也是保障用户投资的基本条件。
4、低成本低维护量:
力争有良好的性价比,低成本低维护是我公司为客户选择系统和产品的重要原则。所采用的产品应是简单,易操作,易维护,高可靠度的。系统的易操作和易维护性是保证非专业人员使用好系统的关键条件。高可靠度是保障系统运行的基本要求,也是易维护性的保障。我公司将本着上述设计原则,来进行密路系统的设计。将严格按照国际惯例并结合本企业的雄厚的技术实力与众多的工程经验,进行密路系统整个工程的安装、调试以及验收,竣工时将同时提交与工程相关的每个设备的安装使用手册、及系统的各种图表等各项文档资料,还将根据用户的实际需求提出技术培训。
3.3设计功能
本密路系统主要针对信息系统的最核心部分——操作系统进行网络数据传输阶段的安全加固,免疫了针对操作系统的木马、蠕虫、病毒等的最后一道网络传播途径,有效保护最后阶段数据传输的安全。
主要包括以下功能:
1.数据传输通道保护
密路系统安装在需要通信的业务主机上,通过对通信双方(服务端、客户端)进行IP地址、端口、及一些传输内容的控制,来优化数据传输环境,增强数据传输能力,保证数据传输通道的安全性;通过对一些非法连接的IP地址及端口进行阻断,限制非业务数据传输,优化通信环境。
2.非法访问阻断及监控
密路系统也能够有效阻断来之外部或内部的恶意扫描、木马病毒传播、网络攻击等。
3.通信状态监控
密路系统能够实时监控指定业务通信双方的通信链路状态,当通信状态异常时,密路系统会及时发出报警信息,把异常报告给客户。
4.日志查询与分析
密路系统会把监控及阻断掉的非法访问行成事件记录下来形成事后日志,通过对日志进行查询与分析,形成分析报告,发现系统、网络中的一些薄弱环节;客户根据分析报告,查找网络、主机中的存在的漏洞并进行安全加固,从而更好的提高网络、业务系统的安全性。
5.策略配置
密路系统策略配置模块根据需求编辑策略,策略的内容包括通信双方的IP,需要保护的通信端口,需要阻断的端口等信息。策略以文件的方式下发给本机密路系统引擎,密路系统引擎根据策略对需要保护的通信通道(IP及端口)进行保护,对需要阻断的IP及端口进行阻断,从而实现对数据传输通道的保护。(WINDOWS版本图形界面,LINUX、UNIX文件配置)。
6.报警功能
密路系统能够把业务通信状态异常、影响系统的非法数据访问以监控界面显示。在条件允许情况下通过(mail、手机短信)等形式通知客户,客户根据报警内容及报警级别进行相应的响应及处理。(WINDOWS版本)。
7.数据传输通道加解密
密路系统可以对指定IP端口通讯进行加解密。通讯双方通过策略配置以及约定,对传输数据进行加解密处理。并不干扰应用系统正常运行。(和应用系统无关,系独立运行)加解密算法有多种选择可配置。
8.用户管理
第一次使用时需要在系统中进行用户(用户名、密码等)设定,非设定用户不能查阅更改系统功能和设置。
3.4系统设计原则
以技术先进、系统实用、结构合理、产品主流、低成本、低维护量作为基本建设原则,规划系统的整体构架。
1.先进性:
在系统设计上,整个系统软硬件设备的设计符合高新技术的潮流,在满足现期功能的前提下,系统设计具有前瞻性,在今后较长时间内保持一定的技术先进性。
2.安全性:
系统采取全面的安全保护措施,具有防病毒感染、防黑客攻击措施,同时在防雷击、过载、断电和人为破坏方面进行加强,具有高度的安全性和保密性。对接入系统的设备和用户,进行严格的接入认证,以保证接入的安全性。系统支持对关键设备、关键数据、关键程序模块采取备份、冗余措施,有较强的容错和系统恢复能力,确保系统长期正常运行。考虑到安全防范重要性的原则,为了保证整个系统的安全、可靠运行,我们首先在系统的总体设计中从整体考虑系统的安全性和可靠性。在系统设计阶段必须考虑到所有影响系统安全、可靠的各种因素。
3.合理性:
在系统设计时,充分考虑系统的容量及功能的扩充,方便系统扩容及平滑升级。系统对运行环境(硬件设备、软件操作系统等)具有较好的适应性,不依赖于某一特定型号计算机设备和固定版本的操作系统软件。
4.经济性:
在满足系统功能及性能要求的前提下,尽量降低系统建设成本,采用经济实用的技术和设备,利用现有设备和资源,综合考虑系统的建设、升级和维护费用。系统符合向上兼容性、向下兼容性、配套兼容和前后版本转换等功能。
5.实用性:
本系统支持windows、Linux和UNIX的平台。系统的设计是根据国家有关标准,科学地、合理地、实事求是地进行设计,因此,具有很高的实用性。
6.规范性:
系统中采用的控制协议、编解码协议、接口协议、传输协议等符合国家标准、行业标准颁布的技术规范。系统具有良好的兼容性和互联互通性。
7.可维护性:
系统操作简单,实用性高,具有易操作、易维护的特点,系统具有专业的管理维护终端,方便系统维护。并且,系统具备自检、故障诊断及故障弱化功能,在出现故障时,能得到及时、快速地进行自维护。
8.可扩展性:
系统具备良好的输入输出接口,同时,系统可以进行功能的定制开发。
9.开放性:
系统设计遵循开放性原则,能够支持多种硬件设备和网络系统,软硬件支持二次开发。各系统采用标准数据接口,具有与其他信息系统进行数据交换和数据共享的能力。
10.优化性能价格比
在满足系统当前性能的前提下,考虑到在可预见期内仍不失其先进性,使得整个系统投资合理。
11.系统的弹性和扩容性
整个系统应具有扩展功能。随着技术的不断发展,经济形势的进一步好转和使用管理的要求,原来建立的系统,从容量和功能上经过若干年后,往往都不能满足发展的需要,扩展系统规模几乎是必须的。因此,在设计中必须考虑到系统应有余量以便系统以后有较强的扩展功能。
3.5系统设计依据
本密路系统设计依据为:
《密路系统技术需求说明》
《密路系统产品需求说明书》
相关安全算法的参考文献。
3.6系统总体设计
密路系统总体设计框图
3.6.1 Windows模块
“密路系统Windows模块”分为密码系统管理模块、网络数据过滤模块、应用程序数据过滤模块三个部分。
(1) 密路系统管理模块
n 用户管理子模块:主要功能包括添加、修改与删除密路系统用户;修改密路系统用户权限。
n 系统管理子模块:主要功能包括启动或停止网络数据过滤模块运行;启动或停止应用程序数据过滤模块运行;登陆或注销密路系统;配置告警日志邮箱地址;管理网络数据过滤模块与应用程序数据过滤模块自启动。
n 策略配置子模块:主要功能包括配置网络数据加密规则;配置IP地址过滤规则;配置端口过滤规则;配置应用程序过滤规则与邮件通知规则。
n 日志报警子模块:主要功能包括查询、删除报警日志记录;导出报警日志记录;通过邮件发送报警日志记录。
n 日志管理子模块:主要功能包括查看、删除密路系统操作日志;查看网络数据过滤模块运行错误日志;查看应用程序数据过滤模块运行错误日志。
n 实时监控子模块:主要功能包括查看主机网络连接状态。
(2) 网络数据过滤模块
n IP过滤子模块:主要功能是根据IP过滤策略允许或阻止IP数据包,并对阻止IP数据包生成告警日志。
n 端口过滤子模块:主要功能是根据端口过滤策略允许或阻止IP数据包,并对阻止IP数据包生成告警日志。
n 加密子模块:主要功能是根据加密策略对TCP数据或UDP数据进行加密。
(3) 应用程序数据过滤模块
n 应用程序数据过滤子模块:主要功能是根据应用程序过滤策略允许或阻止应用程序网络通信,并根据邮件通知策略对阻止应用程序生成告警日志。
3.6.2 Linux模块
“密路系统Linux模块”分为核心内嵌防护、启动控制、配置策略和告警记录四个部分:
(1) 配置策略
在“密路系统Linux模块”组成中,配置策略是指一组配置策略文件,端点用户可对其进行编辑,根据用户的配置策略组合,可实现灵活的网络通信过滤防护和加密功能。
(2) 告警记录
在“密路系统Linux模块”组成中,告警记录是指一组日志文件,模块根据运行情况,记录模块运行日志 ,实时记录触发防护策略并被模块过滤阻止的网络通信信息,记录时间、触发策略类型、触发策略远程IP、端口、端点进程等信息,可帮助端点用户检查端点系统非法网络通信行为。
(3) 启动控制
在“密路系统Linux模块”组成中,启动控制是一个应用程序,其作为纽带连接模块的各个组成部分。
n 从配置策略中读取端点用户设置的策略规则,并将规则集传送给实施防护过滤的核心内嵌防护模块;
n 控制核心内嵌防护模块启动、暂停过滤防护和数据加密;
n 从核心内嵌防护模块实时接收触发策略规则而被阻止的网络通信信息;
n 将触发策略规则而被阻止的网络通信信息记录在告警记录内。
(4) 核心内嵌防护
核心内嵌防护是“密路系统Linux模块”的核心部分,它处于Linux系统内核层,依靠操作系统内核的网络数据处理功能,实施网络通信的过滤防护和数据加密,对触发策略规则的网络通信进行阻止并实时告警。
3.6.3 Unix模块
“密路系统Unix模块”分为核心内嵌防护、启动控制、配置策略和告警记录四个部分:
(1) 配置策略
在“密路系统Unix模块”组成中,配置策略是指一组配置策略文件,端点用户可对其进行编辑,根据用户的配置策略组合,可实现灵活的网络通信过滤防护和加密功能。
(2) 告警记录
在“密路系统Unix模块”组成中,告警记录是指一组日志文件,模块根据运行情况,记录模块运行日志 ,实时记录触发防护策略并被模块过滤阻止的网络通信信息,记录时间、触发策略类型、触发策略远程IP、端口、端点进程等信息,可帮助端点用户检查端点系统非法网络通信行为。
(3) 启动控制
在“密路系统Unix模块”组成中,启动控制是一个应用程序,其作为纽带连接模块的各个组成部分。
n 从配置策略中读取端点用户设置的策略规则,并将规则集传送给实施防护过滤的核心内嵌防护模块;
n 控制核心内嵌防护模块启动、暂停过滤防护和数据加密;
n 从核心内嵌防护模块实时接收触发策略规则而被阻止的网络通信信息;
n 将触发策略规则而被阻止的网络通信信息记录在告警记录内。
(4) 核心内嵌防护
核心内嵌防护是“密路系统Unix模块”的核心部分,它处于Unix模块内核层,依靠操作系统内核的网络数据处理功能,实施网络通信的过滤防护和数据加密,对触发策略规则的网络通信进行阻止并实时告警。
3.7系统特性
3.7.1 过滤策略
根据需求,密路系统设定以下过滤、加密策略:
1、IP过滤策略---根据IP进行过滤保护采用白名单方式,即只有添加在IP过滤策略列表中的远程计算机才能与本机通信,其他IP所属计算机通信将被过滤丢弃。
2、端口过滤策略---根据端口进行过滤保护采用白名单方式,即只有添加在端口过滤策略列表中的远程计算机、远程端口才能与本机本地端口通信,其他端口通信将被过滤丢弃。
3、进程过滤策略---根据进程进行过滤保护采用黑名单方式,即添加在进程过滤策略列表中的进程通信将被阻止,其他进程通信将被放行。
4、加密策略---当经过过滤检测后,被放行的TCP/UDP通信数据将进行加解密,即添加在加密策略列表中的远程计算机与本机通信数据将根据加密类型进行加解密。
【注意】过滤策略顺序为IP过滤->端口过滤->进程过滤。
3.7.2加密类型
密路系统对允许通行的通信数据支持以下四种加密方式:
3.7.2.1 RC4算法
1987年, Ron Rivest 为RSA公司开发了一个可以快速软件实现的新的序列密码算法RC4算法, 并申请了专利。RC4算法因其算法简洁, 安全性高, 易于软件实现, 被广泛地应用于各种商业密码产品中, 它还是许多重要的加密协议和标准的一部分, 如WEP, WPA, SSL, TLS等。
算法描述:
RC4算法主要基于n比特数的置换, 密钥的扩展和系统状态的更新通过一系列数组置换来实现. 通常n =8, 即考虑256个字节间的置换. RC4算法选用40-256比特可变长的密钥, 产生以字节为单位的密钥流序列, 得到的密钥流序列再与明文序列或者密文序列异或得到密文序列或者明文序列。
其中间状态包括如下两部分:
(1) 256个字节间的置换S, 其中各分量S[i]均为字节, 0≤ i ≤ 255。
(2) 两个8-bit指针: i和j, 初值为0. 系统总的状态变量约为1684比特. 置换(数组)S先经密钥设置算法初始化, 再通过密钥生成算法得到需要的密钥序列。其密钥设置算法和密钥生成算法如下:
密钥设置算法:
记keylength为密钥字节数, 通常5 ≤keylength ≤32, 即密钥长度为40∼256比特, key[j]。 40 ≤ j≤128。
密钥设置算法中S-盒初始化分三步:
Step1. 线性填充, 即S为恒等置换.
Step2. 密钥扩展, 即K[i] = K[i mod keylength], keylength ≤i≤255.
Step3. 类似于下面的密钥生成算法, 密钥参与j的递归, 系统迭代256次, 更新S盒.
在WEP应用中, 会话密钥和IV级联作为RC4的种子密钥, 而在SSL应用中, 会话密钥和IV的hash值作为RC4的种子密钥。 WEP协议中会话密钥和IV简单级联使用的方式也是容易对其攻击的原因之一。
密钥生成算法:
初始化算法结束后, 系统按迭代的密钥生成算法输出需要的密钥序列。
每次迭代, 系统内部状态更新一次, 并输出一个字节K, 经过256次迭代后, S盒中每个值至少交换了一次。
3.7.2.2 DES算法
DES算法是一种分组密码 ,开创了加密算法公开的先例 ,经过二十几年的考验 ,至今还未发现任何数学上可行的解析破译方法。1997年,美国 RSA 公司公布了一系列加密算法的“Challenge”解密工程 ,其中包括对 DES 的攻击,工程名为 DESCHALL ,在互联网上通过多达78000 多台计算机 ,经从 1997 年3月15日到7月21日的联网运算,才被攻破。而此次破译成功 ,并未动摇 DES 体制 ,要解密另一个采用DES加密的消息,也得经历相同的时间 ,这也正是安全仅依赖于密钥的好处。故此就目前的计算机技术而言,对保密期限要求为几年的数据 ,单密钥的DES是安全的,为提高保密强度 ,目前提出了比 56 位 DES 密钥更长的对称密钥加密算法如 Triple - DES、IDEA、Blowfish、RC5 等都可把它们看作是DES的变形。
DES 算法为分组加密算法,它是通过换位,置换,移位来实现加密的。总体而言可分为:初始置换 (IP),乘积变换 ,逆初始变换( IP I) ,扩展变换 (E) 。乘积变换为 16 次换位、移位和异或的迭代 ,一次迭代包括下面的运算:
1)将64位明文分为两个32位的码组L和R,R为下一次迭代的L;
2)32的R按变换(E)扩展为48位R1;
3)有64位密钥产生本次的48位密钥K;
4)R1和K作模2加法得48 位结果;
5)48位结果分为8个6位组 ,经8个选择变换得到32位输出结果;
6)32位输出经一固定换位(P)得另一32位输出;
7)上一输出和本次的L进行模2加得下一次的R。
密钥表的计算:
密钥中的非效验位共56位 ,经一换位(PC1)变换 ,再分为两个28位码C和D,后面的密钥为下面过程的重复。
1) C和D分别左移1或2位 ,具体移位次数由计算的迭代次数而定;
2) 经一固定的选位和换位(PC 2)运算,得48位的运算子密钥。
DES是为二进制数据编码设计的,通过64位的密钥对64位的二进制数据进行加密,将它变为64位的密文。DES 算法是公开的,它的加密强度,完全取决于密钥的保密程度。由于密钥参与加解密运算的只有56位 ,去掉了8位校验位,因而加密强度(密钥)空间为:
2^56 = 72 ×10^15
如果一次DES运行要0.1μs的时间,则完成密钥空间的搜索要约为25年的时间,目前见于报道的用砷化镓做的最快 DES 器件速度达1Gbps,它完成一次DES要 0.064 μs,完成整个密钥空间的搜索也要16年。多台机子联网计算,时间可能减少,这从 DESCHALL 的实现也可看出。
DES 算法的非线性变换由S BOX来实现。由于S BOX设计的细节一直未公开,对其中是否有陷门存在种种猜测,但至今仍未有人报道发现陷门。研究发现 DES 算法的明文或密钥的一位变化,输出至少有32位变化,它的输出实现了密文和明文之间,密钥和密文的极强的相关关系。
3.7.2.3 3DES算法
3DES又称Triple DES,是DES加密算法的一种模式,它使用3条56位的密钥对数据进行三次加密。数据加密标准(DES)是美国的一种由来已久的加密标准,它使用对称密钥加密法,并于1981年被ANSI组织规范为ANSI X.3.92。
DES使用56位密钥和密码块的方法,而在密码块的方法中,文本被分成64位大小的文本块然后再进行加密。比起最初的DES,3DES更为安全。3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法,其具体实现如下:
设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,P代表明文,C代表密文,这样,设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,P代表明文,C代表密表,这样,3DES加密过程为:C=Ek3(Dk2(Ek1(P))) 3DES解密过程为:P=Dk1((EK2(Dk3(C)))。
这里可以K1=K3,但不能K1=K2=K3(如果相等的话就成了DES算法了)。
3DES with 2 diffrent keys(K1=K3),可以是3DES-CBC,也可以是3DES-ECB,3DES-CBC整个算法的流程和DES-CBC一样,但是在原来的加密或者解密处增加了异或运算的步骤,使用的密钥是16字节长度的密钥,将密钥分成左8字节和右8字节的两部分,即k1=左8字节,k2=右8字节,然后进行加密运算和解密运算。
3DES with 3 different keys,和3DES-CBC的流程完全一样,只是使用的密钥是24字节的,但在每个加密解密加密时候用的密钥不一样,将密钥分为3段8字节的密钥分别为密钥1、密钥2、密钥3,在3DES加密时对加密解密加密依次使用密钥1、密钥2、密钥3,在3DES解密时对解密加密解密依次使用密钥3、密钥2、密钥1。
3.7.2.4 AES算法
随着对称密码的发展,DES数据加密标准算法由于密钥长度较小(56位),已经不适应当今分布式开放网络对数据加密安全性的要求,因此1997年NIST公开征集新的数据加密标准,即AES。经过三轮的筛选,比利时Joan Daeman和Vincent Rijmen提交的Rijndael算法被提议为AES的最终算法。此算法将成为美国新的数据加密标准而被广泛应用在各个领域中。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。尽管人们对AES还有不同的看法,但总体来说,AES作为新一代的数据加密标准汇聚了强安全性、高性能、高效率、易用和灵活等优点。AES设计有三个密钥长度:128,192,256位,相对而言,AES的128密钥比DES的56密钥强10214。
AES 是一个新的可以用于保护电子数据的加密算法。明确地说,AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据 的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations )和替换(substitutions)输入数据。Figure 1 显示了 AES 用192位密钥对一个16位字节数据块进行加密和解密的情形。
AES 算法是基于置换和代替的。置换是数据的重新排列,而代替是用一个单元数据替换另一个。AES 使用了几种不同的技术来实现置换和替换。当 AES 的构造函数(constructor)被调用时,用于加密方法的两个表被初始化。第一个表是代替盒称为S-盒。它是一个16×16的矩阵。
AES 算法的主循环对State矩阵执行四个不同的操作,在规范中被称为 SubBytes(字节替换)、ShiftRows(行位移变换)、MixColumns(列混合变换) 和 AddRoundKey。除了每次循环 AddRoundKey都被调用并使用密钥调度表的下面四行外,AddRoundKey 与预备处理步骤中的 AddRoundKey相同。SubBytes 例程是一个代替操作,它将 State 矩阵中的每个字节替换成一个由 Sbox 决定的新字节。
ShiftRows是一个置换操作,它将 State 矩阵中的字节向左旋转。
MixColumns是一个代替操作,它是理解 AES 算法时最具技巧(或者说是最需要动脑筋的部分)的部分。它用 State 字节列的值进行数学域加和域乘的结果代替每个字节。
SubBytes、ShiftRows、MixColumns 和 AddRoundKey 四个操作在一个执行 Nr 次的循环里被调用,Nr 为给定密钥大小的轮数减1。加密算法使用的轮数要么是10,12,要么是14,这依赖于种子密钥长度是128位、192 位还是 256 位。在这个例子中,因为 Nr 等于12, 则这四个操作被调用11次。该迭代完成后,在拷贝 State 矩阵到输出参数前,加密算法调用 SubBytes、ShiftRows 和 AddRoundKey 后结束。
大致说来,AES加密算法的核心有四个操作。AddRoundKey 使用从种子密钥值中生成的轮密钥代替4组字节。SubBytes 替换用一个代替表替换单个字节。ShiftRows 通过旋转 4字节行的4组字节进行序列置换。MixColumns 用域加和域乘的组合来替换字节。
新的 AES 将无疑成为加密所有形式电子信息的事实上的标准,取代 DES。AES 加密的数据在某种意义上是牢不可破的,因为没有已知的密码分析攻击可以解密 AES 密文,除非强行遍历搜索所有可能的 256 位密钥。
AES的加密和解密流程:
【注意】配置了加密策略的通信双方需选择一致的加密算法,否则将无法正常通信。
3.8系统部署环境
操作系统:Windows 、LINUX、UNIX
“密路系统”是一款端点防护产品,系统模块在部署上不与端点之外其他端点有任何关联和依赖。c软件服务方式为点对点、端对端。并非传统的服务器客户端的关系。可以任意部署在网络中随意两台或多台设备上。根据策略对本机网络访问进行管理和屏蔽,对策略指定IP、端口的数据传输,按照约定进行加解密;业务服务器IP固定,客户端IP固定还是动态分配暂时未定。
其部署与端点设备类型无关,只依赖自身端点操作系统,根据操作系统差异(Windows和Linux)选择对应的系统模块即可安装部署;同时,模块对端点操作系统内应用程序来说是透明的,无论运行何种应用(File、Email、Database、Internet Service),模块都不会干扰其正常运行。
3.9运行环境
3.9.1 Windows下运行环境
“密路系统Windows模块”以安装包形式发布,便于安装使用。由于模块需要.net Framework 3.5运行时库的支持,因此首先需要安装.net Framework 3.5,该运行时库可以在microsoft的网站上下载。
3.9.2 Linux下运行环境
由于过滤、加密网络通信数据需要操作系统底层(操作系统内核层)处理,而Linux操作系统由于版本众多,各公司、社区发布的内核不尽相同,因此,为保障“密路系统Linux模块”正常运行并实现过滤保护,对Linux操作系统环境做如下限定:
1、Linux发行版本(查询命令lsb_release -a)
Red Hat Enterprise Linux Server release 5.2 (Tikanga)
2、Linux内核版本(查询命令 uname-a)
Linux 2.6.18-92.el5xen #1 SMP i686 i686 i386 GNU/Linux
“密路系统Linux模块”以tar压缩包形式发布。
3.9.3 Unix下运行环境
由于过滤、加密网络通信数据需要操作系统底层(操作系统内核层)处理,而Unix操作系统由于版本众多,各公司、社区发布的内核不尽相同,因此,为保障“密路系统Unix模块”正常运行并实现过滤保护,对Unix操作系统环境做如下限定:
1、Uinx发行版本(查询命令lsb_release -a)
FreeBSD
“密路系统Unix模块”以tar压缩包形式发布。
XX信息技术有限公司 第 30 页
展开阅读全文