2011年2月21日 星期一

java jar signing

以下用top-down的方式講述如何對一個 jar 簽章:

keystore & key 說明:
=============

java 將用來簽章的key存在keystore中,每個key包含private key(密秘)和 public-key certificate(公開)。

一個 keystore檔案就是一個專存這些key的資料庫,而用 alias 來索引其中的一個 key。

keystore檔有一個密碼保護,而其中的每個key也可以有(也可以不設)自己的密碼保護。


簽章操作:
=======

-> jarsigner -keystore my.keystore -storepass 123456 myprogram.jar myprogram

(若這個key有設密碼保護,會再要求輸入密碼;或是直接在 jarsigner 後多加參數-keypass xxxx)

這樣就可以用 my.keystore 中的那個 alias 為 myprogram 的key,對 myprogram.jar 簽章。


如何產生keystore 和 key:
================


-> keytool -genkey -alias myprogram -keystore my.keystore -storepass 123456 -validity 1800 < myprogram.keyconf


(如果沒有先做好myprogram.keyconf,則輸手動輸入key的資訊)
這樣會產生一個 keystore 檔 my.keystore,裡面有一個 alias 叫 myprogram 的 key,此 key 的有效期限為1800天。

Ref:
Signing and Verifying JAR FilesJAR Signing

2011年2月17日 星期四

map dir to msys

Hot to map a dir from host Windows to msys ?
Ans:

Edit msys/1.0/etc/fstab, for example:

f:/mingw /mingw
f:/jdk21 /java

You also need to create the corresponding dir in msys. In this example,
mkdir /mingw
mkdir /java