Search in sources :

Example 36 with SigningPublicKey

use of net.i2p.data.SigningPublicKey in project i2p.i2p by i2p.

the class FamilyKeyCrypto method loadCert.

/**
 * Load a public key from a cert.
 *
 * @return null on all errors
 */
private SigningPublicKey loadCert(String familyName) {
    if (familyName.contains("/") || familyName.contains("\\") || familyName.contains("..") || (new File(familyName)).isAbsolute())
        return null;
    familyName = familyName.replace("@", "_at_");
    File dir = new File(_context.getBaseDir(), CERT_DIR);
    File file = new File(dir, familyName + CERT_SUFFIX);
    if (!file.exists())
        return null;
    try {
        PublicKey pk = CertUtil.loadKey(file);
        return SigUtil.fromJavaKey(pk);
    } catch (GeneralSecurityException gse) {
        _log.error("Error loading family key " + familyName, gse);
    } catch (IOException ioe) {
        _log.error("Error loading family key " + familyName, ioe);
    }
    return null;
}
Also used : SigningPublicKey(net.i2p.data.SigningPublicKey) PublicKey(java.security.PublicKey) GeneralSecurityException(java.security.GeneralSecurityException) IOException(java.io.IOException) File(java.io.File)

Aggregations

SigningPublicKey (net.i2p.data.SigningPublicKey)36 SigningPrivateKey (net.i2p.data.SigningPrivateKey)13 IOException (java.io.IOException)12 DataFormatException (net.i2p.data.DataFormatException)11 SigType (net.i2p.crypto.SigType)10 Signature (net.i2p.data.Signature)10 PublicKey (net.i2p.data.PublicKey)9 File (java.io.File)8 GeneralSecurityException (java.security.GeneralSecurityException)8 PublicKey (java.security.PublicKey)7 PrivateKey (net.i2p.data.PrivateKey)6 SimpleDataStructure (net.i2p.data.SimpleDataStructure)6 BigInteger (java.math.BigInteger)5 ECPoint (java.security.spec.ECPoint)5 Certificate (net.i2p.data.Certificate)5 Destination (net.i2p.data.Destination)5 NativeBigInteger (net.i2p.util.NativeBigInteger)5 FileInputStream (java.io.FileInputStream)3 StringWriter (java.io.StringWriter)3 CertificateTest (net.i2p.data.CertificateTest)3