使用微軟的工具生成證書

2021-08-30 03:38:53 字數 1578 閱讀 8128

一,使用微軟的工具不採用私鑰檔案

1.製作根證書

makecert -sk "mypk" -ss myssname -n "cn=公司名稱" -r myroot.cer

sk-表示主題的金鑰容器位置,ss-主題的證書儲存名稱, n-證書頒發物件,r-證書儲存位置;

2.製作子證書

makecert -sk "mypk" -is myssname -n "cn=公司名稱" -$ commercial -ic myroot.cer test.cer

sk-表示主題的金鑰容器位置,is-頒發者的證書儲存名稱, n-證書頒發物件,ic-頒發者的證書儲存位置,-$-授權範圍(用於**簽名);

3.使用cert2spc生成spc發行者證書

cert2spc test.cer test.spc

4.使用signcode為你的程式,庫或cab包簽名:

雙擊signcode,或在控制台鍵入signcode,不帶引數會啟動簽名嚮導。在第三步選擇「自定義選項」,第四步選擇「從檔案選擇」選擇test.spc或test.cer,第五步選擇「csp中的私鑰」,在金鑰容器中選擇我們定義的mypk,其他步驟預設即可,如果想新增時間戳,請在時間戳伺服器位址上鍵入:(免費時間戳認證)

完成後,觀察你所簽名的檔案屬性,應該已經新增數字簽名項。

5.將myroot.cer匯入「受信任的根證書頒發機構」,使用chktrust測試剛才的檔案是否簽名成功

二,使用微軟的工具採用私鑰檔案

1.製作根證書

makecert -sv "myroot.pvk" -ss myssname -n "cn=公司名稱" -r myroot.cer

sv-私鑰檔名,ss-主題的證書儲存名稱, n-證書頒發物件,r-證書儲存位置;

2.製作子證書

makecert -sv "test.pvk" -iv myroot.pvk -n "cn=公司名稱" -$ commercial -ic myroot.cer test.cer

sv-私鑰檔名,iv-根證書的私鑰檔案, n-證書頒發物件,ic-頒發者的證書儲存位置,-$-授權範圍(用於**簽名);

3.使用cert2spc生成spc發行者證書

cert2spc test.cer test.spc

4.使用signcode為你的程式,庫或cab包簽名:

雙擊signcode,或在控制台鍵入signcode,不帶引數會啟動簽名嚮導。在第三步選擇「自定義選項」,

第四步選擇「從檔案選擇」選擇test.spc或test.cer,

第五步選擇「檔案中的私鑰」選擇test.pvk,其他步驟預設即可,如果想新增時間戳,請在時間戳伺服器位址上鍵入:(免費時間戳認證)

完成後,觀察你所簽名的檔案屬性,應該已經新增數字簽名項。

用命令方式:signcode -spc test.spc -v test.pvk -n test的軟體 test.cab

注意:用signcode.exe簽署自己的軟體。假如是.cab檔案,需要在用cabarc.exe製作的時候

用-s引數留出簽名的空間(一般6144位元組即可)。

5.將myroot.cer匯入「受信任的根證書頒發機構」,使用chktrust測試剛才的檔案是否簽名成功

使用OpenSSL生成證書

step 1.create key password protected openssl genrsa out prvtkey.pem 1024 2038 with outpassword protected openssl genrsa des3 out prvtkey.pem 1024 2048...

使用OpenSSL生成證書

step 1.create key password protected openssl genrsa out prvtkey.pem 1024 2038 with outpassword protected openssl genrsa des3 out prvtkey.pem 1024 2048...

JDK 工具生成 JKS 證書 ssl

這裡講的是用jdk自帶工具生成ssl證書,在命令列輸入 keytool genkeypair alias admin keyalg rsa keypass admin 1 keystore keystore.p12 storepass admin 1 storetype pkcs12 生成的證書在當...