/linux/Documentation/security/keys/ |
H A 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) 62 environment verified via Secure/Trusted boot process. 80 verifications match. A loaded Trusted Key can be updated with new 88 Relies on Secure/Trusted boot process for platform integrity. It can [all …]
|
/linux/security/keys/trusted-keys/ |
H A D | Kconfig | 5 bool "TPM-based trusted keys" 17 Enable use of the Trusted Platform Module (TPM) as trusted key 18 backend. Trusted keys are random number symmetric keys, 24 bool "TEE-based trusted keys" 29 Enable use of the Trusted Execution Environment (TEE) as trusted 33 bool "CAAM-based trusted keys" 40 (CAAM) as trusted key backend. 43 bool "DCP-based trusted keys" 48 Enable use of NXP's DCP (Data Co-Processor) as trusted key backend.
|
H A 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 18 trusted-$(CONFIG_TRUSTED_KEYS_DCP) += trusted_dcp.o
|
H A D | trusted_core.c | 6 * See Documentation/security/keys/trusted-encrypted.rst 10 #include <keys/trusted-type.h> 30 MODULE_PARM_DESC(rng, "Select trusted key RNG"); 34 MODULE_PARM_DESC(source, "Select trusted keys source (tpm, tee, caam or dcp)"); 142 * trusted_instantiate - create a new trusted key 144 * Unseal an existing trusted blob or, for a new key, get a 145 * random key, then seal and create a trusted key-type key, 288 * On success, return to userspace the trusted key datablob size. 318 .name = "trusted", 344 * We always support trusted.rng="kernel" and "default" as in init_trusted() [all …]
|
/linux/Documentation/tee/ |
H A D | ts-tee.rst | 4 TS-TEE (Trusted Services project) 7 This driver provides access to secure services implemented by Trusted Services. 9 Trusted Services [1] is a TrustedFirmware.org project that provides a framework 15 provides the low level communication for this driver. On top of that the Trusted 17 implementation is provided at [6], which is part of the Trusted Services client 20 All Trusted Services (TS) SPs have the same FF-A UUID; it identifies the TS RPC 26 The generic TEE design is to share memory at once with the Trusted OS, which can 27 then be reused to communicate with multiple applications running on the Trusted 36 Overview of a system with Trusted Services components:: 41 | Client | | Trusted | [all …]
|
H A D | amd-tee.rst | 4 AMD-TEE (AMD's Trusted Execution Environment) 12 software-based Trusted Execution Environment (TEE) designed to enable 13 third-party Trusted Applications. This feature is currently enabled only for 25 | Client | | | Trusted | 37 | Client | | subsystem | driver | | Trusted | 53 The TEE commands supported by AMD-TEE Trusted OS are: 55 * TEE_CMD_ID_LOAD_TA - loads a Trusted Application (TA) binary into 64 AMD-TEE Trusted OS is the firmware running on AMD Secure Processor.
|
/linux/Documentation/devicetree/bindings/arm/firmware/ |
H A 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/crypto/asymmetric_keys/ |
H A D | restrict.c | 62 * new certificate as being trusted. 65 * matching parent certificate in the trusted list, -EKEYREJECTED if the 209 struct key *trusted, bool check_dest) in key_or_keyring_common() argument 222 if (!trusted && !check_dest) in key_or_keyring_common() 234 if (trusted) { in key_or_keyring_common() 235 if (trusted->type == &key_type_keyring) { in key_or_keyring_common() 237 key = find_asymmetric_key(trusted, sig->auth_ids[0], in key_or_keyring_common() 242 } else if (trusted->type == &key_type_asymmetric) { in key_or_keyring_common() 246 asymmetric_key_ids(trusted)->id; in key_or_keyring_common() 270 key = __key_get(trusted); in key_or_keyring_common() [all …]
|
/linux/certs/ |
H A D | Kconfig | 45 bool "Provide system-wide ring of trusted keys" 50 Provide a system keyring to which trusted keys can be added. Keys in 51 the keyring are considered to be trusted. Keys may be added at will 63 containing trusted X.509 certificates to be included in the default 65 also trusted. 76 image. This allows introducing a trusted certificate to the default 94 secondary trusted keyring. 97 bool "Only allow additional certs signed by keys on the builtin trusted keyring" 100 If set, only certificates signed by keys on the builtin trusted 101 keyring may be loaded onto the secondary trusted keyring. [all …]
|
H A D | system_keyring.c | 2 /* System trusted keyring for trusted public keys 93 /* If we have a secondary trusted keyring, then that contains a link in restrict_link_by_builtin_and_secondary_trusted() 122 /* If we have a secondary trusted keyring, then that contains a link in restrict_link_by_digsig_builtin_and_secondary() 146 panic("Can't allocate secondary trusted keyring restriction\n"); in get_builtin_and_secondary_restriction() 192 panic("Can't link (machine) trusted keyrings\n"); in set_machine_trusted_keys() 224 * Create the trusted keyrings 228 pr_notice("Initialise system trusted keyrings\n"); in system_trusted_keyring_init() 238 panic("Can't allocate builtin trusted keyring\n"); in system_trusted_keyring_init() 251 panic("Can't allocate secondary trusted keyring\n"); in system_trusted_keyring_init() 254 panic("Can't link trusted keyrings\n"); in system_trusted_keyring_init() [all …]
|
/linux/drivers/md/ |
H A 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 79 trusted = true; in dm_verity_loadpin_is_bdev_trusted() 85 return trusted; in dm_verity_loadpin_is_bdev_trusted()
|
/linux/drivers/tee/optee/ |
H A 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 273 * Get UUID of Trusted OS. 275 * Used by non-secure world to figure out which Trusted OS is installed. 276 * Note that returned UUID is the UUID of the Trusted OS, not of the API. 288 * Get revision of Trusted OS. 290 * Used by non-secure world to figure out which version of the Trusted OS 292 * Trusted OS, not of the API. 303 * OPTEE_MSG_CMD_OPEN_SESSION opens a session to a Trusted Application. [all …]
|
H A 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. 108 * Load Trusted OS from optee/tee.bin in the Linux firmware. 111 * Trusted OS. 112 * This SMC instructs EL3 to load a binary and execute it as the Trusted OS. 182 * OPTEE_SMC_RETURN_UNKNOWN_FUNCTION Trusted OS does not recognize this [all …]
|
/linux/security/keys/encrypted-keys/ |
H A 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/security/integrity/ima/ |
H A D | Kconfig | 18 The Trusted Computing Group(TCG) runtime Integrity 198 be signed and verified by a public key on the trusted IMA 211 and verified by a public key on the trusted IMA keyring. 223 and verified by a key on the trusted IMA keyring. 256 machine (if configured), or secondary trusted keyrings. The 262 built-in, machine (if configured) or secondary trusted keyrings. 276 bool "Load X509 certificate onto the '.ima' trusted keyring" 281 loaded on the .ima trusted keyring. These public keys are 282 X509 certificates signed by a trusted key on the 284 loading from the kernel onto the '.ima' trusted keyring. [all …]
|
/linux/tools/testing/selftests/bpf/progs/ |
H A D | verifier_vfs_reject.c | 15 __failure __msg("Possibly NULL pointer passed to trusted arg0") 48 __failure __msg("R1 must be referenced or trusted") 54 /* Walking a trusted struct task_struct returned from in BPF_PROG() 91 __failure __msg("Possibly NULL pointer passed to trusted arg0") 100 __failure __msg("R1 must be referenced or trusted") 105 /* Walking a trusted argument typically yields an untrusted in BPF_PROG() 114 __failure __msg("R1 must be referenced or trusted") 121 /* Walking a trusted pointer returned from bpf_get_current_task_btf() in BPF_PROG()
|
H A D | cgrp_kfunc_failure.c | 32 __failure __msg("Possibly NULL pointer passed to trusted arg0") 51 __failure __msg("Possibly NULL pointer passed to trusted arg0") 100 /* Can't invoke bpf_cgroup_acquire() on a pointer obtained from walking a trusted cgroup. */ in BPF_PROG() 109 __failure __msg("Possibly NULL pointer passed to trusted arg0") 157 __failure __msg("must be referenced or trusted") 178 __failure __msg("Possibly NULL pointer passed to trusted arg0") 206 __failure __msg("Possibly NULL pointer passed to trusted arg0") 243 /* Cannot release trusted cgroup pointer which was not acquired. */ in BPF_PROG()
|
H A D | task_kfunc_failure.c | 31 __failure __msg("Possibly NULL pointer passed to trusted arg0") 103 __failure __msg("Possibly NULL pointer passed to trusted arg0") 152 __failure __msg("Possibly NULL pointer passed to trusted arg0") 165 __failure __msg("Possibly NULL pointer passed to trusted arg0") 193 __failure __msg("Possibly NULL pointer passed to trusted arg0") 230 /* Cannot release trusted task pointer which was not acquired. */ in BPF_PROG() 237 __failure __msg("Possibly NULL pointer passed to trusted arg0") 302 __failure __msg("R1 must be referenced or trusted")
|
/linux/include/linux/ |
H A 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/Documentation/devicetree/bindings/tpm/ |
H A D | microsoft,ftpm.yaml | 7 title: Microsoft firmware-based Trusted Platform Module (fTPM) 15 offer trusted computing features in their CPUs aimed at displacing dedicated 16 trusted hardware. Unfortunately, these CPU architectures raise serious 17 challenges to building trusted systems because they omit providing secure 22 those of dedicated trusted hardware.
|
/linux/Documentation/admin-guide/hw-vuln/ |
H A 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/include/linux/firmware/ |
H A 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/Documentation/filesystems/ |
H A D | overlayfs.rst | 103 creation of trusted.* and/or user.* extended attributes, and must provide 149 as a zero-size regular file with the xattr "trusted.overlay.whiteout". 155 A directory is made opaque by setting the xattr "trusted.overlay.opaque" 161 "trusted.overlay.whiteout", should be additionally marked by setting the xattr 162 "trusted.overlay.opaque" to "x" on the merge directory itself. 163 This is needed to avoid the overhead of checking the "trusted.overlay.whiteout" 211 copied up (but not the contents). Then the "trusted.overlay.redirect" 251 upper directory is stored in a "trusted.overlay.upper" extended attribute 371 "trusted.overlayfs.metacopy" xattr which indicates that the upper file 374 the "trusted.overlayfs.metacopy" xattr is removed from the upper file. [all …]
|
/linux/security/loadpin/ |
H A D | Kconfig | 31 digests it considers trusted. A verity backed filesystem is 32 considered trusted if its root digest is found in the list 33 of trusted digests. 35 The list of trusted verity can be populated through an ioctl
|
/linux/Documentation/userspace-api/ |
H A D | tee.rst | 5 TEE (Trusted Execution Environment) Userspace API 22 - TEE_IOC_OPEN_SESSION opens a new session to a Trusted Application. 24 - TEE_IOC_INVOKE invokes a function in a Trusted Application. 28 - TEE_IOC_CLOSE_SESSION closes a session to a Trusted Application.
|