Example usage for org.bouncycastle.asn1 DERTaggedObject getEncoded

List of usage examples for org.bouncycastle.asn1 DERTaggedObject getEncoded

Introduction

In this page you can find the example usage for org.bouncycastle.asn1 DERTaggedObject getEncoded.

Prototype

public byte[] getEncoded(String encoding) throws IOException 

Source Link

Document

Return either the default for "BER" or a DER encoding if "DER" is specified.

Usage

From source file:de.tsenger.animamea.iso7816.MSESetAT.java

License:Open Source License

/**
 * Setzt die OID des zu verwendenden Protokolls
 * /*from   w ww .ja  v  a  2  s  . c om*/
 * @param protocol
 *            Das zu verwendende Protokoll
 */
public void setProtocol(String protocol) {
    DERObjectIdentifier oid = new ASN1ObjectIdentifier(protocol);
    DERTaggedObject to = new DERTaggedObject(false, 0x00, oid);
    try {
        do80CMR = to.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

From source file:de.tsenger.animamea.iso7816.MSESetAT.java

License:Open Source License

/**
 * Setzt das Tag 0x83 (Reference of public / secret key) fr PACE
 * /* ww  w. j a  v a2 s .co m*/
 * @param kr
 *            Referenziert das verwendete Passwort: 1: MRZ 2: CAN 3: PIN 4:
 *            PUK
 */
public void setKeyReference(int kr) {
    DERTaggedObject to = new DERTaggedObject(false, 0x03, new ASN1Integer(kr));
    try {
        do83KeyReference = to.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

From source file:de.tsenger.animamea.iso7816.MSESetAT.java

License:Open Source License

/**
 * Setzt das Tag 0x83 (Reference of public / secret key) fr Terminal
 * Authentication/* ww  w  .  ja  v  a 2  s .co m*/
 * 
 * @param kr
 *            String der den Namen des Public Keys des Terminals beinhaltet
 *            (ISO 8859-1 kodiert)
 */
public void setKeyReference(String kr) {
    DERTaggedObject to = new DERTaggedObject(false, 0x03, new DEROctetString(kr.getBytes()));
    try {
        do83KeyName = to.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

From source file:de.tsenger.animamea.iso7816.MSESetAT.java

License:Open Source License

/**
 * Setzt das Tag 0x84 (Reference of a private key / Reference for computing
 * a session key)/*from  w w  w .  j  a  v a2 s.com*/
 * 
 * @param pkr
 *            Bei PACE wird der Index der zu verwendenden Domain Parameter
 *            angegeben Bei CA wird der Index des zu verwendenden Private
 *            Keys angegeben Bei RI wird der Index des zu verwendenden
 *            Private Keys angegeben
 */
public void setPrivateKeyReference(int pkr) {
    DERTaggedObject to = new DERTaggedObject(false, 0x04, new ASN1Integer(pkr));
    try {
        do84PrivateKeyReference = to.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

From source file:de.tsenger.animamea.iso7816.MSESetAT.java

License:Open Source License

/**
 * Setzt das Tag 0x91 (Ephemeral Public Key). Der PK muss bereits komprimiert 
 * (siehe comp()-Funktion in TR-03110) sein.
 * @param pubKey comp(ephemeral PK_PCD) -> TR-03110 A.2.2.3
 *//*from  w  ww.j  av a  2s  . c  om*/
public void setEphemeralPublicKey(byte[] pubKey) {
    DERTaggedObject to = new DERTaggedObject(false, 0x11, new DEROctetString(pubKey));
    try {
        do91EphemeralPublicKEy = to.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

From source file:de.tsenger.animamea.ta.TAOperator.java

License:Open Source License

/**
 * @param pubKeyRef/*ww  w  .  ja  va2s  .com*/
 * @return
 * @throws CardException
 * @throws SecureMessagingException
 * @throws TAException 
 */
private ResponseAPDU sendMSESetDST(String pubKeyRef)
        throws SecureMessagingException, CardException, TAException {

    DERTaggedObject do83 = new DERTaggedObject(false, 0x03, new DEROctetString(pubKeyRef.getBytes()));
    byte[] data = null;

    try {
        data = do83.getEncoded(ASN1Encoding.DER);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    CommandAPDU setdst = new CommandAPDU(0x00, 0x22, 0x81, 0xB6, data);

    ResponseAPDU resp = cardHandler.transceive(setdst);
    if (resp.getSW1() != 0x90)
        throw new TAException("MSE:Set AT failed " + HexString.bufferToHex(resp.getBytes()));

    return resp;
}