在ubuntu環境下執行openssl編譯和安裝

參考鏈接

  • 工具系列 | Ubuntu18.04安裝Openssl-1.1.1_Tinywan的技術博客_51CTO博客
  • 密碼學專題 openssl編譯和安裝_MY CUP OF TEA的博客-CSDN博客_openssl 編譯安裝

下載

  • /source/index.html

編譯

  • 使用命令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進行驗證

補充

  • 使用clion編寫代碼,測試是否可以引入openssl的庫文件
  • 參考鏈接
  • clion中鏈接openssl庫_MY CUP OF TEA的博客-CSDN博客_clion openssl
  • 使用開源的openssl的md5頭文件,實現對于文件的md5代碼_MY CUP OF TEA的博客-CSDN博客

代碼?

#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); //獲取MD5for (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);
}

  • ?將執行結果和使用命令行計算得到的結果進行對比驗證

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/445914.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/445914.shtml
英文地址,請注明出處:http://en.pswp.cn/news/445914.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

chrome 使用gpu 加速_一招解決 Chrome / Edge 卡頓緩慢 讓瀏覽器重回流暢順滑

最近一段時間,我發現電腦上的 Chrome 谷歌瀏覽器越用越卡了。特別是網頁打開比較多,同時還有視頻播放時,整個瀏覽器的響應速度都會變得非常緩慢,視頻也會卡頓掉幀。 我用的是 iMac / 32GB 內存 / Intel 四核 i7 4Ghz CPU,硬件性能應該足以讓 Chrome 流暢打開幾十個網頁標簽…

CLion運行程序時添加命令行參數 即設置argv輸入參數

參考鏈接 CLion運行程序時添加命令行參數_三豐雜貨鋪的博客-CSDN博客_clion命令行參數 操作流程 Run -> Edit -> Configuration -> Program arguments那里添內容最快捷的方式是&#xff0c;點擊錘子編譯圖標和運行圖標之間的的圖標&#xff0c;進行Edit Configurati…

python的userlist_Python Collections.UserList用法及代碼示例

Python列表是array-like數據結構&#xff0c;但與之不同的是它是同質的。單個列表可能包含數據類型&#xff0c;例如整數&#xff0c;字符串以及對象。 Python中的列表是有序的&#xff0c;并且有一定數量。根據確定的序列對列表中的元素進行索引&#xff0c;并使用0作為第一個…

解決 SSL_CTX_use_certificate:ca md too weak:ssl/ssl_rsa.c 問題

報錯原因分析 原因是openssl調整了安全級別&#xff0c;要求ca具備更高等級的安全&#xff0c;因此先前發布的證書&#xff0c;如果采用了不安全的算法&#xff0c;比如MD5&#xff0c;就會顯示上述這個錯誤 解決辦法 重新生成證書&#xff0c;先前證書棄用使用函數 SSL_CTX_…

向上滾動 終端_ubuntu

Ubuntu終端Terminal常用快捷鍵Ubuntu終端Terminal常用快捷鍵 快捷鍵 功能 Tab 自動補全 Ctrla 光標移動到開始位置 Ctrle 光標移動到最末尾 Ctrlk 刪除此處至末尾的所有內容 Ctrlu 刪除此處至開始的所有內容 Ctrld 刪除當前字符 Ctrlh 刪除當前字符前一個字符 Ctrlw 刪除此處到…

openssl實現雙向認證教程(服務端代碼+客戶端代碼+證書生成)

參考鏈接 openssl實現雙向認證教程&#xff08;服務端代碼客戶端代碼證書生成&#xff09;_huang714的博客-CSDN博客_ssl_ctx_load_verify_locations基于openssl實現https雙向身份認證及安全通信_tutu-hu的博客-CSDN博客_基于openssl實現 注意事項 openssl版本差異很可能導致程…

python用pip安裝pillow_cent 6.5使用pip安裝pillow總是失敗

python:2.7.8阿里云cent os32位virtualenvvirtualenvwrapper之前有一個virtualenv不知道怎么回事成功裝上了pillow之后再在別的virtualenv裝就全都報錯這是為什么 太奇怪了?下載whl安裝&#xff0c;不管哪個版本都說不支持這個系統。imaging.c:3356: error: expected ?.?. ?…

基于openssl和國密算法生成CA、服務器和客戶端證書

參考鏈接 國密自簽名證書生成_三雷科技的博客-CSDN博客_國密證書生成openssl采用sm2進行自簽名的方法_dong_beijing的博客-CSDN博客_openssl sm 前提說明 OpenSSL 1.1.1q 5 Jul 2022 已經實現了國密算法查看是否支持SM2算法openssl ecparam -list_curves | grep -i sm2參考…

h5獲取http請求頭_React 前端獲取http請求頭信息

背景&#xff1a;前端通過react渲染頁面&#xff0c;使用了react-slingshot&#xff0c;相當于是前端跑在一個node服務上面需求&#xff1a;需要通過客戶端通過HTTP請求傳遞來的參數(header里放了token)進行用戶權限的驗證,比如訪問http://localhost:3000/rights/1&#xff0c;…

