Linux安全机制与加密工具使用

发表于:2016-9-26 10:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:运维部落    来源:51Testing软件测试网采编

  一、加密需要和安全机制
  1.不加密流量的易受攻击性
  密码/数据嗅探
  数据操作
  验证操作
  相当于邮寄明信片
  2.不安全的传统协议
  telnet、FTP、POP3等等;不安全密码http、sendmail、NFS等等;不安全信息Ldap、NIS、rsh等等;不安全验证
  3.NIST定义的安全属性:美国国家标准与技术研究院
  1) 保密性:
  数据保密性
  隐私性2)完整性:不可篡改
  数据完整性
  系统完整性3)可用性
  4.安全攻击:STRIDE
  Spoofing(假冒)、Tampering(篡改)、Repudiation(否认)、Information Disclosure(信息泄漏)、
  Denial of Service(拒绝服务)和Elevation of Privilege(提升权限)
  5.安全机制:
  加密、数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、公证
  6.安全服务
  · 认证
  · 访问控制
  · 数据保密性
  · 连接保密性
  · 无连接保密性
  · 选择域保密性
  · 流量保密性
  · 数据完整性
  · 不可否认性
  7.设计基本原则
  · 使用成熟的安全系统
  · 以小人之心度输入数据
  · 外部系统是不安全的
  · 最小授权
  · 减少外部接口
  · 缺省使用安全模式
  · 安全不是似是而非
  · 从STRIDE思考在入口处检查
  · 从管理上保护好你的系统
  二、安全算法与加密方法概念解析
  1.安全算法
  · 常用安全技术
  · 认证
  · 授权
  · 安全通信
  · 审计
  密码算法和协议:
  · 对称加密
  · 公钥加密
  · 单向加密
  · 认证协议
  Linux系统:OpenSSL, gpg(pgp协议的实现)
  2.对称加密算法
  1)对称加密:加密和解密使用同一个密钥
  DES:Data Encryption Standard,56bits    3DES:
  AES:Advanced (128, 192, 256bits)
  Blowfish,Twofish
  IDEA,RC6,CAST52) 特性:    1、加密、解密使用同一个密钥,效率高    2、将原始数据分割成固定大小的块,逐个进行加密3)缺陷:    1、密钥过多    2、密钥分发    3、无法实现数据来源确认
  3.非对称加密算法
  1)公钥加密:密钥是成对出现
  公钥:公开给所有人;public key
  私钥:自己留存,必须保证其私密性;secret key
  2)特点:用公钥加密数据,只能使用与之配对的私钥解密;反之亦然
  功能:
  3)数字签名:主要在于让接收方确认发送方身份
  4)对称密钥交换:发送方用对方的公钥加密一个对称密钥后发送给对方
  5)数据加密:适合加密较小数据
  6)缺点:密钥长,加密解密效率低下
  7)算法:
  RSA(加密,数字签名),DSA(数字签名),ELGamal
  8)基于一对公钥/密钥对
  用密钥对中的一个加密,另一个解密
  9)实现加密:
  接收者
  生成公钥/密钥对:P和S
  公开公钥P,保密密钥S
  发送者
  使用接收者的公钥来加密消息M
  将P(M)发送给接收者
  接收者
  使用密钥S来解密:M=S(P(M))
  10)实现数字签名
  发送者
  · 生成公钥/密钥对:P和S
  · 公开公钥P,保密密钥S
  · 使用密钥S来加密消息M
  · 发送给接收者S(M)
  接收者
  使用发送者的公钥来解密M=P(S(M))
  11)结合签名和加密使用或者分离签名
  4.单向散列
  1)将任意数据缩小成固定大小的“指纹”
  · 任意长度输入
  · 固定长度输出
  · 若修改数据,指纹也会改变(“不会产生冲突”)
  · 无法从指纹中重新生成数据(“单向”)2)功能:数据完整性3)常见算式
  md5: 128bits、sha1: 160bits、sha224sha256、sha384、sha5124)常用工具
  md5sum | sha1sum [ --check ] file
  openssl、gpg
  rpm -V5)find ./ -type f -exec md5sum {} \;常用来分析两套文件系统的文件变化情况
  5.密钥交换
  1)密钥交换:IKE(Internet Key Exchange )
  公钥加密:
  DH (Deffie-Hellman):2)DH    1、A: a,p协商生成公开的整数a,大素数p
  B: a,p    2、A:生成隐私数据:x (x<p ),计算得出a^x%p,发送给B
  B:生成隐私数据:y,计算得出a^y%p,发送给A    3、A:计算得出(a^y%p)^x = a^xy%p,生成为密钥
  B:计算得出(a x%p) y = a^xy%p, 生成为密钥
  6.CA和证书
  1)PKI: Public Key Infrastructure
  签证机构:CA(Certificate Authority)
  注册机构:RA( registry Authority)
  证书吊销列表:CRL(Certificate   revoke  list)
  证书存取库:2)X.509:定义了证书的结构以及认证协议标准
  版本号、序列号、签名算法、颁发者、有效期限、主体名称、主体公钥、CRL分发点、扩展信息、发行者签名
  3)证书类型
  证书授权机构的证书
  服务器
  用户证书4)获取证书两种方法:
  使用证书授权机构
  生成签名请求(csr)
  将csr发送给CA
  从CA处接收签名5)自签名的证书
  自已签发自己的公钥
  7.安全协议
  1)SSL: Secure Socket Layer
  TLS: Transport Layer Security        1995:SSL 2.0 Netscape        1996: SSL 3.0
  1999: TLS 1.0
  2006: TLS 1.1
  RFC(Request For Comments )4346
  2008:TLS 1.2 当前使用        2015: TLS 1.3
  功能:机密性,认证,完整性,重放保护2)两阶段协议,分为握手阶段和应用阶段
  握手阶段(协商阶段):客户端和服务器端认证对方身份(依赖于PKI体系,利用数字证书进行身份认证),
  并协商通信中使用的安全参数、密码套件以及主密钥。后续通信使用的所有密钥都是通过MasterSecret生成。
  应用阶段:在握手阶段完成后进入,在应用阶段通信双方使用握手阶段协商好的密钥进行安全通信。3)SSL/TLS protocol 安全套接字层/传输层安全性协议图示
  4)ssl/TLS协议过程
  Handshake协议:包括协商安全参数和密码套件、服务器身份认证(客户端身份认证可选)、密钥交换;
  ChangeCipherSpec 协议:一条消息表明握手协议已经完成
  Alert 协议:对握手协议中一些异常的错误提醒,分为fatal和warning两个级别,fatal类型错误会直接中断SSL链接,而warning级别的错误SSL链接仍可继续,只是会给出错误警告
  Record 协议:包括对消息的分段、压缩、消息认证和完整性保护、加密等。
  HTTPS 协议:就是“HTTP 协议”和“SSL/TLS 协议”的组合。HTTP over SSL”或“HTTP over TLS”,对http协议的文本数据进行加密处理后,成为二进制形式传输5)协议请求与回应过程图示
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号