#副標=Java平台安全設計 #大標=在Java平台使用與設計資訊安全物件 #作者=文/成大資通安全研發中心 ===============box===========   Signature rsaSign = Signature.getInstance("SHA1withRSA"); =================end===============   security.provider.1=sun.security.provider.Sun   security.provider.2=sun.security.rsa.SunRsaSign   security.provider.3=com.sun.net.ssl.internal.ssl.Provider   security.provider.4=com.sun.crypto.provider.SunJCE   security.provider.5=sun.security.jgss.SunProvider   security.provider.6=com.sun.security.sasl.Provider   security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI   security.provider.8=sun.security.smartcardio.SunPCSC   security.provider.9=sun.security.mscapi.SunMSCAPI ============TestProvider.java============= import java.security.*; public class TestProvider { public static void main(String[] args) { Provider[] p=Security.getProviders(); for(int i=0; i "+isValid); } catch(NoSuchAlgorithmException e) { System.out.println("No such algorithm."); } catch(InvalidKeyException e) { System.out.println("Invalid Key."); } catch(SignatureException e) { System.out.println("Invalid Signature."); } } }   ==============end=============   ========box======= Signature verifies ==> true ===========end============ ==========box 程式2==========         super("IsuCrypto", 1.0, "SHA1 with RSA siganure, Onlt for Test");          : put("Signature.SHA1withRSA","tw.edu.isu.IsuCrypt.RSAsig"); // 前為服務名稱,後為類別位置 put("Alg.Alias.Signature.SHA-1withRSA", "SHA1withRSA"); // 服務之別名 =================end=============== ============box 指令1========= jar cvf =============END============= ===========box指令2======== keytool -genkeypair -alias \ -keyalg DSA -keysize 1024 \ -dname "cn=, ou=Java Software Code Signing,\ o=Sun Microsystems Inc" \ -keystore \ -storepass ====================end============== ============box 指令3=========== keytool -certreq -alias \ -file \ -keystore \ -storepass ====================end============== ===========box指令4========== keytool -import -alias \ -file \ -keystore \ -storepass keytool -import -alias \ -file \ -keystore \ -storepass ===============end=============== ===========box指令5========== jarsigner -keystore \ -storepass \ ===============end=============== ===========box指令6========== jarsigner -verify ===============end===============