Class FingerprintUtil


  • public class FingerprintUtil
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      FingerprintUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static long keyIdFromFingerprint​(int keyVersion, byte[] fingerprint)
      Derive a key-id from the given key fingerprint.
      static long keyIdFromLibrePgpFingerprint​(byte[] v5Fingerprint)
      Derive a 64 bit key-id from a version 5 LibrePGP fingerprint.
      static long keyIdFromV4Fingerprint​(byte[] v4Fingerprint)
      Derive a 64 bit key-id from a version 4 OpenPGP fingerprint.
      static long keyIdFromV6Fingerprint​(byte[] v6Fingerprint)
      Derive a 64 bit key-id from a version 6 OpenPGP fingerprint.
      static long longFromLeftMostBytes​(byte[] bytes)
      Convert the left-most 8 bytes from the given array to a long.
      static long longFromRightMostBytes​(byte[] bytes)
      Convert the right-most 8 bytes from the given array to a long.
      static java.lang.String prettifyFingerprint​(byte[] fingerprint)  
      static long readKeyID​(byte[] bytes)
      Read a key-ID from the first 8 octets of the given byte array.
      static long readKeyID​(byte[] bytes, int offset)
      Read a key-ID from 8 octets of the given byte array starting at offset.
      static void writeKeyID​(long keyID, byte[] bytes)
      Write the key-ID to the first 8 octets of the given byte array.
      static void writeKeyID​(long keyID, byte[] bytes, int offset)
      Write the key-ID encoded as 8 octets to the given byte array, starting at index offset.
      • Methods inherited from class java.lang.Object

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

      • FingerprintUtil

        public FingerprintUtil()
    • Method Detail

      • keyIdFromFingerprint

        public static long keyIdFromFingerprint​(int keyVersion,
                                                byte[] fingerprint)
        Derive a key-id from the given key fingerprint. This method can derive key-ids from v4, v5 (LibrePGP) and v6 keys. For keys with other versions (2,3) it will return 0.
        Parameters:
        keyVersion - version of the key
        fingerprint - fingerprint of the key
        Returns:
        derived key-id
      • keyIdFromV6Fingerprint

        public static long keyIdFromV6Fingerprint​(byte[] v6Fingerprint)
        Derive a 64 bit key-id from a version 6 OpenPGP fingerprint. For v6 keys, the key-id corresponds to the left-most 8 octets of the fingerprint.
        Parameters:
        v6Fingerprint - 32 byte fingerprint
        Returns:
        key-id
      • keyIdFromLibrePgpFingerprint

        public static long keyIdFromLibrePgpFingerprint​(byte[] v5Fingerprint)
        Derive a 64 bit key-id from a version 5 LibrePGP fingerprint. For such keys, the key-id corresponds to the left-most 8 octets of the fingerprint.
        Parameters:
        v5Fingerprint - 32 byte fingerprint
        Returns:
        key-id
      • keyIdFromV4Fingerprint

        public static long keyIdFromV4Fingerprint​(byte[] v4Fingerprint)
        Derive a 64 bit key-id from a version 4 OpenPGP fingerprint. For v4 keys, the key-id corresponds to the right-most 8 octets of the fingerprint.
        Parameters:
        v4Fingerprint - 20 byte fingerprint
        Returns:
        key-id
      • longFromLeftMostBytes

        public static long longFromLeftMostBytes​(byte[] bytes)
        Convert the left-most 8 bytes from the given array to a long.
        Parameters:
        bytes - bytes
        Returns:
        long
      • longFromRightMostBytes

        public static long longFromRightMostBytes​(byte[] bytes)
        Convert the right-most 8 bytes from the given array to a long.
        Parameters:
        bytes - bytes
        Returns:
        long
      • readKeyID

        public static long readKeyID​(byte[] bytes)
        Read a key-ID from the first 8 octets of the given byte array.
        Parameters:
        bytes - byte array
        Returns:
        key-ID
      • readKeyID

        public static long readKeyID​(byte[] bytes,
                                     int offset)
        Read a key-ID from 8 octets of the given byte array starting at offset.
        Parameters:
        bytes - byte array
        offset - offset
        Returns:
        key-ID
      • writeKeyID

        public static void writeKeyID​(long keyID,
                                      byte[] bytes,
                                      int offset)
        Write the key-ID encoded as 8 octets to the given byte array, starting at index offset.
        Parameters:
        keyID - keyID
        bytes - byte array
        offset - starting offset
      • writeKeyID

        public static void writeKeyID​(long keyID,
                                      byte[] bytes)
        Write the key-ID to the first 8 octets of the given byte array.
        Parameters:
        keyID - keyID
        bytes - byte array
      • prettifyFingerprint

        public static java.lang.String prettifyFingerprint​(byte[] fingerprint)