📄 verifybyaddtionalkey.java
字号:
import java.io.FileInputStream;
import org.bouncycastle.crypto.digests.SHA1Digest;
import org.bouncycastle.crypto.params.ECDomainParameters;
import org.bouncycastle.crypto.params.ECPublicKeyParameters;
import org.bouncycastle.jce.ECNamedCurveTable;
import org.bouncycastle.jce.spec.ECNamedCurveParameterSpec;
import org.bouncycastle.math.ec.ECPoint;
/*
* Created on 2008-3-24
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
/**
* @author HP
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class VerifyByAddtionalKey {
public static void main(String[] args) {
String plaint="王珂,this is my test";
SHA1Digest sha1=new SHA1Digest();
sha1.update(plaint.getBytes(),0,plaint.getBytes().length);
byte[] digest=new byte[sha1.getDigestSize()];
sha1.doFinal(digest,0);
ECNamedCurveParameterSpec para=ECNamedCurveTable.getParameterSpec("prime256v1");
ECDomainParameters doman=new ECDomainParameters(para.getCurve(),para.getG(),para.getN(),para.getH());
// ECPoint point=new ECPoint();
byte[] content=readFile("public.dat");
//PrivateKey key=new PrivateKey();
//KeyFactory ecfa=KeyFactory.getInstance("RSA");
//ECDSAKeyFactory fact=ECDSAKeyFactory.getInstance("ECDSA");
try{
ECPoint point=doman.getCurve().decodePoint(content);
ECPublicKeyParameters pubkey=new ECPublicKeyParameters(point,doman);
}
catch(Exception es)
{
System.out.println(es.getMessage());
}
}
public static byte[] readFile(String filename)
{
try
{
FileInputStream fin=new FileInputStream(filename);
int filelen=fin.available();
byte[] content=new byte[filelen];
fin.read(content);
fin.close();
return content;
}
catch(Exception es)
{
System.out.println(es.getMessage());
return null;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -