aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorPetr Svenda2021-01-11 11:32:55 +0100
committerPetr Svenda2021-01-11 11:32:55 +0100
commit3fc8165a5da24ded392af8c90acbd89d1dd7ba8a (patch)
treeb4a97bd45ba2daca8e50c0ff37cc3bb2f2cbf30f
parentbf4877f4a41eaedb1fed825ea71b0eb56612db2a (diff)
downloadsec-certs-3fc8165a5da24ded392af8c90acbd89d1dd7ba8a.tar.gz
sec-certs-3fc8165a5da24ded392af8c90acbd89d1dd7ba8a.tar.zst
sec-certs-3fc8165a5da24ded392af8c90acbd89d1dd7ba8a.zip
add rules to extract javacard api constants
-rw-r--r--sec_certs/cert_rules.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/sec_certs/cert_rules.py b/sec_certs/cert_rules.py
index 99d58443..1fd6050b 100644
--- a/sec_certs/cert_rules.py
+++ b/sec_certs/cert_rules.py
@@ -140,6 +140,45 @@ rules_javacard = [
r'(?:Java Card|JavaCard) \(version [2-3]\.[0-9](?:\.[0-9]|)\)',
r'(?:Global Platform|GlobalPlatform) [2-3]\.[0-9]\.[0-9]',
r'(?:Global Platform|GlobalPlatform) \(version [2-3]\.[0-9]\.[0-9]\)',
+ ]
+
+rules_javacard_api_consts = [
+ # javacard API constants
+ r'ALG_(?:PSEUDO_RANDOM|SECURE_RANDOM|TRNG|ALG_PRESEEDED_DRBG|FAST|KEYGENERATION)',
+ r'ALG_DES_[A-Z_0-9]+', # may have false positives like XCP_CPB_ALG_EC_BPOOLCRV
+ r'ALG_RSA_[A-Z_0-9]+',
+ r'ALG_DSA_[A-Z_0-9]+',
+ r'ALG_ECDSA_[A-Z_0-9]+',
+ r'ALG_AES_[A-Z_0-9]+',
+ r'ALG_HMAC_[A-Z_0-9]+',
+ r'ALG_KOREAN_[A-Z_0-9]+',
+ r'ALG_EC_[A-Z_0-9]+',
+ r'ALG_SHA_[A-Z_0-9]+',
+ r'ALG_SHA3_[A-Z_0-9]+',
+ r'ALG_MD[A-Z_0-9]+',
+ r'ALG_RIPEMD[A-Z_0-9]+',
+ r'ALG_ISO3309_[A-Z_0-9]+',
+ r'ALG_XDH',
+ r'ALG_SM2',
+ r'ALG_SM3',
+ r'ALG_NULL',
+ r'ALG_TRNG',
+ r'ALG_NULL',
+ r'SIG_CIPHER_[A-Z_0-9]+',
+ r'CIPHER_[A-Z_0-9]+',
+ r'PAD_[A-Z_0-9]+',
+ r'TYPE_[A-Z_0-9]+',
+ r'LENGTH_[A-Z_0-9]+',
+ r'OWNER_PIN[A-Z_0-9]*',
+ # named curves
+ r'BRAINPOOLP[A-Z_0-9]+(?:R|T)1',
+ r'ED25519',
+ r'ED448',
+ r'FRP256V1',
+ r'SECP[0-9]*R1',
+ r'SM2',
+ r'X25519',
+ r'X448',
]
rules_crypto_algs = [
@@ -392,6 +431,7 @@ common_rules['rules_security_level'] = rules_security_level
common_rules['rules_security_assurance_components'] = rules_security_assurance_components
common_rules['rules_security_functional_components'] = rules_security_functional_components
common_rules['rules_javacard'] = rules_javacard
+common_rules['rules_javacard_api_consts'] = rules_javacard_api_consts
common_rules['rules_crypto_algs'] = rules_crypto_algs
common_rules['rules_block_cipher_modes'] = rules_block_cipher_modes
common_rules['rules_ecc_curves'] = rules_ecc_curves