Linux密码加密方式之salt

今天学了关于Linux密码加密的方式,以及如何通过密文来暴力破解明文(需要强大的字典或者算力)

密码发展

密码从最开始的明文 -> 单向哈希加密 -> 带有盐的单向加密方式

最开始数据库中的数据

username password
admin 123

到后来的单向哈希加密

username password
admin 202cb962ac59075b964b07152d234b70

再到后来的带有盐的单向加密

username salf password
admin salf b3d513356bdf68b968b2eb69148cecdd

考试专栏

信息安全的概念:
机密性 完整性 可用性 抗否认性
IATF 的三要素:人员 技术 操作
PDRR 模型:

1
2
3
保护   →   检测
↑ ↓
恢复 ← 响应


对于对称密码体系,还有IDEA 和RC系列的算法。

CH1-1 信息安全概述-网络信息安全面临额安全问题

了解信息安全产生的根源

  • 内因:(信息系统复杂性)结构复杂、过程复杂、应用复杂
  • 外因:(人为和环境)人为威胁和自然灾害

CH1-2 信息安全概述-信息安全概念和防护体系

信息安全的目标认识、信息安全及CIA内容
  • CIA(机密性、完整性、可用性)、抗否认性
IATF模型的三大要素
  • 人、技术、操作
P2DR模型的四个组成部分
  • 保护、检测、响应、恢复

CH2-1 密码学基本概念和古典密码算法

  1. 掌握密码学的保密系统的模型
  2. 掌握密码体制五元组、对称和非对称的算法分类依据和原理

五元组:P C K E D、分别为:明文、密文、密钥、加密算法和解密算法

对称和非对称的分类依据是看加密和解密的K是否相等

  • 掌握单表置换算法
  • 科克霍夫原则:密码安全不依赖于对加密系统或算法的保密,而依赖于密钥。
  • 评估密码系统安全性的方法:无条件安全性、计算安全性、可证明安全性

无条件安全性:假定攻击者拥有无线的计算机资源、但仍然无法破解密码系统。

计算安全性:

  • 破译的代价超过信息价值本身
  • 破译的时间超出信息的有效期

可证明安全性

  • 将系统的安全性归结为某个经过研究的困难问题(如大整数因子分解)

CH2-2 密码技术-对称密码技术

AES密码算法

(1)密钥拓展:
W0W1W2W3: w4=w0^S(R(W3))^Ci 这里的R是对W3进行循环左移一个字节。
S函数是对 进行循环左移的结果进行一次查表置换,具体表如下 查S表高4位做行,低4位做列
W5=W4^W1
W6=W5^W2
(2)轮密钥加:
第一步,对明文与K0 进行异或
第二步,将异或的结果进行R轮迭代,即可得到密文Y 下面是迭代的流程。
第三步, 字节替代的过程即为S盒变换的过程
行位移 第一行不变 当 Nk<=6的时候 二三四分别左移 1 2 3 位 Nk>6时 左移 1 3 4 位
列混淆 : 用方阵×行移位的结果进行列混淆
CH2-3 密码技术-公钥密码技术
1、掌握常用的公钥密码算法:RSA、ECC、ELgemal、密钥交换算法(Diffie-Hellman)
2、掌握RSA密码算法(包括背景、密钥生成过程、加解密过程)
RSA算法背景:
RSA是Rivest, Shamir 和 Adleman 在 1978年提出的一种公钥体制。 该算法的数学基础是
初等数论中的Euler(欧拉)定理,并建立在大整数的素因子分解的困难性之上。

RSA算法密钥生成过程:

首先用户选取2个大的素数 P,Q、计算 N = P * Q、计算 φ(n) = (p - 1)(q - 1)
选取一个 d,满足 gcd(d,φ(n)) = 1,并计算 e 使得ed ≡ 1 (mod φ(n))
{e,n} 作为公钥发布,{d,p,q} 作为私钥保密

RSA算法加解密过程:

1
2
计算时要保证 m<n、当m大于n时 要进行分段、
c = m^e (mod n) 、m = c^d (mod n)

CH2-5 密码技术-数字签名

1、数字签名需要具有:不可否认、不可伪造的特性

CH3身份认证与访问控制

1、掌握用户在信息系统资源访问活动中的安全控制的主要步骤

2、理解PKI组成,其中掌握CA和RA的概念及作用

  • 提出PKI所解决的问题:密钥的分发何分享
  • 解决方案:可信的第三方机构
  • CA:认证中心

