- Signing an XPI
- Using the Certificate Database Tool
- Netscape Object Signing: Establishing Trust for Downloaded Software
- 首先是環境的設定:
- 工作環境:Windows XP
- 到 ftp.mozilla.org 取得 nss-3.10.zip
- 將 nss-3.10.zip 解壓縮到 c:\nss 中 (這個依個人喜好)
- 將 c:\nss\lib 中所有的 *.dll 複製到 C:\Windows\System32\
- 除了 C:\nss\lib 中的 dll 外,還需要一些額外的 dll 才能執行。
- 請到 sun 的網站下載 j2eesdk,裡面有所需要的 dll (使用 WinRAR 開啟 j2eesdk 的執行檔,所需的 dll 就在 package 目錄中的 imq.zip 的 lib 目錄裡)
- 不然就下載我已經取出來的 dll,檔案:imq.zip 中的 dll,下載後將副檔名改為 rar,再使用 winrar 解壓縮即可 (註一)
- 執行 "命令提示字元"
- C:\> set PATH=%PATH%;c:\nss (這只是為了少打幾個字而已)
- 接著就是產生認證資料並建立加入認證資訊的 xpi
- 假設我的工作目錄在 C:\Temp 中
C:\> cd C:\Temp - 建立要認證的程式的程式目錄
C:\> md test - 建立用來存放認證資料的目錄
C:\> md db - 建立認證資料庫
C:\> certutil -N -d db - 建立測試用的憑證
C:\> signtool -G myTestCert -d db -p "mypassword"
<回答一些問題>
y
mycert
my organization
my state
my country
pete
myemail@mydomain.com - 上述的步驟會產生兩個檔案 x509.cacert 與 x509.raw
- 確認是否真的已經建立測試用的憑證
C:\> certutil -d db -L
[outputs]
myTestCert u,u,Cu - 將寫好的程式放到 test 這個目錄中
- 在 nss 3.10 已經修正無法產生認證的 xpi 的問題,所以只要下底下的指令即可產生有認證的 xpi
C:\> signtool -d db -k "myTestCert" -p "mypassword" -X -Z "test.xpi" test\ - 將建立的 test.xpi 拖到 Firefox 中測試,看看會不會出現已經認證的資訊,若沒有就請參考第一個參考網址中建立 xpi 的方法
- 其他指令
- 查看目前所有的憑證
C:\> signtool -d db -L
或
C:\> certutil -d db -L - 查看個別憑證的詳細資料
C:\> certutil -d db -L -n myTestCert - 建立憑證
C:\> certutil -R -s "CN=mycert,O=my organization,OU=my organization unit,ST=my state,C=my contry,UID=pete,E=myemail@mydomain.com" -p "my tel number " -a -d db - 匯入憑證
C:\> certutil -A -n myTestCert -t "u,u,Cu" -i test.cer -d db
註二:上述所有完整的 URL
- ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_10_RTM/
- ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_10_RTM/WINNT4.0_OPT.OBJ/nss-3.10.zip
- http://photos1.blogger.com/img/86/5175/640/aeka.jpg
沒有留言:
張貼留言