jvm-jarsigner 使用示例

package com.shine.jarsigner.stranger;

import java.security.AccessController;
import java.security.PrivilegedAction;

import com.shine.jarsigner.doer.Doer;

public class Stranger implements Doer {

	private Doer next;
	private boolean direct;
	
	public Stranger(Doer next,boolean direct){
		this.next = next;
		this.direct = direct;
	}
	
	@Override
	public void doYourThing() {
		
		if(direct){
			next.doYourThing();
		}else{
			AccessController.doPrivileged(
				new PrivilegedAction() {
					public Object run(){
						next.doYourThing();
						return null;
					}
				}
			);
		}

	}
}

Stranger.java 编译完会生成 Stranger.class、Stranger$1.class

1、生成jar 包: >jar cvf stranger.jar com/shine/jarsigner/stranger/*.class

 

2、生成密锁对,包含公钥和私钥,执行命令的目录必须是jar包所在同级目录,回车后要求输入keystore密码是:ijvm2ed

      执行完命令,会在同级目录生成ijvmkeys文件

      >keytool -genkey -alias stranger -keypass stranger4life -validity 10000 -keystore ijvmkeys

 

3、jarsigner签名:

      使用私钥加密

      >jarsigner -keystore ijvmkeys -storepass ijvm2ed -keypass stranger4life stranger.jar stranger

 


 

你可能感兴趣的:(JVM-JARSIGNER示例)