diff options
| author | Petr Svenda | 2021-01-11 17:47:55 +0100 |
|---|---|---|
| committer | GitHub | 2021-01-11 17:47:55 +0100 |
| commit | cd58af690473451d5cbe5ae206c083e7905685c4 (patch) | |
| tree | d87de0c4dc70895b4aa76503d290b42948c6a573 | |
| parent | 052b230c5084fdcef516b0bf4f9c2c994c48702f (diff) | |
| parent | ddc875e5c43c2ba15d5149ed55fdf3f55ff20df1 (diff) | |
| download | sec-certs-cd58af690473451d5cbe5ae206c083e7905685c4.tar.gz sec-certs-cd58af690473451d5cbe5ae206c083e7905685c4.tar.zst sec-certs-cd58af690473451d5cbe5ae206c083e7905685c4.zip | |
Merge pull request #24 from petrs/petrs/add_jcconstants
Petrs/add jcconstants
| -rwxr-xr-x | process_certificates.py | 13 | ||||
| -rw-r--r-- | sec_certs/cert_rules.py | 40 |
2 files changed, 46 insertions, 7 deletions
diff --git a/process_certificates.py b/process_certificates.py index 96d9591a..2b63d70a 100755 --- a/process_certificates.py +++ b/process_certificates.py @@ -114,19 +114,18 @@ def main(directory, do_complete_extraction: bool, do_download_meta: bool, do_ext if do_extraction_certs: all_keywords = extract_certificates_keywords_parallel(walk_dir, fragments_dir, 'certificate', threads) - #all_keywords = extract_certificates_keywords(walk_dir, fragments_dir, 'certificate') - all_front = extract_certificates_frontpage(walk_dir) - all_pdf_meta = extract_certificates_pdfmeta_parallel(walk_dir, 'certificate', threads) - #all_pdf_meta = extract_certificates_pdfmeta(walk_dir, 'certificate', results_dir) + with open(results_dir / "certificate_data_keywords_all.json", "w") as write_file: + json.dump(all_keywords, write_file, indent=4, sort_keys=True) - # save joined results + all_front = extract_certificates_frontpage(walk_dir) with open(results_dir / "certificate_data_frontpage_all.json", "w") as write_file: json.dump(all_front, write_file, indent=4, sort_keys=True) - with open(results_dir / "certificate_data_keywords_all.json", "w") as write_file: - json.dump(all_keywords, write_file, indent=4, sort_keys=True) + + all_pdf_meta = extract_certificates_pdfmeta_parallel(walk_dir, 'certificate', threads) with open(results_dir / "certificate_data_pdfmeta_all.json", "w") as write_file: json.dump(all_pdf_meta, write_file, indent=4, sort_keys=True) + # if do_extraction_pp: # all_pp_csv = extract_protectionprofiles_csv(web_dir) # all_pp_front = extract_protectionprofiles_frontpage(pp_dir) 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 |
