diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2019-05-03 15:18:54 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2019-05-03 15:19:17 +0200 |
commit | 217b558f7c175e70afc6df0e15620556ce801958 (patch) | |
tree | 526ea7b2c50f8477c3d213886d183eb86a39cfea /security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java | |
parent | bcd18d57c73f4d3f04cf794e9e1e684a39d49218 (diff) |
Add toPem(PublicKey)
Diffstat (limited to 'security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java')
-rw-r--r-- | security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java | 54 |
1 files changed, 18 insertions, 36 deletions
diff --git a/security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java b/security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java index eba6fad9bd8..dc0c0a126ea 100644 --- a/security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java +++ b/security-utils/src/test/java/com/yahoo/security/KeyUtilsTest.java @@ -17,34 +17,6 @@ import static org.junit.Assert.assertThat; */ public class KeyUtilsTest { - private static final String rsaPemPublicKey = "-----BEGIN PUBLIC KEY-----\n" + - "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsKL8jvIEy2peLtEvyhWW\n" + - "b/O/9RHTfPXjeXahXmVrXE4zY5CJ6Mf1PFkwQ8K8S35YhSbOZM4aYhF9V8F4jwyW\n" + - "nX6qWUMrWVHOuS32fkjdNo0z/KxCbG5nRIWLuv/PkHNuIJqMCbwn6Qud5a+wxeLg\n" + - "LqlroCtUJKAGj4YlZ5i8oMdCqfHKl/DMwcks5XxtIArz6GcM2z8fOB3NRexj32MU\n" + - "LH7ybWhCDx/RSqGQYJ8sWEFIK4HSmYqwqIQpFAm/ixISkeWBL6ikgqchZNMf7xyn\n" + - "yJxjCHgtkxANsQhHj2kgAzLDeBsuM+/WRhBGa+LRvEcuu/zZv9+7eVhpaYJveLVd\n" + - "cwPewW/8liBmKIzj/QPCn7ZlVRk094TZD6TCER4+JFW9mo0vFD8S9o0zhMlckzCF\n" + - "4ZNNgyP9tI8Wecq25A+sUY5/WZNLi+mka/GnfPt97GrhM0YHb1M6t4nh1R437Nwh\n" + - "rUHR/YDazbBvLk5T71GgfQfn44L9SwsqEYaHvdZAfV0IZJBtDo/yCe/yvgtHTymB\n" + - "eBrRMpBU5recPtW8bgEWlHl6Qyduw9EBJjNYxvBpgV/D/tNBcau0aGxmhwpBevet\n" + - "ekV6XA2miC7rWu2Wrq2l5LjXEgZOD5PNN2vQS2Cdet9JHYWbVbK3mBLgoChcC5Xo\n" + - "/QHLU4RydI0i0+Z2/tjGsGsCAwEAAQ==\n" + - "-----END PUBLIC KEY-----\n"; - - /** Generated from the private key above with {@code openssl ec -pubout -in private_key.pem -out public_key.pem} */ - private static final String ecPemPublicKey = "-----BEGIN PUBLIC KEY-----\n" + - "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuKVFA8dXk43kVfYKzkUqhEY2rDT9\n" + - "z/4jKSTHwbYR8wdsOSrJGVEUPbS2nguIJ64OJH7gFnxM6sxUVj+Nm2HlXw==\n" + - "-----END PUBLIC KEY-----\n"; - - /** Generated with {@code openssl ecparam -name prime256v1 -genkey -noout -out private_key.pem} */ - private static final String ecPemPrivateKey = "-----BEGIN EC PRIVATE KEY-----\n" + - "MHcCAQEEIJUmbIX8YFLHtpRgkwqDDE3igU9RG6JD9cYHWAZii9j7oAoGCCqGSM49\n" + - "AwEHoUQDQgAEuKVFA8dXk43kVfYKzkUqhEY2rDT9z/4jKSTHwbYR8wdsOSrJGVEU\n" + - "PbS2nguIJ64OJH7gFnxM6sxUVj+Nm2HlXw==\n" + - "-----END EC PRIVATE KEY-----\n"; - @Test public void can_extract_public_key_from_rsa_private() { KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA); @@ -67,6 +39,7 @@ public class KeyUtilsTest { assertThat(pem, containsString("END RSA PRIVATE KEY")); PrivateKey deserializedKey = KeyUtils.fromPemEncodedPrivateKey(pem); assertEquals(keyPair.getPrivate(), deserializedKey); + assertEquals(KeyAlgorithm.RSA.getAlgorithmName(), deserializedKey.getAlgorithm()); } @Test @@ -77,20 +50,29 @@ public class KeyUtilsTest { assertThat(pem, containsString("END EC PRIVATE KEY")); PrivateKey deserializedKey = KeyUtils.fromPemEncodedPrivateKey(pem); assertEquals(keyPair.getPrivate(), deserializedKey); + assertEquals(KeyAlgorithm.EC.getAlgorithmName(), deserializedKey.getAlgorithm()); } @Test - public void can_deserialize_rsa_publickey_in_pem_format() { - PublicKey publicKey = KeyUtils.fromPemEncodedPublicKey(rsaPemPublicKey); - assertEquals(KeyAlgorithm.RSA.getAlgorithmName(), publicKey.getAlgorithm()); + public void can_serialize_and_deserialize_rsa_publickey_using_pem_format() { + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA); + String pem = KeyUtils.toPem(keyPair.getPublic()); + assertThat(pem, containsString("BEGIN PUBLIC KEY")); + assertThat(pem, containsString("END PUBLIC KEY")); + PublicKey deserializedKey = KeyUtils.fromPemEncodedPublicKey(pem); + assertEquals(keyPair.getPublic(), deserializedKey); + assertEquals(KeyAlgorithm.RSA.getAlgorithmName(), deserializedKey.getAlgorithm()); } @Test - public void can_deserialize_ec_keys_in_pem_format() { - PublicKey publicKey = KeyUtils.fromPemEncodedPublicKey(ecPemPublicKey); - PrivateKey privateKey = KeyUtils.fromPemEncodedPrivateKey(ecPemPrivateKey); - assertEquals(KeyAlgorithm.EC.getAlgorithmName(), publicKey.getAlgorithm()); - assertEquals(KeyAlgorithm.EC.getAlgorithmName(), privateKey.getAlgorithm()); + public void can_serialize_and_deserialize_ec_publickey_using_pem_format() { + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.EC); + String pem = KeyUtils.toPem(keyPair.getPublic()); + assertThat(pem, containsString("BEGIN PUBLIC KEY")); + assertThat(pem, containsString("END PUBLIC KEY")); + PublicKey deserializedKey = KeyUtils.fromPemEncodedPublicKey(pem); + assertEquals(keyPair.getPublic(), deserializedKey); + assertEquals(KeyAlgorithm.EC.getAlgorithmName(), deserializedKey.getAlgorithm()); } } |