📄 sesecuritymanagerbc.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: SESecurityManagerBC.java
package org.gudy.azureus2.core3.security.impl;
import java.math.BigInteger;
import java.security.*;
import java.security.cert.Certificate;
import java.util.Calendar;
import org.bouncycastle.asn1.x509.X509Name;
import org.bouncycastle.jce.X509V3CertificateGenerator;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.gudy.azureus2.core3.util.RandomUtils;
import org.gudy.azureus2.core3.util.SystemTime;
// Referenced classes of package org.gudy.azureus2.core3.security.impl:
// SESecurityManagerImpl
public class SESecurityManagerBC
{
public SESecurityManagerBC()
{
}
protected static void initialise()
{
Security.addProvider(new BouncyCastleProvider());
}
public static Certificate createSelfSignedCertificate(SESecurityManagerImpl manager, String alias, String cert_dn, int strength)
throws Exception
{
KeyPairGenerator kg = KeyPairGenerator.getInstance("RSA");
kg.initialize(strength, RandomUtils.SECURE_RANDOM);
KeyPair pair = kg.generateKeyPair();
X509V3CertificateGenerator certificateGenerator = new X509V3CertificateGenerator();
certificateGenerator.setSignatureAlgorithm("MD5WithRSAEncryption");
certificateGenerator.setSerialNumber(new BigInteger((new StringBuilder()).append("").append(SystemTime.getCurrentTime()).toString()));
X509Name issuer_dn = new X509Name(true, cert_dn);
certificateGenerator.setIssuerDN(issuer_dn);
X509Name subject_dn = new X509Name(true, cert_dn);
certificateGenerator.setSubjectDN(subject_dn);
Calendar not_after = Calendar.getInstance();
not_after.add(1, 1);
certificateGenerator.setNotAfter(not_after.getTime());
certificateGenerator.setNotBefore(Calendar.getInstance().getTime());
certificateGenerator.setPublicKey(pair.getPublic());
java.security.cert.X509Certificate certificate = certificateGenerator.generateX509Certificate(pair.getPrivate());
Certificate certChain[] = {
certificate
};
manager.addCertToKeyStore(alias, pair.getPrivate(), certChain);
return certificate;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -