通信安全的基础知识
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通信安全的基础性知识
作者: 韩光华/67370 通信安全的核心是: 1.) 保证服务可用,2.) 保障服务/数据不被非法使用。各式各样的破坏、攻击、监听、入侵等手段,其目的就是以上2点博弈性的反论。经常听到的洪泛攻击、DDOS,它们只是让服务器瘫痪,但并不产生经济、法律以及个人信息泄露等问题,属于第1点的范畴。而信用卡数据库遭到入侵和泄露、棱镜门中的电话被监听,均涉及到第2点,即服务/信息被入侵/监听后,带来法律、经济等方面的负面影响。
应对第1种攻击和破坏行为的方式,一般是通过规避协议漏洞、特殊的攻击场景应对性设计、增强服务器处理性能、增强数据库I/O效率等纯粹的技术手段来实现。本文不进一步阐述。需要注意的是,服务的可用性,任何系统从架构设计到具体实现,都有一个基础性的能力底线门限。一旦请求和任务,瞬间并发超过这个底线,系统整体的表现有可能会快速走向一个较陡峭下滑的衰落曲线。
经常可以听到,加密、X.509证书、TLS、SSL、HTTPs、IPSec、AES128、Radius、篡改、侵入等正反向的名词和概念。这些内容均是和第2点的”服务不被非法使用”相关。如果希望能准确地理解这些概念,以及在通信系统、会议系统、互联网业务、甚至到生活中的一些场景的应用,下面2个内容最为关键, 一个是对应安全体系的机制性要求, 一个是对应机制的具体实现的核心内容。
AAA:--- 机制性要求
AAA = Authentication, Authorization, Accounting,前2个与安全强相关。
什么是非法使用?就是不合适的人,看到或用到他没有权限的数据或服务。如何区分合适和不合适?就是身份认证。而身份,有非常多的类型,如物理性的人类指纹或动物的气味、QQ/微信帐号、银行帐号、3G的USIM、X.509证书、SIP的URI、电话号码等等。在电子化的世界里,身份一般只能是一串数字或数字与字符结合的特殊字串。不同的系统里,对串的组成和含义,会有不同的特殊化定义,典型的如3G的USIM和SIP的URI。
认证,就是对身份的确认,解决安全中的信任问题。对称和非对称,是实现身份认证的机理。而认证的过程,一般都会包括所谓的”Challenge”过程。银行柜台出示身份证、输入QQ帐号和密码登陆系统、信用卡中心的电话密码(或客服小姐口头向你确认若干xx问题),其实这些都是Challenge/挑战的过程。最简单的挑战过程只需要一次,复杂的挑战过程可能会有多次中间夹带随机数并且有双向挑战的场景。在电子化通信场景了,如果身份信息以及
证明自己身份的密码或其它证明性信息以明文的形式进行交互,被监听和破解的可能性就会很大。其保护性的机理措施就是对称和非对称的加/解密过程。
Authorization,授权。在Challenge的过程中或Challenge结束后,一般同步完成授权。授权,简单的说就是具有该身份的人在系统中所拥有的权限和业务实用范围。与身份对应的权限信息/ 业务信息,大部分系统都是保存在后台数据库当中,在Radius / Diameter等鉴权流程后,将权限信息发放给个人和服务器状态控制器。
建议,如果想了解更多的关于AAA方面的信息,可以参阅IETF定义的Radius / Diameter 协议,分别为RFC2865 / RFC3588。
对称和非对称算法---- 机制实现的核心原理内容
对称和非对称,背后有高等数论的基础,这里仅介绍其表征性的机理。
对称和非对称,名字本身已经隐含了他们的差异。对称,简单的理解就是通信体在加密的密钥/加密算法上拥有完全一致对等信息,称之为对称。而非对称,每个通信体各自有一个密钥对,一个叫公钥,一个叫私钥。私钥只有通信体自身拥有,任何第三方均不知道。公钥,可以发布给任何第三方。用私钥加密的信息,只能用该私钥对应的公钥可以解开。用公钥加密的信息,只能用该公钥对应的私钥能够解开。对称和非对称,参考下面的图表。
图表 1 对称算法
图表2 非对称算法
非对称算法中, Cat实体拥有自己的密钥对外,它还可以知道Panda的公钥。Panda的情况与Cat类似,它拥有自己的密钥对外,还可以有Cat的公钥。整个流程分为2类:
◆私钥加密/公钥解---用于数字签名流程;Cat用自己的私钥进行明文加密戳的产生,
Panda可以用Cat的公钥验证明文戳是否由Cat本身产生的。(明文及明文戳同时传递
给Panda, Panda通过比对的方式验证。明文,一般包括Cat的身份信息及随机数。随
机数的意义是规避Replay攻击)。
◆公钥加密/公钥解---用于加密信息传递;Cat用Panda的公钥进行信息加密,加密后
的信息在通信媒介中传递,只有Panda可以用自己私钥解出最终的明文。
以上是对称和非对称最基础性的定义和差异理解,并且背后有高等数论做支撑。除此之外,对称和非对称还会有其它一些差异,比如加/解密的算法执行过程的效率,从CPU运算时间纬度看,对称要优于非对称算法。很多系统都是首先用非对称算法进行身份验证,并在身份验证通过基础上,产生一次性的临时对称加密Key,用该Key进行后续信息的加密交互。
对称和非对称,除了上面加解密流程性场景外,在真正的商用系统中还有密钥的产生、发布、失效回收等一系列的流程。这些流程中也有涉及技术和非技术的因素,如私钥的安全性保护,并且如发布的难易会影响其可商用性。
建议,如果想了解对称和非对称方面进一步信息,可以参阅X.509、IPSec对应的一些参
考性文件。
本文介绍了通信安全的基础性技术和场景,场景因素在日常生活中有着类似的应用。理解了AAA 和对称&非对称的基础性知识,对于企业网中的安全性需要会有较大的裨益。