| /Linux-v6.1/Documentation/security/keys/ |
| D | trusted-encrypted.rst | 2 Trusted and Encrypted Keys 5 Trusted and Encrypted Keys are two new key types added to the existing kernel 8 stores, and loads only encrypted blobs. Trusted Keys require the availability 17 A trust source provides the source of security for Trusted Keys. This 23 consumer of the Trusted Keys to determine if the trust source is sufficiently 28 (1) TPM (Trusted Platform Module: hardware device) 33 (2) TEE (Trusted Execution Environment: OP-TEE based on Arm TrustZone) 54 environment verified via Secure/Trusted boot process. 66 verifications match. A loaded Trusted Key can be updated with new 74 Relies on Secure/Trusted boot process for platform integrity. It can [all …]
|
| /Linux-v6.1/security/keys/trusted-keys/ |
| D | Kconfig | 2 bool "TPM-based trusted keys" 13 Enable use of the Trusted Platform Module (TPM) as trusted key 14 backend. Trusted keys are random number symmetric keys, 20 bool "TEE-based trusted keys" 24 Enable use of the Trusted Execution Environment (TEE) as trusted 28 bool "CAAM-based trusted keys" 34 (CAAM) as trusted key backend.
|
| D | Makefile | 3 # Makefile for trusted keys 6 obj-$(CONFIG_TRUSTED_KEYS) += trusted.o 7 trusted-y += trusted_core.o 8 trusted-$(CONFIG_TRUSTED_KEYS_TPM) += trusted_tpm1.o 11 trusted-$(CONFIG_TRUSTED_KEYS_TPM) += trusted_tpm2.o 12 trusted-$(CONFIG_TRUSTED_KEYS_TPM) += tpm2key.asn1.o 14 trusted-$(CONFIG_TRUSTED_KEYS_TEE) += trusted_tee.o 16 trusted-$(CONFIG_TRUSTED_KEYS_CAAM) += trusted_caam.o
|
| D | trusted_core.c | 6 * See Documentation/security/keys/trusted-encrypted.rst 10 #include <keys/trusted-type.h> 29 MODULE_PARM_DESC(rng, "Select trusted key RNG"); 33 MODULE_PARM_DESC(source, "Select trusted keys source (tpm, tee or caam)"); 139 * trusted_instantiate - create a new trusted key 141 * Unseal an existing trusted blob or, for a new key, get a 142 * random key, then seal and create a trusted key-type key, 285 * On success, return to userspace the trusted key datablob size. 315 .name = "trusted", 341 * We always support trusted.rng="kernel" and "default" as in init_trusted() [all …]
|
| /Linux-v6.1/Documentation/devicetree/bindings/arm/firmware/ |
| D | tlm,trusted-foundations.yaml | 4 $id: "http://devicetree.org/schemas/arm/firmware/tlm,trusted-foundations.yaml#" 7 title: Trusted Foundations 10 Boards that use the Trusted Foundations secure monitor can signal its 18 const: trusted-foundations 21 const: tlm,trusted-foundations 25 description: major version number of Trusted Foundations firmware 29 description: minor version number of Trusted Foundations firmware 41 trusted-foundations { 42 compatible = "tlm,trusted-foundations";
|
| /Linux-v6.1/crypto/asymmetric_keys/ |
| D | restrict.c | 62 * new certificate as being trusted. 65 * matching parent certificate in the trusted list, -EKEYREJECTED if the 121 struct key *trusted, bool check_dest) in key_or_keyring_common() argument 134 if (!trusted && !check_dest) in key_or_keyring_common() 146 if (trusted) { in key_or_keyring_common() 147 if (trusted->type == &key_type_keyring) { in key_or_keyring_common() 149 key = find_asymmetric_key(trusted, sig->auth_ids[0], in key_or_keyring_common() 154 } else if (trusted->type == &key_type_asymmetric) { in key_or_keyring_common() 158 asymmetric_key_ids(trusted)->id; in key_or_keyring_common() 182 key = __key_get(trusted); in key_or_keyring_common() [all …]
|
| /Linux-v6.1/certs/ |
| D | system_keyring.c | 2 /* System trusted keyring for trusted public keys 65 /* If we have a secondary trusted keyring, then that contains a link in restrict_link_by_builtin_and_secondary_trusted() 89 panic("Can't allocate secondary trusted keyring restriction\n"); in get_builtin_and_secondary_restriction() 105 panic("Can't link (machine) trusted keyrings\n"); in set_machine_trusted_keys() 137 * Create the trusted keyrings 141 pr_notice("Initialise system trusted keyrings\n"); in system_trusted_keyring_init() 151 panic("Can't allocate builtin trusted keyring\n"); in system_trusted_keyring_init() 164 panic("Can't allocate secondary trusted keyring\n"); in system_trusted_keyring_init() 167 panic("Can't link trusted keyrings\n"); in system_trusted_keyring_init() 218 * @trusted_keys: Trusted keys to use (NULL for builtin trusted keys only, [all …]
|
| D | Kconfig | 43 bool "Provide system-wide ring of trusted keys" 48 Provide a system keyring to which trusted keys can be added. Keys in 49 the keyring are considered to be trusted. Keys may be added at will 61 containing trusted X.509 certificates to be included in the default 63 also trusted. 74 image. This allows introducing a trusted certificate to the default 91 into the kernel or already in the secondary trusted keyring. 137 they are signed and vouched by a certificate from the builtin trusted
|
| /Linux-v6.1/drivers/md/ |
| D | dm-verity-loadpin.c | 21 bool trusted = false; in is_trusted_verity_target() local 39 trusted = true; in is_trusted_verity_target() 46 return trusted; in is_trusted_verity_target() 51 * a verity device that is trusted by LoadPin. 59 bool trusted = false; in dm_verity_loadpin_is_bdev_trusted() local 76 trusted = true; in dm_verity_loadpin_is_bdev_trusted() 82 return trusted; in dm_verity_loadpin_is_bdev_trusted()
|
| /Linux-v6.1/Documentation/staging/ |
| D | tee.rst | 7 A TEE (Trusted Execution Environment) is a trusted OS running in some 37 - TEE_IOC_OPEN_SESSION opens a new session to a Trusted Application. 39 - TEE_IOC_INVOKE invokes a function in a Trusted Application. 43 - TEE_IOC_CLOSE_SESSION closes a session to a Trusted Application. 59 Kernel provides a TEE bus infrastructure where a Trusted Application is 79 Then TEE client driver can talk to a matched Trusted Application using APIs 85 Suppose a TEE client driver needs to communicate with a Trusted Application 155 | Client | | Trusted | 166 | API | \/ | subsys | driver | | Trusted OS | 182 OP-TEE provides a pseudo Trusted Application: drivers/tee/optee/device.c in [all …]
|
| /Linux-v6.1/security/keys/encrypted-keys/ |
| D | masterkey_trusted.c | 11 * See Documentation/security/keys/trusted-encrypted.rst 16 #include <keys/trusted-type.h> 21 * request_trusted_key - request the trusted key 23 * Trusted keys are sealed to PCRs and other metadata. Although userspace 24 * manages both trusted/encrypted key-types, like the encrypted key type 25 * data, trusted key type data is not visible decrypted from userspace.
|
| /Linux-v6.1/drivers/tee/optee/ |
| D | optee_msg.h | 42 * to the Trusted Application. 193 * @func: Trusted Application function, specific to the Trusted Application, 203 * All normal calls to Trusted OS uses this struct. If cmd requires further 261 * Get UUID of Trusted OS. 263 * Used by non-secure world to figure out which Trusted OS is installed. 264 * Note that returned UUID is the UUID of the Trusted OS, not of the API. 276 * Get revision of Trusted OS. 278 * Used by non-secure world to figure out which version of the Trusted OS 280 * Trusted OS, not of the API. 291 * OPTEE_MSG_CMD_OPEN_SESSION opens a session to a Trusted Application. [all …]
|
| D | optee_smc.h | 73 * Get UUID of Trusted OS. 75 * Used by non-secure world to figure out which Trusted OS is installed. 76 * Note that returned UUID is the UUID of the Trusted OS, not of the API. 86 * Get revision of Trusted OS. 88 * Used by non-secure world to figure out which version of the Trusted OS 90 * Trusted OS, not of the API. 158 * OPTEE_SMC_RETURN_UNKNOWN_FUNCTION Trusted OS does not recognize this 163 * OPTEE_SMC_RETURN_ETHREAD_LIMIT Number of Trusted OS threads exceeded, 440 * OPTEE_SMC_RETURN_UNKNOWN_FUNCTION Trusted OS does not recognize this 561 /* Returned in a0 only from Trusted OS functions */
|
| /Linux-v6.1/security/integrity/ima/ |
| D | Kconfig | 17 The Trusted Computing Group(TCG) runtime Integrity 203 be signed and verified by a public key on the trusted IMA 216 and verified by a public key on the trusted IMA keyring. 228 and verified by a key on the trusted IMA keyring. 259 keyring be signed by a key on the system trusted keyring. 273 secondary trusted keyrings. 278 built-in or secondary trusted keyrings. 292 bool "Load X509 certificate onto the '.ima' trusted keyring" 297 loaded on the .ima trusted keyring. These public keys are 298 X509 certificates signed by a trusted key on the [all …]
|
| /Linux-v6.1/include/linux/ |
| D | psp-tee.h | 3 * AMD Trusted Execution Environment (TEE) interface 17 /* This file defines the Trusted Execution Environment (TEE) interface commands 19 * AMD-TEE Trusted OS. 24 * @TEE_CMD_ID_LOAD_TA: Load Trusted Application (TA) binary into 45 * psp_tee_process_cmd() - Process command in Trusted Execution Environment 52 * This function submits a command to the Trusted OS for processing in the
|
| /Linux-v6.1/include/linux/firmware/ |
| D | trusted_foundations.h | 7 * Support for the Trusted Foundations secure monitor. 9 * Trusted Foundation comes active on some ARM consumer devices (most 13 * Trusted Foundations, and do *not* follow the SMC calling convention or the 60 pr_err("No support for Trusted Foundations, continuing in degraded mode.\n"); in register_trusted_foundations() 74 struct device_node *np = of_find_compatible_node(NULL, NULL, "tlm,trusted-foundations"); in of_register_trusted_foundations()
|
| /Linux-v6.1/Documentation/admin-guide/hw-vuln/ |
| D | core-scheduling.rst | 21 user-designated trusted group can share a core. This increase in core sharing 101 trusted (same cookie) at any point in time. Kernel threads are assumed trusted. 110 the idle task is selected. Idle task is globally trusted. 126 priority task is not trusted with respect to the core wide highest priority 127 task. If a sibling does not have a trusted task to run, it will be forced idle 157 and are considered system-wide trusted. The forced-idling of siblings running 166 Core scheduling tries to guarantee that only trusted tasks run concurrently on a 168 concurrently or kernel could be running concurrently with a task not trusted by 173 Core scheduling selects only trusted tasks to run together. IPI is used to notify 207 allowing system processes (trusted tasks) to share a core.
|
| /Linux-v6.1/security/loadpin/ |
| D | Kconfig | 28 digests it considers trusted. A verity backed filesystem is 29 considered trusted if its root digest is found in the list 30 of trusted digests. 32 The list of trusted verity can be populated through an ioctl
|
| /Linux-v6.1/drivers/tee/ |
| D | Kconfig | 2 # Generic Trusted Execution Environment Configuration 4 tristate "Trusted Execution Environment support" 11 This implements a generic interface towards a Trusted Execution
|
| /Linux-v6.1/drivers/tee/amdtee/ |
| D | amdtee_private.h | 29 /* Maximum number of sessions which can be opened with a Trusted Application */ 46 * struct amdtee_session - Trusted Application (TA) session related information. 47 * @ta_handle: handle to Trusted Application (TA) loaded in TEE environment 54 * subsequent operations with the Trusted Application. 113 * @ta_handle: [in] handle of the loaded Trusted Application (TA)
|
| /Linux-v6.1/security/integrity/ |
| D | Kconfig | 52 .evm keyrings be signed by a key on the system trusted 56 bool "Provide keyring for platform/firmware trusted keys" 60 Provide a separate, distinct keyring for platform trusted keys, which 76 be trusted within the kernel.
|
| /Linux-v6.1/arch/powerpc/kernel/ |
| D | secure_boot.c | 51 enabled = of_property_read_bool(node, "trusted-enabled"); in is_ppc_trustedboot_enabled() 57 if (!of_property_read_u32(of_root, "ibm,trusted-boot", &trustedboot)) in is_ppc_trustedboot_enabled() 61 pr_info("Trusted boot mode %s\n", enabled ? "enabled" : "disabled"); in is_ppc_trustedboot_enabled()
|
| /Linux-v6.1/drivers/firmware/ |
| D | trusted_foundations.c | 3 * Trusted Foundations support for ARM CPUs 166 node = of_find_compatible_node(NULL, NULL, "tlm,trusted-foundations"); in of_register_trusted_foundations() 173 panic("Trusted Foundation: missing version-major property\n"); in of_register_trusted_foundations() 177 panic("Trusted Foundation: missing version-minor property\n"); in of_register_trusted_foundations()
|
| /Linux-v6.1/security/integrity/evm/ |
| D | Kconfig | 59 bool "Load an X509 certificate onto the '.evm' trusted keyring" 63 Load an X509 certificate onto the '.evm' trusted keyring. 66 onto the '.evm' trusted keyring. A public key can be used to
|
| /Linux-v6.1/Documentation/x86/ |
| D | intel_txt.rst | 5 Intel's technology for safer computing, Intel(R) Trusted Execution 7 provide the building blocks for creating trusted platforms. 35 3_David-Grawrock_The-Front-Door-of-Trusted-Computing.pdf 43 Trusted Boot Project Overview 46 Trusted Boot (tboot) is an open source, pre-kernel/VMM module that 211 Security top-level menu and is called "Enable Intel(R) Trusted 220 system and can also be found on the Trusted Boot site. It is an
|