📄 md5withrsa.java
字号:
import java.io.DataInputStream;
import java.io.IOException;
import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.*;
import java.security.Signature;
import java.security.SignatureException;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
public class MD5withRSA {
private static PrivateKey privateKey;
private static PublicKey publicKey;
private static Signature signature ;
public static void setPublicKey( PublicKey key){
publicKey = key;
}
public static void setPrivateKey( PrivateKey key){
privateKey = key;
}
public static byte[] sign(byte[] in){//对in里的内容进行签名
byte[] signedmsg = null;
try {
signature = Signature.getInstance("MD5withRSA");
signature.initSign(privateKey);
signature.update(in);
signedmsg = signature.sign();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return signedmsg;
}
public static boolean verify(byte[] in,byte[] signedmsg){
boolean flag = false;
try {
signature = Signature.getInstance("MD5withRSA");
signature.initVerify(publicKey);
signature.update(in);
if(signature.verify(signedmsg))
flag = true;
else {flag =false;
System.out.println("false");}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -