介紹幾種簡單的檔案加密方法,挺有意思的

2021-08-01 21:03:05 字數 1630 閱讀 1407

這篇文章介紹幾中加密方法,個人覺得挺有意思的,所以總結了以下.

以下簡單介紹加密的幾個命令,實現對文字的加密和解密處理:

1.生成私有金鑰,可以使用不同的數字簽名演算法

.下面分別介紹:

#採用dsa演算法

$openssl dsaparam -noout -out dsakey0.pem -genkey 1024

#採用rsa演算法

$openssl genrsa -out rsakey0.pem 1024

#與dsa

不同的是,使用

rsa演算法生成私鑰時

,需要輸入乙個密碼

,用於保護私鑰

#在使用這個私鑰進行解加

/解密時

,也需要輸入這個密碼

$openssl genrsa -des3 -out rsakey1.pem 1024

2.公鑰生成

生成dsa演算法的公鑰

$openssl dsa -in dsakey0.pem -pubout -out dsakey0-pub.pem

生成rsa演算法的公鑰

$openssl rsa -in rsakey0.pem -pubout -out rsakey0-pub.pem

3.自簽名證書的生成方法

#產生dsa

演算法的證書

$openssl req -x509 -key dsakey0.pem -days 365 -out mycert-dsa.pem -new

#產生rsa

演算法的證書

$openssl req -x509 -key rsakey0.pem -days 365 -out mycert-rsa.pem -new

5.假設有個檔案test.txt

內容如下:

$cat test.txt

aaaaaa

使用證書對明文信件進行加密,輸出到

etest.txt檔案:

$ openssl smime -encrypt -in test.txt -out etest.txt mycert-rsa.pem

檢視加密後的密文內容

$ cat etest.txt

一大串非人類看得懂的文字

使用私鑰進行解密,輸出到

dtest.txt檔案:

$ openssl smime -decrypt -in etest.txt -inkey rsakey0.pem -out dtest.txt

檢視解密後的信件內容,與原明文信件內容完全一致

$ cat dtest.txt

aaaaaa

補充一點:生成檔案的摘要

格式:openssl dgst 《演算法名稱

>

檔名

其中演算法名稱可以通過

openssl dgst -h 獲得.

我的ubunru下自帶

openssl ,

執行命令

openssl version -a

可以檢視版本號

直接在程式中包含標頭檔案,提示找不到標頭檔案

.需要在命令列在執行

sudo apt -get install libssl-dev,

此時可以進行程式設計了

.

加密的簡單介紹

編碼解碼,加密解密,摘要 1 base64 用法base64.encode content.getbytes base64.default base64.decode content.getbytes base64.default 原理 通過ascii 表和base64 的表不斷的 比對和切換 1 ...

幾種常見的加密方式介紹

密碼學在電腦科學中使用非常廣泛,https就是建立在密碼學基礎之上的一種安全的通訊協議。https早在1994年由網景公司首次提出,而如今在眾多網際網路廠商的推廣之下https已經被廣泛使用在各種大小 中。在完全理解https之前,有必要弄清楚一些密碼學相關的概念,比如 明文 密文 密碼 金鑰 對稱...

幾種加密解密演算法的介紹

sha是一種資料加密演算法 該演算法經過加密專家多年來的發展和改進已日益完善,現在已成為公認的最安全的雜湊演算法之一,並被廣泛使用。該演算法的思想是接收一段明文,然後以一種不可逆的方式將它轉換成一段 通常更小 密文,也可以簡單的理解為取一串輸入碼 稱為預對映或資訊 並把它們轉化為長度較短 位數固定的...