国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

編寫(xiě)c語(yǔ)言程序調(diào)用openssl編譯出的動(dòng)態(tài)鏈接庫(kù)

這篇具有很好參考價(jià)值的文章主要介紹了編寫(xiě)c語(yǔ)言程序調(diào)用openssl編譯出的動(dòng)態(tài)鏈接庫(kù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、編譯生成鏈接庫(kù)

下載安裝openssl并編譯生成鏈接庫(kù)的過(guò)程在我的另一篇文章中已經(jīng)詳細(xì)說(shuō)明了:Ubuntu中安裝OpenSSL

此外,我們還需要提前了解一些關(guān)于動(dòng)態(tài)鏈接庫(kù)的知識(shí),具體內(nèi)容可以在我的這篇文章中查看:一個(gè)簡(jiǎn)單的動(dòng)態(tài)鏈接庫(kù)示例

二、示例一:調(diào)用RAND_bytes函數(shù)

要調(diào)用OpenSSL庫(kù)中的函數(shù),需要在對(duì)應(yīng)的C源文件中包含相應(yīng)的頭文件,并將庫(kù)文件鏈接到程序中。

下面是一個(gè)簡(jiǎn)單的示例,演示如何在一個(gè)名為main.c的文件中使用OpenSSL庫(kù)中的函數(shù)。

#include <stdio.h>  
#include <openssl/rand.h>  
  
int main() {  
    // 生成一個(gè)隨機(jī)的字節(jié)序列  
    unsigned char randomBytes[16];  
    RAND_bytes(randomBytes, sizeof(randomBytes));  
  
    // 打印生成的隨機(jī)字節(jié)序列  
    printf("隨機(jī)字節(jié)序列: ");  
    for (int i = 0; i < sizeof(randomBytes); i++) {  
        printf("%02x", randomBytes[i]);  
    }  
    printf("\n");  
  
    return 0;  
}

在這個(gè)示例中,引入了openssl/rand.h頭文件,該文件包含RAND_bytes函數(shù)的聲明。然后,在main函數(shù)中,通過(guò)調(diào)用了RAND_bytes函數(shù)來(lái)生成一個(gè)隨機(jī)的字節(jié)序列,并將其打印出來(lái)。

要編譯并鏈接這個(gè)程序,需要將OpenSSL庫(kù)文件鏈接到該程序??梢允褂孟旅娴拿钸M(jìn)行編譯執(zhí)行

gcc -o main main.c -lssl -lcrypto
./main

可以得到對(duì)應(yīng)的輸出結(jié)果

編寫(xiě)c語(yǔ)言程序調(diào)用openssl編譯出的動(dòng)態(tài)鏈接庫(kù),c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,openssl,.so,動(dòng)態(tài)鏈接庫(kù),sha256

三、示例二:調(diào)用SHA256

首先新建一個(gè)main1.c文件,編寫(xiě)如下的代碼

#include <stdio.h>  
#include <openssl/sha.h>  
  
int main() {  
    unsigned char data[] = "Hello, World!";  
    unsigned char sha256_result[SHA256_DIGEST_LENGTH];  
    SHA256(data, strlen((char*)data), sha256_result);  
    printf("SHA256 Result: ");  
    for (int i = 0; i < SHA256_DIGEST_LENGTH; i++) {  
        printf("%02x", sha256_result[i]);  
    }  
    printf("\n");  
    return 0;  
}

之后編譯執(zhí)行,即可得到對(duì)應(yīng)的結(jié)果文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-674856.html

gcc -o main1 main1.c -lssl -lcrypto
./main1

到了這里,關(guān)于編寫(xiě)c語(yǔ)言程序調(diào)用openssl編譯出的動(dòng)態(tài)鏈接庫(kù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 二叉樹(shù)基本操作演示程序C語(yǔ)言編寫(xiě)

    二叉樹(shù)基本操作演示程序C語(yǔ)言編寫(xiě)

    問(wèn)題描述:設(shè)計(jì)一個(gè)與二叉樹(shù)基本操作相關(guān)的演示程序 要求:開(kāi)發(fā)工具Dev C++? ?c語(yǔ)言編寫(xiě) 1.創(chuàng)建二叉樹(shù)。 2.將創(chuàng)建的二叉樹(shù),以樹(shù)狀形式輸出。 3.分別以先序、中序、后序三種遍歷方式訪問(wèn)二叉樹(shù)。 4.輸出二叉樹(shù)中的葉子結(jié)點(diǎn)以及葉子結(jié)點(diǎn)的個(gè)數(shù)。 5.輸出二叉樹(shù)的高度。 代

    2024年02月08日
    瀏覽(26)
  • 為什么選擇Go語(yǔ)言編寫(xiě)網(wǎng)絡(luò)應(yīng)用程序

    為什么選擇Go語(yǔ)言編寫(xiě)網(wǎng)絡(luò)應(yīng)用程序

    關(guān)注公眾號(hào)【愛(ài)發(fā)白日夢(mèng)的后端】分享技術(shù)干貨、讀書(shū)筆記、開(kāi)源項(xiàng)目、實(shí)戰(zhàn)經(jīng)驗(yàn)、高效開(kāi)發(fā)工具等,您的關(guān)注將是我的更新動(dòng)力! 作為一名后端開(kāi)發(fā)者,你一定對(duì)選擇合適的編程語(yǔ)言來(lái)編寫(xiě)網(wǎng)絡(luò)應(yīng)用程序非常重視。在眾多的編程語(yǔ)言中,Go語(yǔ)言(Golang)憑借其獨(dú)特的特性和

    2024年02月02日
    瀏覽(21)
  • 使用VScode編寫(xiě)C語(yǔ)言程序 環(huán)境安裝配置 保姆級(jí)教程

    使用VScode編寫(xiě)C語(yǔ)言程序 環(huán)境安裝配置 保姆級(jí)教程

    Visual Studio Code可通過(guò)安裝插件來(lái)支持C++、C#、Python、PHP等語(yǔ)言,使用的工程師越來(lái)越多,本文介紹如何使用VS Code進(jìn)行C語(yǔ)言的編譯與調(diào)試 目錄 一 vsCode配置C/C++環(huán)境 1. vsCode下載和安裝 2. 安裝vsCode 二?MinGW編譯器下載和配置 1. 下載編譯器MinGW并解壓 ?2.?將MinGW添加至環(huán)境變量 3

    2024年02月04日
    瀏覽(34)
  • C語(yǔ)言爬蟲(chóng)程序編寫(xiě)的爬取APP通用模板

    C語(yǔ)言爬蟲(chóng)程序編寫(xiě)的爬取APP通用模板

    互聯(lián)網(wǎng)的飛快發(fā)展,尤其是手機(jī)終端業(yè)務(wù)的發(fā)展,讓越來(lái)越多的事情都能通過(guò)手機(jī)來(lái)完成,電腦大部分的功能也都能通過(guò)手機(jī)實(shí)現(xiàn),今天我就用C語(yǔ)言寫(xiě)一個(gè)手機(jī)APP類爬蟲(chóng)教程,方便后期拓展APP爬蟲(chóng)業(yè)務(wù)。而且這個(gè)模板是通用的適合各種APP爬蟲(chóng),下面跟著我看下具體的代碼吧。

    2024年01月18日
    瀏覽(19)
  • C語(yǔ)言中程序的編譯(預(yù)處理操作)+鏈接詳解(詳細(xì)介紹程序預(yù)編譯過(guò)程)

    C語(yǔ)言中程序的編譯(預(yù)處理操作)+鏈接詳解(詳細(xì)介紹程序預(yù)編譯過(guò)程)

    今天我們來(lái)學(xué)習(xí)C語(yǔ)言中程序的編譯和鏈接是如何進(jìn)行的。 在ANSI C的任何一種實(shí)現(xiàn)中,存在兩個(gè)不同的環(huán)境。 第1種是翻譯環(huán)境,在這個(gè)環(huán)境中源代碼被轉(zhuǎn)換為可執(zhí)行的機(jī)器指令。 第2種是執(zhí)行環(huán)境,它用于實(shí)際執(zhí)行代碼。 本文主要是介紹預(yù)編譯階段的相關(guān)知識(shí)。 1.組成一個(gè)程

    2023年04月09日
    瀏覽(34)
  • 程序的編譯相關(guān)操作(C語(yǔ)言)

    程序的編譯相關(guān)操作(C語(yǔ)言)

    ?????????????????????????????? ????????????秋已深?????????????? ???????? ???? 冬將至 ???????????? ??????????人間至此秋色盡?????????? ??????????一世繁華一世荒?????????? ????????????????????????????

    2024年02月21日
    瀏覽(22)
  • 程序環(huán)境和預(yù)處理(含C語(yǔ)言程序的編譯+鏈接)--2

    程序環(huán)境和預(yù)處理(含C語(yǔ)言程序的編譯+鏈接)--2

    文章前言: 上章我們把? ? ? 程序的翻譯環(huán)境? ? ?程序的執(zhí)行環(huán)境? ?C語(yǔ)言程序的編譯+鏈接? ? ?預(yù)定義符號(hào)介紹? ? 預(yù)處理指令? ?#define? ? 宏和函數(shù)的對(duì)比? ? ?預(yù)處理操作符? ? #和##的介紹 ? 的相關(guān)知識(shí)進(jìn)行了梳理講解,接下來(lái)被把剩余知識(shí)? ? 命令定義? ? ?預(yù)處

    2024年02月14日
    瀏覽(31)
  • Ubuntu 用gcc/CMakefile編譯器 編譯、運(yùn)行c語(yǔ)言程序

    Ubuntu 用gcc/CMakefile編譯器 編譯、運(yùn)行c語(yǔ)言程序

    目錄 一. 在Ubuntu系統(tǒng)下用c語(yǔ)言編寫(xiě)一個(gè)簡(jiǎn)單的輸出hello world 的程序,并編譯、運(yùn)行。 1.1 gcc/g++簡(jiǎn)介 1.2 c++程序輸出 Hello World: 1.3?c語(yǔ)言程序輸出 Hello World: 二. 編寫(xiě)一個(gè)主程序文件main1.c和一個(gè)子程序文件sub1.c,實(shí)現(xiàn)函數(shù)間的調(diào)用 2.1? 編寫(xiě)sub1.c 和main1.c 函數(shù) 2.1.1 編寫(xiě)sub1.c函數(shù)

    2024年02月04日
    瀏覽(26)
  • C語(yǔ)言程序設(shè)計(jì):編寫(xiě)函數(shù),統(tǒng)計(jì)字符串中數(shù)字字符的個(gè)數(shù)

    題目?jī)?nèi)容: 編寫(xiě)函數(shù),求給定字符串中數(shù)字字符的個(gè)數(shù),在主函數(shù)中輸入字符串及輸出統(tǒng)計(jì)的個(gè)數(shù)。 輸入格式: %s 輸出格式: %d 輸入樣例: abc123fg 輸出樣例: 3 時(shí)間限制:500ms內(nèi)存限制:32000kb

    2024年02月11日
    瀏覽(91)
  • 【編譯原理】詞法分析程序設(shè)計(jì)(C語(yǔ)言)

    【編譯原理】詞法分析程序設(shè)計(jì)(C語(yǔ)言)

    ??給定下表所示的一個(gè)簡(jiǎn)單語(yǔ)言的詞法規(guī)則描述完成以下任務(wù): (1)畫(huà)出識(shí)別該語(yǔ)言詞法規(guī)則的 狀態(tài)轉(zhuǎn)換圖 ; (2)依據(jù)狀態(tài)轉(zhuǎn)換圖,設(shè)計(jì)并編制詞法分析程序,實(shí)現(xiàn)從輸入源程序中,識(shí)別出各類單詞,即 、標(biāo)識(shí)符、常數(shù)、運(yùn)算符、界符 五大類,并輸出各個(gè)單詞

    2024年02月15日
    瀏覽(99)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包