com.maverick.ssh.components.jce
Class Ssh2RsaPublicKey

java.lang.Object
  extended by com.maverick.ssh.components.jce.Ssh2RsaPublicKey
All Implemented Interfaces:
SshComponent, SshPublicKey, SshRsaPublicKey
Direct Known Subclasses:
Ssh1RsaPublicKey, SshX509RsaPublicKey, SshX509RsaSha1PublicKey

public class Ssh2RsaPublicKey
extends Object
implements SshRsaPublicKey

A RSA public key implementation which uses a JCE provider.

Author:
Lee David Painter

Constructor Summary
Ssh2RsaPublicKey()
          Default constructor for initializing the key from a byte array using the init method.
Ssh2RsaPublicKey(BigInteger modulus, BigInteger publicExponent)
           
Ssh2RsaPublicKey(RSAPublicKey pubKey)
           
 
Method Summary
 BigInteger doPublic(BigInteger input)
           
 boolean equals(Object obj)
           
 int getBitLength()
          Get the bit length of the public key
 byte[] getEncoded()
          Encode the public key into a blob of binary data, the encoded result will be passed into init to recreate the key.
 String getFingerprint()
          Return an SSH fingerprint of the public key
 PublicKey getJCEPublicKey()
           
 BigInteger getModulus()
           
 String getName()
          Get the algorithm name for the public key.
 BigInteger getPublicExponent()
           
 int getVersion()
           
 int hashCode()
           
 void init(byte[] blob, int start, int len)
          Initialize the public key from a blob of binary data.
 boolean verifySignature(byte[] signature, byte[] data)
          Verify the signature.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Ssh2RsaPublicKey

public Ssh2RsaPublicKey()
Default constructor for initializing the key from a byte array using the init method.


Ssh2RsaPublicKey

public Ssh2RsaPublicKey(RSAPublicKey pubKey)

Ssh2RsaPublicKey

public Ssh2RsaPublicKey(BigInteger modulus,
                        BigInteger publicExponent)
                 throws NoSuchAlgorithmException,
                        InvalidKeySpecException
Throws:
NoSuchAlgorithmException
InvalidKeySpecException
Method Detail

getEncoded

public byte[] getEncoded()
                  throws SshException
Description copied from interface: SshPublicKey
Encode the public key into a blob of binary data, the encoded result will be passed into init to recreate the key.

Specified by:
getEncoded in interface SshPublicKey
Returns:
an encoded byte array
Throws:
SshException

getFingerprint

public String getFingerprint()
                      throws SshException
Description copied from interface: SshPublicKey
Return an SSH fingerprint of the public key

Specified by:
getFingerprint in interface SshPublicKey
Returns:
String
Throws:
SshException

getBitLength

public int getBitLength()
Description copied from interface: SshPublicKey
Get the bit length of the public key

Specified by:
getBitLength in interface SshPublicKey
Returns:
the bit length of the public key

init

public void init(byte[] blob,
                 int start,
                 int len)
          throws SshException
Description copied from interface: SshPublicKey
Initialize the public key from a blob of binary data.

Specified by:
init in interface SshPublicKey
Throws:
SshException

getName

public String getName()
Description copied from interface: SshPublicKey
Get the algorithm name for the public key.

Specified by:
getName in interface SshComponent
Specified by:
getName in interface SshPublicKey
Returns:
the algorithm name, for example "ssh-dss"

verifySignature

public boolean verifySignature(byte[] signature,
                               byte[] data)
                        throws SshException
Description copied from interface: SshPublicKey
Verify the signature.

Specified by:
verifySignature in interface SshPublicKey
Returns:
true if the signature was produced by the corresponding private key that owns this public key, otherwise false.
Throws:
SshException

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

doPublic

public BigInteger doPublic(BigInteger input)
                    throws SshException
Specified by:
doPublic in interface SshRsaPublicKey
Throws:
SshException

getModulus

public BigInteger getModulus()
Specified by:
getModulus in interface SshRsaPublicKey

getPublicExponent

public BigInteger getPublicExponent()
Specified by:
getPublicExponent in interface SshRsaPublicKey

getVersion

public int getVersion()
Specified by:
getVersion in interface SshRsaPublicKey

getJCEPublicKey

public PublicKey getJCEPublicKey()


Copyright © 2013. All Rights Reserved.