利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 本文介绍了openssl的几个实用命令,利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密。 一. 利用openssl命令进行BASE64编码解码(base64 encode/decode)      1.

本文介绍了openssl的几个实用命令,利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密。
 
一. 利用openssl命令进行BASE64编码解码(base64 encode/decode)  
    1. BASE64编码命令
       对字符串‘abc’进行base64编码:
           # echo abc | openssl base64
           YWJjCg==  (编码结果)
 
       如果对一个文件进行base64编码(文件名t.txt):
           # openssl base64 -in t.txt
 
    2. BASE64解码命令
       求base64后的字符串‘YWJjCg==’的原文:
           # echo YWJjCg== | openssl base64 -d
           abc   (解码结果)
 
       如果对一个文件进行base64解码(文件名t.base64):
           # openssl base64 -d -in t.base64
  
 
二. 利用openssl命令进行md5/sha1摘要(digest)  
    1. 对字符串‘abc’进行md5摘要计算:echo abc | openssl md5 
       若对某文件进行md5摘要计算:openssl md5 -in t.txt
 
    2. 对字符串‘abc’进行sha1摘要计算:echo abc | openssl sha1
       若对某文件进行sha1摘要计算:openssl sha1 -in t.txt
  
 
三. 利用openssl命令进行AES/DES3加密解密(AES/DES3 encrypt/decrypt) 
     对字符串‘abc’进行aes加密,使用密钥123,输出结果以base64编码格式给出:
        # echo abc | openssl aes-128-cbc -k 123 -base64
        U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g=   (结果)
 
     对以上结果进行解密处理:
        # echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64
        abc  (结果)
 
     若要从文件里取原文(密文)进行加密(解密),只要指定 -in 参数指向文件名就可以了。
 
     进行des3加解密,只要把命令中的aes-128-cbc换成des3就可以了。

注:只要利用openssl help就可以看到更多的安全算法了。

目录
相关文章
|
3月前
|
存储 安全 数据安全/隐私保护
浅谈对称加密(AES与DES)
浅谈对称加密(AES与DES)
80 1
|
3月前
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
67 0
|
2月前
|
存储 Java 数据库
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
这篇文章介绍了如何在Java中通过加盐和加密算法(如MD5和SHA)安全地存储密码,并提供了一个密码工具类PasswordUtils和密码编码类PasswordEncoder的实现示例。
49 10
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
|
2月前
|
NoSQL Java Redis
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
这篇文章介绍了如何使用Spring Boot整合Apache Shiro框架进行后端开发,包括认证和授权流程,并使用Redis存储Token以及MD5加密用户密码。
38 0
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
|
3月前
|
数据安全/隐私保护
aes之ecb模式的加密解密
aes之ecb模式的加密解密
|
3月前
|
存储 安全 数据安全/隐私保护
安全升级!Python AES加密实战,为你的代码加上一层神秘保护罩
【9月更文挑战第12天】在软件开发中,数据安全至关重要。本文将深入探讨如何使用Python中的AES加密技术保护代码免受非法访问和篡改。AES(高级加密标准)因其高效性和灵活性,已成为全球最广泛使用的对称加密算法之一。通过实战演练,我们将展示如何利用pycryptodome库实现AES加密,包括生成密钥、初始化向量(IV)、加密和解密文本数据等步骤。此外,还将介绍密钥管理和IV随机性等安全注意事项。通过本文的学习,你将掌握使用AES加密保护敏感数据的方法,为代码增添坚实的安全屏障。
154 8
|
2月前
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
107 0
|
2月前
|
安全 测试技术 Go
Python 和 Go 实现 AES 加密算法的技术详解
Python 和 Go 实现 AES 加密算法的技术详解
128 0
|
2月前
|
IDE 开发工具 数据安全/隐私保护
Python编程实现批量md5加密pdf文件
Python编程实现批量md5加密pdf文件
42 0
|
3月前
|
安全 算法 数据安全/隐私保护
黑客克星!Python加密艺术大公开,AES、RSA双剑合璧,守护你的数字世界
在这个数据泛滥的时代,数字世界既充满了知识,也潜藏安全隐患。Python 作为强大的编程语言,以其独特的加密技术为我们的信息安全保驾护航。本文将介绍 AES 和 RSA 这两种加密算法,揭示它们如何协同工作,保护你的数字世界。AES(高级加密标准)以其高效、安全著称,能将敏感信息转化为难以破解的乱码。Python 的 `pycryptodome` 库让 AES 加密变得简单易行。然而,AES 面临密钥分发难题,此时 RSA(非对称加密算法)便大显身手,通过公钥加密、私钥解密的方式确保密钥传输安全。AES 与 RSA 在 Python 中交织成一道坚不可摧的防护网,共同守护我们的数字世界。
90 0