密碼學專題 openssl編譯和安裝

Configure 腳本文件

  • 使得OpenSSL可以適應多種不同的系統平臺和多達幾十種不同的編譯器。Configure指令還可以使OpenSSL在編譯的時候具備組件的選擇功能,比如可以選擇支持或者不支持某種算法或者協議等,這使得OpenSSL具有很大的靈活性,比如在空間有限的嵌入式系統移植中就具備獨特的優勢。定制化選擇對應的組件
  • Configure指令還有其他一些靈活的功能,比如選擇OpenSSL安裝目錄、是否支持匯編編譯(通常為了加快速度)、是否支持硬件或者某種特定的硬件、編譯的時候是否生成動態鏈接庫、是否支持動態加載其他動態鏈接庫,等等。
  • Configure指令事實上根據配置選項,重新改寫和生成了opensslv.h,opensslconf.h,Makefile.sl三個文件,從而達到配置的目的。在Windows下,還會生成錯誤信息提示文件buildinf.h,該文件在Crypto根目錄下

使用方式

  • 直接的方式:例如win: Perl Configure VC-NIN32;Configure可以帶很多參數,比如要在編譯的版本中去掉調用其他動態鏈接庫的功能,就可以使用下面的Configure指令??Perl Configure VC-NIN32? no-dso
  • 間接的方式,如在Linux系統中,就是通過運行config指令來調用Configure指令的。事實上,在這種情況下,config指令自動提取了一些環境變量作為Configure的參數執行,比如自動識別系統的內核版本和編譯器并設定參數等。

參數介紹

基于Linux系統的編譯和安裝

  • 所以,在Linux系統下編譯完OpenSSL后,我們會得到一個可執行程序openssl,兩個鏈接庫libcrypto.a和libssl.a,如果你選擇編譯為動態鏈接庫的模式,還會得到另外兩個有用的動態鏈接庫libcrypto.so.0.9.7和libssl.so.0.9.7文件。此外,在使用OpenSSL編程的時候,你還需要用到include目錄下的頭文件。?

使用Configure指令手動配置安裝環境

  • 參考鏈接?
  • 從零開始配置服務器密碼機的開發環境_CHYabc123456hh的博客-CSDN博客? ?
  • 安裝?sudo apt-get install openssl
  • 安裝?sudo apt-get install libssl-dev
  • Linux(centos7)下安裝OpenSSL 安裝詳解_木亦汐丫-CSDN博客?
  • 使用./config或者./Configure指令配置環境,生成編譯安裝腳本;
  • 使用make指令執行編譯任務;
  • 使用make test指令測試編譯好的程序;
  • 使用make install指令安裝OpenSSL到默認的/usr/local目錄? ?需要具備root權限,在命令前面加上sudo
  • /source/index.html
  • .github - openssl/openssl - Sourcegraph?
  • OpenSSL所有使用的東西都安裝在默認的路徑/usr/local/ssl目錄下面,進入該目錄,首先會發現一個opensl.cnf文件,這就是以后經常會用到的OpenSSL配置文件,主要是用于證書生成和管理方面的。
  • Bin子目錄存放了OpenSSL可執行程序,也就是指令;
  • Include目錄存放了使用OpenSSL開發的時候需要的頭文件;
  • Lib目錄存放了libcrypto.a和libssl.a兩個庫文件;
  • Man目錄是OpenSSL的使用文檔。

?使用config指令自動配置OpenSSL系統編譯選項

  • config指令是首先的選擇,它能夠自動識別你的系統內核和一些配置,比如編譯器,但是又給了你不少靈活的選項。config指令執行的方式如下:./config [option]
  • OpenSSL的0.9.7版本中有效的選項在表5.2中列了出來,你會發現,所有的選項都是前面介紹過的Configure選項中存在的,不過選項減少了一些。這很正常,因為config指令就是調用了Configure,不過它首先自動收集了一些系統的信息作為調用Configure的參數。所以,config指令所有這些參數的格式和用法也和Configure同名參數的格式和用法是相同的

測試config收集到的信息?

  • ?使用命令 ./config-t?

  • 如果編譯失敗需要重新進行編譯,使用 make clean命令 并使用make繼續編譯

