博客
关于我
Linux系统基础-管理之加密、解密、Openssl基本应用及CA实现过程
阅读量:792 次
发布时间:2023-02-05

本文共 1883 字,大约阅读时间需要 6 分钟。

加密、解密技术简介及OpenSSL应用详解

一、加密、解密技术简介

现在的加密/解密技术主要有三种:对称加密、非对称加密和单向加密。它们三者各有优缺点,常用于电子商务中的数据安全保护。

对称加密

对称加密是指加密和解密使用相同的密钥。其特性是加密/解密使用同一口令,将原文分割成固定大小的数据块进行加密。对称加密的优点是加密效率高、计算量小,速度快。然而,其缺点在于密钥的传输安全性较低,容易被中间人截获。

常见的对称加密算法包括DES、AES等。其中,AES(高级加密标准)是目前较为常用的算法,支持128、192和256位密钥长度。

非对称加密

非对称加密解决了对称加密的缺陷,使用不同的公钥和私钥进行加密和解密。常见的非对称加密算法有RSA、DSA等。RSA不仅可以用于加密解密,还可用于实现用户认证,而DSA主要用于数字签名。

非对称加密的长度通常为512、1024、2048位,2048位是最常用的长度。

单向加密

单向加密是一种单向函数,输出结果对输入数据变化极其敏感,称为雪崩效应。常用的单向加密算法有MD5、SHA1等,其输出长度固定,用于数据完整性校验。

二、OpenSSL使用详解

OpenSSL是一个强大的安全套接字层密码库,广泛应用于网络安全领域。它包含三个主要套件:libcrypto(通用功能库)、libssl(SSL协议库)和OpenSSL(多功能命令行工具)。

OpenSSL的基本功能

OpenSSL的目录结构围绕三个套件功能部分进行规划。它支持对称加密、非对称加密、单向加密等功能,并可作为简单的证书颁发机构(CA)。

OpenSSL的常用功能

  • 对称加密:支持DES、3DES、AES等算法,常用工具包括gpgopenssl enc
  • 非对称加密:支持RSA、DSA等算法,常用工具包括gpgopenssl rsautl
  • 单向加密:支持MD5、SHA1等算法,常用工具包括sha1summd5sumcksumopenssl dgst

OpenSSL命令行工具示例

对称加密示例

[root@gmq tmp]# openssl enc -des3 -a -salt -in /path/to/input_file -out /path/to/cipher_file[root@gmq tmp]# openssl enc -d -des3 -a -salt -in /path/to/cipher_file -out /path/to/clear_file

单向加密示例

[root@gmq tmp]# openssl dgst -sha1 /etc/fstab[root@gmq tmp]# openssl dgst -md5 /etc/fstab

公钥加密与数字签名

公钥加密用于实现密钥交换和身份认证,常用算法包括RSA、ECDSA等。数字签名则是基于私钥加密的技术,用于数据完整性校验和身份验证。

三、OpenSSL实现私有CA

私有CA的配置与使用

私有CA的配置文件通常位于/etc/pki/tls/openssl.cnf。以下是私有CA的基本操作步骤:

  • 生成私钥

    umask 077; openssl genrsa -out private/cakey.pem 2048
  • 生成自签证书

    openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3655
  • CA Client申请证书

    openssl req -new -key httpd.key -out httpd.csr
  • CA服务器签署证书

    openssl ca -in httpd.csr -out httpd.crt -days 3655
  • CA Client导入证书

    openssl x509 -in httpd.crt -add_extensions some_extension -out httpd.pem
  • 吊销证书

    openssl ca -revoke httpd.crt
  • 私有CA的注意事项

    • 私钥和证书应存放在安全目录中,如 /etc/httpd/ssl/private/
    • 证书有效期应根据实际需求设置,过期后需及时吊销或 renew。

    四、基本常识

    • .key:私有密钥文件。
    • .crt:证书文件。
    • .csr:证书签名请求文件。
    • .crl:证书吊销列表。
    • .pem:用于导出和导入的证书文件格式。

    常用证书协议包括x509v3和PKCS#10等。

    转载地址:http://nakfk.baihongyu.com/

    你可能感兴趣的文章
    linux安装宋体
    查看>>
    LINUX安装源码软件经典三部曲
    查看>>
    linux安装目录
    查看>>
    Linux定时Job:crontab -e 与 /etc/crontab 的区别
    查看>>
    linux实用命令详解(新建删除复制文件夹,挂载) 转
    查看>>
    linux实验结果的分析与评价,Linux操作系统实验课程探索
    查看>>
    linux审计功能及规则 (audit.rule)
    查看>>
    Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式
    查看>>
    linux屏蔽ip端口号,linux 防火墙打开端口/屏蔽IP等
    查看>>
    linux工作中遇到的问题总结---更新中
    查看>>
    Linux工作目录切换命令
    查看>>
    Linux工作笔记022---查看Centos 内核版本号
    查看>>
    Linux工作笔记023---Centos7 查看系统安装了什么软件_多少软件
    查看>>
    Linux工作笔记024---Centos7 下查看本机公网IP
    查看>>
    Linux工作笔记025---CentOS7.3安装Nginx
    查看>>
    Linux工作笔记027---Centos7.3 查看tomcat所占用的端口号
    查看>>
    Linux工作笔记029---Centos7.3 服务器下查看tomcat服务是否启动,重启,查看错误日志等基本操作
    查看>>
    Linux工作笔记031---Centos7.3下安装tomcat
    查看>>
    Linux工作笔记032---Centos7.3/8.2 下安装mysql_不局限于MySql版本
    查看>>
    Linux工作笔记033---Linux(CentOS7)安装zip、unzip命令
    查看>>