com.sshtools.publickey
Class SshPublicKeyFileFactory

java.lang.Object
  extended bycom.sshtools.publickey.SshPublicKeyFileFactory

public class SshPublicKeyFileFactory
extends java.lang.Object

Public key format factory used to decode different formats of public keys. The following types of public keys are currently supported:

 OpenSSH
 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAQQC8OZmB4d+SSMtVgsvdsCqRovgwcL/SYZunIBlR mCO6LhY/8PqefhygKfIZcxyGCKcrVAO4THGbqZ/ilv8NWXJT This is a comment
SECSH standard format
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "This is a comment" AAAAB3NzaC1yc2EAAAADAQABAAAAgQC9mPcvyCnWpuvN7u4cjwUkBbTqgYm5kR92XNbo7/ElAJY+ 7HwoTtiUsQ6Q2Ma6hUg29LlDifpX5Ujwwm5PRK+7dXWL5bbznNGxJXY5P1E/5cr/+cJueaqZuA90 2x6oFweQZPK4en+nJyXFwYY/Pbf86F3EJFD3lh9RWSN7r2RbRw== ---- END SSH2 PUBLIC KEY ----
SSH1
1024 65537 12203618663441486180278392644721081332612879088348276482061792 3981996764870633915934678786242627941442492506374351346273236223683187153 1433842142721049328324552410746419300820752745317401639942167156433029893 3759921689255688343334770869709776055449427739142029076904194522024626419 9127925140284440450097198129

Author:
Lee David Painter

Field Summary
static int OPENSSH_FORMAT
           
static int SECSH_FORMAT
           
static int SSH1_FORMAT
           
 
Constructor Summary
SshPublicKeyFileFactory()
           
 
Method Summary
static SshPublicKeyFile create(SshPublicKey key, java.lang.String comment, int format)
          Create a file representation from an existing public key.
static SshPublicKey decodeSSH2PublicKey(byte[] encoded)
          Decode an SSH2 encoded public key as specified in the SSH2 transport protocol.
static SshPublicKeyFile parse(byte[] formattedkey)
          Parse a formatted public key and return a file representation.
static SshPublicKeyFile parse(java.io.InputStream in)
          Parse a formatted key from an InputStream and return a file representation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OPENSSH_FORMAT

public static final int OPENSSH_FORMAT
See Also:
Constant Field Values

SECSH_FORMAT

public static final int SECSH_FORMAT
See Also:
Constant Field Values

SSH1_FORMAT

public static final int SSH1_FORMAT
See Also:
Constant Field Values
Constructor Detail

SshPublicKeyFileFactory

public SshPublicKeyFileFactory()
Method Detail

decodeSSH2PublicKey

public static SshPublicKey decodeSSH2PublicKey(byte[] encoded)
                                        throws java.io.IOException
Decode an SSH2 encoded public key as specified in the SSH2 transport protocol. This consists of a String identifier specifying the algorithm of the public key and the remaining data is formatted depending upon the public key type. The supported key types are as follows:
 ssh-rsa is encoded as
 String        "ssh-rsa"
 BigInteger    e
 BigInteger    n

 ssh-dsa is encoded as
 String        "ssh-dsa"
 BigInteger    p
 BigInteger    q
 BigItneger    g
 BigInteger    y
 

Parameters:
encoded -
Returns:
Throws:
java.io.IOException

parse

public static SshPublicKeyFile parse(byte[] formattedkey)
                              throws java.io.IOException
Parse a formatted public key and return a file representation.

Parameters:
formattedkey -
Returns:
Throws:
java.io.IOException

parse

public static SshPublicKeyFile parse(java.io.InputStream in)
                              throws java.io.IOException
Parse a formatted key from an InputStream and return a file representation.

Parameters:
in -
Returns:
Throws:
java.io.IOException

create

public static SshPublicKeyFile create(SshPublicKey key,
                                      java.lang.String comment,
                                      int format)
                               throws java.io.IOException
Create a file representation from an existing public key. To generate new keys see

Copyright © 2003 3SP LTD. All Rights Reserved.