fix:IdentifyManager sqlite重写

todo: 更新identity中的lock与unlock
This commit is contained in:
ChessNineeee committed 2021-04-10 16:27:34 +08:00
1 parent cca446b901
commit bcd906e1a2
5 files changed
+120 -57

No files matched your search

@@ -30,42 +30,42 @@ class OperationThread extends Thread{
System.out.println(String.format("Operation %d starting", this.threadNo));
try{
// 测试PersistIdentity
SM2KeyPair pair = SM2KeyPair.generateKeyPair();
Identity identity = new Identity();
identity.setName("wzq"+this.threadNo);
KeyParam keyParam = new KeyParam();
keyParam.PublicKeyAlgorithm = 0;
keyParam.SignatureAlgorithm = 0;
identity.setKeyParam(keyParam);
identity.setPrikey(pair.getSm2PrivateKey());
identity.setPubkey(pair.getSm2PublicKey());
identity.setPasswd("2DD29CA851E7B56E4697B0E1F08507293D761A05CE4D1B628663F411A8086D99");
identity.lock("0123456789abcdef", Common.SM4ECB);
Certificate cert = new Certificate();
cert.setVersion(1);
cert.setSerialNumber(1);
cert.setPublicKey(pair.getSm2PublicKey());
cert.setSignatureAlgorithm(Common.SM3withSM2); // TODO 名字有误? SM2withSM3?
cert.setPublicKeyAlgorithm(Common.SM2);
cert.setIssueTo("root");
cert.setIssuer("root");
long timestamp = System.currentTimeMillis() / 1000;
cert.setTimestamp(timestamp); // 10bit timestamp
cert.setNotAfter(timestamp); // 10bit timestamp
cert.setNotBefore(timestamp + 1000); // 10bit timestamp
cert.setKeyUsage(Common.CertSign);
cert.setCA(true);
CertUtils.signCert(cert, pair.getSm2PrivateKey());
// SM2KeyPair pair = SM2KeyPair.generateKeyPair();
// Identity identity = new Identity();
// identity.setName("wzq"+this.threadNo);
// KeyParam keyParam = new KeyParam();
// keyParam.PublicKeyAlgorithm = 0;
// keyParam.SignatureAlgorithm = 0;
// identity.setKeyParam(keyParam);
// identity.setPrikey(pair.getSm2PrivateKey());
// identity.setPubkey(pair.getSm2PublicKey());
// identity.setPasswd("2DD29CA851E7B56E4697B0E1F08507293D761A05CE4D1B628663F411A8086D99");
// identity.lock("0123456789abcdef", Common.SM4ECB);
// Certificate cert = new Certificate();
// cert.setVersion(1);
// cert.setSerialNumber(1);
// cert.setPublicKey(pair.getSm2PublicKey());
// cert.setSignatureAlgorithm(Common.SM3withSM2); // TODO 名字有误? SM2withSM3?
// cert.setPublicKeyAlgorithm(Common.SM2);
// cert.setIssueTo("root");
// cert.setIssuer("root");
// long timestamp = System.currentTimeMillis() / 1000;
// cert.setTimestamp(timestamp); // 10bit timestamp
// cert.setNotAfter(timestamp); // 10bit timestamp
// cert.setNotBefore(timestamp + 1000); // 10bit timestamp
// cert.setKeyUsage(Common.CertSign);
// cert.setCA(true);
// CertUtils.signCert(cert, pair.getSm2PrivateKey());
//
// identity.setCert(cert);
// Db.persistIdentity(identity);
identity.setCert(cert);
Db.persistIdentity(identity);
Identity id = Db.getIdentityByNameFromStorage("wzq"+this.threadNo);
System.out.println("插入身份:" + id.getName());
System.out.println(String.format("开始设置 wzq%d 为default 身份", this.threadNo));
Db.SetDefaultIdentityByNameInStorage("wzq"+this.threadNo);
// Identity id = Db.getIdentityByNameFromStorage("wzq"+this.threadNo);
//
// System.out.println("插入身份:" + id.getName());
// System.out.println(String.format("开始设置 wzq%d 为default 身份", this.threadNo));
//
// Db.SetDefaultIdentityByNameInStorage("wzq"+this.threadNo);
Identity id2 = Db.getDefaultIdentityFromStorage();
System.out.println("当前default身份:" + id2.getName());