首先要有工具包,包括以下幾個軟件:
makecert.exe 制作cer格式的證書,即X.509證書,同時可以創(chuàng)建私鑰
cert2spc.exe 將cer格式證書轉(zhuǎn)換成spc格式證書,即PKCS #7證書
signcode.exe 將證書簽署到ocx上去
chktrust.exe 檢查簽署證書后的ocx是否正確
還有一個certmgr.exe,是管理證書用的。可以從這里面導(dǎo)出root.cer來,
網(wǎng)上很多文章寫到這個證書,但是在VC的安裝盤中卻找不到。其實(shí),沒
有也沒關(guān)系的。這幾個軟件可以從VC的安裝盤中找到。
下面是具體的步驟:
1、創(chuàng)建一個自己的證書文件:
makecert /sv "Record.PVK" /n "CN=DreamCaptial" dream.cer
這里,Record.PVK表示新創(chuàng)建的私人密鑰保存文件名
DreamCaptial是你想顯示的公司名
dream.cer是你創(chuàng)建最后的證書文件名
這些根據(jù)你自己的要求填寫,最后得到Record.PVK和dream.cer兩個文件。
其中,運(yùn)行過程中需要輸入私人密鑰的保護(hù)密碼,一定要輸入一致,不要
出錯。
2、轉(zhuǎn)換cer格式為spc格式(可以省略)
cert2spc dream.cer dream.spc
得到dream.spc文件。
3、給ocx進(jìn)行簽名
運(yùn)行signcode,命令行的我沒有試驗(yàn)通過,我是通過界面實(shí)現(xiàn)的。
signcode運(yùn)行后會出現(xiàn)數(shù)字簽名向?qū)В紫冗x擇你要簽名的ocx,
下一步后會出現(xiàn)簽名選項(xiàng),一種是典型,一種是自定義。選擇自定義,
這樣才能從文件選擇證書,選擇前面制作的dream.spc,再下一步是
選擇私鑰文件,選擇Record.PVK,輸入私人密鑰的保護(hù)密碼,選擇散
列算法,一般用md5就可以了,下一步是選擇其他證書,直接下一步,
填寫一下這個控件的聲明,用戶用ie瀏覽的時候,會彈出證書說明,
再下一步是加蓋時間戳,如果需要,用以下地址:
http://timestamp.verisign.com/scripts/timstamp.dll
要求已經(jīng)上網(wǎng)并能出國,然后直接下一步就完成了。
4、用chktrust檢查是否正確
chktrust -v RecordProj.ocx
就這樣,得到了一個測試證書,恩,雖然只是一個測試證書,但至
少保證這個ocx在ie瀏覽的時候能夠彈出來一個窗口,問你是否安裝,
而不是直接禁止了。