欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析OpenSSL1.1.1?centos7安裝編譯aes的c++調(diào)用

 更新時間:2022年03月24日 11:50:15   作者:禾煙雨  
這篇文章主要介紹了OpenSSL1.1.1?centos7安裝編譯aes的c++調(diào)用,實(shí)現(xiàn)方法也很簡單,主要是在該文檔內(nèi)加入openssl的lib路徑,感興趣的朋友跟隨小編一起看看吧

裝這個主要是拿來和我自己寫的aes代碼做驗(yàn)證的,但是其實(shí)OpenSSL能干的事情挺多的。

下載地址

https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz 

tar -zxvf openssl-OpenSSL_1_1_1d.tar.gz
cd openssl-OpenSSL_1_1_1d
sudo mkdir /usr/local/openssl
./config --prefix=/usr/local/openssl
make
sudo make install
sudo mv /usr/bin/openssl /usr/bin/openssl.old
sudo mv /usr/include/openssl /usr/include/openssl.old
sudo ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
sudo ln -s /usr/local/openssl/include/openssl /usr/include/openssl
sudo vim /etc/ld.so.conf

在該文檔內(nèi)加入openssl的lib路徑

/usr/local/openssl/lib

:wq保存

sudo ldconfig -v
openssl version

測試代碼如下:

//test.cpp
#include <iostream>
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
#include <cstring>
#include <openssl/aes.h>
using namespace std;

static int getIntFromChar(char c);
//把一個字符轉(zhuǎn)變成整型
static int getIntFromChar(char c) {
	int result = (int)c;
	return result & 0x000000ff;
}
int main(int argc, char *argv[]){
    unsigned char buf2[16];
    unsigned char buf3[16];
	char str[16];
	unsigned char strr[16];
	int len;
	printf("輸入明文:\n");
	scanf("%s",str);
	len=strlen(str);
	printf("len=%d\n",len);
	
	for(int i=0;i<len;i++){
		strr[i]=getIntFromChar(str[i]);
	}
	unsigned char aes_keybuf[16]; 
	char key[16];
	getchar();
	printf("輸入密鑰:\n");
	scanf("%s",key);
	for(int i=0;i<16;i++){
		aes_keybuf[i]=getIntFromChar(key[i]);
    AES_KEY aeskey;
    // 設(shè)置加密密鑰 
	AES_set_encrypt_key(aes_keybuf, 128, &aeskey);
    // 加密
	AES_encrypt(strr,buf2,&aeskey);
	printf("輸出加密結(jié)果:\n");
		printf("%x ",buf2[i]);
	printf("\n");	
    //設(shè)置解密密鑰
	AES_set_decrypt_key(aes_keybuf, 128, &aeskey);
    //解密
    AES_decrypt(buf2, buf3, &aeskey);
    
    buf3[16]='\0';
    printf("輸出解密結(jié)果:\n");
    printf("%s\n",buf3);
    return 0;
g++ test.cpp -o test -L/usr/local/openssl/lib -lcrypto
./test

運(yùn)行效果如圖

在這里插入圖片描述

到此這篇關(guān)于OpenSSL1.1.1 centos7安裝編譯aes的c++調(diào)用的文章就介紹到這了,更多相關(guān)centos7 安裝編譯OpenSSL1.1.1內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 掌握C++:揭秘寫時拷貝與淺深拷貝之間的關(guān)系

    掌握C++:揭秘寫時拷貝與淺深拷貝之間的關(guān)系

    探索C++的奧秘,本指南將揭秘寫時拷貝與淺深拷貝之間的微妙關(guān)系,摸索這些復(fù)雜概念背后的邏輯,讓你的編程技能瞬間提升,來吧,讓我們一起進(jìn)入這個引人入勝的C++世界!
    2024-01-01
  • Qt利用QGraphicsView繪制跳舞的機(jī)器人

    Qt利用QGraphicsView繪制跳舞的機(jī)器人

    最近新學(xué)了一招秘密武器,打算分享給大家!那就是如何在QGraphicsView中制作一個跳舞的機(jī)器人,快跟隨小編一起動手嘗試一下吧
    2022-06-06
  • C/C++ 原生API實(shí)現(xiàn)線程池的方法

    C/C++ 原生API實(shí)現(xiàn)線程池的方法

    線程池,簡單來說就是有一堆已經(jīng)創(chuàng)建好的線程,接下來通過本文給大家介紹C/C++ 原生API實(shí)現(xiàn)線程池的方法,感興趣的朋友跟隨小編一起看看吧
    2021-11-11
  • C++11的functional模塊介紹和使用案例

    C++11的functional模塊介紹和使用案例

    functional模塊是C++ 11提供了一組函數(shù)對象和算法,用于增強(qiáng)C++的函數(shù)式編程能力,本文主要介紹了C++11的functional模塊介紹和使用案例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • 教你用C語言實(shí)現(xiàn)三子棋

    教你用C語言實(shí)現(xiàn)三子棋

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡單三子棋程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • opencv實(shí)現(xiàn)矩形檢測

    opencv實(shí)現(xiàn)矩形檢測

    這篇文章主要為大家詳細(xì)介紹了opencv實(shí)現(xiàn)矩形檢測,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • 解析bitmap處理海量數(shù)據(jù)及其實(shí)現(xiàn)方法分析

    解析bitmap處理海量數(shù)據(jù)及其實(shí)現(xiàn)方法分析

    本篇文章是對bitmap處理海量數(shù)據(jù)及其實(shí)現(xiàn)的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++利用MySQL API連接和操作數(shù)據(jù)庫實(shí)例詳解

    C++利用MySQL API連接和操作數(shù)據(jù)庫實(shí)例詳解

    這篇文章主要介紹了C++利用MySQL API連接和操作數(shù)據(jù)庫實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • C++的靜態(tài)類型檢查詳解

    C++的靜態(tài)類型檢查詳解

    這篇文章主要為大家詳細(xì)介紹了C++的靜態(tài)類型檢查,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++簡單又好用的基本運(yùn)算符重載

    C++簡單又好用的基本運(yùn)算符重載

    繼友元知識過后,就到了今天的C++運(yùn)算符重載的內(nèi)容了,運(yùn)算符重載是C++里比較重要的內(nèi)容。這篇博文不會一下子講完各種運(yùn)算符重載,因?yàn)樘嗔肆艘膊缓梦照莆眨赃\(yùn)算符重載我準(zhǔn)備分多次記錄和分享,那么接下來進(jìn)入正文
    2022-06-06

最新評論