?

  • 使用openssl進行編程的時候 引入頭文件 需要采用如下的形式 #include<openssl/ssl.h> 需要加上openssl 避免同名干擾的問題?

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

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

相關文章

Python學習12 文件的讀寫

目標 文件的打開和關閉 mode缺省情況下表示只讀r 文件的路徑 前面加個r’,代表其中的轉義字符不起作用 文件的打開方式 案例&#xff1a;實現文件拷貝的功能 將某一文件夾下的某一文件 保存在當前文件 所在目錄。 import os #讀取文件1 path./file.txt fileopen(path,…

密碼學專題 openssl的基本概念

配置文件 配置文件是OpenSSL的一個基礎結構組件&#xff0c;OpenSSL使用一組稱為OpenSSLCONF的函數來讀取OpenSSL配置文件的信息。OpenSSL提供的主配置文件是opensl.cnf&#xff0c;它集成了OpenSSL所要使用的配置文件選項的大部分內容。此外&#xff0c;OpenSSL還提供了其他一…

該工程中的宏被禁止_建筑勞務分包都能承擔什么工程

來源&#xff1a;找法網建筑工程的承包單位&#xff0c;也就是總承包單位可以將部分建造工程分包給具有資質的施工單位&#xff0c;這是法律所允許的&#xff0c;但是禁止將建造工程進行轉包。一、建筑勞務分包都能承擔什么工程建筑勞務分包能承擔什么工程要看分包單位的資質&a…

python實驗練習-類的多繼承

題目 1、概述&#xff1a; 完成學生&#xff0c;組長&#xff0c;教師的設計與實現。 2、具體實現內容&#xff1a; 學生&#xff1a; 姓名&#xff0c; 年齡&#xff0c; 學號 吃飯&#xff0c; 睡覺&#xff0c; 學習 組長&#xff1a; 姓名&#xff0c; 年齡&#xff0c; 學…

matlab用辛普森公式求積分_積分近似計算之辛普森公式

對于積分區間[a, b]&#xff0c;若則成立辛普森公式辛普森公式可看作是改良的梯形公式。梯形公式是以直線逼近實際曲線&#xff0c;而辛普森公式則以二次曲線(即拋物線)逼近。以二次曲線逼近實際曲線根據辛普森公式可得各積分小區間內的積分值如下式所示&#xff1a;其中于是&a…

密碼學專題 文件編碼格式

OpenSSL中雖然使用PEM作為基本的文件編碼格式&#xff0c;但是&#xff0c;由于不同的對象其封裝的標準格式不太一樣&#xff0c;所以經常會導致讀者產生迷惑。此外&#xff0c;OpenSSL也支持DER編碼和過時的Netscape編碼格式(NET)OpenSSL的編碼是基于ASN.1標準的&#xff0c;A…

python實驗練習-圖書管理系統(使用文件來實現)

題目 功能描述&#xff1a; 圖書管理系統項目功能描述&#xff1a; &#xff08;1&#xff09;創建txt文本文檔&#xff0c;包含如下&#xff1a; ① books.txt&#xff1a;保存有一些書籍名稱&#xff1b; ② users.txt&#xff1a;用于保存用戶相關的信息&#xff1b; ③ us…

echarts 折線圖 設置y軸最小刻度_【硬貨】vue全家桶+Echarts+百度地圖,搭建數據可視化系統...

作者丨夙言來源丨前端大牛愛好者(Web-2017)https://segmentfault.com/a/1190000018993981本文章篇幅略長&#xff0c;內容有點多&#xff0c;大佬可根據目錄選擇性查閱&#xff0c;新人可一步步來閱讀。1、 前言1.1 業務場景突然接到產品說要做一個數據監控的系統。有線圖、柱狀…

密碼學專題 文本數據庫

應用概述 文本數據庫是跟OpenSSL的CA應用程序緊密結合在一起的&#xff0c;它以文本的方式記錄CA已經簽發的證書的狀態和摘要信息。這些狀態信息可以用于跟證書庫相關的一些操作&#xff0c;比如使用ca指令生成CRL主要就是讀取這個文本數據庫的信息作為參考。文本數據庫就是普…

Python學習13 異常處理機制

