diff options
| author | cyBerta <cyberta@riseup.net> | 2024-12-07 03:09:01 +0100 |
|---|---|---|
| committer | cyberta <cyberta@riseup.net> | 2024-12-11 00:09:34 +0000 |
| commit | 3bcba785be239093ee469fd99efb197ca1d1f246 (patch) | |
| tree | b05ffe4eb72afceca8d6651a3ff91399332a1ed1 /app/src/test | |
| parent | bf75f3824596f53f0c6e9a2cfb3629da905b59d1 (diff) | |
Fix support for ed25519 private VPN keys, add signing capabilities for ed25519 in VpnProfile, so that such a key can be passed with OpenVPNs management-external-key option on runtime
Diffstat (limited to 'app/src/test')
| -rw-r--r-- | app/src/test/java/se/leap/bitmaskclient/base/utils/PrivateKeyHelperTest.java | 13 | ||||
| -rw-r--r-- | app/src/test/resources/private_PKCS8_encoded_ecdsa_key.pem | 8 | ||||
| -rw-r--r-- | app/src/test/resources/private_PKCS8_encoded_ed25519_key.pem (renamed from app/src/test/resources/private_ed25519_key.pem) | 0 |
3 files changed, 19 insertions, 2 deletions
diff --git a/app/src/test/java/se/leap/bitmaskclient/base/utils/PrivateKeyHelperTest.java b/app/src/test/java/se/leap/bitmaskclient/base/utils/PrivateKeyHelperTest.java index 5ad9d2e7..5b1d4554 100644 --- a/app/src/test/java/se/leap/bitmaskclient/base/utils/PrivateKeyHelperTest.java +++ b/app/src/test/java/se/leap/bitmaskclient/base/utils/PrivateKeyHelperTest.java @@ -12,13 +12,14 @@ import org.robolectric.annotation.Config; import java.io.IOException; import java.security.PrivateKey; +import java.security.interfaces.ECPrivateKey; import java.security.interfaces.EdECPrivateKey; import java.security.interfaces.RSAPrivateKey; import se.leap.bitmaskclient.testutils.TestSetupHelper; @RunWith(RobolectricTestRunner.class) -@Config(sdk = {Build.VERSION_CODES.P, Build.VERSION_CODES.O}) +@Config(sdk = {Build.VERSION_CODES.UPSIDE_DOWN_CAKE, Build.VERSION_CODES.P, Build.VERSION_CODES.O, Build.VERSION_CODES.N}) public class PrivateKeyHelperTest { @Test @@ -31,9 +32,17 @@ public class PrivateKeyHelperTest { @Test public void parsePrivateKeyFromString_testEd25519() throws IOException { - String ed25519_key = TestSetupHelper.getInputAsString(getClass().getClassLoader().getResourceAsStream("private_ed25519_key.pem")); + String ed25519_key = TestSetupHelper.getInputAsString(getClass().getClassLoader().getResourceAsStream("private_PKCS8_encoded_ed25519_key.pem")); PrivateKey pk = PrivateKeyHelper.parsePrivateKeyFromString(ed25519_key); assertNotNull(pk); assertTrue(pk instanceof EdECPrivateKey); } + + @Test + public void parsePrivateKeyFromString_testEcDSA() throws IOException { + String ed_dsa_key = TestSetupHelper.getInputAsString(getClass().getClassLoader().getResourceAsStream("private_PKCS8_encoded_ecdsa_key.pem")); + PrivateKey pk = PrivateKeyHelper.parsePrivateKeyFromString(ed_dsa_key); + assertNotNull(pk); + assertTrue(pk instanceof ECPrivateKey); + } }
\ No newline at end of file diff --git a/app/src/test/resources/private_PKCS8_encoded_ecdsa_key.pem b/app/src/test/resources/private_PKCS8_encoded_ecdsa_key.pem new file mode 100644 index 00000000..568783a1 --- /dev/null +++ b/app/src/test/resources/private_PKCS8_encoded_ecdsa_key.pem @@ -0,0 +1,8 @@ +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAQHgofCij0Tdc8aO5 +lNnxhjXiU2Z+84/vz0RpCdoZt0H8ytLb5AOUOaPMu5gNGC2SssTkJhGc/dDX7jdw +8/GEQQ2hgYkDgYYABABnVEIseHS5WQ/8J3x//uTaU9G5d3HR/dOo+RI7PLizxj8p +pLKptfPDLTWHMujqE5yPe4GYnU2S1KMws853VBTucwF4AVz1sxYMEpFcYUys+Xr1 +JyTDsxA/o4yeV4ZcuqaofNFYUL6YRFjXg7UAlUPp0s6ongQzJ0/10wGDbUI7vR0I +Lg== +-----END PRIVATE KEY-----
\ No newline at end of file diff --git a/app/src/test/resources/private_ed25519_key.pem b/app/src/test/resources/private_PKCS8_encoded_ed25519_key.pem index eac4d4db..eac4d4db 100644 --- a/app/src/test/resources/private_ed25519_key.pem +++ b/app/src/test/resources/private_PKCS8_encoded_ed25519_key.pem |
