古詩詞大全網 - 個性簽名 - 數字簽名怎麽簽

數字簽名怎麽簽

摘要:數字簽名是公鑰基礎結構的基礎部分,其基本原理簡單來說就是公鑰用來加密,私鑰用來解密。私鑰用來簽名,公鑰用來驗證簽名。數字簽名怎麽簽?office數字簽名如何弄?下面小編就來介紹Java簽名步驟、office簽名步驟以及數字簽名應用實例。壹、數字簽名怎麽簽

(壹)Java簽名步驟

1、將applet的class文件打包成*.jar(可以在命令行中輸入jar查看幫助)。

2、首先我們要生成壹個keystore,否則在簽名的時候報如下錯誤:

jarsigner錯誤:java.lang.RuntimeException:密鑰庫裝入:C:DocumentsandSettingsij2ee.keystore(系統找不到指定的文件。).(這邊的ij2ee是當前系統用戶名)

生成keystore的語句:keytool-genkey-alias別名妳可以自己寫-keyalgRSA-keystore.keystore

下面是會出現的數字簽名的壹些步驟操作:

輸入keystore密碼:

再次輸入新密碼:

您的名字與姓氏是什麽?

[Unknown]:ij2ee

您的組織單位名稱是什麽?

[Unknown]:mtk

您的組織名稱是什麽?

[Unknown]:mtk

您所在的城市或區域名稱是什麽?

[Unknown]:suzhou

您所在的州或省份名稱是什麽?

[Unknown]:jiangsu

該單位的兩字母國家代碼是什麽

[Unknown]:cn

CN=ij2ee,OU=mtk,O=mtk,L=suzhou,ST=jiangsu,C=cn正確嗎?

[否]:y

輸入的主密碼

(如果和keystore密碼相同,按回車):

這時候會在jdk的bin目錄下生成.keystore。把這個.keystore文件移動到C:DocumentsandSettings當前系統用戶的目錄下面。

3、創建壹個數字證書

在命令行中輸入如下指令,peakCA和peakCALib自己起名字好了,3650是有效天數,就是10年左右,在創建證書的的時候,需要填寫證書的壹些信息和證書對應的私鑰密碼。

keytool-genkey-aliaspeakCA-keyalgRSA-keysize1024-keystorepeakCALib-validity3650

4、將證書導出到證書文件中

在命令行中輸入如下指令,peakCA和peakCALib任意起名字,******是輸入的密碼。

keytool-export-aliaspeakCA-filepeakCA.cer-keystorepeakCALib-storepass******-rfc

5、授權jar文件,在命令行中輸入如下指令

jarsigner-keystorepeakCALibmyapplet.jarpeakCA

(二)office簽名步驟

1、要保護文檔內容的真實性,可以添加不可見的數字簽名。已簽名文檔的底部有“簽名”按鈕。

2、單擊“文件”選項卡。

3、單擊“信息”。

4、在“權限”下,單擊“保護文檔”、“保護工作簿”或“保護演示文稿”。

5、單擊“添加數字簽名”。

6、閱讀Word、Excel或PowerPoint中顯示的消息,然後單擊“確定”。

7、在“簽名”對話框中的“簽署此文檔的目的”框中,鍵入目的。

8、單擊“簽名”。

9、在對文件進行數字簽名後,將出現“簽名”按鈕,並且文件會變為只讀以防止修改。

二、數字簽名應用例子

假如Alice向Bob傳送數字信息,為了保證信息傳送的保密性、真實性、完整性和不可否認性,需要對傳送的信息進行數字加密和簽名,其傳送過程為:

Alice準備好要傳送的數字信息(明文);

Alice對數字信息進行哈希運算,得到壹個信息摘要;

Alice用自己的私鑰對信息摘要進行加密得到Alice的數字簽名,並將其附在數字信息上;

Alice隨機產生壹個加密密鑰,並用此密碼對要發送的信息進行加密,形成密文;

Alice用Bob的公鑰對剛才隨機產生的加密密鑰進行加密,將加密後的DES密鑰連同密文壹起傳送給Bob;

Bob收到Alice傳送來的密文和加密過的DES密鑰,先用自己的私鑰對加密的DES密鑰進行解密,得到Alice隨機產生的加密密鑰;

Bob然後用隨機密鑰對收到的密文進行解密,得到明文的數字信息,然後將隨機密鑰拋棄;

Bob用Alice的公鑰對Alice的數字簽名進行解密,得到信息摘要;

Bob用相同的哈希算法對收到的明文再進行壹次哈希運算,得到壹個新的信息摘要;

Bob將收到的信息摘要和新產生的信息摘要進行比較,如果壹致,說明收到的信息沒有被修改過。