安全协议

安全协议(英语:security protocol),又称作密码协议cryptographic protocol)、加密协议(encryption protocol),是以密码学为基础的消息交换协议,其目的是在网络环境中提供各种安全服务。密码学是网络安全的基础,但网络安全不能单纯依靠安全的密码算法。安全协议是网络安全的一个重要组成部分,我们需要通过安全协议进行实体之间的认证、在实体之间安全地分配密钥或其它各种秘密、确认发送和接收的消息的非否认。

安全协议的目标

安全目标是多种多样的。例如,认证协议的目标是认证参加协议的实体的身份。此外,许多认证协议还有一个附加的目标,即在主体之间安全地分配密钥或其他各种秘密。

安全协议的分类

按安全协议定义

密钥交换协议、认证协议、认证和密钥交换协议。

按安全协议实现的功能

认证协议、最小泄密协议、不可否认协议、公平性协议、身份识别协议、密钥管理协议。

针对安全协议的攻击

对于攻击者能力的假设

Dolev-Yao模型 [1] 认为,攻击者可以控制整个通信网络,并应当假定攻击者具有相应的知识与能力。例如,我们应当假定,攻击者除了可以窃听、阻止、截获所有经过网络的消息等之外,还应具备以下知识和能力:

  • 熟悉加解、解密、散列(hash)等密码运算,拥有自己的加密密钥和解密密钥;
  • 熟悉参与协议的主体标识符及其公钥;
  • 具有密码分析的知识和能力;
  • 具有进行各种攻击,例如重放攻击的知识和能力。

攻击类型

安全协议的设计

设计原则

形式化描述语言

基本假设

安全协议的形式化验证

安全协议的例子

  • Secure Shell,简称SSH
  • IPsec
  • TLS
  • Kerberos
  • 不留记录即时通讯

参考文献

  1. ^ D. Dolev and A. Yao, "On the security of public key protocols"页面存档备份,存于互联网档案馆), IEEE transactions on information theory, vol. 29 num. 2, pp. 198-208, IEEE, 1983.

外部链接