diff --git a/java/ql/lib/experimental/quantum/JCA.qll b/java/ql/lib/experimental/quantum/JCA.qll index feac5aaf0ea..b95af21b0b8 100644 --- a/java/ql/lib/experimental/quantum/JCA.qll +++ b/java/ql/lib/experimental/quantum/JCA.qll @@ -27,9 +27,10 @@ module JCAModel { predicate cipher_names(string algo) { algo.toUpperCase() .matches([ - "AES", "AESWrap", "AESWrapPad", "ARCFOUR", "Blowfish", "ChaCha20", "ChaCha20-Poly1305", - "DES", "DESede", "DESedeWrap", "ECIES", "PBEWith%", "RC2", "RC4", "RC5", "RSA", - "Skipjack", "Idea" + "AES", "AESWrap", "AESWrapPad", "ARCFOUR", "ARIA", "Blowfish", "Camellia", + "ChaCha20", "ChaCha20-Poly1305", "DES", "DESede", "DESedeWrap", "ECIES", + "PBEWith%", "RC2", "RC4", "RC5", "RSA", "Salsa20", "SEED", "Skipjack", "Idea", + "Twofish" ].toUpperCase()) } @@ -189,6 +190,8 @@ module JCAModel { type = KeyOpAlg::PCBC() and name = "PCBC" or type = KeyOpAlg::KWP() and name = "KWP" + or + type = KeyOpAlg::LRW() and name = "LRW" } bindingset[name] @@ -197,13 +200,31 @@ module JCAModel { upper.matches("AES%") and type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::AES()) or - // NOTE: there is DES and DESede - upper.matches("DES%") and + // NOTE: DESede (TripleDES) must be matched before DES% to avoid misclassification + upper.matches("DESEDE%") and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::TRIPLE_DES()) + or + not upper.matches("DESEDE%") and upper.matches("DES%") and type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::DES()) or upper = "TRIPLEDES" and type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::TRIPLE_DES()) or + upper = "ARIA" and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::ARIA()) + or + upper = "CAMELLIA" and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::CAMELLIA()) + or + upper = "TWOFISH" and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::TWOFISH()) + or + upper = "SEED" and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::SEED()) + or + upper = "SALSA20" and + type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::SALSA20()) + or upper = "IDEA" and type = KeyOpAlg::TSymmetricCipher(KeyOpAlg::IDEA()) or @@ -363,6 +384,10 @@ module JCAModel { type instanceof KeyOpAlg::PKCS7 and name = ["PKCS5Padding", "PKCS7Padding"] // TODO: misnomer in the JCA? or type instanceof KeyOpAlg::OAEP and name.matches("OAEP%") // TODO: handle OAEPWith% + or + type instanceof KeyOpAlg::PKCS1_V1_5 and name = "PKCS1Padding" + or + type instanceof KeyOpAlg::PSS and name = "PSS" } override KeyOpAlg::PaddingSchemeType getPaddingType() { diff --git a/java/ql/test/experimental/library-tests/quantum/jca/AdditionalSymmetricAlgorithms.java b/java/ql/test/experimental/library-tests/quantum/jca/AdditionalSymmetricAlgorithms.java new file mode 100644 index 00000000000..4e51f4d3f81 --- /dev/null +++ b/java/ql/test/experimental/library-tests/quantum/jca/AdditionalSymmetricAlgorithms.java @@ -0,0 +1,98 @@ +package com.example.crypto.algorithms; + +import java.security.*; +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.spec.IvParameterSpec; + +/** + * Demonstrates symmetric encryption using cipher algorithms beyond the + * standard JCA defaults, typically available through BouncyCastle. + * + * Algorithms covered: Twofish, ARIA, Camellia, Salsa20, SEED, Blowfish. + */ +public class AdditionalSymmetricAlgorithms { + + /** + * Twofish in CBC mode with PKCS5 padding. + */ + public byte[] twofishEncrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("Twofish"); + keyGen.init(256); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("Twofish/CBC/PKCS5Padding"); + byte[] iv = new byte[16]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } + + /** + * ARIA in CBC mode with PKCS5 padding. + */ + public byte[] ariaEncrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("ARIA"); + keyGen.init(256); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("ARIA/CBC/PKCS5Padding"); + byte[] iv = new byte[16]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } + + /** + * Camellia in CBC mode with no padding. + */ + public byte[] camelliaEncrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("Camellia"); + keyGen.init(256); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("Camellia/CBC/NoPadding"); + byte[] iv = new byte[16]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } + + /** + * Salsa20 stream cipher. + */ + public byte[] salsa20Encrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("Salsa20"); + keyGen.init(256); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("Salsa20"); + cipher.init(Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(plaintext); + } + + /** + * SEED in CBC mode with PKCS5 padding. + */ + public byte[] seedEncrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("SEED"); + keyGen.init(128); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("SEED/CBC/PKCS5Padding"); + byte[] iv = new byte[16]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } + + /** + * Blowfish in CBC mode with PKCS5 padding. + */ + public byte[] blowfishEncrypt(byte[] plaintext) throws Exception { + KeyGenerator keyGen = KeyGenerator.getInstance("Blowfish"); + keyGen.init(128); + SecretKey key = keyGen.generateKey(); + Cipher cipher = Cipher.getInstance("Blowfish/CBC/PKCS5Padding"); + byte[] iv = new byte[8]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } +} diff --git a/java/ql/test/experimental/library-tests/quantum/jca/EllipticCurve1.java b/java/ql/test/experimental/library-tests/quantum/jca/EllipticCurve1.java index 71481b7e7a9..d01c86dc35a 100644 --- a/java/ql/test/experimental/library-tests/quantum/jca/EllipticCurve1.java +++ b/java/ql/test/experimental/library-tests/quantum/jca/EllipticCurve1.java @@ -115,6 +115,41 @@ public class EllipticCurve1 { return kpg.generateKeyPair(); } + /** + * Generates an Ed448 key pair (for signatures). + */ + public KeyPair generateEd448KeyPair() throws Exception { + KeyPairGenerator kpg = KeyPairGenerator.getInstance("Ed448"); + return kpg.generateKeyPair(); + } + + /** + * Generates a key pair using the NIST P-256 alias for secp256r1. + */ + public KeyPair generateNISTP256KeyPair() throws Exception { + KeyPairGenerator kpg = KeyPairGenerator.getInstance("EC"); + kpg.initialize(new java.security.spec.ECGenParameterSpec("P-256")); + return kpg.generateKeyPair(); + } + + /** + * Generates a key pair using the NIST P-384 alias for secp384r1. + */ + public KeyPair generateNISTP384KeyPair() throws Exception { + KeyPairGenerator kpg = KeyPairGenerator.getInstance("EC"); + kpg.initialize(new java.security.spec.ECGenParameterSpec("P-384")); + return kpg.generateKeyPair(); + } + + /** + * Generates a key pair using the NIST P-521 alias for secp521r1. + */ + public KeyPair generateNISTP521KeyPair() throws Exception { + KeyPairGenerator kpg = KeyPairGenerator.getInstance("EC"); + kpg.initialize(new java.security.spec.ECGenParameterSpec("P-521")); + return kpg.generateKeyPair(); + } + /** * Generates a key pair for an "Other" elliptic curve type. * This serves as a fallback example (using secp256r1). diff --git a/java/ql/test/experimental/library-tests/quantum/jca/SymmetricModesTest.java b/java/ql/test/experimental/library-tests/quantum/jca/SymmetricModesTest.java index 18df2602a7d..8d6591398ee 100644 --- a/java/ql/test/experimental/library-tests/quantum/jca/SymmetricModesTest.java +++ b/java/ql/test/experimental/library-tests/quantum/jca/SymmetricModesTest.java @@ -128,4 +128,38 @@ public class SymmetricModesTest { kg.init(256, new SecureRandom()); return kg.generateKey(); } + + // --------------------------- + // DESede and DES Mode Variants + // --------------------------- + /** + * DESede (TripleDES) in ECB mode. + */ + public byte[] tripleDesEcbEncrypt(SecretKey key, byte[] plaintext) throws Exception { + Cipher cipher = Cipher.getInstance("DESede/ECB/NoPadding"); + cipher.init(Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(plaintext); + } + + /** + * DES in CFB mode. + */ + public byte[] desCfbEncrypt(SecretKey key, byte[] plaintext) throws Exception { + Cipher cipher = Cipher.getInstance("DES/CFB/NoPadding"); + byte[] iv = new byte[8]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } + + /** + * DES in OFB mode. + */ + public byte[] desOfbEncrypt(SecretKey key, byte[] plaintext) throws Exception { + Cipher cipher = Cipher.getInstance("DES/OFB/NoPadding"); + byte[] iv = new byte[8]; + new SecureRandom().nextBytes(iv); + cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv)); + return cipher.doFinal(plaintext); + } } diff --git a/java/ql/test/experimental/library-tests/quantum/node_edges.expected b/java/ql/test/experimental/library-tests/quantum/node_edges.expected index 905304ac771..6afaf9d8d87 100644 --- a/java/ql/test/experimental/library-tests/quantum/node_edges.expected +++ b/java/ql/test/experimental/library-tests/quantum/node_edges.expected @@ -1,3 +1,74 @@ +| jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:27:47:27:69 | Nonce | Source | jca/AdditionalSymmetricAlgorithms.java:26:38:26:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:28:31:28:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:27:47:27:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:28:31:28:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:20:34:20:49 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:41:47:41:69 | Nonce | Source | jca/AdditionalSymmetricAlgorithms.java:40:38:40:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:42:31:42:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:41:47:41:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:42:31:42:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:34:31:34:46 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:55:47:55:69 | Nonce | Source | jca/AdditionalSymmetricAlgorithms.java:54:38:54:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:56:31:56:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:55:47:55:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:56:31:56:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:48:35:48:50 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:68:31:68:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:68:31:68:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:62:34:62:49 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:81:47:81:69 | Nonce | Source | jca/AdditionalSymmetricAlgorithms.java:80:38:80:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:82:31:82:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:81:47:81:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:82:31:82:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:74:31:74:46 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | KeyGeneration | Algorithm | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | KeyGeneration | Output | jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | Mode | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | Padding | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | Key | Source | jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:95:47:95:69 | Nonce | Source | jca/AdditionalSymmetricAlgorithms.java:94:38:94:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | Algorithm | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | Input | jca/AdditionalSymmetricAlgorithms.java:96:31:96:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | Key | jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | Nonce | jca/AdditionalSymmetricAlgorithms.java:95:47:95:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | Output | jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:96:31:96:39 | Message | Source | jca/AdditionalSymmetricAlgorithms.java:88:35:88:50 | Parameter | | jca/AesWrapAndPBEWith.java:60:33:60:48 | KeyGeneration | Algorithm | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | | jca/AesWrapAndPBEWith.java:60:33:60:48 | KeyGeneration | Output | jca/AesWrapAndPBEWith.java:60:33:60:48 | Key | | jca/AesWrapAndPBEWith.java:63:31:63:46 | KeyGeneration | Algorithm | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | @@ -71,7 +142,9 @@ | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | Key | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | KeyGeneration | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | KeyGeneration | Output | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | Key | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | Key | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | Key | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | KeyAgreementAlgorithm | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | KeyGeneration | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | KeyGeneration | Algorithm | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | KeyAgreementAlgorithm | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | KeyGeneration | Output | jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | Key | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:109:17:109:26 | Key | Source | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | Key | @@ -377,10 +450,14 @@ | jca/EllipticCurve1.java:67:16:67:36 | Key | Algorithm | jca/EllipticCurve1.java:66:66:66:82 | EllipticCurve | | jca/EllipticCurve1.java:67:16:67:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:66:66:66:82 | EllipticCurve | | jca/EllipticCurve1.java:67:16:67:36 | KeyGeneration | Output | jca/EllipticCurve1.java:67:16:67:36 | Key | +| jca/EllipticCurve1.java:76:16:76:36 | Key | Algorithm | jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | | jca/EllipticCurve1.java:76:16:76:36 | Key | Algorithm | jca/EllipticCurve1.java:74:61:74:68 | KeyAgreementAlgorithm | +| jca/EllipticCurve1.java:76:16:76:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | | jca/EllipticCurve1.java:76:16:76:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:74:61:74:68 | KeyAgreementAlgorithm | | jca/EllipticCurve1.java:76:16:76:36 | KeyGeneration | Output | jca/EllipticCurve1.java:76:16:76:36 | Key | +| jca/EllipticCurve1.java:84:16:84:36 | Key | Algorithm | jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | | jca/EllipticCurve1.java:84:16:84:36 | Key | Algorithm | jca/EllipticCurve1.java:83:61:83:66 | KeyAgreementAlgorithm | +| jca/EllipticCurve1.java:84:16:84:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | | jca/EllipticCurve1.java:84:16:84:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:83:61:83:66 | KeyAgreementAlgorithm | | jca/EllipticCurve1.java:84:16:84:36 | KeyGeneration | Output | jca/EllipticCurve1.java:84:16:84:36 | Key | | jca/EllipticCurve1.java:95:16:95:36 | Key | Algorithm | jca/EllipticCurve1.java:94:66:94:76 | EllipticCurve | @@ -391,9 +468,27 @@ | jca/EllipticCurve1.java:106:16:106:36 | KeyGeneration | Output | jca/EllipticCurve1.java:106:16:106:36 | Key | | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | Mode | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | Padding | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:115:16:115:36 | Key | Algorithm | jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | | jca/EllipticCurve1.java:115:16:115:36 | Key | Algorithm | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:115:16:115:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | | jca/EllipticCurve1.java:115:16:115:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | | jca/EllipticCurve1.java:115:16:115:36 | KeyGeneration | Output | jca/EllipticCurve1.java:115:16:115:36 | Key | +| jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | Mode | jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | Padding | jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:123:16:123:36 | Key | Algorithm | jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | +| jca/EllipticCurve1.java:123:16:123:36 | Key | Algorithm | jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:123:16:123:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | +| jca/EllipticCurve1.java:123:16:123:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:123:16:123:36 | KeyGeneration | Output | jca/EllipticCurve1.java:123:16:123:36 | Key | +| jca/EllipticCurve1.java:132:16:132:36 | Key | Algorithm | jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | +| jca/EllipticCurve1.java:132:16:132:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | +| jca/EllipticCurve1.java:132:16:132:36 | KeyGeneration | Output | jca/EllipticCurve1.java:132:16:132:36 | Key | +| jca/EllipticCurve1.java:141:16:141:36 | Key | Algorithm | jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | +| jca/EllipticCurve1.java:141:16:141:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | +| jca/EllipticCurve1.java:141:16:141:36 | KeyGeneration | Output | jca/EllipticCurve1.java:141:16:141:36 | Key | +| jca/EllipticCurve1.java:150:16:150:36 | Key | Algorithm | jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | +| jca/EllipticCurve1.java:150:16:150:36 | KeyGeneration | Algorithm | jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | +| jca/EllipticCurve1.java:150:16:150:36 | KeyGeneration | Output | jca/EllipticCurve1.java:150:16:150:36 | Key | | jca/EllipticCurve2.java:47:16:47:36 | Key | Algorithm | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | | jca/EllipticCurve2.java:47:16:47:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | | jca/EllipticCurve2.java:47:16:47:36 | KeyGeneration | Output | jca/EllipticCurve2.java:47:16:47:36 | Key | @@ -403,12 +498,16 @@ | jca/EllipticCurve2.java:65:16:65:36 | Key | Algorithm | jca/EllipticCurve2.java:64:47:64:63 | EllipticCurve | | jca/EllipticCurve2.java:65:16:65:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:64:47:64:63 | EllipticCurve | | jca/EllipticCurve2.java:65:16:65:36 | KeyGeneration | Output | jca/EllipticCurve2.java:65:16:65:36 | Key | +| jca/EllipticCurve2.java:73:16:73:36 | Key | Algorithm | jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | | jca/EllipticCurve2.java:73:16:73:36 | Key | Algorithm | jca/EllipticCurve2.java:72:61:72:68 | KeyAgreementAlgorithm | +| jca/EllipticCurve2.java:73:16:73:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | | jca/EllipticCurve2.java:73:16:73:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:72:61:72:68 | KeyAgreementAlgorithm | | jca/EllipticCurve2.java:73:16:73:36 | KeyGeneration | Output | jca/EllipticCurve2.java:73:16:73:36 | Key | | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | Mode | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | Padding | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | +| jca/EllipticCurve2.java:81:16:81:36 | Key | Algorithm | jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | | jca/EllipticCurve2.java:81:16:81:36 | Key | Algorithm | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | +| jca/EllipticCurve2.java:81:16:81:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | | jca/EllipticCurve2.java:81:16:81:36 | KeyGeneration | Algorithm | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | | jca/EllipticCurve2.java:81:16:81:36 | KeyGeneration | Output | jca/EllipticCurve2.java:81:16:81:36 | Key | | jca/EllipticCurve2.java:106:17:106:36 | Key | Source | jca/EllipticCurve2.java:47:16:47:36 | Key | @@ -830,7 +929,9 @@ | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | Key | Algorithm | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | KeyGeneration | Algorithm | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | KeyGeneration | Output | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | Key | +| jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | Key | Algorithm | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | Key | Algorithm | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | KeyAgreementAlgorithm | +| jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | KeyGeneration | Algorithm | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | KeyGeneration | Algorithm | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | KeyAgreementAlgorithm | | jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | KeyGeneration | Output | jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | Key | | jca/KeyAgreementHybridCryptosystem.java:68:17:68:26 | Key | Source | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | Key | @@ -944,9 +1045,11 @@ | jca/KeyArtifact.java:66:32:66:51 | KeyGeneration | Output | jca/KeyArtifact.java:66:32:66:51 | Key | | jca/KeyArtifact.java:73:16:73:43 | Key | Algorithm | jca/KeyArtifact.java:78:31:78:54 | Constant | | jca/KeyArtifact.java:73:16:73:43 | Key | Algorithm | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | +| jca/KeyArtifact.java:73:16:73:43 | Key | Algorithm | jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | | jca/KeyArtifact.java:73:16:73:43 | Key | Algorithm | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | | jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | Algorithm | jca/KeyArtifact.java:78:31:78:54 | Constant | | jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | Algorithm | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | +| jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | Algorithm | jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | | jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | Algorithm | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | | jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | Output | jca/KeyArtifact.java:73:16:73:43 | Key | | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | Mode | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | @@ -1160,7 +1263,9 @@ | jca/KeyExchange.java:139:16:139:34 | KeyAgreementOperation | PeerKey | jca/KeyExchange.java:138:20:138:28 | Key | | jca/KeyExchange.java:139:16:139:34 | KeyAgreementOperation | ServerKey | jca/KeyExchange.java:137:17:137:26 | Key | | jca/KeyExchange.java:139:16:139:34 | SharedSecret | Source | jca/KeyExchange.java:139:16:139:34 | SharedSecret | +| jca/KeyExchange.java:159:16:159:36 | Key | Algorithm | jca/KeyExchange.java:156:61:156:68 | EllipticCurve | | jca/KeyExchange.java:159:16:159:36 | Key | Algorithm | jca/KeyExchange.java:156:61:156:68 | KeyAgreementAlgorithm | +| jca/KeyExchange.java:159:16:159:36 | KeyGeneration | Algorithm | jca/KeyExchange.java:156:61:156:68 | EllipticCurve | | jca/KeyExchange.java:159:16:159:36 | KeyGeneration | Algorithm | jca/KeyExchange.java:156:61:156:68 | KeyAgreementAlgorithm | | jca/KeyExchange.java:159:16:159:36 | KeyGeneration | Output | jca/KeyExchange.java:159:16:159:36 | Key | | jca/KeyExchange.java:174:17:174:26 | Key | Source | jca/KeyExchange.java:159:16:159:36 | Key | @@ -1170,7 +1275,9 @@ | jca/KeyExchange.java:176:16:176:34 | KeyAgreementOperation | PeerKey | jca/KeyExchange.java:175:20:175:28 | Key | | jca/KeyExchange.java:176:16:176:34 | KeyAgreementOperation | ServerKey | jca/KeyExchange.java:174:17:174:26 | Key | | jca/KeyExchange.java:176:16:176:34 | SharedSecret | Source | jca/KeyExchange.java:176:16:176:34 | SharedSecret | +| jca/KeyExchange.java:196:16:196:36 | Key | Algorithm | jca/KeyExchange.java:193:61:193:66 | EllipticCurve | | jca/KeyExchange.java:196:16:196:36 | Key | Algorithm | jca/KeyExchange.java:193:61:193:66 | KeyAgreementAlgorithm | +| jca/KeyExchange.java:196:16:196:36 | KeyGeneration | Algorithm | jca/KeyExchange.java:193:61:193:66 | EllipticCurve | | jca/KeyExchange.java:196:16:196:36 | KeyGeneration | Algorithm | jca/KeyExchange.java:193:61:193:66 | KeyAgreementAlgorithm | | jca/KeyExchange.java:196:16:196:36 | KeyGeneration | Output | jca/KeyExchange.java:196:16:196:36 | Key | | jca/KeyExchange.java:211:17:211:26 | Key | Source | jca/KeyExchange.java:196:16:196:36 | Key | @@ -1475,7 +1582,9 @@ | jca/SignatureOperation.java:118:33:118:40 | SignatureInput | Source | jca/SignatureOperation.java:236:27:236:30 | Constant | | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | Mode | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | Padding | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | +| jca/SignatureOperation.java:133:16:133:36 | Key | Algorithm | jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | | jca/SignatureOperation.java:133:16:133:36 | Key | Algorithm | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | +| jca/SignatureOperation.java:133:16:133:36 | KeyGeneration | Algorithm | jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | | jca/SignatureOperation.java:133:16:133:36 | KeyGeneration | Algorithm | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | | jca/SignatureOperation.java:133:16:133:36 | KeyGeneration | Output | jca/SignatureOperation.java:133:16:133:36 | Key | | jca/SignatureOperation.java:142:53:142:61 | KeyOperationAlgorithm | Mode | jca/SignatureOperation.java:142:53:142:61 | KeyOperationAlgorithm | @@ -1728,6 +1837,35 @@ | jca/SymmetricModesTest.java:110:44:110:52 | Message | Source | jca/SymmetricModesTest.java:104:60:104:75 | Parameter | | jca/SymmetricModesTest.java:129:16:129:31 | KeyGeneration | Algorithm | jca/SymmetricModesTest.java:127:52:127:56 | KeyOperationAlgorithm | | jca/SymmetricModesTest.java:129:16:129:31 | KeyGeneration | Output | jca/SymmetricModesTest.java:129:16:129:31 | Key | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | Mode | jca/SymmetricModesTest.java:139:44:139:65 | ModeOfOperation | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | Padding | jca/SymmetricModesTest.java:139:44:139:65 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:140:42:140:44 | Key | Source | jca/SymmetricModesTest.java:138:39:138:51 | Parameter | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | Algorithm | jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | Input | jca/SymmetricModesTest.java:141:31:141:39 | Message | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | Key | jca/SymmetricModesTest.java:140:42:140:44 | Key | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | Nonce | jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | Output | jca/SymmetricModesTest.java:141:16:141:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:141:31:141:39 | Message | Source | jca/SymmetricModesTest.java:138:54:138:69 | Parameter | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | Mode | jca/SymmetricModesTest.java:148:44:148:62 | ModeOfOperation | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | Padding | jca/SymmetricModesTest.java:148:44:148:62 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:151:42:151:44 | Key | Source | jca/SymmetricModesTest.java:147:33:147:45 | Parameter | +| jca/SymmetricModesTest.java:151:47:151:69 | Nonce | Source | jca/SymmetricModesTest.java:150:38:150:39 | RandomNumberGeneration | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | Algorithm | jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | Input | jca/SymmetricModesTest.java:152:31:152:39 | Message | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | Key | jca/SymmetricModesTest.java:151:42:151:44 | Key | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | Nonce | jca/SymmetricModesTest.java:151:47:151:69 | Nonce | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | Output | jca/SymmetricModesTest.java:152:16:152:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:152:31:152:39 | Message | Source | jca/SymmetricModesTest.java:147:48:147:63 | Parameter | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | Mode | jca/SymmetricModesTest.java:159:44:159:62 | ModeOfOperation | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | Padding | jca/SymmetricModesTest.java:159:44:159:62 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:162:42:162:44 | Key | Source | jca/SymmetricModesTest.java:158:33:158:45 | Parameter | +| jca/SymmetricModesTest.java:162:47:162:69 | Nonce | Source | jca/SymmetricModesTest.java:161:38:161:39 | RandomNumberGeneration | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | Algorithm | jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | Input | jca/SymmetricModesTest.java:163:31:163:39 | Message | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | Key | jca/SymmetricModesTest.java:162:42:162:44 | Key | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | Nonce | jca/SymmetricModesTest.java:162:47:162:69 | Nonce | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | Output | jca/SymmetricModesTest.java:163:16:163:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:163:31:163:39 | Message | Source | jca/SymmetricModesTest.java:158:48:158:63 | Parameter | | jca/UniversalFlowTest.java:27:25:27:44 | KeyGeneration | Algorithm | jca/UniversalFlowTest.java:19:28:19:32 | KeyOperationAlgorithm | | jca/UniversalFlowTest.java:27:25:27:44 | KeyGeneration | Algorithm | jca/UniversalFlowTest.java:46:20:46:24 | KeyOperationAlgorithm | | jca/UniversalFlowTest.java:27:25:27:44 | KeyGeneration | Output | jca/UniversalFlowTest.java:27:25:27:44 | Key | diff --git a/java/ql/test/experimental/library-tests/quantum/node_properties.expected b/java/ql/test/experimental/library-tests/quantum/node_properties.expected index 20c7276cc4f..f456b93cf99 100644 --- a/java/ql/test/experimental/library-tests/quantum/node_properties.expected +++ b/java/ql/test/experimental/library-tests/quantum/node_properties.expected @@ -1,3 +1,102 @@ +| jca/AdditionalSymmetricAlgorithms.java:20:34:20:49 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:20:34:20:49 | jca/AdditionalSymmetricAlgorithms.java:20:34:20:49 | +| jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | +| jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | Name | Twofish | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | +| jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | RawName | Twofish | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | +| jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | +| jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | Constant | Description | 256 | jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | +| jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | Name | Twofish | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | RawName | Twofish/CBC/PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | ModeOfOperation | Name | CBC | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | ModeOfOperation | RawName | CBC | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | PaddingAlgorithm | Name | PKCS7 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | PaddingAlgorithm | RawName | PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | +| jca/AdditionalSymmetricAlgorithms.java:26:38:26:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/AdditionalSymmetricAlgorithms.java:26:38:26:39 | jca/AdditionalSymmetricAlgorithms.java:26:38:26:39 | +| jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | +| jca/AdditionalSymmetricAlgorithms.java:34:31:34:46 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:34:31:34:46 | jca/AdditionalSymmetricAlgorithms.java:34:31:34:46 | +| jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | +| jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | Name | ARIA | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | +| jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | RawName | ARIA | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | +| jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | +| jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | Constant | Description | 256 | jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | +| jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | Name | ARIA | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | RawName | ARIA/CBC/PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | ModeOfOperation | Name | CBC | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | ModeOfOperation | RawName | CBC | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | PaddingAlgorithm | Name | PKCS7 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | PaddingAlgorithm | RawName | PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | +| jca/AdditionalSymmetricAlgorithms.java:40:38:40:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/AdditionalSymmetricAlgorithms.java:40:38:40:39 | jca/AdditionalSymmetricAlgorithms.java:40:38:40:39 | +| jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | +| jca/AdditionalSymmetricAlgorithms.java:48:35:48:50 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:48:35:48:50 | jca/AdditionalSymmetricAlgorithms.java:48:35:48:50 | +| jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | +| jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | Name | Camellia | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | +| jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | RawName | Camellia | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | +| jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | +| jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | Constant | Description | 256 | jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | +| jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | Name | Camellia | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | RawName | Camellia/CBC/NoPadding | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | ModeOfOperation | Name | CBC | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | ModeOfOperation | RawName | CBC | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | PaddingAlgorithm | Name | UnknownPadding | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | PaddingAlgorithm | RawName | NoPadding | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | +| jca/AdditionalSymmetricAlgorithms.java:54:38:54:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/AdditionalSymmetricAlgorithms.java:54:38:54:39 | jca/AdditionalSymmetricAlgorithms.java:54:38:54:39 | +| jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | +| jca/AdditionalSymmetricAlgorithms.java:62:34:62:49 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:62:34:62:49 | jca/AdditionalSymmetricAlgorithms.java:62:34:62:49 | +| jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | +| jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | Name | Salsa20 | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | +| jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | RawName | Salsa20 | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | +| jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | Structure | Stream | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | +| jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | Constant | Description | 256 | jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | +| jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | Name | Salsa20 | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | RawName | Salsa20 | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | Structure | Stream | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | +| jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | +| jca/AdditionalSymmetricAlgorithms.java:74:31:74:46 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:74:31:74:46 | jca/AdditionalSymmetricAlgorithms.java:74:31:74:46 | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | KeySize | 128 | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | KeySize | Constant:128 | jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | Name | SEED | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | RawName | SEED | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | +| jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | Constant | Description | 128 | jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | +| jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | KeySize | 128 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | Name | SEED | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | RawName | SEED/CBC/PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | ModeOfOperation | Name | CBC | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | ModeOfOperation | RawName | CBC | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | PaddingAlgorithm | Name | PKCS7 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | PaddingAlgorithm | RawName | PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | +| jca/AdditionalSymmetricAlgorithms.java:80:38:80:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/AdditionalSymmetricAlgorithms.java:80:38:80:39 | jca/AdditionalSymmetricAlgorithms.java:80:38:80:39 | +| jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | +| jca/AdditionalSymmetricAlgorithms.java:88:35:88:50 | Parameter | Description | plaintext | jca/AdditionalSymmetricAlgorithms.java:88:35:88:50 | jca/AdditionalSymmetricAlgorithms.java:88:35:88:50 | +| jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | KeySize | Constant:128 | jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | +| jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | Name | Blowfish | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | +| jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | RawName | Blowfish | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | +| jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | +| jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | Constant | Description | 128 | jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | +| jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | Key | KeyType | Symmetric | jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | Name | Blowfish | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | RawName | Blowfish/CBC/PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | Structure | Block | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | ModeOfOperation | Name | CBC | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | ModeOfOperation | RawName | CBC | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | PaddingAlgorithm | Name | PKCS7 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | PaddingAlgorithm | RawName | PKCS5Padding | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | +| jca/AdditionalSymmetricAlgorithms.java:94:38:94:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/AdditionalSymmetricAlgorithms.java:94:38:94:39 | jca/AdditionalSymmetricAlgorithms.java:94:38:94:39 | +| jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | Key | KeyType | Unknown | jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | KeySize | Constant:128 | jca/AesWrapAndPBEWith.java:62:17:62:19 | jca/AesWrapAndPBEWith.java:62:17:62:19 | | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/AesWrapAndPBEWith.java:59:17:59:19 | jca/AesWrapAndPBEWith.java:59:17:59:19 | | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | Name | AES | jca/AesWrapAndPBEWith.java:58:52:58:56 | jca/AesWrapAndPBEWith.java:58:52:58:56 | @@ -88,6 +187,11 @@ | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | EllipticCurve | ParsedName | secp256r1 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | EllipticCurve | RawName | secp256r1 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | Key | KeyType | Asymmetric | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | CurveType | CURVE25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | KeySize | 255 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | Name | X25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | ParsedName | X25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | RawName | X25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | KeyAgreementAlgorithm | Name | X25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | KeyAgreementAlgorithm | RawName | X25519 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:95:24:95:26 | Constant | Description | 255 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:95:24:95:26 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:95:24:95:26 | @@ -132,7 +236,7 @@ | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | KeyOperationAlgorithm | RawName | RSA/ECB/PKCS1Padding | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | ModeOfOperation | Name | ECB | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | ModeOfOperation | RawName | ECB | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | -| jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | PaddingAlgorithm | Name | UnknownPadding | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | PaddingAlgorithm | Name | PKCS1_v1_5 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | PaddingAlgorithm | RawName | PKCS1Padding | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:190:47:190:68 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:191:42:191:58 | Key | KeyType | Unknown | jca/AsymmetricEncryptionMacHybridCryptosystem.java:191:42:191:58 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:191:42:191:58 | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:192:34:192:55 | WrapOperation | KeyOperationSubtype | Wrap | jca/AsymmetricEncryptionMacHybridCryptosystem.java:192:34:192:55 | jca/AsymmetricEncryptionMacHybridCryptosystem.java:192:34:192:55 | @@ -390,9 +494,19 @@ | jca/EllipticCurve1.java:66:66:66:82 | EllipticCurve | ParsedName | brainpoolP256r1 | jca/EllipticCurve1.java:66:66:66:82 | jca/EllipticCurve1.java:66:66:66:82 | | jca/EllipticCurve1.java:66:66:66:82 | EllipticCurve | RawName | brainpoolP256r1 | jca/EllipticCurve1.java:66:66:66:82 | jca/EllipticCurve1.java:66:66:66:82 | | jca/EllipticCurve1.java:67:16:67:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:67:16:67:36 | jca/EllipticCurve1.java:67:16:67:36 | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | CurveType | CURVE25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | KeySize | 255 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | Name | X25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | ParsedName | X25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | RawName | X25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | | jca/EllipticCurve1.java:74:61:74:68 | KeyAgreementAlgorithm | Name | X25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | | jca/EllipticCurve1.java:74:61:74:68 | KeyAgreementAlgorithm | RawName | X25519 | jca/EllipticCurve1.java:74:61:74:68 | jca/EllipticCurve1.java:74:61:74:68 | | jca/EllipticCurve1.java:76:16:76:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:76:16:76:36 | jca/EllipticCurve1.java:76:16:76:36 | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | CurveType | CURVE448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | KeySize | 448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | Name | X448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | ParsedName | X448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | RawName | X448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | | jca/EllipticCurve1.java:83:61:83:66 | KeyAgreementAlgorithm | Name | X448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | | jca/EllipticCurve1.java:83:61:83:66 | KeyAgreementAlgorithm | RawName | X448 | jca/EllipticCurve1.java:83:61:83:66 | jca/EllipticCurve1.java:83:61:83:66 | | jca/EllipticCurve1.java:84:16:84:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:84:16:84:36 | jca/EllipticCurve1.java:84:16:84:36 | @@ -404,9 +518,40 @@ | jca/EllipticCurve1.java:95:16:95:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:95:16:95:36 | jca/EllipticCurve1.java:95:16:95:36 | | jca/EllipticCurve1.java:105:66:105:76 | Constant | Description | "sm2p256v1" | jca/EllipticCurve1.java:105:66:105:76 | jca/EllipticCurve1.java:105:66:105:76 | | jca/EllipticCurve1.java:106:16:106:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:106:16:106:36 | jca/EllipticCurve1.java:106:16:106:36 | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | CurveType | CURVE25519 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | KeySize | 255 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | Name | Ed25519 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | ParsedName | Ed25519 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | RawName | Ed25519 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | Name | EDSA | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | RawName | Ed25519 | jca/EllipticCurve1.java:114:61:114:69 | jca/EllipticCurve1.java:114:61:114:69 | | jca/EllipticCurve1.java:115:16:115:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:115:16:115:36 | jca/EllipticCurve1.java:115:16:115:36 | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | CurveType | CURVE448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | KeySize | 448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | Name | Ed448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | ParsedName | Ed448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | RawName | Ed448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | Name | EDSA | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | RawName | Ed448 | jca/EllipticCurve1.java:122:61:122:67 | jca/EllipticCurve1.java:122:61:122:67 | +| jca/EllipticCurve1.java:123:16:123:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:123:16:123:36 | jca/EllipticCurve1.java:123:16:123:36 | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | CurveType | SEC | jca/EllipticCurve1.java:131:66:131:72 | jca/EllipticCurve1.java:131:66:131:72 | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | KeySize | 256 | jca/EllipticCurve1.java:131:66:131:72 | jca/EllipticCurve1.java:131:66:131:72 | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | Name | P-256 | jca/EllipticCurve1.java:131:66:131:72 | jca/EllipticCurve1.java:131:66:131:72 | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | ParsedName | P-256 | jca/EllipticCurve1.java:131:66:131:72 | jca/EllipticCurve1.java:131:66:131:72 | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | RawName | P-256 | jca/EllipticCurve1.java:131:66:131:72 | jca/EllipticCurve1.java:131:66:131:72 | +| jca/EllipticCurve1.java:132:16:132:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:132:16:132:36 | jca/EllipticCurve1.java:132:16:132:36 | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | CurveType | SEC | jca/EllipticCurve1.java:140:66:140:72 | jca/EllipticCurve1.java:140:66:140:72 | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | KeySize | 384 | jca/EllipticCurve1.java:140:66:140:72 | jca/EllipticCurve1.java:140:66:140:72 | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | Name | P-384 | jca/EllipticCurve1.java:140:66:140:72 | jca/EllipticCurve1.java:140:66:140:72 | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | ParsedName | P-384 | jca/EllipticCurve1.java:140:66:140:72 | jca/EllipticCurve1.java:140:66:140:72 | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | RawName | P-384 | jca/EllipticCurve1.java:140:66:140:72 | jca/EllipticCurve1.java:140:66:140:72 | +| jca/EllipticCurve1.java:141:16:141:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:141:16:141:36 | jca/EllipticCurve1.java:141:16:141:36 | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | CurveType | SEC | jca/EllipticCurve1.java:149:66:149:72 | jca/EllipticCurve1.java:149:66:149:72 | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | KeySize | 521 | jca/EllipticCurve1.java:149:66:149:72 | jca/EllipticCurve1.java:149:66:149:72 | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | Name | P-521 | jca/EllipticCurve1.java:149:66:149:72 | jca/EllipticCurve1.java:149:66:149:72 | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | ParsedName | P-521 | jca/EllipticCurve1.java:149:66:149:72 | jca/EllipticCurve1.java:149:66:149:72 | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | RawName | P-521 | jca/EllipticCurve1.java:149:66:149:72 | jca/EllipticCurve1.java:149:66:149:72 | +| jca/EllipticCurve1.java:150:16:150:36 | Key | KeyType | Asymmetric | jca/EllipticCurve1.java:150:16:150:36 | jca/EllipticCurve1.java:150:16:150:36 | | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | CurveType | SEC | jca/EllipticCurve2.java:46:47:46:57 | jca/EllipticCurve2.java:46:47:46:57 | | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | KeySize | 256 | jca/EllipticCurve2.java:46:47:46:57 | jca/EllipticCurve2.java:46:47:46:57 | | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | Name | secp256r1 | jca/EllipticCurve2.java:46:47:46:57 | jca/EllipticCurve2.java:46:47:46:57 | @@ -425,9 +570,19 @@ | jca/EllipticCurve2.java:64:47:64:63 | EllipticCurve | ParsedName | brainpoolP256r1 | jca/EllipticCurve2.java:64:47:64:63 | jca/EllipticCurve2.java:64:47:64:63 | | jca/EllipticCurve2.java:64:47:64:63 | EllipticCurve | RawName | brainpoolP256r1 | jca/EllipticCurve2.java:64:47:64:63 | jca/EllipticCurve2.java:64:47:64:63 | | jca/EllipticCurve2.java:65:16:65:36 | Key | KeyType | Asymmetric | jca/EllipticCurve2.java:65:16:65:36 | jca/EllipticCurve2.java:65:16:65:36 | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | CurveType | CURVE25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | KeySize | 255 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | Name | X25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | ParsedName | X25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | RawName | X25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | | jca/EllipticCurve2.java:72:61:72:68 | KeyAgreementAlgorithm | Name | X25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | | jca/EllipticCurve2.java:72:61:72:68 | KeyAgreementAlgorithm | RawName | X25519 | jca/EllipticCurve2.java:72:61:72:68 | jca/EllipticCurve2.java:72:61:72:68 | | jca/EllipticCurve2.java:73:16:73:36 | Key | KeyType | Asymmetric | jca/EllipticCurve2.java:73:16:73:36 | jca/EllipticCurve2.java:73:16:73:36 | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | CurveType | CURVE25519 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | KeySize | 255 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | Name | Ed25519 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | ParsedName | Ed25519 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | RawName | Ed25519 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | Name | EDSA | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | RawName | Ed25519 | jca/EllipticCurve2.java:80:61:80:69 | jca/EllipticCurve2.java:80:61:80:69 | | jca/EllipticCurve2.java:81:16:81:36 | Key | KeyType | Asymmetric | jca/EllipticCurve2.java:81:16:81:36 | jca/EllipticCurve2.java:81:16:81:36 | @@ -862,6 +1017,11 @@ | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | EllipticCurve | ParsedName | secp256r1 | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | EllipticCurve | RawName | secp256r1 | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | Key | KeyType | Asymmetric | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | CurveType | CURVE25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | KeySize | 255 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | Name | X25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | ParsedName | X25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | RawName | X25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | KeyAgreementAlgorithm | Name | X25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | KeyAgreementAlgorithm | RawName | X25519 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | | jca/KeyAgreementHybridCryptosystem.java:59:24:59:26 | Constant | Description | 255 | jca/KeyAgreementHybridCryptosystem.java:59:24:59:26 | jca/KeyAgreementHybridCryptosystem.java:59:24:59:26 | @@ -987,6 +1147,11 @@ | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | KeySize | Constant:2048 | jca/KeyArtifact.java:72:31:72:34 | jca/KeyArtifact.java:72:31:72:34 | | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | Name | RSA | jca/KeyArtifact.java:78:32:78:36 | jca/KeyArtifact.java:78:32:78:36 | | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | RawName | RSA | jca/KeyArtifact.java:78:32:78:36 | jca/KeyArtifact.java:78:32:78:36 | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | CurveType | CURVE25519 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | KeySize | 255 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | Name | Ed25519 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | ParsedName | Ed25519 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | RawName | Ed25519 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | Name | EDSA | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | RawName | Ed25519 | jca/KeyArtifact.java:78:45:78:53 | jca/KeyArtifact.java:78:45:78:53 | | jca/KeyDerivation1.java:78:39:78:53 | Parameter | Description | password | jca/KeyDerivation1.java:78:39:78:53 | jca/KeyDerivation1.java:78:39:78:53 | @@ -1237,6 +1402,11 @@ | jca/KeyExchange.java:136:52:136:57 | KeyAgreementAlgorithm | RawName | ECDH | jca/KeyExchange.java:136:52:136:57 | jca/KeyExchange.java:136:52:136:57 | | jca/KeyExchange.java:137:17:137:26 | Key | KeyType | Unknown | jca/KeyExchange.java:137:17:137:26 | jca/KeyExchange.java:137:17:137:26 | | jca/KeyExchange.java:138:20:138:28 | Key | KeyType | Unknown | jca/KeyExchange.java:138:20:138:28 | jca/KeyExchange.java:138:20:138:28 | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | CurveType | CURVE25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | KeySize | 255 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | Name | X25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | ParsedName | X25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | RawName | X25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | | jca/KeyExchange.java:156:61:156:68 | KeyAgreementAlgorithm | Name | X25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | | jca/KeyExchange.java:156:61:156:68 | KeyAgreementAlgorithm | RawName | X25519 | jca/KeyExchange.java:156:61:156:68 | jca/KeyExchange.java:156:61:156:68 | | jca/KeyExchange.java:158:24:158:26 | Constant | Description | 255 | jca/KeyExchange.java:158:24:158:26 | jca/KeyExchange.java:158:24:158:26 | @@ -1245,6 +1415,11 @@ | jca/KeyExchange.java:173:52:173:59 | KeyAgreementAlgorithm | RawName | X25519 | jca/KeyExchange.java:173:52:173:59 | jca/KeyExchange.java:173:52:173:59 | | jca/KeyExchange.java:174:17:174:26 | Key | KeyType | Unknown | jca/KeyExchange.java:174:17:174:26 | jca/KeyExchange.java:174:17:174:26 | | jca/KeyExchange.java:175:20:175:28 | Key | KeyType | Unknown | jca/KeyExchange.java:175:20:175:28 | jca/KeyExchange.java:175:20:175:28 | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | CurveType | CURVE448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | KeySize | 448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | Name | X448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | ParsedName | X448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | RawName | X448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | | jca/KeyExchange.java:193:61:193:66 | KeyAgreementAlgorithm | Name | X448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | | jca/KeyExchange.java:193:61:193:66 | KeyAgreementAlgorithm | RawName | X448 | jca/KeyExchange.java:193:61:193:66 | jca/KeyExchange.java:193:61:193:66 | | jca/KeyExchange.java:195:24:195:26 | Constant | Description | 448 | jca/KeyExchange.java:195:24:195:26 | jca/KeyExchange.java:195:24:195:26 | @@ -1505,6 +1680,11 @@ | jca/SignatureOperation.java:115:53:115:69 | KeyOperationAlgorithm | RawName | SHA256withECDSA | jca/SignatureOperation.java:115:53:115:69 | jca/SignatureOperation.java:115:53:115:69 | | jca/SignatureOperation.java:116:30:116:38 | Key | KeyType | Unknown | jca/SignatureOperation.java:116:30:116:38 | jca/SignatureOperation.java:116:30:116:38 | | jca/SignatureOperation.java:118:16:118:41 | VerifyOperation | KeyOperationSubtype | Verify | jca/SignatureOperation.java:118:16:118:41 | jca/SignatureOperation.java:118:16:118:41 | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | CurveType | CURVE25519 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | KeySize | 255 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | Name | Ed25519 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | ParsedName | Ed25519 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | RawName | Ed25519 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | Name | EDSA | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | RawName | Ed25519 | jca/SignatureOperation.java:132:61:132:69 | jca/SignatureOperation.java:132:61:132:69 | | jca/SignatureOperation.java:133:16:133:36 | Key | KeyType | Asymmetric | jca/SignatureOperation.java:133:16:133:36 | jca/SignatureOperation.java:133:16:133:36 | @@ -1625,8 +1805,8 @@ | jca/SymmetricAlgorithm.java:151:29:151:53 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/SymmetricAlgorithm.java:151:29:151:53 | jca/SymmetricAlgorithm.java:151:29:151:53 | | jca/SymmetricAlgorithm.java:167:42:167:54 | Parameter | Description | key | jca/SymmetricAlgorithm.java:167:42:167:54 | jca/SymmetricAlgorithm.java:167:42:167:54 | | jca/SymmetricAlgorithm.java:167:57:167:72 | Parameter | Description | plaintext | jca/SymmetricAlgorithm.java:167:57:167:72 | jca/SymmetricAlgorithm.java:167:57:167:72 | -| jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | KeySize | 56 | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | -| jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | Name | DES | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | +| jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | KeySize | 168 | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | +| jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | Name | TripleDES | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | | jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | RawName | DESede/CBC/PKCS5Padding | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | | jca/SymmetricAlgorithm.java:168:44:168:68 | KeyOperationAlgorithm | Structure | Block | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | | jca/SymmetricAlgorithm.java:168:44:168:68 | ModeOfOperation | Name | CBC | jca/SymmetricAlgorithm.java:168:44:168:68 | jca/SymmetricAlgorithm.java:168:44:168:68 | @@ -1742,6 +1922,44 @@ | jca/SymmetricModesTest.java:127:52:127:56 | KeyOperationAlgorithm | Structure | Block | jca/SymmetricModesTest.java:127:52:127:56 | jca/SymmetricModesTest.java:127:52:127:56 | | jca/SymmetricModesTest.java:128:17:128:19 | Constant | Description | 256 | jca/SymmetricModesTest.java:128:17:128:19 | jca/SymmetricModesTest.java:128:17:128:19 | | jca/SymmetricModesTest.java:129:16:129:31 | Key | KeyType | Symmetric | jca/SymmetricModesTest.java:129:16:129:31 | jca/SymmetricModesTest.java:129:16:129:31 | +| jca/SymmetricModesTest.java:138:39:138:51 | Parameter | Description | key | jca/SymmetricModesTest.java:138:39:138:51 | jca/SymmetricModesTest.java:138:39:138:51 | +| jca/SymmetricModesTest.java:138:54:138:69 | Parameter | Description | plaintext | jca/SymmetricModesTest.java:138:54:138:69 | jca/SymmetricModesTest.java:138:54:138:69 | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | KeySize | 168 | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | Name | TripleDES | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | RawName | DESede/ECB/NoPadding | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | Structure | Block | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | ModeOfOperation | Name | ECB | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | ModeOfOperation | RawName | ECB | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | PaddingAlgorithm | Name | UnknownPadding | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:139:44:139:65 | PaddingAlgorithm | RawName | NoPadding | jca/SymmetricModesTest.java:139:44:139:65 | jca/SymmetricModesTest.java:139:44:139:65 | +| jca/SymmetricModesTest.java:140:42:140:44 | Key | KeyType | Unknown | jca/SymmetricModesTest.java:140:42:140:44 | jca/SymmetricModesTest.java:140:42:140:44 | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/SymmetricModesTest.java:141:16:141:40 | jca/SymmetricModesTest.java:141:16:141:40 | +| jca/SymmetricModesTest.java:147:33:147:45 | Parameter | Description | key | jca/SymmetricModesTest.java:147:33:147:45 | jca/SymmetricModesTest.java:147:33:147:45 | +| jca/SymmetricModesTest.java:147:48:147:63 | Parameter | Description | plaintext | jca/SymmetricModesTest.java:147:48:147:63 | jca/SymmetricModesTest.java:147:48:147:63 | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | KeySize | 56 | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | Name | DES | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | RawName | DES/CFB/NoPadding | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | Structure | Block | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | ModeOfOperation | Name | CFB | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | ModeOfOperation | RawName | CFB | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | PaddingAlgorithm | Name | UnknownPadding | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:148:44:148:62 | PaddingAlgorithm | RawName | NoPadding | jca/SymmetricModesTest.java:148:44:148:62 | jca/SymmetricModesTest.java:148:44:148:62 | +| jca/SymmetricModesTest.java:150:38:150:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/SymmetricModesTest.java:150:38:150:39 | jca/SymmetricModesTest.java:150:38:150:39 | +| jca/SymmetricModesTest.java:151:42:151:44 | Key | KeyType | Unknown | jca/SymmetricModesTest.java:151:42:151:44 | jca/SymmetricModesTest.java:151:42:151:44 | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/SymmetricModesTest.java:152:16:152:40 | jca/SymmetricModesTest.java:152:16:152:40 | +| jca/SymmetricModesTest.java:158:33:158:45 | Parameter | Description | key | jca/SymmetricModesTest.java:158:33:158:45 | jca/SymmetricModesTest.java:158:33:158:45 | +| jca/SymmetricModesTest.java:158:48:158:63 | Parameter | Description | plaintext | jca/SymmetricModesTest.java:158:48:158:63 | jca/SymmetricModesTest.java:158:48:158:63 | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | KeySize | 56 | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | Name | DES | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | RawName | DES/OFB/NoPadding | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | Structure | Block | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | ModeOfOperation | Name | OFB | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | ModeOfOperation | RawName | OFB | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | PaddingAlgorithm | Name | UnknownPadding | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:159:44:159:62 | PaddingAlgorithm | RawName | NoPadding | jca/SymmetricModesTest.java:159:44:159:62 | jca/SymmetricModesTest.java:159:44:159:62 | +| jca/SymmetricModesTest.java:161:38:161:39 | RandomNumberGeneration | Description | java.security.SecureRandom | jca/SymmetricModesTest.java:161:38:161:39 | jca/SymmetricModesTest.java:161:38:161:39 | +| jca/SymmetricModesTest.java:162:42:162:44 | Key | KeyType | Unknown | jca/SymmetricModesTest.java:162:42:162:44 | jca/SymmetricModesTest.java:162:42:162:44 | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | KeyOperationSubtype | Encrypt | jca/SymmetricModesTest.java:163:16:163:40 | jca/SymmetricModesTest.java:163:16:163:40 | | jca/UniversalFlowTest.java:19:28:19:32 | KeyOperationAlgorithm | KeySize | Constant:256 | jca/UniversalFlowTest.java:26:21:26:23 | jca/UniversalFlowTest.java:26:21:26:23 | | jca/UniversalFlowTest.java:19:28:19:32 | KeyOperationAlgorithm | Name | AES | jca/UniversalFlowTest.java:19:28:19:32 | jca/UniversalFlowTest.java:19:28:19:32 | | jca/UniversalFlowTest.java:19:28:19:32 | KeyOperationAlgorithm | RawName | AES | jca/UniversalFlowTest.java:19:28:19:32 | jca/UniversalFlowTest.java:19:28:19:32 | diff --git a/java/ql/test/experimental/library-tests/quantum/nodes.expected b/java/ql/test/experimental/library-tests/quantum/nodes.expected index b9661aaf64f..30ef5332664 100644 --- a/java/ql/test/experimental/library-tests/quantum/nodes.expected +++ b/java/ql/test/experimental/library-tests/quantum/nodes.expected @@ -1,3 +1,83 @@ +| jca/AdditionalSymmetricAlgorithms.java:20:34:20:49 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:21:56:21:64 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:22:21:22:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:23:25:23:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:24:44:24:69 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:26:38:26:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:27:42:27:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:27:47:27:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:28:16:28:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:28:31:28:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:34:31:34:46 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:35:56:35:61 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:36:21:36:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:37:25:37:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:38:44:38:66 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:40:38:40:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:41:42:41:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:41:47:41:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:42:16:42:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:42:31:42:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:48:35:48:50 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:49:56:49:65 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:50:21:50:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:51:25:51:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:52:44:52:67 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:54:38:54:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:55:42:55:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:55:47:55:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:56:16:56:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:56:31:56:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:62:34:62:49 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:63:56:63:64 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:64:21:64:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:65:25:65:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:66:44:66:52 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:67:42:67:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:68:16:68:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:68:31:68:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:74:31:74:46 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:75:56:75:61 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:76:21:76:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:77:25:77:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:78:44:78:66 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:80:38:80:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:81:42:81:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:81:47:81:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:82:16:82:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:82:31:82:39 | Message | +| jca/AdditionalSymmetricAlgorithms.java:88:35:88:50 | Parameter | +| jca/AdditionalSymmetricAlgorithms.java:89:56:89:65 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:90:21:90:23 | Constant | +| jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:91:25:91:44 | KeyGeneration | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | KeyOperationAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | ModeOfOperation | +| jca/AdditionalSymmetricAlgorithms.java:92:44:92:70 | PaddingAlgorithm | +| jca/AdditionalSymmetricAlgorithms.java:94:38:94:39 | RandomNumberGeneration | +| jca/AdditionalSymmetricAlgorithms.java:95:42:95:44 | Key | +| jca/AdditionalSymmetricAlgorithms.java:95:47:95:69 | Nonce | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | EncryptOperation | +| jca/AdditionalSymmetricAlgorithms.java:96:16:96:40 | KeyOperationOutput | +| jca/AdditionalSymmetricAlgorithms.java:96:31:96:39 | Message | | jca/AesWrapAndPBEWith.java:58:52:58:56 | KeyOperationAlgorithm | | jca/AesWrapAndPBEWith.java:59:17:59:19 | Constant | | jca/AesWrapAndPBEWith.java:60:33:60:48 | Key | @@ -76,6 +156,7 @@ | jca/AsymmetricEncryptionMacHybridCryptosystem.java:86:47:86:57 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | Key | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:87:16:87:36 | KeyGeneration | +| jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | EllipticCurve | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:94:61:94:68 | KeyAgreementAlgorithm | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:95:24:95:26 | Constant | | jca/AsymmetricEncryptionMacHybridCryptosystem.java:96:16:96:36 | Key | @@ -340,9 +421,11 @@ | jca/EllipticCurve1.java:66:66:66:82 | EllipticCurve | | jca/EllipticCurve1.java:67:16:67:36 | Key | | jca/EllipticCurve1.java:67:16:67:36 | KeyGeneration | +| jca/EllipticCurve1.java:74:61:74:68 | EllipticCurve | | jca/EllipticCurve1.java:74:61:74:68 | KeyAgreementAlgorithm | | jca/EllipticCurve1.java:76:16:76:36 | Key | | jca/EllipticCurve1.java:76:16:76:36 | KeyGeneration | +| jca/EllipticCurve1.java:83:61:83:66 | EllipticCurve | | jca/EllipticCurve1.java:83:61:83:66 | KeyAgreementAlgorithm | | jca/EllipticCurve1.java:84:16:84:36 | Key | | jca/EllipticCurve1.java:84:16:84:36 | KeyGeneration | @@ -352,9 +435,23 @@ | jca/EllipticCurve1.java:105:66:105:76 | Constant | | jca/EllipticCurve1.java:106:16:106:36 | Key | | jca/EllipticCurve1.java:106:16:106:36 | KeyGeneration | +| jca/EllipticCurve1.java:114:61:114:69 | EllipticCurve | | jca/EllipticCurve1.java:114:61:114:69 | KeyOperationAlgorithm | | jca/EllipticCurve1.java:115:16:115:36 | Key | | jca/EllipticCurve1.java:115:16:115:36 | KeyGeneration | +| jca/EllipticCurve1.java:122:61:122:67 | EllipticCurve | +| jca/EllipticCurve1.java:122:61:122:67 | KeyOperationAlgorithm | +| jca/EllipticCurve1.java:123:16:123:36 | Key | +| jca/EllipticCurve1.java:123:16:123:36 | KeyGeneration | +| jca/EllipticCurve1.java:131:66:131:72 | EllipticCurve | +| jca/EllipticCurve1.java:132:16:132:36 | Key | +| jca/EllipticCurve1.java:132:16:132:36 | KeyGeneration | +| jca/EllipticCurve1.java:140:66:140:72 | EllipticCurve | +| jca/EllipticCurve1.java:141:16:141:36 | Key | +| jca/EllipticCurve1.java:141:16:141:36 | KeyGeneration | +| jca/EllipticCurve1.java:149:66:149:72 | EllipticCurve | +| jca/EllipticCurve1.java:150:16:150:36 | Key | +| jca/EllipticCurve1.java:150:16:150:36 | KeyGeneration | | jca/EllipticCurve2.java:46:47:46:57 | EllipticCurve | | jca/EllipticCurve2.java:47:16:47:36 | Key | | jca/EllipticCurve2.java:47:16:47:36 | KeyGeneration | @@ -364,9 +461,11 @@ | jca/EllipticCurve2.java:64:47:64:63 | EllipticCurve | | jca/EllipticCurve2.java:65:16:65:36 | Key | | jca/EllipticCurve2.java:65:16:65:36 | KeyGeneration | +| jca/EllipticCurve2.java:72:61:72:68 | EllipticCurve | | jca/EllipticCurve2.java:72:61:72:68 | KeyAgreementAlgorithm | | jca/EllipticCurve2.java:73:16:73:36 | Key | | jca/EllipticCurve2.java:73:16:73:36 | KeyGeneration | +| jca/EllipticCurve2.java:80:61:80:69 | EllipticCurve | | jca/EllipticCurve2.java:80:61:80:69 | KeyOperationAlgorithm | | jca/EllipticCurve2.java:81:16:81:36 | Key | | jca/EllipticCurve2.java:81:16:81:36 | KeyGeneration | @@ -726,6 +825,7 @@ | jca/KeyAgreementHybridCryptosystem.java:50:47:50:57 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | Key | | jca/KeyAgreementHybridCryptosystem.java:51:16:51:36 | KeyGeneration | +| jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | EllipticCurve | | jca/KeyAgreementHybridCryptosystem.java:58:61:58:68 | KeyAgreementAlgorithm | | jca/KeyAgreementHybridCryptosystem.java:59:24:59:26 | Constant | | jca/KeyAgreementHybridCryptosystem.java:60:16:60:36 | Key | @@ -838,6 +938,7 @@ | jca/KeyArtifact.java:73:16:73:43 | KeyGeneration | | jca/KeyArtifact.java:78:31:78:54 | Constant | | jca/KeyArtifact.java:78:32:78:36 | KeyOperationAlgorithm | +| jca/KeyArtifact.java:78:45:78:53 | EllipticCurve | | jca/KeyArtifact.java:78:45:78:53 | KeyOperationAlgorithm | | jca/KeyDerivation1.java:78:39:78:53 | Parameter | | jca/KeyDerivation1.java:80:42:80:63 | Message | @@ -1048,6 +1149,7 @@ | jca/KeyExchange.java:138:20:138:28 | Key | | jca/KeyExchange.java:139:16:139:34 | KeyAgreementOperation | | jca/KeyExchange.java:139:16:139:34 | SharedSecret | +| jca/KeyExchange.java:156:61:156:68 | EllipticCurve | | jca/KeyExchange.java:156:61:156:68 | KeyAgreementAlgorithm | | jca/KeyExchange.java:158:24:158:26 | Constant | | jca/KeyExchange.java:159:16:159:36 | Key | @@ -1057,6 +1159,7 @@ | jca/KeyExchange.java:175:20:175:28 | Key | | jca/KeyExchange.java:176:16:176:34 | KeyAgreementOperation | | jca/KeyExchange.java:176:16:176:34 | SharedSecret | +| jca/KeyExchange.java:193:61:193:66 | EllipticCurve | | jca/KeyExchange.java:193:61:193:66 | KeyAgreementAlgorithm | | jca/KeyExchange.java:195:24:195:26 | Constant | | jca/KeyExchange.java:196:16:196:36 | Key | @@ -1286,6 +1389,7 @@ | jca/SignatureOperation.java:117:26:117:29 | Message | | jca/SignatureOperation.java:118:16:118:41 | VerifyOperation | | jca/SignatureOperation.java:118:33:118:40 | SignatureInput | +| jca/SignatureOperation.java:132:61:132:69 | EllipticCurve | | jca/SignatureOperation.java:132:61:132:69 | KeyOperationAlgorithm | | jca/SignatureOperation.java:133:16:133:36 | Key | | jca/SignatureOperation.java:133:16:133:36 | KeyGeneration | @@ -1493,6 +1597,37 @@ | jca/SymmetricModesTest.java:128:17:128:19 | Constant | | jca/SymmetricModesTest.java:129:16:129:31 | Key | | jca/SymmetricModesTest.java:129:16:129:31 | KeyGeneration | +| jca/SymmetricModesTest.java:138:39:138:51 | Parameter | +| jca/SymmetricModesTest.java:138:54:138:69 | Parameter | +| jca/SymmetricModesTest.java:139:44:139:65 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:139:44:139:65 | ModeOfOperation | +| jca/SymmetricModesTest.java:139:44:139:65 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:140:42:140:44 | Key | +| jca/SymmetricModesTest.java:141:16:141:40 | EncryptOperation | +| jca/SymmetricModesTest.java:141:16:141:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:141:31:141:39 | Message | +| jca/SymmetricModesTest.java:147:33:147:45 | Parameter | +| jca/SymmetricModesTest.java:147:48:147:63 | Parameter | +| jca/SymmetricModesTest.java:148:44:148:62 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:148:44:148:62 | ModeOfOperation | +| jca/SymmetricModesTest.java:148:44:148:62 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:150:38:150:39 | RandomNumberGeneration | +| jca/SymmetricModesTest.java:151:42:151:44 | Key | +| jca/SymmetricModesTest.java:151:47:151:69 | Nonce | +| jca/SymmetricModesTest.java:152:16:152:40 | EncryptOperation | +| jca/SymmetricModesTest.java:152:16:152:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:152:31:152:39 | Message | +| jca/SymmetricModesTest.java:158:33:158:45 | Parameter | +| jca/SymmetricModesTest.java:158:48:158:63 | Parameter | +| jca/SymmetricModesTest.java:159:44:159:62 | KeyOperationAlgorithm | +| jca/SymmetricModesTest.java:159:44:159:62 | ModeOfOperation | +| jca/SymmetricModesTest.java:159:44:159:62 | PaddingAlgorithm | +| jca/SymmetricModesTest.java:161:38:161:39 | RandomNumberGeneration | +| jca/SymmetricModesTest.java:162:42:162:44 | Key | +| jca/SymmetricModesTest.java:162:47:162:69 | Nonce | +| jca/SymmetricModesTest.java:163:16:163:40 | EncryptOperation | +| jca/SymmetricModesTest.java:163:16:163:40 | KeyOperationOutput | +| jca/SymmetricModesTest.java:163:31:163:39 | Message | | jca/UniversalFlowTest.java:19:28:19:32 | KeyOperationAlgorithm | | jca/UniversalFlowTest.java:26:21:26:23 | Constant | | jca/UniversalFlowTest.java:27:25:27:44 | Key | diff --git a/shared/quantum/codeql/quantum/experimental/Standardization.qll b/shared/quantum/codeql/quantum/experimental/Standardization.qll index cc43fcec6e2..8f8bbe4eab2 100644 --- a/shared/quantum/codeql/quantum/experimental/Standardization.qll +++ b/shared/quantum/codeql/quantum/experimental/Standardization.qll @@ -40,6 +40,8 @@ module Types { SEED() or SM4() or SKIPJACK() or + TWOFISH() or + SALSA20() or OtherSymmetricCipherType() newtype TAsymmetricCipherType = @@ -121,6 +123,10 @@ module Types { or type = SKIPJACK() and name = "Skipjack" and s = Block() or + type = TWOFISH() and name = "Twofish" and s = Block() + or + type = SALSA20() and name = "Salsa20" and s = Stream() + or type = OtherSymmetricCipherType() and name = "UnknownSymmetricCipher" and s = OtherCipherStructureType() @@ -218,6 +224,7 @@ module Types { SIV() or // Misuse-resistant encryption, used in secure storage OCB() or // Efficient AEAD mode KWP() or + LRW() or // Insecure tweakable block cipher mode OFB() or PCBC() or OtherMode() @@ -242,6 +249,8 @@ module Types { or this = CFB() and result = "CFB" or + this = LRW() and result = "LRW" + or this = OFB() and result = "OFB" } } @@ -469,15 +478,21 @@ module Types { or curveName = "CURVE448" and keySize = 448 and curveFamily = CURVE448() or - // TODO: separate these into key agreement logic or sign/verify (ECDSA / ECDH) - // or - // curveName = "X25519" and keySize = 255 and curveFamily = CURVE25519() - // or - // curveName = "ED25519" and keySize = 255 and curveFamily = CURVE25519() - // or - // curveName = "ED448" and keySize = 448 and curveFamily = CURVE448() - // or - // curveName = "X448" and keySize = 448 and curveFamily = CURVE448() + curveName = "X25519" and keySize = 255 and curveFamily = CURVE25519() + or + curveName = "ED25519" and keySize = 255 and curveFamily = CURVE25519() + or + curveName = "ED448" and keySize = 448 and curveFamily = CURVE448() + or + curveName = "X448" and keySize = 448 and curveFamily = CURVE448() + or + // NIST P-curve aliases + curveName = "P-256" and keySize = 256 and curveFamily = SEC() + or + curveName = "P-384" and keySize = 384 and curveFamily = SEC() + or + curveName = "P-521" and keySize = 521 and curveFamily = SEC() + or curveName = "SM2" and keySize in [256, 512] and curveFamily = SM2() ) }