Example usage for org.bouncycastle.asn1 ASN1Integer getInstance

List of usage examples for org.bouncycastle.asn1 ASN1Integer getInstance

Introduction

In this page you can find the example usage for org.bouncycastle.asn1 ASN1Integer getInstance.

Prototype

public static ASN1Integer getInstance(Object obj) 

Source Link

Document

Return an integer from the passed in object.

Usage

From source file:org.cryptoworkshop.ximix.common.asn1.message.ShareMessage.java

License:Apache License

private ShareMessage(ASN1Sequence seq) {
    this.sequenceNo = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().intValue();
    this.shareData = seq.getObjectAt(1);
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.SignatureCreateMessage.java

License:Apache License

private SignatureCreateMessage(ASN1Sequence seq) {
    this.keyID = DERUTF8String.getInstance(seq.getObjectAt(0)).getString();
    this.threshold = ASN1Integer.getInstance(seq.getObjectAt(1)).getValue().intValue();
    this.message = ASN1OctetString.getInstance(seq.getObjectAt(2)).getOctets();
    this.nodesToUse = MessageUtils.toOrderedSet(ASN1Sequence.getInstance(seq.getObjectAt(3)));
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TranscriptBlock.java

License:Apache License

private TranscriptBlock(ASN1Sequence seq) {
    this.stepNo = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().intValue();
    this.details = ASN1Sequence.getInstance(seq.getObjectAt(1));
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TranscriptDownloadMessage.java

License:Apache License

private TranscriptDownloadMessage(ASN1Sequence seq) {
    this.queryID = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().longValue();
    this.operationNumber = ASN1Integer.getInstance(seq.getObjectAt(1)).getValue().longValue();
    this.stepNo = ASN1Integer.getInstance(seq.getObjectAt(2)).getValue().intValue();
    this.type = TranscriptType.values()[ASN1Integer.getInstance(seq.getObjectAt(3)).getValue().intValue()];
    this.maxNumberOfMessages = ASN1Integer.getInstance(seq.getObjectAt(4)).getValue().intValue();
    this.withPairing = ASN1Boolean.getInstance(seq.getObjectAt(5)).isTrue();

    if (seq.size() > 6) {
        this.seed = ASN1OctetString.getInstance(seq.getObjectAt(6)).getOctets();
    } else {/* w  w  w.  j av a 2  s  .  co m*/
        this.seed = null;
    }
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TranscriptQueryMessage.java

License:Apache License

private TranscriptQueryMessage(ASN1Sequence seq) {
    this.operationNumber = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().longValue();
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TranscriptQueryResponse.java

License:Apache License

private TranscriptQueryResponse(ASN1Sequence seq) {
    this.queryID = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().longValue();
    this.boardName = DERUTF8String.getInstance(seq.getObjectAt(1)).getString();

    ASN1Sequence steps = ASN1Sequence.getInstance(seq.getObjectAt(2));

    stepNos = new int[steps.size()];

    for (int i = 0; i != stepNos.length; i++) {
        stepNos[i] = ASN1Integer.getInstance(steps.getObjectAt(i)).getValue().intValue();
    }//  w  w  w  .j  a  va2 s  .  c om
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TranscriptTransferMessage.java

License:Apache License

private TranscriptTransferMessage(ASN1Sequence sequence) {
    this.stepNo = ASN1Integer.getInstance(sequence.getObjectAt(0)).getValue().intValue();
    if (sequence.size() > 1) {
        this.chunk = DEROctetString.getInstance(sequence.getObjectAt(1)).getOctets();
    } else {/*www  . j a  va  2 s.c  o m*/
        this.chunk = null;
    }
}

From source file:org.cryptoworkshop.ximix.common.asn1.message.TransitBoardMessage.java

License:Apache License

private TransitBoardMessage(ASN1Sequence seq) {
    this.operationNumber = ASN1Integer.getInstance(seq.getObjectAt(0)).getValue().longValue();
    this.boardName = DERUTF8String.getInstance(seq.getObjectAt(1)).getString();
    this.stepNumber = ASN1Integer.getInstance(seq.getObjectAt(2)).getValue().intValue();
}

From source file:org.cryptoworkshop.ximix.node.crypto.key.BLSKeyManager.java

License:Apache License

public synchronized void load(char[] password, byte[] encoding) throws IOException, GeneralSecurityException {
    try {//from   w  ww.  j  a  va 2s  .com
        PKCS12PfxPdu pfx = new PKCS12PfxPdu(encoding);
        InputDecryptorProvider inputDecryptorProvider = new JcePKCSPBEInputDecryptorProviderBuilder()
                .setProvider("BC").build(password);
        ContentInfo[] infos = pfx.getContentInfos();

        for (int i = 0; i != infos.length; i++) {
            if (infos[i].getContentType().equals(PKCSObjectIdentifiers.encryptedData)) {
                PKCS12SafeBagFactory dataFact = new PKCS12SafeBagFactory(infos[i], inputDecryptorProvider);

                PKCS12SafeBag[] bags = dataFact.getSafeBags();

                Attribute[] attributes = bags[0].getAttributes();

                X509CertificateHolder cert = (X509CertificateHolder) bags[0].getBagValue();

                String keyID = getKeyID(attributes);
                BLS01PublicKeyParameters publicKeyParameters = BLSPublicKeyFactory
                        .createKey(cert.getSubjectPublicKeyInfo());

                paramsMap.put(keyID, publicKeyParameters.getParameters());
                sharedPublicKeyMap.init(keyID, 1);
                sharedPublicKeyMap.addValue(keyID, new ElementShare(ASN1Integer.getInstance(
                        cert.getExtension(XimixObjectIdentifiers.ximixShareIdExtension).getParsedValue())
                        .getValue().intValue(), publicKeyParameters.getPk()));

                if (KeyUsage.fromExtensions(cert.getExtensions()).hasUsages(KeyUsage.digitalSignature)) {
                    signingKeys.add(keyID);
                }
            } else {
                PKCS12SafeBagFactory dataFact = new PKCS12SafeBagFactory(infos[i]);

                PKCS12SafeBag[] bags = dataFact.getSafeBags();
                String keyID = getKeyID(bags[0].getAttributes());

                PKCS8EncryptedPrivateKeyInfo encInfo = (PKCS8EncryptedPrivateKeyInfo) bags[0].getBagValue();
                PrivateKeyInfo info = encInfo.decryptPrivateKeyInfo(inputDecryptorProvider);

                sharedPrivateKeyMap.init(keyID, 1);
                sharedPrivateKeyMap.addValue(keyID,
                        new BigIntegerShare(sharedPublicKeyMap.getShare(keyID).getSequenceNo(),
                                ASN1Integer.getInstance(info.parsePrivateKey()).getValue()));
            }
        }
    } catch (PKCSException e) {
        throw new GeneralSecurityException("Unable to load key store: " + e.getMessage(), e);
    }
}

From source file:org.cryptoworkshop.ximix.node.crypto.key.ECKeyManager.java

License:Apache License

public synchronized void load(char[] password, byte[] encoding) throws IOException, GeneralSecurityException {
    try {//from  w ww  . j a  va  2s.  c  o  m
        PKCS12PfxPdu pfx = new PKCS12PfxPdu(encoding);
        InputDecryptorProvider inputDecryptorProvider = new JcePKCSPBEInputDecryptorProviderBuilder()
                .setProvider("BC").build(password);
        ContentInfo[] infos = pfx.getContentInfos();

        for (int i = 0; i != infos.length; i++) {
            if (infos[i].getContentType().equals(PKCSObjectIdentifiers.encryptedData)) {
                PKCS12SafeBagFactory dataFact = new PKCS12SafeBagFactory(infos[i], inputDecryptorProvider);

                PKCS12SafeBag[] bags = dataFact.getSafeBags();

                Attribute[] attributes = bags[0].getAttributes();

                X509CertificateHolder cert = (X509CertificateHolder) bags[0].getBagValue();

                String keyID = getKeyID(attributes);
                ECPublicKeyParameters publicKeyParameters = (ECPublicKeyParameters) PublicKeyFactory
                        .createKey(cert.getSubjectPublicKeyInfo());

                paramsMap.put(keyID, publicKeyParameters.getParameters());
                sharedPublicKeyMap.init(keyID, 1);
                sharedPublicKeyMap.addValue(keyID, new ECPointShare(ASN1Integer.getInstance(
                        cert.getExtension(XimixObjectIdentifiers.ximixShareIdExtension).getParsedValue())
                        .getValue().intValue(), publicKeyParameters.getQ()));

                if (KeyUsage.fromExtensions(cert.getExtensions()).hasUsages(KeyUsage.digitalSignature)) {
                    signingKeys.add(keyID);
                }
            } else {
                PKCS12SafeBagFactory dataFact = new PKCS12SafeBagFactory(infos[i]);

                PKCS12SafeBag[] bags = dataFact.getSafeBags();
                String keyID = getKeyID(bags[0].getAttributes());

                PKCS8EncryptedPrivateKeyInfo encInfo = (PKCS8EncryptedPrivateKeyInfo) bags[0].getBagValue();
                PrivateKeyInfo info = encInfo.decryptPrivateKeyInfo(inputDecryptorProvider);

                sharedPrivateKeyMap.init(keyID, 1);
                sharedPrivateKeyMap.addValue(keyID,
                        new BigIntegerShare(sharedPublicKeyMap.getShare(keyID).getSequenceNo(),
                                ECPrivateKey.getInstance(info.parsePrivateKey()).getKey()));
            }
        }
    } catch (PKCSException e) {
        throw new GeneralSecurityException("Unable to load key store: " + e.getMessage(), e);
    }
}