{"_type": "sec_certs.sample.fips.FIPSCertificate", "dgst": "cf7dd1665f80520a", "cert_id": 5556, "web_data": {"_type": "sec_certs.sample.fips.FIPSCertificate.WebData", "module_name": "RA8M1 Security Management Module", "validation_history": [{"_type": "sec_certs.sample.fips.FIPSCertificate.ValidationHistoryEntry", "date": "2026-10-19", "validation_type": "Initial", "lab": "ECSEC Laboratory Inc."}, {"_type": "sec_certs.sample.fips.FIPSCertificate.ValidationHistoryEntry", "date": "2026-10-27", "validation_type": "Update", "lab": "ECSEC Laboratory Inc."}], "vendor_url": "https://www.renesas.com", "vendor": "Renesas Electronics Corporation", "certificate_pdf_url": null, "module_type": "Hardware", "standard": "FIPS 140-3", "status": "active", "level": 2, "caveat": "No assurance of minimum security of SSPs (e.g., keys, bit strings) that are externally loaded, or of SSPs established with externally loaded SSPs; When installed, initialized, and configured as specified in Section 11.1 of the Security Policy", "exceptions": ["Roles, services, and authentication: Level 3", "Operational environment: N/A", "Non-invasive security: N/A", "Sensitive security parameter management: Level 3", "Life-cycle assurance: Level 3", "Mitigation of other attacks: N/A"], "embodiment": "SingleChip", "description": "RA8M1 Security Management Module is a hardware cryptographic module certified at FIPS 140-3 Security Level 2. RA8M1 is general-purpose microcontroller designed for industrial, IOT, and infrastructure applications, embedded with robust security features. This module is provided as a reference for developing FIPS 140-3-compliant modules using the RA8M1. By referring to the design of this module, it becomes easier to address FIPS requirements when developing cryptographic modules using the RA8M1 in customer environments.", "tested_conf": null, "hw_versions": null, "fw_versions": null, "sw_versions": null, "mentioned_certs": {}, "historical_reason": null, "date_sunset": "2031-10-18", "revoked_reason": null, "revoked_link": null}, "pdf_data": {"_type": "sec_certs.sample.fips.FIPSCertificate.PdfData", "keywords": {"fips_cert_id": {}, "fips_security_level": {"Level": {"Level 2": 3}}, "fips_certlike": {"Certlike": {"HMAC -256": 2, "HMAC -384": 2, "HMAC -512": 2, "SHA2-224": 4, "SHA2-256": 11, "SHA2-384": 4, "SHA2-512": 5, "AES-256": 3, "AES256": 1, "AES-128": 4, "AES- 128": 1, "AES- 256": 1}}, "vendor": {}, "eval_facility": {}, "symmetric_crypto": {"AES_competition": {"AES": {"AES-256": 3, "AES256": 1, "AES-128": 4, "AES": 39, "AES-": 28}, "CAST": {"CAST": 28}}, "constructions": {"MAC": {"HMAC": 21, "CMAC": 6, "CBC-MAC": 1}}}, "asymmetric_crypto": {"ECC": {"ECDSA": {"ECDSA": 47}}}, "pq_crypto": {}, "hash_function": {}, "crypto_scheme": {"MAC": {"MAC": 12}}, "crypto_protocol": {}, "randomness": {"PRNG": {"DRBG": 32}, "RNG": {"RNG": 1, "RBG": 2}}, "cipher_mode": {"CCM": {"CCM": 8}}, "ecc_curve": {"NIST": {"P-256": 14, "P-384": 10, "P-521": 10}}, "crypto_engine": {}, "tls_cipher_suite": {}, "crypto_library": {}, "vulnerability": {}, "side_channel_analysis": {}, "device_model": {}, "tee_name": {"AMD": {"PSP": 6}}, "os_name": {}, "cplc_data": {}, "ic_data_group": {}, "standard_id": {"FIPS": {"FIPS 140-3": 8, "FIPS186-5": 11, "FIPS 186-5": 6, "FIPS 198-1": 3, "FIPS 180-4": 1}, "NIST": {"SP 800-38A": 1, "SP 800-38C": 1, "SP 800-38B": 1, "SP 800-38D": 1, "SP 800-38F": 1, "SP 800-90B": 1, "SP 800-90A": 1, "SP 800-108": 1}}, "javacard_version": {}, "javacard_api_const": {}, "javacard_packages": {}, "certification_process": {}}, "policy_metadata": {"pdf_file_size_bytes": 621111, "pdf_is_encrypted": false, "pdf_number_of_pages": 38, "/Producer": "Microsoft\u00ae Word for Microsoft 365", "/Creator": "Microsoft\u00ae Word for Microsoft 365", "/CreationDate": "D:20261015082316-04'00'", "/ModDate": "D:20261015082316-04'00'", "pdf_hyperlinks": {"_type": "Set", "elements": ["https://www.renesas.com/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra6m4-evaluation-kit-ra6m4-mcu-group"]}}, "module_algorithms": {"_type": "Set", "elements": ["AES-CTRA7184", "Counter DRBGA7184", "HMAC-SHA2-384A7184", "RSA SigGen (FIPS186-5)A7184", "AES-CMACA7184", "AES-CBCA7184", "AES-CCMA7184", "HMAC-SHA2-256A7184", "ECDSA SigVer (FIPS186-5)A7184", "AES-GCMA7184", "SHA2-256A7184", "SHA2-512A7184", "ECDSA KeyGen (FIPS186-5)A7184", "HMAC-SHA2-512A7184", "ECDSA SigGen (FIPS186-5)A7184", "SHA2-384A7184", "KDF SP800-108A7184", "AES-KWA7184", "AES-ECBA7184", "Conditioning Component AES-CBC-MAC SP800-90BA7184", "RSA SigVer (FIPS186-5)A7184", "RSA KeyGen (FIPS186-5)A7184"]}, "policy_algorithms": {"_type": "Set", "elements": ["#A7184"]}, "is_br1_format": true, "br1_deviations": 0, "br1_tables": {"_type": "sec_certs.heuristics.br1.table_parsing.model.br1_tables.BR1Tables", "security_levels": {"section": 1, "subsection": 2, "found": true, "entries": [{"section": "1", "title": "General", "level": "2"}, {"section": "2", "title": "Cryptographic module specification", "level": "2"}, {"section": "3", "title": "Cryptographic module interfaces", "level": "2"}, {"section": "4", "title": "Roles, services, and authentication", "level": "3"}, {"section": "5", "title": "Software/Firmware security", "level": "2"}, {"section": "6", "title": "Operational environment", "level": "N/A"}, {"section": "7", "title": "Physical security", "level": "2"}, {"section": "8", "title": "Non-invasive security", "level": "N/A"}, {"section": "9", "title": "Sensitive security parameter management", "level": "3"}, {"section": "10", "title": "Self-tests", "level": "2"}, {"section": "11", "title": "Life-cycle assurance", "level": "3"}, {"section": "12", "title": "Mitigation of other attacks", "level": "N/A"}, {"section": "", "title": "Overall Level", "level": "2"}]}, "tested_module_id_hw": {"section": 2, "subsection": 2, "found": true, "entries": [{"modelPartNum": "RA8M1 Security Management Module", "hwVersion": "R7FA8M1AHECBD", "fwVersion": "Security Management Firmware version: 1.01, FSBL: R7FA8M1AHECBD, Boot Firmware Version: V3.6.32", "processors": "Arm\u00ae Cortex\u00ae- M85", "features": ""}]}, "tested_module_id_sw_fw_hy": {"section": 2, "subsection": 2, "found": false, "entries": []}, "tested_module_id_hw_hy": {"section": 2, "subsection": 2, "found": false, "entries": []}, "tested_op_env_sw_fw_hy": {"section": 2, "subsection": 2, "found": false, "entries": []}, "vendor_affirmed_op_env_sw_fw_hy": {"section": 2, "subsection": 2, "found": false, "entries": []}, "modes_of_operation": {"section": 2, "subsection": 4, "found": false, "entries": []}, "approved_algorithms": {"section": 2, "subsection": 5, "found": true, "entries": [{"algorithm": "AES-CBC, AES-CTR, AES-ECB", "cavpCertName": "A7184", "properties": "Direction - Decrypt, Encrypt Key Length - 128, 256", "reference": "SP 800-38A"}, {"algorithm": "AES-CCM", "cavpCertName": "A7184", "properties": "Key Length - 128, 256", "reference": "SP 800-38C"}, {"algorithm": "AES-CMAC", "cavpCertName": "A7184", "properties": "Direction - Generation, Verification Key Length - 128, 256", "reference": "SP 800-38B"}, {"algorithm": "AES-GCM", "cavpCertName": "A7184", "properties": "Direction - Decrypt, Encrypt IV Generation - External Key Length - 128, 256", "reference": "SP 800-38D"}, {"algorithm": "AES-KW", "cavpCertName": "A7184", "properties": "Direction - Decrypt, Encrypt Cipher - Cipher Key Length - 128, 256 Payload Length - Payload Length: 128, 256", "reference": "SP 800-38F"}, {"algorithm": "Conditioning Component AES-CBC-MAC SP800- 90B", "cavpCertName": "A7184", "properties": "Key Length - 256 Payload Length - Payload Length: 1024", "reference": "SP 800-90B"}, {"algorithm": "Counter DRBG", "cavpCertName": "A7184", "properties": "Prediction Resistance - No Supports Reseed - No Mode - AES-256 Derivation Function Enabled - No Additional Input - Additional Input: 0 Entropy Input - Entropy Input: 384 Nonce - Nonce: 0 Personalization String Length - Personalization String Length: 0 Returned Bits - 128", "reference": "SP 800-90A Rev. 1"}, {"algorithm": "ECDSA KeyGen (FIPS186-5)", "cavpCertName": "A7184", "properties": "Curve - P-256, P-384, P-521 Secret Generation Mode - extra bits", "reference": "FIPS 186-5"}, {"algorithm": "ECDSA SigGen (FIPS186-5)", "cavpCertName": "A7184", "properties": "Curve - P-256, P-384, P-521 Hash Algorithm - SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/224, SHA2-512/256 Component - No", "reference": "FIPS 186-5"}, {"algorithm": "ECDSA SigVer (FIPS186-5)", "cavpCertName": "A7184", "properties": "Component - No Curve - P-256, P-384, P-521 Hash Algorithm - SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/224, SHA2-512/256", "reference": "FIPS 186-5"}, {"algorithm": "HMAC-SHA2-256", "cavpCertName": "A7184", "properties": "MAC - MAC: 256 Key Length - Key Length: 256", "reference": "FIPS 198-1"}, {"algorithm": "HMAC-SHA2-384", "cavpCertName": "A7184", "properties": "MAC - MAC: 384 Key Length - Key Length: 384", "reference": "FIPS 198-1"}, {"algorithm": "HMAC-SHA2-512", "cavpCertName": "A7184", "properties": "MAC - MAC: 512 Key Length - Key Length: 512", "reference": "FIPS 198-1"}, {"algorithm": "KDF SP800-108", "cavpCertName": "A7184", "properties": "KDF Mode - Counter MAC Mode - CMAC-AES128, CMAC- AES256 Supported Lengths - Supported Lengths: 128, 256 Fixed Data Order - Before Fixed Data Counter Length - 8", "reference": "SP 800-108 Rev. 1"}, {"algorithm": "", "cavpCertName": "", "properties": "Supports Empty IV - No Requires Empty IV - No Custom Key In Length - 0", "reference": ""}, {"algorithm": "RSA KeyGen (FIPS186- 5)", "cavpCertName": "A7184", "properties": "Key Generation Mode - probable Modulo - 2048, 3072, 4096 p mod 8 - 0 Primality Tests - 2pow100 q mod 8 - 0 Fixed Public Exponent - 010001 Info Generated By Server - No Private Key Format - standard Public Exponent Mode - fixed", "reference": "FIPS 186-5"}, {"algorithm": "RSA SigGen (FIPS186- 5)", "cavpCertName": "A7184", "properties": "Hash Pair - Hash Algorithm - SHA2-224 Modulo - 2048, 3072, 4096 Signature Type - pkcs1v1.5, pss Mask Function - mgf1", "reference": "FIPS 186-5"}, {"algorithm": "RSA SigVer (FIPS186-5)", "cavpCertName": "A7184", "properties": "Hash Pair - Hash Algorithm - SHA2-224 Modulo - 2048, 3072, 4096 Signature Type - pkcs1v1.5, pss Mask Function - mgf1 Fixed Public Exponent - 010001 Public Exponent Mode - fixed", "reference": "FIPS 186-5"}, {"algorithm": "SHA2-256, SHA2-384, SHA2-512", "cavpCertName": "A7184", "properties": "Message Length - Message Length: 0- 65536 Increment 8", "reference": "FIPS 180-4"}]}, "vendor_affirmed_algos": {"section": 2, "subsection": 5, "found": true, "entries": [{"name": "CKG", "algoPropList": "Key Type:Symmetric and Asymmetric", "implName": "N/A", "reference": "SP800-133r2 Section 4, example1"}]}, "non_approved_allowed_algos": {"section": 2, "subsection": 5, "found": false, "entries": []}, "non_approved_allowed_NSC": {"section": 2, "subsection": 5, "found": true, "entries": [{"name": "AES-128 CBC- MAC", "caveat": "no security claimed", "use": "For interoperability, performed along with inputting User key."}]}, "non_approved_not_allowed": {"section": 2, "subsection": 5, "found": false, "entries": []}, "ports_interfaces": {"section": 3, "subsection": 1, "found": true, "entries": [{"physicalPort": "UART TXD", "logicalInterface": "Data Output Status Output", "data": "Output of Service Execution"}, {"physicalPort": "UART RXD", "logicalInterface": "Data Input Control Input", "data": "Input for Service Execution"}, {"physicalPort": "P600", "logicalInterface": "Status Output", "data": "Set High means that Operator is authenticated."}, {"physicalPort": "P414", "logicalInterface": "Status Output", "data": "Set High means that zeroization is completed."}, {"physicalPort": "P107", "logicalInterface": "Status Output", "data": "This port is error indicator, Toggle: CO Self-Test Error, Set High: PO Self-Test Error"}, {"physicalPort": "Reset", "logicalInterface": "Control Input", "data": "Reset"}, {"physicalPort": "Clock", "logicalInterface": "Control Input", "data": "Clock"}, {"physicalPort": "Power", "logicalInterface": "Power", "data": "3.3V power"}]}, "authentication_methods": {"section": 4, "subsection": 1, "found": true, "entries": [{"name": "Challenge response authentication", "description": "The challenge- response method is implemented for user authentication. When the user authentication service is executed, the module sends a 128-bit challenge. The ECDSA P-256 signature is sent back in response to", "mechanism": "User Authentication", "strength": "The target strength is 1/1,000,000. The probability that a random attempt will succeed, or a false acceptance will occur depends on the ECDSA P-256 strength.", "perMinute": "The target strength is 1/100,000. Since the module generates a 1 ms wait for each authentication attempt. Therefore, the probability that multiple attacks within a given"}, {"name": "", "description": "this challenge, and if the signature is correct, the authentication is successful.", "mechanism": "", "strength": "Therefore, the probability is 1/2^128, which is less than 1/1,000,000.", "perMinute": "minute will be successful is 60,000/2^128, which is less than 1/100,000."}]}, "roles": {"section": 4, "subsection": 2, "found": true, "entries": [{"name": "CO", "type": "Identity", "operatorType": "Crypto Officer", "authMethodList": "Challenge response authentication"}, {"name": "User", "type": "Identity", "operatorType": "User", "authMethodList": "Challenge response authentication"}]}, "approved_services": {"section": 4, "subsection": 3, "found": true, "entries": [{"name": "Open", "description": "Initialize the module and Enables use of services.", "indicator": "\"Crypt o Firmw are initializ ed succes sfully\" via UART", "inputs": "-", "outputs": "-", "secFunImpl": "KEK for HUK deriving", "rolesSspAccess": "CO - RTL Key: E - KEK for HUK: G,E,Z - HUK: W - DRBG seed: G - DRBG internal state (V, Key): G,W,E User - RTL Key: E - KEK for HUK: G,E,Z - HUK: W - DRBG seed: G - DRBG internal state (V, Key): G,W,E Unauthenticated - RTL Key: E - KEK for HUK: G,E,Z - HUK: W - DRBG seed: G - DRBG internal state (V, Key): G,W,E"}, {"name": "Close", "description": "Disables use of services.", "indicator": "none", "inputs": "-", "outputs": "-", "secFunImpl": "None", "rolesSspAccess": "CO User Unauthenticated"}, {"name": "User authent ication", "description": "Challenge response authentication using ECDSA P- 256 Signature verification.", "indicator": "P600 Set High", "inputs": "User ID; signat ure", "outputs": "-", "secFunImpl": "User Authenticati on", "rolesSspAccess": "Unauthenticated - ECDSA-P256-USER- PUBLIC-KEY: E - ECDSA-P256-CO- PUBLIC-KEY: E - DRBG internal state (V, Key): W,E - HUK: E"}, {"name": "Add User", "description": "Add the new user.", "indicator": "none", "inputs": "User ID; encry pted ECDS A- P256- USER - PUBLI C- KEY", "outputs": "-", "secFunImpl": "User key decryption for key update", "rolesSspAccess": "CO - ECDSA-P256-USER- PUBLIC-KEY: W - KEY-UPDATE-KEY: E - HUK: E - AES-CBC-MAC-KEY: E"}, {"name": "Delete User", "description": "Delete specified user data", "indicator": "none", "inputs": "User ID", "outputs": "-", "secFunImpl": "None", "rolesSspAccess": "CO - ECDSA-P256-CO- PUBLIC-KEY: Z"}, {"name": "Display User List", "description": "Display User List", "indicator": "none", "inputs": "-", "outputs": "-", "secFunImpl": "None", "rolesSspAccess": "CO User"}, {"name": "Firmwa re update", "description": "Update the Security Management Firmware", "indicator": "none", "inputs": "new firmwa re; signat ure", "outputs": "-", "secFunImpl": "FW update", "rolesSspAccess": "CO - MCUBOOT_IMAGE_SI GNING_LOAD_KEY: E"}, {"name": "Show module version", "description": "Show module version", "indicator": "none", "inputs": "-", "outputs": "modu le id / versi on", "secFunImpl": "None", "rolesSspAccess": "CO User Unauthenticated"}, {"name": "Show module status", "description": "Show current module status, logged-in user and error log for self-test.", "indicator": "none", "inputs": "-", "outputs": "modu le statu s", "secFunImpl": "None", "rolesSspAccess": "CO User Unauthenticated"}, {"name": "Rando m numbe r genera tion", "description": "Perform Random number generation", "indicator": "\"rando m numbe r:\" via UART", "inputs": "-", "outputs": "Rand om numb ers", "secFunImpl": "Random Number Generation", "rolesSspAccess": "CO - DRBG internal state (V, Key): W,E User - DRBG internal state (V, Key): W,E"}, {"name": "Symm etric", "description": "Generate AES or HMAC key", "indicator": "\"Wrap ped", "inputs": "-", "outputs": "Wrap ped", "secFunImpl": "AES Key Generation", "rolesSspAccess": "CO - DRBG internal state"}, {"name": "key genera tion", "description": "", "indicator": "AES- 128 key:\", \"Wrap ped AES- 256 key:\", \"Wrap ped HMAC -256 key:\", \"Wrap ped HMAC -384 key:\", \"Wrap ped HMAC -512 key:\" via UART", "inputs": "", "outputs": "AES- KEY, Wrap ped HMA C- KEY", "secFunImpl": "HMAC Key Generation KTS User key wrapping", "rolesSspAccess": "(V, Key): W,E - AES-KEY: G - HMAC-KEY: G - HUK: E"}, {"name": "Asymm etric key genera tion", "description": "Generate RSA or ECDSA key", "indicator": "\"Wrap ped rsa- 2048 private key:\", Wrapp ed rsa- 2048 public key:\", \"Wrap ped rsa- 3072 private key:\", \"Wrap ped rsa- 3072 public key:\", \"Wrap", "inputs": "-", "outputs": "Wrap ped RSA- PRIV ATE- KEY, Wrap ped RSA- PUB LIC- KEY, Wrap ped ECD SA- PRIV ATE- KEY, Wrap ped ECD SA- PUB", "secFunImpl": "RSA Key Pair Generation ECDSA Key Pair Generation KTS User key wrapping", "rolesSspAccess": "CO - DRBG internal state (V, Key): W,E - RSA-PRIVATE-KEY: G - RSA-PUBLIC-KEY: G - ECDSA-PRIVATE- KEY: G - ECDSA-PUBLIC-KEY: G - HUK: E"}, {"name": "Name", "description": "Description", "indicator": "Indica tor", "inputs": "Input", "outputs": "Outp uts", "secFunImpl": "Security", "rolesSspAccess": "SSP Access"}, {"name": "", "description": "", "indicator": "ped rsa- 4096 private key:\", \"Wrap ped rsa- 4096 public key:\", \"Wrap ped ecdsa- p256 private key:\", \"Wrap ped ecdsa- p256 public key:\", \"Wrap ped ecdsa- p384 private key:\", \"Wrap ped ecdsa- p384 public key:\", \"Wrap ped ecdsa- p521 private key:\", \"Wrap ped ecdsa- p521 public key:\" via UART", "inputs": "s", "outputs": "LIC- KEY", "secFunImpl": "Functions", "rolesSspAccess": ""}, {"name": "Key update", "description": "Update the keys(AES/HMA C/RSA/ECDSA) stored in Data Flash", "indicator": "None", "inputs": "encry pted AES- KEY, encry pted HMAC -KEY, encry pted RSA- PRIV ATE- KEY, encry pted RSA- PUBLI C- KEY, encry pted ECDS A- PRIV ATE- KEY, encry pted ECDS A- PUBLI C-", "outputs": "Wrap ped AES- KEY, Wrap ped HMA C- KEY, Wrap ped RSA- PRIV ATE- KEY, Wrap ped RSA- PUB LIC- KEY, Wrap ped ECD SA- PRIV ATE- KEY, Wrap ped ECD SA- PUB", "secFunImpl": "User key decryption for key update KTS User key wrapping", "rolesSspAccess": "CO - AES-KEY: W - HMAC-KEY: W - RSA-PRIVATE-KEY: W - RSA-PUBLIC-KEY: W - ECDSA-PRIVATE- KEY: W - ECDSA-PUBLIC-KEY: W - KEY-UPDATE-KEY: E - HUK: E - AES-CBC-MAC-KEY: E"}, {"name": "AES encrypt ion", "description": "Performe AES ECB/CBC/CTR/ CCM/GCM encryption", "indicator": "\"aes enc result:\" , \"aescc m enc result:\" , \"aesgc m enc result:\" via UART", "inputs": "KEY Wrapp ed AES- KEY; plain text", "outputs": "LIC- KEY ciphe r text", "secFunImpl": "AES encryption/ decryption Authenticat ed AES encryption/ decryption KTS User key unwrapping", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "AES decrypt ion", "description": "Performe AES ECB/CBC/CTR/ CCM/GCM decryption", "indicator": "\"aes dec result:\" , \"aescc m dec result:\" , \"aesgc m dec result:\" via UART", "inputs": "Wrapp ed AES- KEY; cipher text", "outputs": "plain text", "secFunImpl": "AES encryption/ decryption Authenticat ed AES encryption/ decryption KTS User key unwrapping", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "AES KeyWr ap", "description": "Performe AES key wrap", "indicator": "\"aesk w wrap result:\" via UART", "inputs": "AES- CCM wrapp ed AES- KEY used for wrappi ng, AES- CCM wrapp ed AES- KEY to be wrapp ed", "outputs": "AES- KW wrap ped AES- KEY", "secFunImpl": "KTS User key unwrapping KTS Keywrap", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "AES KeyUn wrap", "description": "Performe AES key unwrap", "indicator": "\"aesk w unwra p result:\" via UART", "inputs": "AES- CCM wrapp ed AES- KEY used for unwra pping, AES- KW wrapp ed AES- KEY to be", "outputs": "AES- CCM wrap ped AES- KEY", "secFunImpl": "KTS User key wrapping KTS User key unwrapping KTS Keyunwrap", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "", "description": "", "indicator": "", "inputs": "unwra pped", "outputs": "", "secFunImpl": "", "rolesSspAccess": ""}, {"name": "AES CMAC Genera tion", "description": "Perform AES CMAC generation", "indicator": "\"MAC: \" via UART", "inputs": "Wrapp ed AES- KEY; messa ge", "outputs": "MAC value", "secFunImpl": "AES-CMAC generation/ verification KTS User key unwrapping", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "AES CMAC Verifica tion", "description": "Perform AES CMAC verification", "indicator": "\"MAC: \" via UART", "inputs": "Wrapp ed AES- KEY; messa ge; MAC value", "outputs": "\"True \" or \"Fals e\"", "secFunImpl": "AES-CMAC generation/ verification KTS User key unwrapping", "rolesSspAccess": "CO - AES-KEY: W,E - HUK: E User - AES-KEY: W,E - HUK: E"}, {"name": "RSA Signat ure Genera tion", "description": "Perform RSA Signature Generation", "indicator": "\"signat ure:\" via UART", "inputs": "Wrapp ed RSA- PRIV ATE- KEY; messa ge", "outputs": "signa ture", "secFunImpl": "RSA Signature Generation and Verification KTS User key unwrapping", "rolesSspAccess": "CO - RSA-PRIVATE-KEY: W,E - HUK: E User - RSA-PRIVATE-KEY: W,E - HUK: E"}, {"name": "RSA Signat ure Verifica tion", "description": "Perform RSA Signature Verification", "indicator": "\"signat ure:\" via UART", "inputs": "Wrapp ed RSA- PUBLI C- KEY; messa ge; signat ure", "outputs": "\"True \" or \"Fals e\"", "secFunImpl": "RSA Signature Generation and Verification KTS User key unwrapping", "rolesSspAccess": "CO - RSA-PUBLIC-KEY: W,E - HUK: E User - RSA-PUBLIC-KEY: W,E - HUK: E"}, {"name": "ECDS A Signat ure Genera tion", "description": "Perform ECDSA Signature Generation", "indicator": "\"signat ure:\" via UART", "inputs": "Wrapp ed ECDS A- PRIV ATE- KEY; messa ge", "outputs": "signa ture", "secFunImpl": "ECDSA Signature Generation and Verification KTS User key unwrapping", "rolesSspAccess": "CO - ECDSA-PRIVATE- KEY: W,E - HUK: E User - ECDSA-PRIVATE- KEY: W,E - HUK: E"}, {"name": "ECDS A Signat ure", "description": "Perform ECDSA Signature Verification", "indicator": "\"signat ure:\" via UART", "inputs": "Wrapp ed ECDS A- PUBLI", "outputs": "\"True \" or \"Fals e\"", "secFunImpl": "ECDSA Signature Generation and Verification", "rolesSspAccess": "CO - ECDSA-PUBLIC-KEY: W,E - HUK: E User"}, {"name": "Verifica tion", "description": "", "indicator": "", "inputs": "C- KEY; messa ge; signat ure", "outputs": "", "secFunImpl": "KTS User key unwrapping", "rolesSspAccess": "- ECDSA-PUBLIC-KEY: W,E - HUK: E"}, {"name": "HMAC Genera tion", "description": "Perform HMAC Generation", "indicator": "\"MAC: \" via UART", "inputs": "Wrapp ed HMAC -KEY; messa ge", "outputs": "MAC value", "secFunImpl": "HMAC generation/ verification KTS User key unwrapping", "rolesSspAccess": "CO - HMAC-KEY: W,E - HUK: E User - HMAC-KEY: W,E - HUK: E"}, {"name": "HMAC Verifica tion", "description": "Perform HMAC Verification", "indicator": "\"MAC: \" via UART", "inputs": "Wrapp ed HMAC -KEY; messa ge; MAC value", "outputs": "\"True \" or \"Fals e\"", "secFunImpl": "HMAC generation/ verification KTS User key unwrapping", "rolesSspAccess": "CO - HMAC-KEY: W,E - HUK: E User - HMAC-KEY: W,E - HUK: E"}, {"name": "SHA Hash Genera tion", "description": "Perform SHA Hash Generation", "indicator": "\"mess age digest: \" via UART", "inputs": "messa ge", "outputs": "diges t", "secFunImpl": "SHA", "rolesSspAccess": "CO User"}, {"name": "Zeroiza tion", "description": "Perform CSP Zeroization", "indicator": "P414 Set High", "inputs": "-", "outputs": "-", "secFunImpl": "None", "rolesSspAccess": "CO - RTL Key: Z - MCUBOOT_IMAGE_SI GNING_LOAD_KEY: Z"}, {"name": "pre operati onal self test", "description": "Performe ondemand pre- operational self test", "indicator": "none", "inputs": "-", "outputs": "-", "secFunImpl": "KEK for HUK deriving", "rolesSspAccess": "CO - RTL Key: E - KEK for HUK: G,E - HUK: W User - RTL Key: E - KEK for HUK: G,E - HUK: W Unauthenticated - RTL Key: E - KEK for HUK: G,E - HUK: W"}, {"name": "On- deman d selftest", "description": "Perform ondemand conditional self test", "indicator": "\"Condi tional test compl eted\"", "inputs": "-", "outputs": "-", "secFunImpl": "KEK for HUK deriving", "rolesSspAccess": "CO - RTL Key: E - KEK for HUK: G,E,Z - HUK: W - DRBG seed: G - DRBG internal state"}, {"name": "", "description": "", "indicator": "via UART", "inputs": "", "outputs": "", "secFunImpl": "", "rolesSspAccess": "(V, Key): G,W,E User - RTL Key: E - KEK for HUK: G,E,Z - HUK: W - DRBG seed: G - DRBG internal state (V, Key): G,W,E"}]}, "non_approved_services": {"section": 4, "subsection": 4, "found": false, "entries": []}, "mechanisms_actions": {"section": 7, "subsection": 1, "found": true, "entries": [{"mechanism": "Tamper-evident coating on chip", "inspectFreq": "Every month", "inspectGuidance": "Confirmation that there is no visual damage"}]}, "storage_areas": {"section": 9, "subsection": 1, "found": true, "entries": [{"name": "Code Flash", "description": "Flash memory for code store", "persistance": "Static"}, {"name": "Data Flash", "description": "Flash memory for data store", "persistance": "Static"}, {"name": "Extra Flash", "description": "Access Restricted Flash Memory", "persistance": "Static"}, {"name": "RSIP-E51 Internal register", "description": "Internal registers of RSIP", "persistance": "Dynamic"}, {"name": "RAM", "description": "RAM", "persistance": "Dynamic"}]}, "ssp_io_methods": {"section": 9, "subsection": 2, "found": true, "entries": [{"name": "Key update (input)", "source": "UART", "dest": "Data Flash", "format": "Encrypted", "distribution": "Manual", "entry": "Electronic", "sfiAlgo": "User key decryption"}, {"name": "", "source": "", "dest": "", "format": "", "distribution": "", "entry": "", "sfiAlgo": "for key update"}, {"name": "Key update (output)", "source": "Data Flash", "dest": "UART", "format": "Encrypted", "distribution": "Automated", "entry": "Electronic", "sfiAlgo": "KTS User key wrapping"}, {"name": "Cryptographic service parameter (input)", "source": "UART", "dest": "RAM", "format": "Encrypted", "distribution": "Automated", "entry": "Electronic", "sfiAlgo": "KTS User key unwrapping"}, {"name": "Add User (input)", "source": "UART", "dest": "Data Flash", "format": "Encrypted", "distribution": "Manual", "entry": "Electronic", "sfiAlgo": "User key decryption for key update"}, {"name": "Key generation (output)", "source": "RSIP- E51 Internal register", "dest": "UART", "format": "Encrypted", "distribution": "Automated", "entry": "Electronic", "sfiAlgo": "KTS User key wrapping"}, {"name": "AES KeyWrap(output)", "source": "UART", "dest": "UART", "format": "Encrypted", "distribution": "Automated", "entry": "Electronic", "sfiAlgo": "KTS Keywrap"}, {"name": "AES KeyUnwrap(input)", "source": "UART", "dest": "UART", "format": "Encrypted", "distribution": "Automated", "entry": "Electronic", "sfiAlgo": "KTS Keyunwrap"}, {"name": "Initialization Process (input)", "source": "UART", "dest": "Data Flash", "format": "Encrypted", "distribution": "Manual", "entry": "Electronic", "sfiAlgo": "User key decryption for key update"}]}, "ssp_zeroization_methods": {"section": 9, "subsection": 3, "found": true, "entries": [{"method": "Zeroization Service", "description": "Erase the Code Flash area containing the RSIP driver that includes the 'RTL Key', which serves as the root of SSP protection. Additionally, erase the Data Flash area containing the 'MCUBOOT_IMAGE_SIGNING_LOAD_KEY', which is a public key for the firmware load test.", "rationale": "Overwrite the flash area with 0xFF.", "operatorId": "CO"}, {"method": "power off/on", "description": "The SSP held in the RSIP-E51 internal register is volatilized by cutting power with power off/on. Additionally, when the initialization process is performed, RSIP-E51 internal register is set to \"0\". Turning the power off and on triggers the initialization process as zeroization.", "rationale": "Clear RSIP-E51 internal register to 0", "operatorId": "CO, User"}]}, "self_tests": {"section": 10, "subsection": 1, "found": true, "entries": [{"algorithmOrTest": "CRC-32", "testProps": "32 bit", "testMethod": "Error Detection Code", "type": "SW/FW Integrity", "indicator": "Input via UART can be accepted", "details": "Firmware integrity test for MCUboot is performed by using CRC32 at every power-on-reset."}, {"algorithmOrTest": "ECDSA P256", "testProps": "ECDSA P256, SHA2-256", "testMethod": "ECDSA P256", "type": "SW/FW Integrity", "indicator": "Input via UART can", "details": "Firmware integrity test for Security Management Firmware, excluding the"}, {"algorithmOrTest": "", "testProps": "", "testMethod": "signature verification", "type": "", "indicator": "be accepted", "details": "MCUboot itself, is performed by using ECDSA P256 signaturte verification at every power-on-reset."}]}, "cond_self_tests": {"section": 10, "subsection": 2, "found": true, "entries": [{"algorithmOrTest": "KDF SP800-108 (A7184)", "testProps": "Key length: 256 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "KDF", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "AES CCM enc (A7184)", "testProps": "Key length: 128 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Encrypt", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "AES CCM dec (A7184)", "testProps": "Key length: 128 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Decrypt", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "Counter DRBG (A7184)", "testProps": "-", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "instantiate function, generate function", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "Entropy Source Health Test", "testProps": "-", "testMethod": "fault detection test", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "health test", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "AES-GCM (A7184)", "testProps": "Key length: 128 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Encrypt", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "AES-ECB (A7184)", "testProps": "Key length: 128 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Decrypt", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "RSA SigGen (FIPS186- 5) (A7184)", "testProps": "Signature Type: RSASSA- PKCS1- V1_5, Modulo: 2048, Hash: SHA2-256", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Sign", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "RSA SigVer (FIPS186- 5) (A7184)", "testProps": "Signature Type: RSASSA- PKCS1- V1_5, Modulo: 2048, Hash: SHA2-256", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Verify", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "SHA2-256 (A7184)", "testProps": "-", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Hash", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "SHA2-512 (A7184)", "testProps": "-", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Hash", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "HMAC- SHA2-256 (A7184)", "testProps": "Key length: 256 bit", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "HMAC Gen, HMAC Verify", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "ECDSA SigGen (FIPS186- 5) (A7184)", "testProps": "Curve: P- 256, Hash: SHA2-256", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Sign", "condition": "Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "ECDSA SigVer (FIPS186- 5) (A7184)", "testProps": "Curve: P- 256, Hash: SHA2-256", "testMethod": "KAT", "type": "CAST", "indicator": "\"Conditional test completed.\" via UART", "details": "Verify", "condition": "Before Pre- Operational Self-Tests, and Execution of Open or Execution of On-demand selftest"}, {"algorithmOrTest": "RSA KeyGen", "testProps": "Key length: 2048, 3072, 4096 bit", "testMethod": "PCT", "type": "PCT", "indicator": "Output tested key", "details": "Key Pair Gen", "condition": "Execution of RSA key pair"}, {"algorithmOrTest": "(FIPS186- 5) (A7184)", "testProps": "", "testMethod": "", "type": "", "indicator": "pair via UART.", "details": "", "condition": "generation services"}, {"algorithmOrTest": "ECDSA KeyGen (FIPS186- 5) (A7184)", "testProps": "Key length: 256, 384, 521 bit", "testMethod": "PCT", "type": "PCT", "indicator": "Output tested key pair via UART.", "details": "Key Pair Gen", "condition": "Execution of ECDSA key pair generation services"}, {"algorithmOrTest": "FW Load Test", "testProps": "ECDSA p256 signature", "testMethod": "Signature Verify", "type": "SW/FW Load", "indicator": "\"fwupdate success\" via UART", "details": "FW Load Test", "condition": "Execution of fwupdate command"}]}, "error_states": {"section": 10, "subsection": 4, "found": true, "entries": [{"name": "PO Self- Test Error State", "description": "Error state caused by failure of self-test executed by FSBL or MCUboot", "conditions": "In the case where the self-test executed by FSBL or MCUboot encounters an error.", "recoveryMethod": "power off/on", "indicator": "P107 Set High"}, {"name": "CO Self- Test Error State", "description": "Error state caused by failure of self-test executed by User Application", "conditions": "In the case where the self-test executed by User Application encounters an error.", "recoveryMethod": "power off/on", "indicator": "P107 toggles between low and high at 0.5 second intervals"}]}}}, "heuristics": {"_type": "sec_certs.sample.fips.FIPSCertificate.Heuristics", "algorithms": {"_type": "Set", "elements": ["AES-CTRA7184", "Counter DRBGA7184", "#A7184", "HMAC-SHA2-384A7184", "RSA SigGen (FIPS186-5)A7184", "AES-CMACA7184", "AES-CBCA7184", "AES-CCMA7184", "HMAC-SHA2-256A7184", "ECDSA SigVer (FIPS186-5)A7184", "AES-GCMA7184", "SHA2-256A7184", "SHA2-512A7184", "ECDSA KeyGen (FIPS186-5)A7184", "HMAC-SHA2-512A7184", "ECDSA SigGen (FIPS186-5)A7184", "SHA2-384A7184", "KDF SP800-108A7184", "AES-KWA7184", "AES-ECBA7184", "Conditioning Component AES-CBC-MAC SP800-90BA7184", "RSA SigVer (FIPS186-5)A7184", "RSA KeyGen (FIPS186-5)A7184"]}, "extracted_versions": {"_type": "Set", "elements": ["-"]}, "cpe_matches": null, "verified_cpe_matches": null, "related_cves": null, "policy_prunned_references": {"_type": "Set", "elements": []}, "module_prunned_references": {"_type": "Set", "elements": []}, "policy_processed_references": {"_type": "sec_certs.sample.certificate.References", "directly_referenced_by": null, "indirectly_referenced_by": null, "directly_referencing": null, "indirectly_referencing": null}, "module_processed_references": {"_type": "sec_certs.sample.certificate.References", "directly_referenced_by": null, "indirectly_referenced_by": null, "directly_referencing": null, "indirectly_referencing": null}, "direct_transitive_cves": null, "indirect_transitive_cves": null}, "state": {"_type": "sec_certs.sample.fips.InternalState", "module": {"_type": "sec_certs.sample.document_state.DocumentState", "download_ok": true, "convert_ok": true, "extract_ok": true, "source_hash": null, "txt_hash": null, "json_hash": null}, "policy": {"_type": "sec_certs.sample.document_state.DocumentState", "download_ok": true, "convert_ok": true, "extract_ok": true, "source_hash": "ff2182edaa1f0ae96805cea948f467b426aac94fa6c0e27d1e19cc4bc3b61699", "txt_hash": "8a7b03119f585b7abb634f5d951f68342a9e2ab0261d123069f3d94c797609dc", "json_hash": "7dff966049c3152fa1f131d5de732f86f1b503192914597970ebe743ee5d183c"}}}