1、什么是DES?
DES加密的算法保护Java源代码
DES算法简介
DES(Data Encryption Standard)是发明最早的最广泛使用的分组对称加密算法。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
DES亦称为数位加密标准,是在数据传输中或是发送方与接收方都必须相互了解并知道一个相同的密码,用来加密与和解密以及产生和验证授权密码。Qno VPN路由器DES应用56Bit的密钥来加密。
DES算法工作流程如下:若Mode为加密模式,则利用Key 对数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密模式,则利用Key对密码形式的数据Data进行解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据在公共通信网中传输的安全性和可靠性。
DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其算法主要分为两步:
1初始置换
其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长3 2位,其置换规则为将输入的第58位换到第一位,第50位换到第2位……依此类推,最后一位是原来的第7位。L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位,例:设置换前的输入值为D1D2D3……D64,则经过初始置换后的结果为:L0=D58D50……D8;R0=D57D49……D7。
2逆置换
经过16次迭代运算后,得到L16、R16,将此作为输入,进行逆置换,逆置换正好是初始置换的逆运算,由此即得到密文输出。
2、什么是3DES?
3DES是由DES演变而来,应用168位的密钥并提供较DES更安全的数据传输。一些安全专家提出认为3DES实质上不太可能被破解。当然由于反映时间长而且路由器吞吐量会因为加解密而下降,所以需要设备有更高的处理能力,才可担当此重任。
3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法,其具体实现如下:设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,P代表明文,C代表密表,这样,
3DES加密过程为:C=Ek3(Dk2(Ek1(P)))
3DES解密过程为:P=Dk1((EK2(Dk3(C)))
K1、K2、K3决定了算法的安全性,若三个密钥互不相同,本质上就相当于用一个长为168位的密钥进行加密。多年来,它在对付强力攻击时是比较安全的。若数据对安全性要求不那么高,K1可以等于K3。在这种情况下,密钥的有效长度为112位。
3、什么是IDEA?
国际数据加密算法(IDEA)是在瑞典苏黎士的ETH城研发的一种加密算法。它使用了128位密钥的密码块,通常认为它是非常安全的,也是最为大众了解的算法之一。
国际数据加密算法(IDEA)是瑞士的著名学者提出的。它在1990年正式公布并在以后得到增强。这种算法是在DES算法的基础上发展出来的,类似于三重DES。发展IDEA也是因为感到DES具有密钥太短等缺点,已经过时。IDEA的密钥为128位,这么长的密钥在今后若干年内应该是安全的。
类似于DES,IDEA算法也是一种数据块加密算法,它设计了一系列加密轮次,每轮加密都使用从完整的加密密钥中生成的一个子密钥。与DES的不同处在于,它采用软件实现和采用硬件实现同样快速。
由于IDEA是在美国之外提出并发展起来的,避开了美国法律上对加密技术的诸多限制,因此,有关IDEA算法和实现技术的书籍都可以自由出版和交流,可极大地促进IDEA的发展和完善。但由于该算法出现的时间不长,针对它的攻击也还不多,还未经过较长时间的考验。因此,尚不能判断出它的优势和缺陷。
4、什么是AES?
AES(The Advanced Encryption Standard)是美国国家标准与技术研究所用于加密电子数据的规范。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。本文展示了AES的概貌并解析了它使用的算法。包括一个完整的C#实现和加密.NET数据的举例。在读完本文后你将能用AES加密、测试 基于AES的软件并能在你的系统中使用AES加密。
高级加密标准(AES)是一个用来代替数据加密标准(DES)的算法。目前使用的一般为128,196和256位密钥,这三种密钥都是相当安全的。而且美国政府也是这样认为的。他们批准将128位密钥的AES算法用于一般数据加密,196位和256位密钥的AES算法用于秘密数据和绝密数据的加密。
5、什么是RSA?
这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。 RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。
RSA 的安全性:
RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前, RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解140多个十进制位的大素数。因此,模数n必须选大一些,因具体适用情况而定。
RSA的速度:
由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。
6、什么是VPN?
VPN 英文全称Virtual Private Network,中文译为:虚拟私人网络,又称为虚拟专用网络。
顾名思义,虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它可以通过特殊的加密的通讯协议在连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,就好比是架设了一条专线一样,但是它并不需要真正的去铺设光缆之类的物理线路。这就好比去电信局申请专线,但是不用给铺设线路的费用,也不用购买路由器等硬件设备。VPN技术原是路由器具有的重要技术之一,目前在交换机,防火墙设备或WINDOWS2000等软件里也都支持VPN功能,一句话,VPN的核心就是在利用公共网络建立虚拟私有网。
针对不同的用户要求,VPN有三种解决方案:远程访问虚拟网(Access VPN)、企业内部虚拟网(Intranet VPN)和企业扩展虚拟网(Extranet VPN),这三种类型的VPN分别与传统的远程访问网络、企业内部的Intranet以及企业网和相关合作伙伴的企业网所构成的Extranet(外部扩展)相对应。
VPN网关是实现局域网(LAN)到局域网连接的设备。从字面上我们就能够知道它可以实现两大功能:VPN和网关。广义上讲,支持VPN(虚拟专用网)的路由器和防火墙等设备都可以算作VPN网关。目前常见的VPN网关产品可以包括单纯的VPN网关、VPN路由器、VPN防火墙、VPN服务器等产品。
一个完整的VPN系统一般包括以下几个单元:
VPN服务器:一台计算机或设备用来接收和验证VPN连接的请求,处理数据打包和解包工作。
VPN客户端:一台计算机或设备用来发起VPN连接的请求,也处理数据的打包和解包工作。
VPN数据通道:一条建立在公用网络上的数据连接。
注意所谓的服务器和客户端在VPN连接建立之后在通信中的角色是相同的,它们的区别只在于连接是由谁发起的而已。
7、什么是IPSEC?
IPsec:IP层协议安全结构
(IPsec:Security Architecture for IP network)
IPsec 在 IP 层提供安全服务,它使系统能按需选择安全协议,决定服务所使用的算法及放置需求服务所需密钥到相应位置。 IPsec 用来保护一条或多条主机与主机间、安全网关与安全网关间、安全网关与主机间的路径。
IPsec 能提供的安全服务集包括访问控制、无连接的完整性、数据源认证、拒绝重发包(部分序列完整性形式)、保密性和有限传输流保密性。因为这些服务均在 IP 层提供,所以任何高层协议均能使用它们,例如 TCP 、 UDP 、ICMP 、 BGP 等等。
这些目标是通过使用两大传输安全协议,头部认证(AH) 和封装安全负载 (ESP),以及密钥管理程序和协议的使用来完成的。所需的 IPsec 协议集内容及其使用的方式是由用户、应用程序、和/或站点、组织对安全和系统的需求来决定。
IPSec协议是一个应用广泛,开放的VPN安全协议,目前已经成为最流行的VPN解决方案。IPSec包括AH和ESP。AH验证头,提供数据源身份认证、数据完整性保护、重放攻击保护功能;ESP安全负载封装,提供数据保密、数据源身份认证、数据完整性、重放攻击保护功能。NetEye VPN在利用IPSec自身优点的同时,对于其核心和附加功能进行了专业优化和重组。另外,在IPSec框架当中还有一个必不可少的要素: Internet安全关联和密钥管理协议——IKE(或者叫ISAKMP/Oakley),它提供自动建立安全关联和管理密钥的功能。
● 利用AH、ESP,NetEyeVPN可以做到对于C.I.A的满足。
● 对于认证过程,NetEye VPN采用了基于PKI的公钥认证体系,遵循X.509标准。并且提供单独的密钥管理中心,用以进行密钥的生成、分发、更新和吊销等一系列管理。所有网关间的数据传输,根据国家有关法令规定,全部采用硬件加密和专有加密算法(NetEye VPN身份认证过程如下图所示)。
![IPSEC](http://www2.ccw.com.cn/03/0328/d/pic/d31_3t2.jpg)
IPSec有两种工作模式——传输模式和通道模式。这两种模式最根本的区别在于,是否尽心做IPIP封装。NetEye防火墙工作于通道模式,其特点就是生成新的IP头,替换了原有的IP包头,这样就可以对于原始地址进行隐藏。原来的IPSec标准是不支持NAT的,可以看到,一旦经过NAT,由于IP包头数据被修改,就等于数据完整性遭受破坏,那么AH或ESP的校验就会失败。NetEye VPN采用了最新的标准,利用附加UDP头的方式成功解决了NAT穿越问题。
8、什么是SSL?
SSL 的英文全称是 “Secure Sockets Layer” ,中文名为 “ 安全套接层协议层 ” ,它是网景( Netscape )公司提出的基于 WEB 应用的安全协议。 SSL 协议指定了一种在应用程序协议(如 HTTP 、 Telenet 、 NMTP 和 FTP 等)和 TCP/IP 协议之间提供数据安全性分层的机制,它为 TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。
VPN SSL 200 设备网关适合应用于中小企业规模,满足其企业移动用户、分支机构、供应商、合作伙伴等企业资源(如基于 Web 的应用、企业邮件系统、文件服务器、 C/S 应用系统等)安全接入服务。企业利用自身的网络平台,创建一个增强安全性的企业私有网络。 SSL VPN 客户端的应用是基于标准 Web 浏览器内置的加密套件与服务器协议出相应的加密方法,即经过授权用户只要能上网就能够通过浏览器接入服务器建立 SSL 安全隧道。
SSL VPN 利用三种客户端接入方式来协助用户在任何地方任何时间安全第访问公司的任何资源:
◇ 远程桌面共享
◇ Web Browser 基于浏览器的接入 ( 可以访问 Web 应用程序和文件共享 )
◇ 即时下载的 Java 小应用程序 ( 可访问客户 / 服务器应用程序 )
应用领域:
SSL VPN 提供下述情况的解决方案:企业需要通过互联网(笔记本型计算机、移动个人计算机、远程用户接入)达到广泛而全面性的信息存取。 SSL VPN 能满足所有你的远程接入需要。 SSL VPN 技术为你提供增强的灵活性,以便更好地配合你公司的安全性和基础结构需要,同时给你的用户一个统一的、容易的界面和一个简化的用户经验。 SSL VPN0 还提供了高可用性,它具有可靠的冗余能力,排除了单点故障的可能性,减少系统停机时间,另外它还具有负载均衡的能力,提高系统的整体性能。
9、什么是S-MIME?
MIME/S-MIME:多用途网际邮件扩充协议
MIME/S-MIME:Multipurpose Internet Mail Extensions and Secure MIME
多用途网际邮件扩充协议(MIME)是 Multipurpose Internet Mail Extensions 的缩写,说明了如何安排消息格式使消息在不同的邮件系统内进行交换。 MIME 的格式灵活,允许邮件中包含任意类型的文件。 MIME 消息可以包含文本、图象、声音、视频及其它应用程序的特定数据。具体来说, MIME 允许邮件包括:
单个消息中可含多个对象;
文本文档不限制一行长度或全文长度;
可传输 ASCII 以外的字符集,允许非英语语种的消息;
多字体消息 ;
二进制或特定应用程序文件 ;
图象、声音、视频及多媒体消息。
MIME 复合消息的目录信头设有分界标志,这个分界标志绝不可出现在消息的其它位置,而只能是在各部之间以及消息体的开始和结束处。
MIME 的安全版本 S/MIME (Secure/Multipurpose Internet Mail Extensions) 设计用来支持邮件的加密。基于 MIME 标准, S/MIME 为电子消息应用程序提供如下加密安全服务:认证、完整性保护、鉴定及数据保密等。
传统的邮件用户代理(MUA)可以使用 S/MIME 来加密发送邮件及解密接收邮件。然而, S/MIME 并不仅限于邮件的使用,它也能应用于任何可以传送 MIME 数据的传输机制,例如 HTTP 。同样, S/MIME 利用 MIME 的面向对象特征允许在混合传输系统中交换安全消息。
此外, S/MIME 还可应用于消息自动传送代理,它们使用不需任何人为操作的加密安全服务,例如软件文档签名、发送到网上的 FAX 加密等。
10、什么是SET?
SET协议(Secure Electronic Transaction,安全电子交易)是由VISA和MasterCard两大信用卡公司于1997年5月联合推出的规范。SET主要是为了解决用户、商家和银行之间通过信用卡支付的交易而设计的,以保证支付信息的机密、支付过程的完整、商户及持卡人的合法身份、以及可操作性。SET中的核心技术主要有公开密匙加密、电子数字签名、电子信封、电子安全证书等。
SSL协议(Secure Socket Layer,安全套接层)是由网景(Netscape)公司推出的一种安全通信协议,它能够对信用卡和个人信息提供较强的保护。SSL是对计算机之间整个会话进行加密的协议。在SSL中,采用了公开密钥和私有密钥两种加密方法。
SET协议比SSL协议复杂,因为前者不仅加密两个端点间的单个会话,它还可以加密和认定三方间的多个信息。
在开放的因特网上处理电子商务,保证买卖双方传输数据的安全成为电子商务的重要的问题。为了克服SSL安全协议的缺点,满足电子交易持续不断地增加的安全要求,为了达到交易安全及合乎成本效益的市场要求,VISA国际组织及其它公司如Master Card、Micro Soft、IBM等共同制定了安全电子交易(SET:Secure Electronic Transactions)公告。这是一个为在线交易而设立的一个开放的、以电子货币为基础的电子付款系统规范。SET在保留对客户信用卡认证的前提下,又增加了对商家身份的认证,这对于需要支付货币的交易来讲是至关重要的。由于设计合理,SET协议得到了许多大公司和消费者的支持,己成为全球网络的工业标准,其交易形态将成为未来“电子商务”的规范。
安全电子交易规范,为在因特网上进行安全的电子商务提供了一个开放的标准。SET主要使用电子认证技术,其认证过程使用RS。