概括 常見的異常 異常處理機制 可以多個異常放在元組里面 一旦產生異常&#xff0c;try后面的語句不會繼續執行&#xff0c;會做異常處理 異常使用場景1 close應該放在finally中 異常使用場景2 finally關鍵字 會執行except后面的&#xff0c;報錯

java 布隆過濾器_牛逼哄哄的布隆過濾器,到底有什么用?

Java技術棧www.javastack.cn打開網站看更多優質文章作者&#xff1a;CodeBear的園子www.cnblogs.com/CodeBear/p/10911177.html本文是站在小白的角度去討論布隆過濾器&#xff0c;如果你是科班出身&#xff0c;或者比較聰明&#xff0c;又或者真正想完全搞懂布隆過濾器的可以移…

密碼學專題 序列號文件

序列號文件是ca指令簽發證書的時候的依據文件之一&#xff0c;它從該文件讀取當前簽發的證書的序列號并將序列號文件中的序列號加1&#xff0c;這樣&#xff0c;就可以確保證書的序論號是遞增的&#xff0c;不會重復。序列號文件也是一個文本文件&#xff0c;里面僅僅簡單包含了…

Java web后端6 java Bean EL表達式

EL表達式和JSTL概述 java Bean規范 java中成員變量使用類Integer private Integer count; java Bean的創建 創建java Bean: BookTest.java package com.example.elandjstl.bean;public class BookTest {//java中成員變量使用類Integerprivate Integer count;private Boolean…

python根須系統斜杠_深入淺出Python中的os模塊

「Author&#xff1a;Runsen」當初學Python的時候&#xff0c;把一些標準庫和第三方開源庫學的七零八落&#xff0c;不成系統&#xff0c;正好趁這個機會來系統的整理一下&#xff0c;先從Python常用的標準庫os開始吧。osOS模塊簡單的來說它是一個Python的系統編程的操作模塊&a…

密碼學專題 隨機數文件

無論使用OpenSSL的指令還是其API&#xff0c;隨機數文件都是會經常碰到的一個概念。大部分密碼算法的安全性都跟隨機數的好壞相關&#xff0c;所以一個成功的密碼學應用軟件&#xff0c;對隨機數的處理是不能隨便的。OpenSSL雖然沒有提供很完美的隨機數生成程序&#xff0c;但是…

Java web后端7JSTL

概括 下載jstl的jar包 官網&#xff1a;https://mvnrepository.com/ 網址1&#xff1a;https://search.maven.org/ 在pomxml中插入依賴&#xff1a; <dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1…

python輸入程序_python程序的輸入輸出(acm的幾個小程序)

#!/usr/bin/env python#codingutf-8 a[]for x inraw_input().split(): a.append(int(x))print sum(a) 下面的代碼只有一行&#xff0c;&#xff0c;可惜不是我想出來的&#xff01;&#xff01;&#xff01;&#xff01;&#xff1a; print sum(int(x) for x in raw_input().sp…

密碼學專題 口令輸入的方式

雖然口令的安全性很值得擔憂&#xff0c;但是口令在OpenSSL中是經常使用的&#xff0c;這是沒有辦法替代的一種簡易的保護數據的方法。OpenSSL中使用口令的地方很多&#xff0c;比如密鑰的加密和解密&#xff0c;等等。OpenSSL的指令提供了多種靈活的口令輸入方法&#xff0c;但…

Python學習14 模塊和包

模塊 公共類、函數都可以放在獨立的文件中&#xff0c;這樣其他多個程序都可以使用&#xff0c;而不必把這些公共性的類、函數等在每個程序中復制一份&#xff0c;這樣獨立的文件就叫做模塊&#xff0c;它們的擴展名為.py 標準庫中的模塊 使用help查看模塊 代碼&#xff1a; …

python語句分為_python以什么劃分語句塊

語句塊是在條件為真&#xff08;條件語句&#xff09;時執行或者執行多次&#xff08;循環語句&#xff09;的一組語句&#xff1b;在代碼前放置空格來縮進語句即可創建語句塊&#xff0c;語句塊中的每行必須是同樣的縮進量&#xff1b;&#xff08;推薦學習&#xff1a;Python…