Change convertFingerprintToHex to use RuntimeException

This commit is contained in:
Dominik Schürmann 2015-05-21 11:00:52 +02:00 committed by Vincent Breitmoser
parent 0b5c66ad0d
commit 79e356e04f

View File

@ -218,14 +218,11 @@ public class KeyFormattingUtils {
public static String convertFingerprintToHex(byte[] fingerprint) { public static String convertFingerprintToHex(byte[] fingerprint) {
// NOTE: Even though v3 keys are not imported we need to support both fingerprints for // NOTE: Even though v3 keys are not imported we need to support both fingerprints for
// display/comparison before import // display/comparison before import
// Also better cut of unneeded parts, e.g., for fingerprints returned from YubiKeys if (fingerprint.length != 16 && fingerprint.length != 20) {
if (fingerprint.length < 20) { throw new RuntimeException("No valid v3 or v4 fingerprint!");
// v3 key fingerprint with 128 bit (MD5)
return Hex.toHexString(fingerprint, 0, 16).toLowerCase(Locale.ENGLISH);
} else {
// v4 key fingerprint with 160 bit (SHA1)
return Hex.toHexString(fingerprint, 0, 20).toLowerCase(Locale.ENGLISH);
} }
return Hex.toHexString(fingerprint).toLowerCase(Locale.ENGLISH);
} }
public static long getKeyIdFromFingerprint(byte[] fingerprint) { public static long getKeyIdFromFingerprint(byte[] fingerprint) {