在ubuntu环境下执行openssl编译和安装

参考链接

下载

编译

  • 使用命令sudo tar -xvzf openssl-1.1.1q.tar.gz 解压。
  • 使用cd openssl-1.1.1q/进入目录
  • 使用./config生成MakeFile,不加任何参数,默认的安装位置为:/usr/local/bin/openssl

  • 使用 make 进行编译
  • 不放心的话可以使用make tset检查一下(可选步骤)
  • 使用sudo make install进行安装,这里一定要选择root用户的权限执行。 

 备份与替换

  • 到上一步openssl就算安装好了,但是还无法使用,需要通过软链接的方式将新旧版本就行替换,依次运行下列命令。

  •  sudo mv /usr/bin/openssl /usr/bin/openssl.old    //将旧版本的openssl进行备份
  • sudo ln -s /usr/local/bin/openssl /usr/bin/openssl    //将新版本的openssl进行软链接
  • cd /etc/   //进入etc目录
  • su     //下一步一定要切换到root用户
  • echo "/usr/local/lib" >> ld.so.conf    //将openssl的安装路径加入配置中
  • ldconfig  //重新加载配置
  • 使用openssl进行验证

补充

代码 

#include "openssl/md5.h"
#include <iostream>
#include <fstream>
#include <iomanip>

//#define MAX_DATA_BUFF = 1024;
//#define MD5_LENGTH = 16
char* get_file_md5(const char * path){
    char *out = (char *)malloc(33); //输出
    std::ifstream file(path,std::ios::in|std::ios::binary);//打开文件
    unsigned char MD5_result[16];
    do {
        if(file.fail()){
            std::cout<<"open file failure!"<<std::endl;
            break;
        }
        MD5_CTX md5_ctx;
        MD5_Init(&md5_ctx);
        char data_Buff[1024];
        while (!file.eof()){
            file.read(data_Buff,1024);//读取文件
            int length = file.gcount();
            if (length){
                MD5_Update(&md5_ctx,data_Buff,length);//将当前文件加入并且更新MD5
            }
        }
        MD5_Final(MD5_result,&md5_ctx); //获取MD5
        for (int i = 0; i < 16; i++) {  //将md5以16进制输出
            snprintf(&(out[i*2]),16*2,"%02x",(unsigned int)MD5_result[i]);
        }
    }while (false);
    return out;
}

int main(){
    std::string original_backup_file = "/home/chy-cpabe/test.txt";
    char *output = get_file_md5(original_backup_file.c_str());//original_backup_file为文件的名字
    std::cout << "md5:"<< output << std::endl;
    free(output);
}

  •  将执行结果和使用命令行计算得到的结果进行对比验证

 

 

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Ubuntu上的OpenSSL需要执行以下步骤: 1. 打开终端并执行以下命令安装Apache、OpenSSL和相应的开发库: ``` $ sudo apt-get install apache2 $ sudo apt-get install openssl $ sudo apt-get install libssl-dev $ sudo apt-get install bless ``` 2. 将下载的OpenSSL压缩包解压,并将解压后的文件夹改名为openssl: ``` $ tar -zxvf openssl-1.1.1o.tar.gz $ mv openssl-1.1.1o openssl ``` 3. 进入解压后的openssl目录: ``` $ cd openssl ``` 4. 配置安装目录为/usr/local/openssl,并进行编译: ``` $ ./config --prefix=/usr/local/openssl $ sudo make ``` 5. 安装完成后,可以查看OpenSSL的信息。输入以下命令以确认安装的版本: ``` $ openssl version ``` 这将显示安装OpenSSL版本信息。安装完成后,你可以在项目中添加OpenSSL的配置和调用。在Qt项目的.pro文件中添加openssl头文件和动态库的配置: ``` INCLUDEPATH += /usr/local/openssl/include LIBS += /usr/local/openssl/lib/libssl.so /usr/local/openssl/lib/libcrypto.so ``` 在程序中可使用以下代码调用OpenSSL的功能: ``` #include <openssl/ssl.h> #include <openssl/sha.h> #include <openssl/aes.h> ``` 这样,你就成功安装Ubuntu上的OpenSSL。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Ubuntu安装OpenSSL](https://blog.csdn.net/weixin_34378045/article/details/92348747)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Ubuntu安装openssl](https://blog.csdn.net/weixin_45684629/article/details/127772553)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值