From 622373fb53ea32f4392f5c223cd584724a3864ac Mon Sep 17 00:00:00 2001 From: Jeroen van Erp Date: Wed, 11 Oct 2023 22:37:11 +0200 Subject: [PATCH] Small simplification Signed-off-by: Jeroen van Erp --- .../keyprovider/OpenSSHKeyV1KeyFile.java | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/hierynomus/sshj/userauth/keyprovider/OpenSSHKeyV1KeyFile.java b/src/main/java/com/hierynomus/sshj/userauth/keyprovider/OpenSSHKeyV1KeyFile.java index 0a977f572..889ce1136 100644 --- a/src/main/java/com/hierynomus/sshj/userauth/keyprovider/OpenSSHKeyV1KeyFile.java +++ b/src/main/java/com/hierynomus/sshj/userauth/keyprovider/OpenSSHKeyV1KeyFile.java @@ -71,21 +71,18 @@ public class OpenSSHKeyV1KeyFile extends BaseFileKeyProvider { private static final String NONE_CIPHER = "none"; - private static final Map BLOCK_CIPHERS = new HashMap<>(); - - private static final Map GCM_CIPHERS = new HashMap<>(); + private static final Map> SUPPORTED_CIPHERS = new HashMap<>(); static { - BLOCK_CIPHERS.put(BlockCiphers.TripleDESCBC().getName(), BlockCiphers.TripleDESCBC()); - BLOCK_CIPHERS.put(BlockCiphers.AES128CBC().getName(), BlockCiphers.AES128CBC()); - BLOCK_CIPHERS.put(BlockCiphers.AES192CBC().getName(), BlockCiphers.AES192CBC()); - BLOCK_CIPHERS.put(BlockCiphers.AES256CBC().getName(), BlockCiphers.AES256CBC()); - BLOCK_CIPHERS.put(BlockCiphers.AES128CTR().getName(), BlockCiphers.AES128CTR()); - BLOCK_CIPHERS.put(BlockCiphers.AES192CTR().getName(), BlockCiphers.AES192CTR()); - BLOCK_CIPHERS.put(BlockCiphers.AES256CTR().getName(), BlockCiphers.AES256CTR()); - - GCM_CIPHERS.put(GcmCiphers.AES256GCM().getName(), GcmCiphers.AES256GCM()); - GCM_CIPHERS.put(GcmCiphers.AES128GCM().getName(), GcmCiphers.AES128GCM()); + SUPPORTED_CIPHERS.put(BlockCiphers.TripleDESCBC().getName(), BlockCiphers.TripleDESCBC()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES128CBC().getName(), BlockCiphers.AES128CBC()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES192CBC().getName(), BlockCiphers.AES192CBC()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES256CBC().getName(), BlockCiphers.AES256CBC()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES128CTR().getName(), BlockCiphers.AES128CTR()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES192CTR().getName(), BlockCiphers.AES192CTR()); + SUPPORTED_CIPHERS.put(BlockCiphers.AES256CTR().getName(), BlockCiphers.AES256CTR()); + SUPPORTED_CIPHERS.put(GcmCiphers.AES256GCM().getName(), GcmCiphers.AES256GCM()); + SUPPORTED_CIPHERS.put(GcmCiphers.AES128GCM().getName(), GcmCiphers.AES128GCM()); } private PublicKey pubKey; @@ -260,11 +257,8 @@ private void initializeCipher(final String kdfName, final byte[] kdfOptions, fin private Cipher createCipher(final String cipherName) { final Cipher cipher; - if (BLOCK_CIPHERS.containsKey(cipherName)) { - final BlockCiphers.Factory cipherFactory = BLOCK_CIPHERS.get(cipherName); - cipher = cipherFactory.create(); - } else if (GCM_CIPHERS.containsKey(cipherName)) { - final GcmCiphers.Factory cipherFactory = GCM_CIPHERS.get(cipherName); + if (SUPPORTED_CIPHERS.containsKey(cipherName)) { + final Factory.Named cipherFactory = SUPPORTED_CIPHERS.get(cipherName); cipher = cipherFactory.create(); } else { final String message = String.format("OpenSSH Key encryption cipher not supported [%s]", cipherName);