草庐IT

openssl_csr_sign

全部标签

20.2 OpenSSL 非对称RSA加解密算法

RSA算法是一种非对称加密算法,由三位数学家Rivest、Shamir和Adleman共同发明,以他们三人的名字首字母命名。RSA算法的安全性基于大数分解问题,即对于一个非常大的合数,将其分解为两个质数的乘积是非常困难的。RSA算法是一种常用的非对称加密算法,与对称加密算法不同,RSA算法使用一对非对称密钥,分别为公钥和私钥,公钥和私钥是成对生成的,公钥可以公开,用于加密数据和验证数字签名,而私钥必须保密,用于解密数据和生成数字签名。因此,RSA算法的使用场景是公钥加密、私钥解密,或者私钥加密、公钥解密。OpenSSL库中提供了针对此类算法的支持,但在使用时读者需要自行生成公钥与私钥文件,在开

openssl研发随机数(random)生成(含源码)

openssl随机数一、RAND_bytes()函数(推荐)1.1底层原理1.2RAND_bytes函数说明1.3RAND_bytes代码实例二、RAND_pseudo_bytes()`函数2.1RAND_pseudo_bytes()函数说明2.2RAND_pseudo_bytes()代码实例三、RAND_seed()函数3.1RAND_seed()函数说明3.2RAND_seed()代码实例四、总结在OpenSSL中,随机数生成是一个非常重要的任务,用于生成密码学中的随机数,密钥和初始化向量等。在开发应用程序时,保证随机数的质量和随机性非常关键,因为弱的随机数可能导致密码学的弱点,使得应用程

【Bug——Python】AttributeError: module ‘OpenSSL.SSL’ has no attribute ‘SSLv3_METHOD

这个错误是由于在OpenSSL.SSL模块中找不到SSLv3_METHOD属性导致的。解决这个问题的方法如下:首先,确保你已经安装了最新版本的cryptography和pyOpenSSL。你可以使用以下命令卸载并重新安装它们:卸载cryptography:pipuninstallcryptography重新安装cryptography36.0.2:pipinstallcryptography==36.0.2卸载pyOpenSSL:pipuninstallpyOpenSSL重新安装pyOpenSSL22.0.0:pipinstallpyOpenSSL==22.0.0安装完成后,再次使用命令"sc

20.1 OpenSSL 字符BASE64压缩算法

OpenSSL是一种开源的加密库,提供了一组用于加密和解密数据、验证数字证书以及实现各种安全协议的函数和工具。它可以用于创建和管理公钥和私钥、数字证书和其他安全凭据,还支持SSL/TLS、SSH、S/MIME、PKCS等常见的加密协议和标准。OpenSSL的功能非常强大,可以用于构建安全的网络通信、加密文件和数据传输,还可以用于创建和验证数字签名、生成随机数等安全应用。它被广泛用于Web服务器、操作系统、网络应用程序和其他需要安全保护的系统中。官方地址:https://slproweb.com/products/Win32OpenSSL.html如上所示的链接则是该库的官方网站,读者可自行下载

OpenSSL升级1.1.1w和OpenSSH 升级 9.5p1 保姆级教程

 一、前言OpenSSH的加密功能需要用到OpenSSL,所以在升级OpenSSH的时候,大部分情况是需要将OpenSSL一起升级的。这里我们选择先升级OpenSSL到OpenSSL1.1.1w 11Sep2023然后再升级OpenSSH到OpenSSH_9.5p1,OpenSSL1.1.1w 11Sep2023两个都是最新版本,方便大家食用。1.1注意点在升级之前先将需要的包上传到服务器,以免升级失败后导致上传文件失败。(这里我用的sftp上传,sftp的核心也需要用到SSH),并安装telnet-server服务保证SSH升级失败后,可以继续远程连接。需要有初始yum源,要不然安装这两个服

浅浅学习一下OpenSSL

前言最近一直不是在做安全相关的东西嘛,签名和加密都要用到秘钥,当时的秘钥都是师兄给我的。自己还没有生成过,于是这里来学习OpenSSL。互联网的发展史上,安全性一直是开发者们相当重视的一个主题,为了实现数据传输安全,我们需要保证:数据来源(非伪造请求)、数据完整性(没有被人修改过)、数据私密性(密文,无法直接读取)等。虽然现在已经有SSL/TLS协议实现的HTTPS协议,但是因在客户端上依赖浏览器的正确实现,而且效率又很低,所以一般的敏感数据(如交易支付信息等)还是需要我们使用加密方法来手动加密。1、OpenSSL是什么?OpenSSL是一个开放源代码的SSL协议的产品实现,它采用C语言作为开

mysql - 使用 openssl 加密字段过滤 MySQL 表

我有一个MySQL表,我在其中存储使用openssl加密的数据。假设我有一个名为friends的MySQL表,其中包含字段id,name,surname。我只想加密字段name。所以我使用openssl_public_encrypt对其进行加密,然后将其保存在表中。这很好用。当我需要读取一条记录时,我选择它并使用openssl_private_decrypt解密name并且我可以读取它。它也可以正常工作。现在我的问题来了。假设我需要找到所有包含name='carlos'的记录我做的第一件事(我是openssl的初学者)是加密'carlos'并使用该值作为条件:但后来我意识到openss

生成CSR和自签名证书

CSR,全称CertificateSigningRequest(证书签发请求),是一种包含了公钥和与主题(通常是实体的信息,如个人或组织)相关的其他信息的数据结构。CSR通常用于向证书颁发机构(CertificateAuthority,CA)申请数字证书。下面是CSR的详细介绍:CSR的结构一个典型的CSR包含以下关键信息:主题信息(Subject):这部分信息包括了证书的使用者(通常是个人或实体)的详细信息。主题信息可以包括以下字段:CommonName(CN):通常是个体的名称或主机名。Organization(O):个体所属的组织。OrganizationalUnit(OU):组织内的部

CentOS7安装OpenSSL环境

CentOS7安装OpenSSL环境文章目录CentOS7安装OpenSSL环境一、在线安装二、离线安装Windows系统下载安装CentOS7系统下载安装一、在线安装yuminstall-yopensslopenssl-devel二、离线安装Windows系统下载选择Light版本https://slproweb.com/products/Win32OpenSSL.html安装运行EXE安装后,将安装目录下的bin目录路径加入系统PATH环境变量,打开CMD执行查看版本opensslversionCentOS7系统下载选择非beta版本https://www.openssl.org/sour

使用OpenSSL生成自签名证书

生成自签名证书有以下常见的方法:使用图形界面工具:有一些图形界面工具可用于生成自签名证书,使过程更加直观和易于操作。例如,可以使用XCA、KeychainAccess(适用于macOS)或Windows上的自带证书管理工具等。使用编程语言和库:可以使用编程语言(如Python、Java、C#等)中的相关库来生成自签名证书。这些库提供了对证书生成和操作的功能和接口。例如,在Python中,可以使用cryptography或pyOpenSSL等库来生成自签名证书。使用在线工具:有一些在线工具可用于生成自签名证书,无需在本地安装任何软件。访问这些网站,填写必要的证书信息,然后在线生成自签名证书。本文