Class JavaUtils


  • public final class JavaUtils
    extends java.lang.Object
    A collection of different, general-purpose methods for JAVA-specific things
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static org.slf4j.Logger LOG  
      private static java.security.SecurityPermission REGISTER_PERMISSION  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private JavaUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void checkRegisterPermission()
      Throws a SecurityException if a security manager is installed and the caller is not allowed to register an implementation of an algorithm, transform, or other security sensitive XML Signature function.
      static byte[] convertDsaASN1toXMLDSIG​(byte[] asn1Bytes, int size)
      Converts an ASN.1 DSA value to a XML Signature DSA Value.
      static byte[] convertDsaXMLDSIGtoASN1​(byte[] xmldsigBytes, int size)
      Converts an XML Signature DSA Value to a ASN.1 DSA value.
      static byte[] getBytesFromFile​(java.lang.String fileName)
      Method getBytesFromFile
      static byte[] getBytesFromStream​(java.io.InputStream inputStream)
      This method reads all bytes from the given InputStream till EOF and returns them as a byte array.
      static void writeBytesToFilename​(java.lang.String filename, byte[] bytes)
      Method writeBytesToFilename
      • Methods inherited from class java.lang.Object

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

      • LOG

        private static final org.slf4j.Logger LOG
      • REGISTER_PERMISSION

        private static final java.security.SecurityPermission REGISTER_PERMISSION
    • Constructor Detail

      • JavaUtils

        private JavaUtils()
    • Method Detail

      • getBytesFromFile

        public static byte[] getBytesFromFile​(java.lang.String fileName)
                                       throws java.io.FileNotFoundException,
                                              java.io.IOException
        Method getBytesFromFile
        Parameters:
        fileName -
        Returns:
        the bytes read from the file
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • writeBytesToFilename

        public static void writeBytesToFilename​(java.lang.String filename,
                                                byte[] bytes)
        Method writeBytesToFilename
        Parameters:
        filename -
        bytes -
      • getBytesFromStream

        public static byte[] getBytesFromStream​(java.io.InputStream inputStream)
                                         throws java.io.IOException
        This method reads all bytes from the given InputStream till EOF and returns them as a byte array.
        Parameters:
        inputStream -
        Returns:
        the bytes read from the stream
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • convertDsaASN1toXMLDSIG

        public static byte[] convertDsaASN1toXMLDSIG​(byte[] asn1Bytes,
                                                     int size)
                                              throws java.io.IOException
        Converts an ASN.1 DSA value to a XML Signature DSA Value. The JCE DSA Signature algorithm creates ASN.1 encoded (r, s) value pairs (see section 2.2.2 of RFC 3279); the XML Signature requires the core BigInteger values.
        Parameters:
        asn1Bytes - the ASN.1 encoded bytes
        size - size of r and s in bytes
        Returns:
        the XML Signature encoded bytes
        Throws:
        java.io.IOException - if the bytes are not encoded correctly
        See Also:
        6.4.1 DSA
      • convertDsaXMLDSIGtoASN1

        public static byte[] convertDsaXMLDSIGtoASN1​(byte[] xmldsigBytes,
                                                     int size)
                                              throws java.io.IOException
        Converts an XML Signature DSA Value to a ASN.1 DSA value. The JCE DSA Signature algorithm creates ASN.1 encoded (r, s) value pairs (see section 2.2.2 of RFC 3279); the XML Signature requires the core BigInteger values.
        Parameters:
        xmldsigBytes - the XML Signature encoded bytes
        size - size of r and s in bytes
        Returns:
        the ASN.1 encoded bytes
        Throws:
        java.io.IOException - if the bytes are not encoded correctly
        See Also:
        6.4.1 DSA
      • checkRegisterPermission

        public static void checkRegisterPermission()
        Throws a SecurityException if a security manager is installed and the caller is not allowed to register an implementation of an algorithm, transform, or other security sensitive XML Signature function.
        Throws:
        java.lang.SecurityException - if a security manager is installed and the caller has not been granted the "org.apache.xml.security.register" SecurityPermission