美文网首页
2.8 加密工具与散列

2.8 加密工具与散列

作者: 拙言_Coder | 来源:发表于2019-03-11 09:01 被阅读0次

《Linux Shell 脚本攻略(第 2 版)》读书笔记

crypt

加密文件

$ crypt <file >file.crypt
Enter passphrase:

# 或者通过命令行参数来提供口令
$ crypt PASSPHRASE <file >file.crypt

解密文件

$ crypt PASSPHRASE -d <file.crypt  >output_file
# 解密之后将内容存储到 output_file 文件中

gpg(GNU 隐私保护)

用 gpg 加密文件

$ gpg -c file
Enter passphrase:
# 加密后的默认文件名为:file.gpg

用 gpg 解密文件

$ gpg file.gpg
# 解密之后的文件默认文件名:file

Base64

将文件编码为 Base64 格式

$ base64 file > file.base64
# 或者
$ cat file | base64 > file.base64

解码 Base64 数据

$ base64 -d file.base64 > output_file
# 或者
$ cat file.base64 | base64 -d > output_file

md5sum 与 sha1sum

md5sum 与 sha1sum 都是单项散列算法,均无法逆推出原始数据。
它们通常用于验证数据完整性或为特定数据生成唯一的密钥:

$ md5sum file
bbe02f946d5455d74616fc9777557c22  file

$ sha1sum file
046c168df2244d3a13985f042a50e479fe56455e  file

尽管使用广泛,但 md5sum 与 sha1sum 已经不再安全。

shadow-like 散列(salt 散列)

在 Linux 中,用户密码都是一散列值形式存储在文件/etc/shadow中的。

$ sudo cat /etc/shadow
root:$6$e3zx9pFN6$OP7dFHlXRLBPvmiQvJAMUz/6sdbjrF7OjnGSBPxTKQKfLxTbCE2tDAz6s0q2jAs9rqwXBW5pf1e1mXt8YhKW4.:17833:0:99999:7:::

shadow 密码通常都是 salt 密码。所谓 salt 就是额外的一个字符串,用来起一个混淆的作用,是加密更加不易被破解。salt 由一些随机位组成,被用作密钥生成函数的输入之一,以生成密码的 salt 散列值。

$ openssl passwd -1 -salt 3d709e89c PASSWORD
$1$3d709e89$yl0Ry.0ji3JDNMGKtK4pq0

注意看输出中的$3d709e89,就是 salt 字符串。而且比我输入的字符串末尾少了一个c字符。这里要说明的是:-salt只读取前 8 个字符,后面的都会舍弃。少于 8 个字符也是可以的。

后面$yl0Ry.0ji3JDNMGKtK4pq0就是加密后的密码文本。

相关文章

  • 2.8 加密工具与散列

    《Linux Shell 脚本攻略(第 2 版)》读书笔记 crypt 加密文件 解密文件 gpg(GNU 隐私保...

  • 密码安全

    本文介绍密码安全相关的加密与散列算法。 目录 散列算法 加密算法对称加密非对称加密 散列算法 Hashing 是使...

  • 加密函数,加密手段。

    密码散列函数: 密码散列函数(英语:Cryptographic hash function),又译为加密散列函数、...

  • Node前端加密(crypto)

    一、散列算法和加密算法区别 散列算法是单向加密不可逆的 加密算法可以加密,然后通过密钥解密 二、方法 获取支持的加...

  • 加解密

    信息加密技术可分为三类: 1.单向散列加密 单向散列加密是指通过对不同输入长度的信息进行散列计算,得到固定长度的输...

  • 【实践】Swift3 封装加密工具类CryptoHelper

    使用OC的CommonCrypto库完成对swift的加密/解密工具类的封装。支持散列哈希(MD5, SHA1, ...

  • 数据加密技术与密钥安全管理

    单向散列加密 单向散列加密就是把任意长的输入消息串变化成固定长的输出串且由输出串难以得到输入串的一种加密算法。 常...

  • 加密算法的理解

    加密算法按类型分类: 对称加密、非对称加密、散列算法 对称加密: 加密双方都持有加密算法及密钥 非对称加密: 加密...

  • 图解密码技术--阅读笔记(一)

    对称密码 加密与解密的密钥相同共钥密码 加密与解密密钥不同 单向散列函数 hash 保证完整性消息认证码 不仅能够...

  • iOS 逆向14 -- 密码学

    加密算法的分类 Hash哈希散列函数:严格意义上来说不属于加密算法,常见的散列函数有MD5、SHA1/256/51...

网友评论

      本文标题:2.8 加密工具与散列

      本文链接:https://www.haomeiwen.com/subject/gbtvpqtx.html