网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断
网络安全的基本属性
机密性(confidentiality):只有发送方与预定接收方能够理解报文内容,发送方加密报文,接收方解密报文
身份认证:发送方与接收方希望确认彼此的真实身份
信息完整性:发送方与接收方希望确保信息未被篡改(传输途中或后期).发生篡改一定会被检测到
访问与可用性:网络服务必须对被授权用户可访问与可用
基本特征
相对性:只有相对的安全,没有绝对的安全
时效性:新的漏洞与攻击方法不断发现。
相关性:新配置、新系统组件可能会引入新的安全问题
不确定性:攻击时间、攻击者、攻击目标和攻击发起的地点都有不确定性
复杂性:网络安全是一项系统工程,需要技术的和非技术的手段
重要性:网络安全关乎国家、政府、企业、个人的安全
拒绝服务(DOS Denial of service)
向接收方恶意泛洪(flood)分组,严么接收方
占尽带宽
资源耗尽(消耗服务器或者主机的CPU或者内存)
分布式拒绝服务攻击(DDOS):多个源主机协同淹没接收方
利用IP欺骗让反射服务器以为是目标给他的报文
一般第二次握手时服务器就已经为请求分配了空间,SYNcookie技术是不分配空间并且将返回的seq号通过哈希计算得出,来判断是否是攻击还是真正的连接。如果是真正的连接返回的ACK值对应,会分配空间。
密码学基础
相关术语:
明文:并未加密的信息,谁拿到都可以看懂
密文:铭文经过加密算法,不光需要知道加密算法, 没有解密密钥也无法还原
对称密钥加密(解密密钥与加密密钥为同一个)
非对称密钥加密(公开密钥加密)
利用公共密钥加密,只有私有密钥才能解开,
传统加密方法
替代密码:利用一种东西代替另一种东西。
密匙中第一个字母用c1第二个字母用c2.。。。。。
列置换加密的密钥包括列数和输出顺序。
密钥的方式:可以用单词来表示。单词长度(字母数量)表示列数,单词在字母表的字母顺序表示输出顺序
现代加密技术
现代加密技术的基本操作包括经典的替代和 置换:不再针对一个个字母,而是针对二进制位操作
对称密钥加密:流密码,分组密码(块密码)
流密码
分组密码
将明文序列划分成长为m的明文组,各个铭=明文组在长度为i的密钥组的控制下变成长度为n的密文组,通常取n=m
n>m扩展分组密码 n<m压缩分组密码
典型分组密码结构:Feistel分组密码结构
feistel分组密码结构
加密解密方法是一样的
数据加密标准:DES
初始置换IP(initial’permutation)