Class DSSPEMResourceKeyPairParser

    • Constructor Detail

      • DSSPEMResourceKeyPairParser

        public DSSPEMResourceKeyPairParser()
    • Method Detail

      • extractKeyPairs

        public java.util.Collection<java.security.KeyPair> extractKeyPairs​(SessionContext session,
                                                                           NamedResource resourceKey,
                                                                           java.lang.String beginMarker,
                                                                           java.lang.String endMarker,
                                                                           FilePasswordProvider passwordProvider,
                                                                           java.io.InputStream stream,
                                                                           java.util.Map<java.lang.String,​java.lang.String> headers)
                                                                    throws java.io.IOException,
                                                                           java.security.GeneralSecurityException
        Specified by:
        extractKeyPairs in class AbstractKeyPairResourceParser
        Parameters:
        session - The SessionContext for invoking this load command - may be null if not invoked within a session context (e.g., offline tool or session unknown).
        resourceKey - A hint as to the origin of the text lines
        beginMarker - The line containing the begin marker
        endMarker - The line containing the end marker
        passwordProvider - The FilePasswordProvider to use in case the data is encrypted - may be null if no encrypted
        stream - The decoded data InputStream
        headers - Any headers that may have been available when data was read
        Returns:
        The extracted KeyPairs - may be null/empty if none.
        Throws:
        java.io.IOException - If failed to parse the data
        java.security.GeneralSecurityException - If failed to generate the keys
      • decodeDSSKeyPair

        public static java.security.KeyPair decodeDSSKeyPair​(java.security.KeyFactory kf,
                                                             java.io.InputStream s,
                                                             boolean okToClose)
                                                      throws java.io.IOException,
                                                             java.security.GeneralSecurityException

        The ASN.1 syntax for the private key:

        
         DSAPrivateKey ::= SEQUENCE {
              version Version,
              p       INTEGER,
              q       INTEGER,
              g       INTEGER,
              y       INTEGER,
              x       INTEGER
         }
         
        Parameters:
        kf - The KeyFactory To use to generate the keys
        s - The InputStream containing the encoded bytes
        okToClose - true if the method may close the input stream regardless of success or failure
        Returns:
        The recovered KeyPair
        Throws:
        java.io.IOException - If failed to read or decode the bytes
        java.security.GeneralSecurityException - If failed to generate the keys