Class ASN1Util


  • public class ASN1Util
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      ASN1Util()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static ASN1Value decode​(ASN1Template template, byte[] encoded)  
      static ASN1Value decode​(Tag implicitTag, ASN1Template template, byte[] encoded)  
      static byte[] encode​(ASN1Value val)  
      static byte[] encode​(Tag implicitTag, ASN1Value val)  
      static byte[] getECCurveBytesByX509PublicKeyBytes​(byte[] X509PubKeyBytes, boolean withHeader)
      returns the ECC curve byte array given the X509 public key byte array
      static java.lang.String getOIDdescription​(byte[] oidBA)
      getOIDdescription() returns a text description of the OID from OID byte array the OID byte array is expected to be without the OID Tag (6) and size (together 2 bytes)
      static void readFully​(byte[] bytes, java.io.InputStream istream)
      Fills a byte array with bytes from an input stream.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ASN1Util

        public ASN1Util()
    • Method Detail

      • encode

        public static byte[] encode​(ASN1Value val)
      • encode

        public static byte[] encode​(Tag implicitTag,
                                    ASN1Value val)
      • readFully

        public static void readFully​(byte[] bytes,
                                     java.io.InputStream istream)
                              throws java.io.IOException
        Fills a byte array with bytes from an input stream. This method keeps reading until the array is filled, an IOException occurs, or EOF is reached. The byte array will be completely filled unless an exception is thrown.
        Parameters:
        bytes - A byte array which will be filled up.
        istream - The input stream from which to read the bytes.
        Throws:
        java.io.IOException - If an IOException occurs reading from the stream, or EOF is reached before the byte array is filled.
      • getECCurveBytesByX509PublicKeyBytes

        public static byte[] getECCurveBytesByX509PublicKeyBytes​(byte[] X509PubKeyBytes,
                                                                 boolean withHeader)
                                                          throws java.lang.IllegalArgumentException,
                                                                 java.lang.ArrayIndexOutOfBoundsException,
                                                                 java.lang.NullPointerException
        returns the ECC curve byte array given the X509 public key byte array
        Parameters:
        X509PubKeyBytes - byte array of an X509PubKey
        withHeader - tells if the return byes should inclulde the tag and size header or not
        Returns:
        ECC curve byte array.
        Throws:
        java.lang.IllegalArgumentException
        java.lang.ArrayIndexOutOfBoundsException
        java.lang.NullPointerException
      • getOIDdescription

        public static java.lang.String getOIDdescription​(byte[] oidBA)
        getOIDdescription() returns a text description of the OID from OID byte array the OID byte array is expected to be without the OID Tag (6) and size (together 2 bytes)
        Parameters:
        oidBA - OID byte array.
        Returns:
        OID description.