2.8加密工具与散列
1、crypt是一个简单的加密工具,它从stdin接受一个文件以及口令作为输入,然后将加密数据输出到stdout(因此要对输入、输出文件使用重定向)。
eg:$ crypt < input_file > output_file
Enter passphrase:
它会要求输入一个口令。可以通过命令行参数来提供口令。
eg:$ crypt PASSPHRASE <input_file >encrypted_file
如果需要解密文件,可以使用:
$crypt PASSPHRASE -d < encrypted_file >output_file
2、gpg(GNU隐私保护)是一种应用广泛的工具,它使用加密技术来保护文件,以确保数据在送达目的地之前无法被读取。注意:gpg签名同样广泛用于在电子邮件通信中的邮件“签名”,以证明发送方的真实性。
用gpg加密文件
eg:$ gpg -c filename
该命令采用交互方式读取口令,并生成filename.gpg.使用以下命令解密gpg文件:
$ gpg filename.gpg
该命令读取口令,然后对文件进行解密。
3、Base64是一组相似的编码方案,它将ASCII字符转换成以64为基数的形式,以可读的ASCII字符串来描述二进制数据。base64命令可以用来编码/解码Base64字符串。要将文件编码为Base64格式,使用:
eg:$ base64 filename > outputfile
或者
$cat file | base64 >outputfile
base64可以从stdin中进行读取。
解码Base64数据:
$base64 -d file > outputifile
或者
$cat base64_file | base64 -d > outputfile
4、md5sum与sha1sum都是单向散列算法,均无法逆推出原始数据。他们通常用于验证数据完整性或为特定数据生成唯一的密钥:
eg:$ md5sum file
$sha1sum file
这种类型的散列算法是存储密码的理想方案。密码使用其对应的散列值来存储。如果某个用户需要进行认证,读取该用户提供的密码并转换成散列值,然后将其与之前的存储的散列值进行对比。
注意:md5sum和SHA-1已不再安全,这是由于计算能力的攀升,推荐使用bcrypt或sha512sum这类工具进行加密。
5、shadow-like散列(salt散列)
在Linux中,用户密码是以散列值形式存储在文件/etc/shadow中的,该文件中的散列值是以"."的形式连接的。下面使用openssl生成shadow密码:
shadow密码通常都是salt密码。所谓的SALT就是额外的一个字符串,用来起一个混淆的作用,使加密更加不易被破解。salt由一些随机位组成,被用作密钥生成函数的输入之一,以生成密码的salt散列值。
eg:$ openssl passwd -1 -salt SALT_STRING PASSWD
$1$SALT_STRING$323VkWkSLHuhbt1zkSsUG.
将SALT_STRING替换为随机字符串,并将PASSWORD替换成自己的密码。
转载于:https://www.cnblogs.com/gary-guo/p/6168979.html
2.8加密工具与散列相关推荐
- 消息认证之SHA散列算法族
消息认证--安全散列算法SHA(Secure Hash Algorithm) 一. 消息认证 对要传递的消息进行加密有两个目的,其一是防止消息被消息发送者和消息接收者之外的第三者窃听(被动攻击),在之 ...
- 基础入门-算法逆向散列对称非对称JS源码逆向AESDESRSASHA
文章目录 安全测试中: 加密解密-识别特征&解密条件 其他密文特点见: 解密实例-密文存储&数据传输 课件附加资源百度云 安全测试中: 密文-有源码直接看源码分析算法(后端必须要有源码 ...
- 在线字符串哈希/散列加密工具
在线字符串哈希/散列工具 在线字符串哈希/散列工 本工具可以获取多种散列方式的哈希值,如MD5,SHA1,SHA224,SHA256,SHA384,SHA512,HmacMD5,HmacSHA1等,基 ...
- 数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)...
2019独角兽企业重金招聘Python工程师标准>>> 数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥. 2. 鲍勃把公钥送给他的朋友们----帕蒂.道格.苏珊-- ...
- 数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)
数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥. 2. 鲍勃把公钥送给他的朋友们--帕蒂.道格.苏珊--每人一把. 3. 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果. 4 ...
- shiro认证+授权(使用MD5+salt+散列加密)
通过上文自定义realm分析源码可得https://blog.csdn.net/Kevinnsm/article/details/11183124 用户认证在doGetAuthenticationIn ...
- 数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)——Web网络系列学习笔记
数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥. 2. 鲍勃把公钥送给他的朋友们--帕蒂.道格.苏珊--每人一把. 3. 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果. 4 ...
- Java实现密码学工具,集成了对称加密算法DES,AES,IDEA,公开加密算法RSA,ECC,散列算法MD5,SHA1,CRC32,以及RSA,DSA,ECDSA数字签名验证示例。
密码学综合工具 前言 git网址 项目结构 项目预览 String与byte[]互转 通过`String`类转换 通过`Base64`互转[jdk-8] 前言 我们网络信息安全的实验...要我们找各种 ...
- 文本的DES加密 MD5散列值 DSA的数字签名
作者:未知 文本的DES加密 为了对称加密的安全,将密码进行封装,先新建一个用于保存密码的类库cl: using System; using System.Text ; namespace cl { ...
最新文章
- Android Studio 第四十九期 - Sqlite数据库四种写法
- python argparse中action 的可选参数store_true
- TMD 这个写笔记的号,盗了有意思吗
- 冲刺阶段——Day5
- html-edm(邮件营销)编写规则
- ajax读取评论数据,评论提交使用ajax提交实现
- mybatis一对一联表查询的两种常见方式
- 华为表示年内没有推出搭载鸿蒙操作系统手机的计划;OpenStack或被抛弃?iPhone至少还要三年可苹果自研5G调制解调器……...
- VB案例:泸职院教师评学评价表计算程序
- javascript中闭包的真正作用
- 硬核干货来啦:Js数组去重,赶快收藏吧
- CentOS 6.x通过yum安装php7.1及相关环境
- ArcMap中无法添加ArcGIS Online底图的诊断方法
- 知乎APP---案例分析
- 大二第六周(逐渐暴躁的一周)
- 东北大学软件项目管理与过程改进复习提纲(2020)——第三章
- Linux CRDA(Central Regulatory Domain Agent)简介
- ubuntu 黑体_Ubuntu 黑体解决方案
- 积木开发系列----Blockly初体验
- python的math库函数汇总
热门文章
- Adobe Premiere Elements 2021中文版
- PDF转换图片,图片的切割,图片转换PDF以及PDF加水印等记录贴
- JS 时间转化为几分钟前 几小时前 几天前
- swap的实现(没有中间变量)
- HMM、MEMM、CRF模型比较和标注偏置问题(Label Bias Problem)
- FireMonkey 导出目前 Style 另存文件
- Android环境下通过C框架层控制WIFI【转】
- 重磅 |“金砖”电商报告:5年后金砖五国网络零售将超3万亿美元
- DJango操作MySQL数据库
- 憋不住的心里的一个想法,JVM的BYTECODE是完全平台无关的么?