基于Gmssl庫靜態編譯,實現服務端和客戶端之間的SSL通信

前情提要 將gmssl庫采取靜態編譯的方式&#xff0c;存儲在/usr/local/gmssl路徑下&#xff0c;核心文件涵蓋 include、lib和bin等Ubuntu安裝GmSSL庫適用于ubuntu18和ubuntu20版本_MY CUP OF TEA的博客-CSDN博客 代碼 server #include <stdio.h> #include <stdlib.h&g…

禪道備份功能_更新禪道燃盡圖及數據備份

Last login: Fri May 29 13:52:16 on ttys000mazhenguodeMacBook-Pro:~ mazhenguo$ ssh root192.168.1.2 //登錄服務器root192.168.1.2’s password: //輸入服務器密碼Last login: Fri May 29 13:52:20 2015 from 192.168.1.251[rootmazhenguo ~]# cd /home/app/192.168.1.2/ze…

基于SM2證書實現SSL通信

參考鏈接 ?????基于openssl和國密算法生成CA、服務器和客戶端證書_MY CUP OF TEA的博客-CSDN博客基于上述鏈接&#xff0c;使用國密算法生成CA、服務器和客戶端證書&#xff0c;并實現簽名認證openssl實現雙向認證教程&#xff08;服務端代碼客戶端代碼證書生成&#xff…

列寬一字符等于多少厘米_Excel中行高與列寬單位和厘米的轉換

Excel中行高、列寬尺寸的換算一、先說明一下度量單位的相互換算關系&#xff1a;磅&#xff1a;指打印的字符的高度的度量單位。1 磅近似等于 1/72 英寸&#xff0c;或大約等于 1/28.35 厘米。英寸&#xff1a;1英寸近似等于 2.54 厘米。像素&#xff1a;與顯示解析度有關&…

使用Clion軟件實現基于國密SM2-SM3的SSL安全通信

參考鏈接 Ubuntu安裝GmSSL庫適用于ubuntu18和ubuntu20版本_MY CUP OF TEA的博客-CSDN博客CLion運行程序時添加命令行參數 即設置argv輸入參數_MY CUP OF TEA的博客-CSDN博客基于SM2證書實現SSL通信_MY CUP OF TEA的博客-CSDN博客基于Gmssl庫靜態編譯&#xff0c;實現服務端和客…

基于GmSSL實現server服務端和client客戶端之間SSL通信代碼(升級優化公開版)

參考鏈接 工程搭建介紹 Ubuntu安裝GmSSL庫適用于ubuntu18和ubuntu20版本_MY CUP OF TEA的博客-CSDN博客CLion運行程序時添加命令行參數 即設置argv輸入參數_MY CUP OF TEA的博客-CSDN博客基于SM2證書實現SSL通信_MY CUP OF TEA的博客-CSDN博客基于Gmssl庫靜態編譯&#xff0c…

easyui 表頭合并_JQuery EasyUI DataGrid動態合并(標題)單元) 一

JS&#xff1a;/*** EasyUI DataGrid根據字段動態合并單元格* param fldList 要合并table的id* param fldList 要合并的列,用逗號分隔(例如&#xff1a;"name,department,office");*/function MergeCells(tableID, fldList) {var Arr fldList.split(",");…

openssl 密碼套件相關內容(OID|密碼套件)

參考鏈接 SSL通信雙方如何判斷對方采用了國密 - Bigben - 博客園滑動驗證頁面 OpenSSL TLS1.2密碼套件推薦安全的TLS協議 | Hexo OID OID是由ISO/IEC、ITU-T國際標準化組織上世紀80年代聯合提出的標識機制&#xff0c;其野心很大&#xff0c;為任何類型的對象&#xff08;包…

墨刀可以導入文件嗎_墨刀和Sketch擦出的火花

墨刀開發的Sketch插件終于從內測中脫殼而出了&#xff0c;可以將Sketch中的Artboard直接導入墨刀中&#xff0c;然后進行交互操作(頁面跳轉)的鏈接設置。一時手癢&#xff0c;趕緊試了試&#xff0c;也把使用過程和感受分享給大家。(然而非要拖到周一才發)使用條件1)有Mac(因為…

Ubuntu配置gmssl和openssl,且均使用動態庫,使用時根據需要進行動態切換

前情提要 openssl和gmssl如果想要共存&#xff0c;只能一個是動態庫&#xff0c;一個是靜態庫配置openssl和gmssl無特定的編譯順序要求openssl3.x版本是未來趨勢&#xff0c;openssl1.1.x等版本只是適用于基礎軟件包&#xff0c;后期將會刪除配置文件 /etc/ld.so.conf文件只用…

thymeleaf動態選中select_一些LowPoly動態漸變效果實現

這篇文章根大家分享一些LowPoly動態效果的制作方法&#xff0c;由于使用的是uv采樣方式效率很高&#xff0c;手機也可以隨意使用&#xff0c;我們先來看一些效果的參考 本文將在Unity3D中還原這些效果,如果你學會后當然可以在你喜歡的引擎中實現~如果一篇太長有可能會分多篇&am…