CA负责发放和管理数字证书

RA:注册中心

RA是证书注册审批机构、负责对证书申请进行资格审查

3、掌握利用数字证书分析网站的问题

CH4-2 网络攻防技术-防火墙技术

1、掌握防火墙技术(包过滤技术何代理服务技术)

包过滤:包过滤防火墙工作在网络层和传输层,它根据通过防火墙的每个数据包的源IP地址、目标IP地址、端口号、协议类型等首部信息来决定是将该数据包发往目的地址还是丢弃,达到限制和检测进出防火墙数据的目的 。

应用代理技术:采用应用代理技术的防火墙工作在应用层。其特点是完全“阻隔”了网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用 。

2、掌握NAT技术作用、分类和原理

NAT在防火墙上设置有一个合法IP地址集,并能够将内部网络的多个IP地址转换到一个公共地址发送到Internet上。

3、掌握防火墙的三种体系结构:屏蔽防火墙、双宿主机防火墙、屏蔽子网防火墙

双宿主机防火墙:

  • 堡垒主机充当应用层网关。在主机中需插入两块网卡,用于将主机分别连接到被保护的内网和外网上。在主机上运行防火墙软件,被保护内网与外网间的通信必须通过主机,因而可以将内网屏蔽起来。内网可以通过堡垒主机获得外网提供的服务。

屏蔽防火墙:

  • 为保护堡垒主机而将它置入被保护网的范围中, 在被保护内网与外网之间设置一个屏蔽路由器。它不允许外网用户对被保护内网进行直接访问, 只允许对堡垒主机进行访问,屏蔽路由器也只接收来自堡垒主机的数据。 与双宿主主机网关类似,也在堡垒主机上运行防火墙软件。
    屏蔽子网防火墙:

不少被保护网有这样一种要求,即它能向外网上的用户提供部分信息。这部分存放在公用信息服务器上的信息,应允许由外网的用户直接读
取。针对这种情况, 屏蔽子网网关结构使用一个或者更多的屏蔽路由器和堡垒主机,同时在内外网间建立一个被隔离的子网——DMZ。

CH4-4 网络攻防技术-网络安全协议

1、掌握IPsec的两种工作模式

  • IPSec工作在网络层, 定义了一种标准、健壮的以及包容广泛的机制,可用它为IP及其上层协议(如TCP和UDP)提供安全保证。
  • IPSec目标为IPv4和IPv6提供具有较强的互操作能力、高质量和基于密码的安全功能,在IP层实现多种安全服务, 如访问控制、数据完整性、数据源验证、抗重播、机密性等。

(1)IPsec的两种工作模式:传输模式、隧道模式

  • 传输模式:传输模式用于在两台主机之间进行的端到端通信。发送端IPsec将IP包载荷用ESP或AH进行加密或认证,但不包括IP头,数据包传输到目标IP后,由接收端Psec
    认证和解密。
  • 隧道模式:隧道模式用于点到点通信,对整隧道模式 个IP包提供保护。

2、掌握VPN 技术概念及典型应用

  • (1)远程访问虚拟专用网
  • (2)企业内部虚拟专用网
  • (3)拓展的企业内部虚拟网

RSA算法过程

首先用户选取2个大的素数 P,Q

计算 N = P * Q

计算 φ(n) = (p - 1)(q - 1)

选取一个 d,满足 gcd(d,φ(n)) = 1,

并计算 e 使得ed ≡ 1 (mod φ(n))

{e,n} 作为公钥发布,

{d,p,q} 作为私钥保密

1
2
3
4
计算时要保证 m<n
当m大于n时 要进行分段
c = me (mod n)
m = cd (mod n)

ELGamal 算法过程

ELGamal 算法过程

选取素数P

选取随机数D

计算本元原A

计算 B=A^D

公钥 P A B
私钥 D

选取随机数k

加密:

  • C1 = A^K mod P
  • C2 = M x B^k mod P

解密:

  • M = C2/(C1^d)mod P

DES算法过程解析

第一步:置换初始表

对输入数据进行表置换,使得数据得到混淆。

取数据的前32个Bit 为L0 后32个Bit为R0

第二步:进行16轮迭代

  • L1=R0 R1=L0^F(R0,K1)

函数过程为

1.对R0进行拓展运算E

每4个Bit为一行,前后各拓展一位,如图所示。。

2.与子密钥Ki进行异或(同样为48位)子密钥如何生成后面会说。