网络安全业务 密码体制 密码算法

发布时间:2003-11-26 作者:中兴通讯 阅读量:

网络安全业务

  根据风险分析确定网络的安全策略(Security policy),以明确规定网络必须提供的安全性。通过网络中的安全设施和机制执行安全策略所提供的安全功能一般即看作安全业务。安全机制利用密码算法和安全协议实现安全业务。ISO归纳的一些基本的安全业务有:

(1)机密性(Confidentiality)或保密性(Privacy),保证只有授权主体才能理解所保护的数据。
(2)认证性(Authentication),保证主体身份或数据源是真实的。
(3)完整性,保证传输或存储的数据未曾被未授权主体篡改。
(4)接入控制,保证只有授权主体可以接入受保护的资源。
(5)不可否认性(Nonrepudiation),保证主体不能否认他对数据曾采取的动作(例如制作、发送、接收等)。

  除了以上几个常见的安全业务外,还有一些特殊需求的安全业务,如:

(1)匿名性(Anonymity),保证主体的身份不被泄露。
(2)新鲜性(Freshness),保证数据不是过去记录的重放。
(3)公证(Notarization),所有参与方所信赖第3方可对争议进行仲裁。
(4)不可追踪性(untraceability),保证主体的身份或者位置不被跟踪。

  密码体制

  密码体制是实施密码变换的基本方式,从原理上可分为两大类,即单钥体制和双钥体制。单钥体制又称为传统密码体制或对称密码体制,双钥体制又称为公钥密码体制或非对称密码体制。

  单钥体制的加密密钥和解密密钥相同。系统的保密性主要取决于密钥的安全性,必须通过安全可靠的途径(如信使递送)将密钥送至收端。如何产生满足保密要求的密钥是这类体制设计和实现的主要课题。单钥体制对明文消息加密有两种方式:一是明文消息按字符(如二元数字)逐位地加密,称之为流密码;另一种是将明文消息分组(含有多个字符),逐组地进行加密,称之为分组密码。

  双钥体制是由Diffie和Hellman在1976年引入的。采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,另一个则是秘密的。公开的密钥可以像电话号码一样进行注册公布。双钥密码体制的主要特点是将加密和解密能力分开,因而可以实现多个用户加密的消息只能由一个用户解读,或只能由一个用户加密消息而使多个用户可以解读。前者可用于公共网络中实现保密通信,而后者可用于认证系统中对消息进行数字签字。双钥体制特别适用于多用户通信网,它大大减少了多用户之间通信所需的密钥量,便于密钥管理。这一体制的出现是密码学研究中的一项重大突破,它是现代密码学诞生的标志之一。

  密码算法

  密码算法是精心设计的程序、一系列规则或步骤,用于产生加、解密用的密钥流或实现明、密文变换。

  密码算法可分为两大类,即基于数学的密码算法和基于非数学的密码算法。当前实用的算法大多是前者。后者有基于物理的算法,如量子密码,当量子、DNA计算机真正实用时,它在信息安全中将起重要作用。

  基于数学的密码算法可按密码体制划分为单钥密码算法和双钥密码算法。又分为流密码算法和分组密码算法。当前,流密码只有少数标准算法,如RC-4、GSM用的A5、第3代移动通信用的Kasumi算法等;分组密码算法已制定出多种标准,如DES、3DES、EDE-3DES、IDEA、RC-5、AES等。

  双钥密码算法有基于大整数分解的如RSA算法、基于有限域上离散对数的如ElGamal算法、基于椭圆曲线上离散对数的ECC算法、基于计算复杂性理论中背包问题的背包密码算法、基于纠错码理论的McElice算法、基于有限自动机理论的FA算法、基于二次剩余理论的Rabin算法、基于数论中Lucas序列的LUC算法。此外还有概率加密算法、秘密分享密码算法、各种基于零知识证明的身份识别算法以及满足各种特殊要求的数字签字算法。

  除此以外,拟随机数生成算法、用于压缩消息的安全杂凑算法等也都属于密码算法。