Class OpenPgpFingerprint

  • All Implemented Interfaces:
    java.lang.CharSequence, java.lang.Comparable<OpenPgpFingerprint>
    Direct Known Subclasses:
    OpenPgpV4Fingerprint

    public abstract class OpenPgpFingerprint
    extends java.lang.Object
    implements java.lang.CharSequence, java.lang.Comparable<OpenPgpFingerprint>
    Abstract super class of different version OpenPGP fingerprints.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String fingerprint  
      protected static java.nio.charset.Charset utf8  
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      char charAt​(int i)  
      abstract long getKeyId()
      Return the key id of the OpenPGP public key this OpenPgpFingerprint belongs to.
      abstract int getVersion()
      Return the version of the fingerprint.
      protected abstract boolean isValid​(java.lang.String fp)
      Check, whether the fingerprint consists of 40 valid hexadecimal characters.
      int length()  
      static OpenPgpFingerprint of​(org.bouncycastle.openpgp.PGPKeyRing ring)
      Return the fingerprint of the primary key of the given key ring.
      static OpenPgpFingerprint of​(org.bouncycastle.openpgp.PGPPublicKey key)
      Return the fingerprint of the given key.
      abstract java.lang.String prettyPrint()
      Return a pretty printed representation of the fingerprint.
      java.lang.CharSequence subSequence​(int i, int i1)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.lang.CharSequence

        chars, codePoints
      • Methods inherited from interface java.lang.Comparable

        compareTo
    • Field Detail

      • utf8

        protected static final java.nio.charset.Charset utf8
      • fingerprint

        protected final java.lang.String fingerprint
    • Constructor Detail

      • OpenPgpFingerprint

        public OpenPgpFingerprint​(java.lang.String fingerprint)
      • OpenPgpFingerprint

        public OpenPgpFingerprint​(@Nonnull
                                  byte[] bytes)
      • OpenPgpFingerprint

        public OpenPgpFingerprint​(org.bouncycastle.openpgp.PGPPublicKey key)
      • OpenPgpFingerprint

        public OpenPgpFingerprint​(@Nonnull
                                  org.bouncycastle.openpgp.PGPPublicKeyRing ring)
      • OpenPgpFingerprint

        public OpenPgpFingerprint​(@Nonnull
                                  org.bouncycastle.openpgp.PGPSecretKeyRing ring)
      • OpenPgpFingerprint

        public OpenPgpFingerprint​(@Nonnull
                                  org.bouncycastle.openpgp.PGPKeyRing ring)
    • Method Detail

      • of

        public static OpenPgpFingerprint of​(org.bouncycastle.openpgp.PGPPublicKey key)
        Return the fingerprint of the given key. This method automatically matches key versions to fingerprint implementations.
        Parameters:
        key - key
        Returns:
        fingerprint
      • of

        public static OpenPgpFingerprint of​(org.bouncycastle.openpgp.PGPKeyRing ring)
        Return the fingerprint of the primary key of the given key ring. This method automatically matches key versions to fingerprint implementations.
        Parameters:
        ring - key ring
        Returns:
        fingerprint
      • getVersion

        public abstract int getVersion()
        Return the version of the fingerprint.
        Returns:
        version
      • isValid

        protected abstract boolean isValid​(@Nonnull
                                           java.lang.String fp)
        Check, whether the fingerprint consists of 40 valid hexadecimal characters.
        Parameters:
        fp - fingerprint to check.
        Returns:
        true if fingerprint is valid.
      • getKeyId

        public abstract long getKeyId()
        Return the key id of the OpenPGP public key this OpenPgpFingerprint belongs to. This method can be implemented for V4 and V5 fingerprints. V3 key-IDs cannot be derived from the fingerprint, but we don't care, since V3 is deprecated.
        Returns:
        key id
        See Also:
        RFC-4880 ยง12.2: Key IDs and Fingerprints
      • length

        public int length()
        Specified by:
        length in interface java.lang.CharSequence
      • charAt

        public char charAt​(int i)
        Specified by:
        charAt in interface java.lang.CharSequence
      • subSequence

        public java.lang.CharSequence subSequence​(int i,
                                                  int i1)
        Specified by:
        subSequence in interface java.lang.CharSequence
      • toString

        @Nonnull
        public java.lang.String toString()
        Specified by:
        toString in interface java.lang.CharSequence
        Overrides:
        toString in class java.lang.Object
      • prettyPrint

        public abstract java.lang.String prettyPrint()
        Return a pretty printed representation of the fingerprint.
        Returns:
        pretty printed fingerprint