`
kevincheung
  • 浏览: 5153 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

openssl的用法

阅读更多
[转]Openssl命令的使用
1. base64编码/解码
谈到命令行下怎样发送邮件附件,很多人想起了uuencode。也能够使用base64编码。以下是openssl base64编码/解码的使用:
$ openssl base64   filename.txt
$ openssl base64 -d   filename.bin
2. 校验文档的一致性
UNIX下校验文档一致性的方法很多,比如sum、cksum、md5sum、sha1sum等。sum和cksum适用于简单校验的场合,生成的校验码容易重复。md5sum有安全漏洞,当前比较推荐的是sha1sum。但是sha1sum在不同的平台用法有些不同。考虑到跨平台性,建议用 openssl。
$ openssl sha1 filename
SHA1(filename)= e83a42b9bc8431a6645099be50b6341a35d3dceb
$ openssl md5 filename
MD5(filename)= 26e9855f8ad6a5906fea121283c729c4
3. 文档加密/解密
OpenSSL支持很多加密算法,但是一些算法只是为了保持向后兼容性,现在已不推荐使用,比如DES和RC4-40。推荐使用的加密算法是 bf(Blowfish)和-aes-128-cbc(运行在CBC模式的128位密匙AES加密算法),加密强度有保障。
加密示例:
$ openssl enc -aes-128-cbc   filename.aes-128-cbc
enter aes-128-cbc encryption password:
Verifying - enter aes-128-cbc encryption password:
解密示例:
$ openssl enc -d -aes-128-cbc -in filename.aes-128-cbc > filename
enter aes-128-cbc decryption password:
4. 口令生成和传递
openssl能够生成随机性很强的口令。
$ openssl rand 15 -base64
s69mj+8ToN2p3Z1KESBG
以上命令需要openssl生成15个字节序列,然后用base64编码,结果产生20个字符。
在日常生活中,经常可看到这样的情况:系统管理员配置初始密码给用户,然后让用户登录去修改新密码,这给安全带来了隐患。较好的做法是用户生成口令加密后的结果发给管理员,让管理员配置到系统中。
比如对于以上生成的口令,UNIX口令加密方法如下:
$ openssl passwd -1 s69mj+8ToN2p3Z1KESBG
$1$Rp/btEwK$qhUGFlsIpDtNT1I9MD/Gg1
管理员收集每个用户交给他的加密后的串,写到一个文档中,比如文档名为newpassword:
user_a:$1$Rp/btEwK$qhUGFlsIpDtNT1I9MD/Gg1
user_b:$1$zmUy5lry$aG45DkcaJwM/GNlpBLTDy0
...
一个用户一行,用户名和密码之间用冒号分隔。
系统管理员运行如下命令导入用户密码:
$ chpasswd --encrypted
对于老UNIX系统,生成口令密码无需参数-1,比如:
$ openssl passwd s69mj+8ToN2p3Z1KESBG
Warning: truncating password to 8 characters
FS4lGulQ915WU
假如passwd命令后没有接口令,openssl会提示输入一个:
$ openssl passwd -1
Password:
Verifying - Password:
$1$jACBc0.C$KR5DcpttXQoKfDiapyvav0
分享到:
评论

相关推荐

    openssl使用方法

    openssl使用方法.ppt

    openssl 使用方法步骤详解(调用过程分析)

    本文将深入解析OpenSSL的使用方法,包括初始化、连接建立、数据传输以及资源释放等关键步骤。 1. 初始化SSL上下文(SSL_CTX) 在使用OpenSSL进行加密通信之前,首先需要创建一个SSL_CTX对象,它是所有SSL操作的...

    openssl安装文件及使用方法

    **openssl安装文件及使用方法** **一、openssl简介** OpenSSL是一个强大的安全套接字层密码库,包含各种主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程序供测试或其他目的使用。它...

    OpenSSL使用指南.pdf

    OpenSSL 使用指南 OpenSSL 是一个开源的 SSL/TLS 实现,提供了各种加密算法和工具,广泛应用于网络安全领域。本文将详细介绍 OpenSSL 的使用指南,包括密码学基础、对称加密、非对称加密、数字签名、HASH 算法、...

    openssl和openssl-devel离线rpm安装包.zip_OPENSSL 库_openssl_openssl-deve

    总的来说,理解和掌握OpenSSL库以及其开发包的使用是构建安全网络服务的关键技能,而离线RPM包的使用则是在没有网络连接时解决依赖问题的有效方法。在实际工作中,根据具体的系统环境和需求,选择合适的OpenSSL版本...

    OpenSSL使用指南-0[1].5[定义].pdf

    OpenSSL官方文档、社区论坛和网上教程提供了大量的学习资料,帮助开发者更深入地理解和使用OpenSSL。 总结来说,OpenSSL是一个强大的工具集,不仅实现了SSL/TLS协议,还提供了多种加密算法和证书管理功能。无论是...

    OpenSSL学习资料(比较齐全的OpenssL相关资料汇总)

    实例代码可以帮助开发者更直观地了解OpenSSL的工作原理和使用方法。 4. 其他OpenSSL相关: 这可能涵盖OpenSSL的高级特性,如SSL/TLS协议的细节、安全性最佳实践、OpenSSL库的扩展和自定义、性能优化等方面。这部分...

    openssl 1.1.1g 安装包

    **OpenSSL 1.1.1g 安装详解** OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,它不仅提供了加密算法,还包括证书处理、SSL/TLS ...了解其安装过程和基本使用方法,对IT从业者来说是必备技能。

    openssl库以及编译方法

    **OpenSSL库详解及其编译方法** OpenSSL是一个强大的安全套接字层密码库,它包含各种主要的密码算法、常用的密钥和证书封装管理功能,以及SSL协议,并提供丰富的应用程序用于测试或其他目的。OpenSSL在网络安全中...

    openssl 1.1.0库及使用方法介绍

    **openssl 1.1.0库及使用方法** OpenSSL是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,同时也包含了众多的加密算法、证书操作和其他安全功能。OpenSSL 1.1.0是该库的一个重要版本,它引入了许多新特性...

    openssl 1.0.2p源码

    OpenSSL 是一个强大的安全套接层 (SSL) 和传输层安全 (TLS) 库,用于加密通信,确保网络数据传输的安全性。...理解和掌握 OpenSSL 的工作原理和使用方法,对于保障网络安全和开发安全的应用程序至关重要。

    openssl1.1.0.rar

    例如,它引入了线程支持,允许开发者在多线程环境中正确地使用 OpenSSL。同时,一些过时的函数被弃用,鼓励开发者采用更加安全的替代方法。 3. **安全性增强**:OpenSSL 1.1.0 版本对安全漏洞进行了修复,以防止...

    OpenSSL3.2动态库

    OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,同时也包含各种加密算法、证书工具和其他相关功能。...理解和掌握编译及使用OpenSSL库的方法对于开发安全的网络应用程序至关重要。

    OPENSSL使用指南

    ### OpenSSL使用指南:深入解析与应用...无论是对于初学者还是资深开发人员,掌握OpenSSL的基本原理和使用方法都是十分必要的,它不仅能帮助我们构建更安全的网络环境,还能促进对现代密码学和网络安全技术的深入理解。

    openssl密钥生成工具

    OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,同时也包含了各种密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程序供测试或其他目的使用。在本文中,我们将深入...

    OpenSSL 中RSA16进制密钥生成方法

    本文将详细介绍如何在Linux环境下使用OpenSSL库生成RSA非对称加密算法的16进制密钥。 RSA是一种公钥密码学算法,由Ron Rivest、Adi Shamir和Leonard Adleman于1977年提出。它的核心思想是基于两个大素数的乘积进行...

    openssl-OpenSSL_1_1_1b.tar.gz

    《OpenSSL 1.1.1b:加密库的构建与应用》 OpenSSL 是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现库,它包括各种加密算法、常用...通过理解其内部机制和使用方法,我们可以构建更安全、更可靠的软件系统。

    已经编译的openssl,openssl-0.9.8q.zip版本

    在具体使用时,需要根据需求查阅相应的命令用法和参数。 **安全注意事项** - **保持更新**:及时更新 OpenSSL 至最新稳定版本,以避免因已知安全漏洞导致的风险。 - **安全配置**:正确配置 SSL/TLS 参数,如启用...

Global site tag (gtag.js) - Google Analytics