Linux文件加密解密CentOS和Ubuntu压缩文件加密解密
首先说下实现方法:使用Linux的openssl命令进行二进制文件的加密解密,使用管道命令进行文件的加密解密操作
一、普通文件加密/解密
【加密】
cat a.txt | openssl des3 -e -k password > a1
其中a.txt可以为任何二进制文件、password为密码、a1为加密后的文件
原理:使用cat命令读取文件内容使用管道命令将文件内容输出到openssl命令,加密完成使用>操作符将加密后的结果输出到文件a1
【解密】
cat a1 | openssl des3 -d -k password > a2
其中a1为加密后的文件、password为密码、a2为解密后的文件
原理与加密相同
openssl参数:
des3 加密方式(可根据需要更换)
-e 表示需要加密
-d 表示需要解密
-k 表示密钥(即密码)
二、压缩文件加密/解密
亮点:使用管道符实现数据内存交互,无需打包后再将打包后的文件加密
【压缩并加密】
tar zcvf - file1 file2 | openssl des3 -e -k password > a1
其中file1、file2指添加进压缩包的文件,可以多个,可以为文件夹;password为密码,a1为加密后的文件
原理:使用tar命令打包文件( - 参数指输出到管道)将打包后的数据输出到openssl命令加密完成使用>操作符将加密后的结果输出到文件a1
【解密并解压】
cat a1 | openssl des3 -d -k password | tar zxvf -
其中a1为加密后的文件,password为密码
原理:使用 cat命令读取加密后的文件内容并且输出到openss命令,解密完成得到压缩包数据再通过管道符将数据传递到tar命令进行解压
tar命令的“-”参数指从管道读取数据进行解压而非文件
不得不感慨Linux管道命令之强大,可以将各种命令通过管道组合成复杂的功能,强大而高效
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?