From 3b49f4439b54dee706bf292e45dd5da21fcf2b6b Mon Sep 17 00:00:00 2001 From: John Tobin Date: Mon, 24 Jul 2017 16:01:47 -0700 Subject: [PATCH 1/6] Added new Windows 10 and TPM topic --- windows/device-security/TOC.md | 1 + .../change-history-for-device-security.md | 6 + .../tpm/how-windows-uses-the-tpm.md | 172 ++++++++++++++++++ 3 files changed, 179 insertions(+) create mode 100644 windows/device-security/tpm/how-windows-uses-the-tpm.md diff --git a/windows/device-security/TOC.md b/windows/device-security/TOC.md index 9305ed157e..5e2eb5e7ac 100644 --- a/windows/device-security/TOC.md +++ b/windows/device-security/TOC.md @@ -650,6 +650,7 @@ ## [Trusted Platform Module](tpm/trusted-platform-module-top-node.md) ### [Trusted Platform Module Overview](tpm/trusted-platform-module-overview.md) ### [TPM fundamentals](tpm/tpm-fundamentals.md) +### [How Windows 10 uses the Trusted Platform Module](tpm/how-windows-uses-the-tpm.md) ### [TPM Group Policy settings](tpm/trusted-platform-module-services-group-policy-settings.md) ### [Back up the TPM recovery information to AD DS](tpm/backup-tpm-recovery-information-to-ad-ds.md) ### [Manage TPM commands](tpm/manage-tpm-commands.md) diff --git a/windows/device-security/change-history-for-device-security.md b/windows/device-security/change-history-for-device-security.md index f5c4e6001a..b87d0626c3 100644 --- a/windows/device-security/change-history-for-device-security.md +++ b/windows/device-security/change-history-for-device-security.md @@ -11,6 +11,12 @@ author: brianlic-msft # Change history for device security This topic lists new and updated topics in the [Device security](index.md) documentation. +## July 2017 +|New or changed topic |Description | +|---------------------|------------| + | [How Windows 10 uses the Trusted Platform Module](tpm/how-windows-uses-the-tpm.md) | New TPM security topic. | + + ## May 2017 |New or changed topic |Description | |---------------------|------------| diff --git a/windows/device-security/tpm/how-windows-uses-the-tpm.md b/windows/device-security/tpm/how-windows-uses-the-tpm.md new file mode 100644 index 0000000000..3e2df019a3 --- /dev/null +++ b/windows/device-security/tpm/how-windows-uses-the-tpm.md @@ -0,0 +1,172 @@ +--- +title: How Windows uses the TPM +description: This topic for the IT professional describes the Trusted Platform Module (TPM) and how Windows uses it to enhance security. +ms.assetid: 0f7e779c-bd25-42a8-b8c1-69dfb54d0c7f +ms.prod: w10 +ms.mktglfcycl: deploy +ms.sitesec: library +ms.pagetype: security +localizationpriority: high +author: brianlic-msft +--- + +# How Windows 10 uses the Trusted Platform Module + +The Windows 10 operating system improves most existing security features in the operating system and adds groundbreaking new security features such as Device Guard and Microsoft Passport. It places hardware-based security deeper inside the operating system than previous Windows versions had done, maximizing platform security while increasing usability. To achieve many of these security enhancements, Windows 10 makes extensive use of the Trusted Platform Module (TPM). This article offers a brief overview of the TPM, describes how it works, and discusses the benefits that TPM brings to Windows 10—as well as the cumulative security impact of running Windows 10 on a PC that contains a TPM. + +**In this topic:** + + - TPM Overview + - TPM in Windows 10: + - Platform Crypto Provider + - Virtual Smart Card + - Microsoft Passport + - BitLocker Drive Encryption + - Device Encryption + - Measured Boot + - Health Attestation + - Credential Guard + - Conclusion + +**See also:** + + - [Windows 10 Specifications](https://www.microsoft.com/en-us/windows/windows-10-specifications) + + - [TPM Fundamentals](https://technet.microsoft.com/en-us/library/jj889441.aspx) + + - [TPM Recommendations](https://technet.microsoft.com/itpro/windows/keep-secure/tpm-recommendations)  + +## TPM Overview + +The TPM is a cryptographic module that enhances computer security and privacy. Protecting data through encryption and decryption, protecting authentication credentials, and proving which software is running on a system are basic functionalities associated with computer security. The TPM helps with all these scenarios and more. + +Traditionally, TPMs have been discrete chips soldered to a computer’s motherboard. Such implementations allow the computer’s original equipment manufacturer (OEM) to evaluate and certify the TPM separate from the rest of the system. Although discrete TPM implementations are still common, they can be problematic for integrated devices that are small or have low power consumption. Some newer TPM implementations integrate TPM functionality into the same chipset as other platform components while still providing logical separation similar to discrete TPM chips. + +TPMs are passive: they receive commands and return responses. To realize the full benefit of a TPM, the OEM must carefully integrate system hardware and firmware with the TPM to send it commands and react to its responses. TPMs were originally designed to provide security and privacy benefits to a platform’s owner and users, but newer versions can provide security and privacy benefits to the system hardware itself. Before it can be used for advanced scenarios, however, a TPM must be provisioned. Windows 10 automatically provisions a TPM, but if the user reinstalls the operating system, he or she may need to tell the operating system to explicitly provision the TPM again before it can use all the TPM’s features. + +The Trusted Computing Group (TCG) is the nonprofit organization that publishes and maintains the TPM specification. The TCG exists to develop, define, and promote vendor-neutral, global industry standards that support a hardware-based root of trust for interoperable trusted computing platforms. The TCG also publishes the TPM specification as the international standard ISO/IEC 11889, using the Publicly Available Specification Submission Process that the Joint Technical Committee 1 defines between the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). + +OEMs implement the TPM as a component in a trusted computing platform, such as a PC, tablet, or phone. Trusted computing platforms use the TPM to support privacy and security scenarios that software alone cannot achieve. For example, software alone cannot reliably report whether malware is present during the system startup process. The close integration between TPM and platform increases the transparency of the startup process and supports evaluating device health by enabling reliable measuring and reporting of the software that starts the device. Implementation of a TPM as part of a trusted computing platform provides a hardware root of trust—that is, it behaves in a trusted way. For example, if a key stored in a TPM has properties that disallow exporting the key, that key *truly cannot leave the TPM*. + +The TCG designed the TPM as a low-cost, mass-market security solution that addresses the requirements of different customer segments. There are variations in the security properties of different TPM implementations just as there are variations in customer and regulatory requirements for different sectors. In public-sector procurement, for example, some governments have clearly defined security requirements for TPMs, whereas others do not. + +Certification programs for TPMs—and technology in general—continue to evolve as the speed of innovation increases. Although having a TPM is clearly better than not having a TPM, Microsoft’s best advice is to determine your organization’s security needs and research any regulatory requirements associated with procurement for your industry. The result is a balance between scenarios used, assurance level, cost, convenience, and availability. + +## TPM in Windows 10 + +The security features of Windows 10 combined with the benefits of a TPM offer practical security and privacy benefits. The following sections start with major TPM-related security features in Windows 10 and go on to describe how key technologies use the TPM to enable or increase security. + +### Platform Crypto Provider + +Historically, Windows has included a cryptography framework called *Cryptographic API: Next Generation* (CNG), the basic approach of which is to implement cryptographic algorithms in different ways but with a common application programming interface (API). Applications that use cryptography can use the common API without knowing the details of how an algorithm is implemented much less the algorithm itself. + +Although CNG sounds like a mundane starting point, it illustrates some of the advantages that a TPM provides. Underneath the CNG interface, Windows or third parties supply a cryptographic provider (that is, an implementation of an algorithm) implemented as software libraries alone or in a combination of software and available system hardware or third-party hardware. If implemented through hardware, the cryptographic provider communicates with the hardware behind the software interface of CNG. + +The Platform Crypto Provider, introduced in the Windows 8 operating system, exposes the following special TPM properties, which software-only CNG providers cannot offer or cannot offer as effectively: + +• **Key protection**. The Platform Crypto Provider can create keys in the TPM with restrictions on their use. The operating system can load and use the keys in the TPM without copying the keys to system memory, where they are vulnerable to malware. The Platform Crypto Provider can also configure keys that a TPM protects so that they are not removable. If a TPM creates a key, the key is unique and resides only in that TPM. If the TPM imports a key, the Platform Crypto Provider can use the key in that TPM, but that TPM is not a source for making additional copies of the key or enabling the use of copies elsewhere. In sharp contrast, software solutions that protect keys from copying are subject to reverse-engineering attacks, in which someone figures out how the solution stores keys or makes copies of keys while they are in memory during use. + +• **Dictionary attack protection**. Keys that a TPM protects can require an authorization value such as a PIN. With dictionary attack protection, the TPM can prevent attacks that attempt a large number of guesses to determine the PIN. After too many guesses, the TPM simply returns an error saying no more guesses are allowed for a period of time. Software solutions might provide similar features, but they cannot provide the same level of protection, especially if the system restarts, the system clock changes, or files on the hard disk that count failed guesses are rolled back. In addition, with dictionary attack protection, authorization values such as PINs can be shorter and easier to remember while still providing the same level of protection as more complex values when using software solutions. + +These TPM features give Platform Crypto Provider distinct advantages over software-based solutions. A practical way to see these benefits in action is when using certificates on a Windows 10 device. On platforms that include a TPM, Windows can use the Platform Crypto Provider to provide certificate storage. Certificate templates can specify that a TPM use the Platform Crypto Provider to protect the key associated with a certificate. In mixed environments, where some computers might not have a TPM, the certificate template could simply prefer the Platform Crypto Provider over the standard Windows software provider. If a certificate is configured as not able to be exported, the private key for the certificate is restricted and cannot be exported from the TPM. If the certificate requires a PIN, the PIN gains the TPM’s dictionary attack protection automatically. + +### Virtual Smart Card + +Smart cards are highly secure physical devices that typically store a single certificate and the corresponding private key. Users insert a smart card into a built-in or USB card reader and enter a PIN to unlock it. Windows can then access the card’s certificate and use the private key for authentication or to unlock BitLocker protected data volumes. Smart cards are popular because they provide two-factor authentication that requires both something the user has (that is, the smart card) and something the user knows (such as the smart card PIN). Smart cards are difficult to use, however, because they require purchase and deployment of both smart cards and smart card readers. + +In Windows, the Virtual Smart Card feature allows the TPM to mimic a permanently inserted smart card. The TPM becomes “something the user has” but still requires a PIN. Although physical smart cards limit the number of PIN attempts before locking the card and requiring a reset, a virtual smart card relies on the TPM’s dictionary attack protection to prevent too many PIN guesses. + +For TPM-based virtual smart cards, the TPM protects the use and storage of the certificate private key so that it cannot be copied when it is in use or stored and used elsewhere. Using a component that is part of the system rather than a separate physical smart card can reduce total cost of ownership because it eliminates “lost card” and “card left at home” scenarios while still delivering the benefits of smart card–based multifactor authentication. For users, virtual smart cards are simple to use, requiring only a PIN to unlock. Virtual smart cards support the same scenarios that physical smart cards support, including signing in to Windows or authenticating for resource access. + +### Microsoft Passport + +Microsoft Passport provides authentication methods intended to replace passwords, which can be difficult to remember and easily compromised. In addition, user name-password solutions for authentication often reuse the same user name–password combinations on multiple devices and services; if those credentials are compromised, they are compromised in many places. Microsoft Passport provisions devices one by one and combines the information provisioned on each device (i.e., the cryptographic key) with additional information to authenticate users. On a system that has a TPM, the TPM can protect the key. If a system does not have a TPM, software-based techniques protect the key. The additional information the user supplies can be a PIN value or, if the system has the necessary hardware, biometric information, such as fingerprint or facial recognition. To protect privacy, the biometric information is used only on the provisioned device to access the provisioned key: it is not shared across devices. + +The adoption of new authentication technology requires that identity providers and organizations deploy and use that technology. Microsoft Passport lets users authenticate with their existing Microsoft account, an Active Directory account, a Microsoft Azure Active Directory account, or even non-Microsoft Identity Provider Services or Relying Party Services that support [Fast ID Online V2.0 authentication](http://go.microsoft.com/fwlink/p/?LinkId=533889). + +Identity providers have flexibility in how they provision credentials on client devices. For example, an organization might provision only those devices that have a TPM so that the organization knows that a TPM protects the credentials. The ability to distinguish a TPM from malware acting like a TPM requires the following TPM capabilities (see Figure 1): + +• **Endorsement key**. The TPM manufacturer can create a special key in the TPM called an *endorsement key*. An endorsement key certificate, signed by the manufacturer, says that the endorsement key is present in a TPM that that manufacturer made. Solutions can use the certificate with the TPM containing the endorsement key to confirm a scenario really involves a TPM from a specific TPM manufacturer (instead of malware acting like a TPM. + +• **Attestation identity key**. To protect privacy, most TPM scenarios do not directly use an actual endorsement key. Instead, they use attestation identity keys, and an identity certificate authority (CA) uses the endorsement key and its certificate to prove that one or more attestation identity keys actually exist in a real TPM. The identity CA issues attestation identity key certificates. More than one identity CA will generally see the same endorsement key certificate that can uniquely identify the TPM, but any number of attestation identity key certificates can be created to limit the information shared in other scenarios. + +![TPM Capabilities](images/tpm-capabilities.png) + +*Figure 1: TPM Cryptographic Key Management* + +For Microsoft Passport, Microsoft can fill the role of the identity CA. Microsoft services can issue an attestation identity key certificate for each device, user, and identify provider to ensure that privacy is protected and to help identity providers ensure that device TPM requirements are met before Microsoft Passport credentials are provisioned. + +### BitLocker Drive Encryption + +BitLocker provides full-volume encryption to protect data at rest. The most common device configuration splits the hard drive into several volumes. The operating system and user data reside on one volume that holds confidential information, and other volumes hold public information such as boot components, system information and recovery tools. (These other volumes are used infrequently enough that they do not need to be visible to users.) Without additional protections in place, if the volume containing the operating system and user data is not encrypted, someone can boot another operating system and easily bypass the intended operating system’s enforcement of file permissions to read any user data. + +In the most common configuration, BitLocker encrypts the operating system volume so that if the computer or hard disk is lost or stolen when powered off, the data on the volume remains confidential. When the computer is turned on, starts normally, and proceeds to the Windows logon prompt, the only path forward is for the user to log on with his or her credentials, allowing the operating system to enforce its normal file permissions. If something about the boot process changes, however—for example, a different operating system is booted from a USB device—the operating system volume and user data cannot be read and are not accessible. The TPM and system firmware collaborate to record measurements of how the system started, including loaded software and configuration details such as whether boot occurred from the hard drive or a USB device. BitLocker relies on the TPM to allow the use of a key only when startup occurs in an expected way. The system firmware and TPM are carefully designed to work together to provide the following capabilities: + +• **Hardware root of trust for measurement**. A TPM allows software to send it commands that record measurements of software or configuration information. This information can be calculated using a hash algorithm that essentially transforms a lot of data into a small, statistically unique hash value. The system firmware has a component called the Core Root of Trust for Measurement (CRTM) that is implicitly trusted. The CRTM unconditionally hashes the next software component and records the measurement value by sending a command to the TPM. Successive components, whether system firmware or operating system loaders, continue the process by measuring any software components they load before running them. Because each component’s measurement is sent to the TPM before it runs, a component cannot erase its measurement from the TPM. (However, measurements are erased when the system is restarted.) The result is that at each step of the system startup process, the TPM holds measurements of boot software and configuration information. Any changes in boot software or configuration yield different TPM measurements at that step and later steps. Because the system firmware unconditionally starts the measurement chain, it provides a hardware-based root of trust for the TPM measurements. At some point in the startup process, the value of recording all loaded software and configuration information diminishes and the chain of measurements stops. The TPM allows for the creation of keys that can be used only when the platform configuration registers that hold the measurements have specific values. + +• **Key used only when boot measurements are accurate**. BitLocker creates a key in the TPM that can be used only when the boot measurements match an expected value. The expected value is calculated for the step in the startup process when Windows Boot Manager runs from the operating system volume on the system hard drive. Windows Boot Manager, which is stored unencrypted on the boot volume, needs to use the TPM key so that it can decrypt data read into memory from the operating system volume and startup can proceed using the encrypted operating system volume. If a different operating system is booted or the configuration is changed, the measurement values in the TPM will be different, the TPM will not let Windows Boot Manager use the key, and the startup process cannot proceed normally because the data on the operating system cannot be decrypted. If someone tries to boot the system with a different operating system or a different device, the software or configuration measurements in the TPM will be wrong and the TPM will not allow use of the key needed to decrypt the operating system volume. As a failsafe, if measurement values change unexpectedly, the user can always use the BitLocker recovery key to access volume data. Organizations can configure BitLocker to store the recovery key in Active Directory Domain Services (AD DS). + +Device hardware characteristics are important to BitLocker and its ability to protect data. One consideration is whether the device provides attack vectors when the system is at the logon screen. For example, if the Windows device has a port that allows direct memory access so that someone can plug in hardware and read memory, an attacker can read the operating system volume’s decryption key from memory while at the Windows logon screen. To mitigate this risk, organizations can configure BitLocker so that the TPM key requires both the correct software measurements and an authorization value. The system startup process stops at Windows Boot Manager, and the user is prompted to enter the authorization value for the TPM key or insert a USB device with the value. This process stops BitLocker from automatically loading the key into memory where it might be vulnerable, but has a less desirable user experience. + +Newer hardware and Windows 10 work better together to disable direct memory access through ports and reduce attack vectors. The result is that organizations can deploy more systems without requiring users to enter additional authorization information during the startup process. The right hardware allows BitLocker to be used with the “TPM-only” configuration giving users a single sign-on experience without having to enter a PIN or USB key during boot. + +### Device Encryption + +Device Encryption is the consumer version of BitLocker, and it uses the same underlying technology. How it works is if a customer logs on with a Microsoft account and the system meets Modern Standby hardware requirements, BitLocker Drive Encryption is enabled automatically in Windows 10. The recovery key is backed up in the Microsoft cloud and is accessible to the consumer through his or her Microsoft account. The Modern Standby hardware requirements inform Windows 10 that the hardware is appropriate for deploying Device Encryption and allows use of the “TPM-only” configuration for a simple consumer experience. In addition, Modern Standby hardware is designed to reduce the likelihood that measurement values change and prompt the customer for the recovery key. + +For software measurements, Device Encryption relies on measurements of the authority providing software components (based on code signing from manufacturers such as OEMs or Microsoft) instead of the precise hashes of the software components themselves. This permits servicing of components without changing the resulting measurement values. For configuration measurements, the values used are based on the boot security policy instead of the numerous other configuration settings recorded during startup. These values also change less frequently. The result is that Device Encryption is enabled on appropriate hardware in a user-friendly way while also protecting data. + +### Measured Boot + +Windows 8 introduced Measured Boot as a way for the operating system to record the chain of measurements of software components and configuration information in the TPM through the initialization of the Windows operating system. In previous Windows versions, the measurement chain stopped at the Windows Boot Manager component itself, and the measurements in the TPM were not helpful for understanding the starting state of Windows. + +The Windows boot process happens in stages and often involves third-party drivers to communicate with vendor-specific hardware or implement antimalware solutions. For software, Measured Boot records measurements of the Windows kernel, Early-Launch Anti-Malware drivers, and boot drivers in the TPM. For configuration settings, Measured Boot records security-relevant information such as signature data that antimalware drivers use and configuration data about Windows security features (e.g., whether BitLocker is on or off). + +Measured Boot ensures that TPM measurements fully reflect the starting state of Windows software and configuration settings. If security settings and other protections are set up correctly, they can be trusted to maintain the security of the running operating system thereafter. Other scenarios can use the operating system’s starting state to determine whether the running operating system should be trusted. + +TPM measurements are designed to avoid recording any privacy-sensitive information as a measurement. As an additional privacy protection, Measured Boot stops the measurement chain at the initial starting state of Windows. Therefore, the set of measurements does not include details about which applications are in use or how Windows is being used. Measurement information can be shared with external entities to show that the device is enforcing adequate security policies and did not start with malware. + +The TPM provides the following way for scenarios to use the measurements recorded in the TPM during boot: + +• **Remote Attestation**. Using an attestation identity key, the TPM can generate and cryptographically sign a statement (or*quote*) of the current measurements in the TPM. Windows 10 can create unique attestation identity keys for various scenarios to prevent separate evaluators from collaborating to track the same device. Additional information in the quote is cryptographically scrambled to limit information sharing and better protect privacy. By sending the quote to a remote entity, a device can attest which software and configuration settings were used to boot the device and initialize the operating system. An attestation identity key certificate can provide further assurance that the quote is coming from a real TPM. Remote attestation is the process of recording measurements in the TPM, generating a quote, and sending the quote information to another system that evaluates the measurements to establish trust in a device. Figure 2 illustrates this process. + +When new security features are added to Windows, Measured Boot adds security-relevant configuration information to the measurements recorded in the TPM. Measured Boot enables remote attestation scenarios that reflect the system firmware and the Windows initialization state. + +![Process to Create Evidence of Boot Software and Configuration Using TPM](images/process-to-create-evidence-of-boot-software-and-configuration-using-tpm.png) + +*Figure 2: Process used to create evidence of boot software and configuration using a TPM* + + +### Health Attestation + +Some Windows 10 improvements help security solutions implement remote attestation scenarios. Microsoft provides a Health Attestation service, which can create attestation identity key certificates for TPMs from different manufacturers as well as parse measured boot information to extract simple security assertions, such as whether BitLocker is on or off. The simple security assertions can be used to evaluate device health. + +Mobile device management (MDM) solutions can receive simple security assertions from the Microsoft Health Attestation service for a client without having to deal with the complexity of the quote or the detailed TPM measurements. MDM solutions can act on the security information by quarantining unhealthy devices or blocking access to cloud services such as Microsoft Office 365. + +### Credential Guard + +Credential Guard is a new feature in Windows 10 that helps protect Windows credentials in organizations that have deployed AD DS. Historically, a user’s credentials (e.g., logon password) was hashed to generate an authorization token. The user employed the token to access resources that he or she was permitted to use. One weakness of the token model is that malware that had access to the operating system kernel could look through the computer’s memory and harvest all the access tokens currently in use. The attacker could then use harvested tokens to log on to other machines and collect more credentials. This kind of attack is called a “pass the hash” attack, a malware technique that infects one machine to infect many machines across an organization. + +Similar to the way Microsoft Hyper-V keeps virtual machines (VMs) separate from one another, Credential Guard uses virtualization to isolate the process that hashes credentials in a memory area that the operating system kernel cannot access. This isolated memory area is initialized and protected during the boot process so that components in the larger operating system environment cannot tamper with it. Credential Guard uses the TPM to protect its keys with TPM measurements, so they are accessible only during the boot process step when the separate region is initialized; they are not available for the normal operating system kernel. The local security authority code in the Windows kernel interacts with the isolated memory area by passing in credentials and receiving single-use authorization tokens in return. + +The resulting solution provides defense in depth, because even if malware runs in the operating system kernel, it cannot access the secrets inside the isolated memory area that actually generates authorization tokens handles. The solution does not solve the problem of key loggers because the passwords such loggers capture actually pass through the normal Windows kernel, but when combined with other solutions, such as smart cards for authentication, Credential Guard greatly enhances the protection of credentials in Windows 10. + +## Conclusion + +The TPM adds hardware-based security benefits to Windows 10. When installed on hardware that includes a TPM, Window 10 delivers remarkably improved security benefits. The following table summarizes the key benefits of the TPM’s major features. + + +|Feature | Benefits when used on a system with a TPM| +|---|---| +| Platform Crypto Provider | •     If the machine is compromised, the private key associated with the certificate cannot be copied off the device.
•     The TPM’s dictionary attack mechanism protects PIN values to use a certificate. +| Virtual Smart Card | •     Achieve security similar to that of physical smart cards without deploying physical smart cards or card readers.| +| Microsoft Passport | •     Credentials provisioned on a device cannot be copied elsewhere. • Confirm a device’s TPM before credentials are provisioned. +| BitLocker Drive Encryption | •     Multiple options are available for enterprises to protect data at rest while balancing security requirements with different device hardware. +|Device Encryption | •     With a Microsoft account and the right hardware, consumers’ devices seamlessly benefit from data-at-rest protection. +| Measured Boot | •     A hardware root of trust contains boot measurements that help detect malware during remote attestation. +| Health Attestation | •     MDM solutions can easily perform remote attestation and evaluate client health before granting access to resources or cloud services such as Office 365. +| Credential Guard | •     Defense in depth increases so that even if malware has administrative rights on one machine, it is significantly more difficult to compromise additional machines in an organization. + +
+ +Although some of the aforementioned features have additional hardware requirements (e.g., virtualization support), the TPM is a cornerstone of Windows 10 security. Microsoft and other industry stakeholders continue to improve the global standards associated with TPM and find more and more applications that use it to provide tangible benefits to customers. Microsoft has included support for most TPM features in its version of Windows for the Internet of Things (IoT) called [Windows 10 IoT Core](https://developer.microsoft.com/en-us/windows/iot/iotcore). IoT devices that might be deployed in insecure physical locations and connected to cloud services like [Azure IoT Hub](https://azure.microsoft.com/en-us/documentation/services/iot-hub/) for management can use the TPM in innovative ways to address their emerging security requirements. \ No newline at end of file From b8654460f70549f390b0a88bcae38255012c6e5b Mon Sep 17 00:00:00 2001 From: John Tobin Date: Mon, 24 Jul 2017 16:31:38 -0700 Subject: [PATCH 2/6] Fix image links --- ...oot-software-and-configuration-using-tpm.png | Bin 0 -> 92452 bytes .../tpm/images/tpm-capabilities.png | Bin 0 -> 89782 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 windows/device-security/tpm/images/process-to-create-evidence-of-boot-software-and-configuration-using-tpm.png create mode 100644 windows/device-security/tpm/images/tpm-capabilities.png diff --git a/windows/device-security/tpm/images/process-to-create-evidence-of-boot-software-and-configuration-using-tpm.png b/windows/device-security/tpm/images/process-to-create-evidence-of-boot-software-and-configuration-using-tpm.png new file mode 100644 index 0000000000000000000000000000000000000000..64eb88ebe7c8620847baeb6f9cf45d2795948a36 GIT binary patch literal 92452 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 z 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 literal 0 HcmV?d00001 diff --git a/windows/device-security/tpm/images/tpm-capabilities.png b/windows/device-security/tpm/images/tpm-capabilities.png new file mode 100644 index 0000000000000000000000000000000000000000..b10c66b27c09d6ac4749d5f3cd2484740cec88fb GIT binary patch literal 89782 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⪼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%0D0w18pwCOk=Qre{#@_G~T3rL_PWV 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 literal 0 HcmV?d00001 From d9c02cc8bc14317e1224af7662a0f2ce49de8eb5 Mon Sep 17 00:00:00 2001 From: John Tobin Date: Tue, 25 Jul 2017 09:19:34 -0700 Subject: [PATCH 3/6] Topic title changes to TPM topic. --- .../tpm/how-windows-uses-the-tpm.md | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/windows/device-security/tpm/how-windows-uses-the-tpm.md b/windows/device-security/tpm/how-windows-uses-the-tpm.md index 3e2df019a3..41beb5ef6d 100644 --- a/windows/device-security/tpm/how-windows-uses-the-tpm.md +++ b/windows/device-security/tpm/how-windows-uses-the-tpm.md @@ -12,7 +12,7 @@ author: brianlic-msft # How Windows 10 uses the Trusted Platform Module -The Windows 10 operating system improves most existing security features in the operating system and adds groundbreaking new security features such as Device Guard and Microsoft Passport. It places hardware-based security deeper inside the operating system than previous Windows versions had done, maximizing platform security while increasing usability. To achieve many of these security enhancements, Windows 10 makes extensive use of the Trusted Platform Module (TPM). This article offers a brief overview of the TPM, describes how it works, and discusses the benefits that TPM brings to Windows 10—as well as the cumulative security impact of running Windows 10 on a PC that contains a TPM. +The Windows 10 operating system improves most existing security features in the operating system and adds groundbreaking new security features such as Device Guard and Windows Hello for Business. It places hardware-based security deeper inside the operating system than previous Windows versions had done, maximizing platform security while increasing usability. To achieve many of these security enhancements, Windows 10 makes extensive use of the Trusted Platform Module (TPM). This article offers a brief overview of the TPM, describes how it works, and discusses the benefits that TPM brings to Windows 10—as well as the cumulative security impact of running Windows 10 on a PC that contains a TPM. **In this topic:** @@ -20,7 +20,7 @@ The Windows 10 operating system improves most existing security features in the - TPM in Windows 10: - Platform Crypto Provider - Virtual Smart Card - - Microsoft Passport + - Windows Hello for Business - BitLocker Drive Encryption - Device Encryption - Measured Boot @@ -56,7 +56,7 @@ Certification programs for TPMs—and technology in general—continue to evolve The security features of Windows 10 combined with the benefits of a TPM offer practical security and privacy benefits. The following sections start with major TPM-related security features in Windows 10 and go on to describe how key technologies use the TPM to enable or increase security. -### Platform Crypto Provider +## Platform Crypto Provider Historically, Windows has included a cryptography framework called *Cryptographic API: Next Generation* (CNG), the basic approach of which is to implement cryptographic algorithms in different ways but with a common application programming interface (API). Applications that use cryptography can use the common API without knowing the details of how an algorithm is implemented much less the algorithm itself. @@ -70,7 +70,7 @@ The Platform Crypto Provider, introduced in the Windows 8 operating system, expo These TPM features give Platform Crypto Provider distinct advantages over software-based solutions. A practical way to see these benefits in action is when using certificates on a Windows 10 device. On platforms that include a TPM, Windows can use the Platform Crypto Provider to provide certificate storage. Certificate templates can specify that a TPM use the Platform Crypto Provider to protect the key associated with a certificate. In mixed environments, where some computers might not have a TPM, the certificate template could simply prefer the Platform Crypto Provider over the standard Windows software provider. If a certificate is configured as not able to be exported, the private key for the certificate is restricted and cannot be exported from the TPM. If the certificate requires a PIN, the PIN gains the TPM’s dictionary attack protection automatically. -### Virtual Smart Card +## Virtual Smart Card Smart cards are highly secure physical devices that typically store a single certificate and the corresponding private key. Users insert a smart card into a built-in or USB card reader and enter a PIN to unlock it. Windows can then access the card’s certificate and use the private key for authentication or to unlock BitLocker protected data volumes. Smart cards are popular because they provide two-factor authentication that requires both something the user has (that is, the smart card) and something the user knows (such as the smart card PIN). Smart cards are difficult to use, however, because they require purchase and deployment of both smart cards and smart card readers. @@ -78,11 +78,11 @@ In Windows, the Virtual Smart Card feature allows the TPM to mimic a permanently For TPM-based virtual smart cards, the TPM protects the use and storage of the certificate private key so that it cannot be copied when it is in use or stored and used elsewhere. Using a component that is part of the system rather than a separate physical smart card can reduce total cost of ownership because it eliminates “lost card” and “card left at home” scenarios while still delivering the benefits of smart card–based multifactor authentication. For users, virtual smart cards are simple to use, requiring only a PIN to unlock. Virtual smart cards support the same scenarios that physical smart cards support, including signing in to Windows or authenticating for resource access. -### Microsoft Passport +## Windows Hello for Business -Microsoft Passport provides authentication methods intended to replace passwords, which can be difficult to remember and easily compromised. In addition, user name-password solutions for authentication often reuse the same user name–password combinations on multiple devices and services; if those credentials are compromised, they are compromised in many places. Microsoft Passport provisions devices one by one and combines the information provisioned on each device (i.e., the cryptographic key) with additional information to authenticate users. On a system that has a TPM, the TPM can protect the key. If a system does not have a TPM, software-based techniques protect the key. The additional information the user supplies can be a PIN value or, if the system has the necessary hardware, biometric information, such as fingerprint or facial recognition. To protect privacy, the biometric information is used only on the provisioned device to access the provisioned key: it is not shared across devices. +Windows Hello for Business provides authentication methods intended to replace passwords, which can be difficult to remember and easily compromised. In addition, user name - password solutions for authentication often reuse the same user name – password combinations on multiple devices and services; if those credentials are compromised, they are compromised in many places. Windows Hello for Business provisions devices one by one and combines the information provisioned on each device (i.e., the cryptographic key) with additional information to authenticate users. On a system that has a TPM, the TPM can protect the key. If a system does not have a TPM, software-based techniques protect the key. The additional information the user supplies can be a PIN value or, if the system has the necessary hardware, biometric information, such as fingerprint or facial recognition. To protect privacy, the biometric information is used only on the provisioned device to access the provisioned key: it is not shared across devices. -The adoption of new authentication technology requires that identity providers and organizations deploy and use that technology. Microsoft Passport lets users authenticate with their existing Microsoft account, an Active Directory account, a Microsoft Azure Active Directory account, or even non-Microsoft Identity Provider Services or Relying Party Services that support [Fast ID Online V2.0 authentication](http://go.microsoft.com/fwlink/p/?LinkId=533889). +The adoption of new authentication technology requires that identity providers and organizations deploy and use that technology. Windows Hello for Business lets users authenticate with their existing Microsoft account, an Active Directory account, a Microsoft Azure Active Directory account, or even non-Microsoft Identity Provider Services or Relying Party Services that support [Fast ID Online V2.0 authentication](http://go.microsoft.com/fwlink/p/?LinkId=533889). Identity providers have flexibility in how they provision credentials on client devices. For example, an organization might provision only those devices that have a TPM so that the organization knows that a TPM protects the credentials. The ability to distinguish a TPM from malware acting like a TPM requires the following TPM capabilities (see Figure 1): @@ -94,9 +94,9 @@ Identity providers have flexibility in how they provision credentials on client *Figure 1: TPM Cryptographic Key Management* -For Microsoft Passport, Microsoft can fill the role of the identity CA. Microsoft services can issue an attestation identity key certificate for each device, user, and identify provider to ensure that privacy is protected and to help identity providers ensure that device TPM requirements are met before Microsoft Passport credentials are provisioned. +For Windows Hello for Business, Microsoft can fill the role of the identity CA. Microsoft services can issue an attestation identity key certificate for each device, user, and identify provider to ensure that privacy is protected and to help identity providers ensure that device TPM requirements are met before Windows Hello for Business credentials are provisioned. -### BitLocker Drive Encryption +## BitLocker Drive Encryption BitLocker provides full-volume encryption to protect data at rest. The most common device configuration splits the hard drive into several volumes. The operating system and user data reside on one volume that holds confidential information, and other volumes hold public information such as boot components, system information and recovery tools. (These other volumes are used infrequently enough that they do not need to be visible to users.) Without additional protections in place, if the volume containing the operating system and user data is not encrypted, someone can boot another operating system and easily bypass the intended operating system’s enforcement of file permissions to read any user data. @@ -110,13 +110,13 @@ Device hardware characteristics are important to BitLocker and its ability to pr Newer hardware and Windows 10 work better together to disable direct memory access through ports and reduce attack vectors. The result is that organizations can deploy more systems without requiring users to enter additional authorization information during the startup process. The right hardware allows BitLocker to be used with the “TPM-only” configuration giving users a single sign-on experience without having to enter a PIN or USB key during boot. -### Device Encryption +## Device Encryption -Device Encryption is the consumer version of BitLocker, and it uses the same underlying technology. How it works is if a customer logs on with a Microsoft account and the system meets Modern Standby hardware requirements, BitLocker Drive Encryption is enabled automatically in Windows 10. The recovery key is backed up in the Microsoft cloud and is accessible to the consumer through his or her Microsoft account. The Modern Standby hardware requirements inform Windows 10 that the hardware is appropriate for deploying Device Encryption and allows use of the “TPM-only” configuration for a simple consumer experience. In addition, Modern Standby hardware is designed to reduce the likelihood that measurement values change and prompt the customer for the recovery key. +Device Encryption is the consumer version of BitLocker, and it uses the same underlying technology. How it works is if a customer logs on with a Microsoft account and the system meets InstantGo hardware requirements, BitLocker Drive Encryption is enabled automatically in Windows 10. The recovery key is backed up in the Microsoft cloud and is accessible to the consumer through his or her Microsoft account. The InstantGo hardware requirements inform Windows 10 that the hardware is appropriate for deploying Device Encryption and allows use of the “TPM-only” configuration for a simple consumer experience. In addition, InstantGo hardware is designed to reduce the likelihood that measurement values change and prompt the customer for the recovery key. For software measurements, Device Encryption relies on measurements of the authority providing software components (based on code signing from manufacturers such as OEMs or Microsoft) instead of the precise hashes of the software components themselves. This permits servicing of components without changing the resulting measurement values. For configuration measurements, the values used are based on the boot security policy instead of the numerous other configuration settings recorded during startup. These values also change less frequently. The result is that Device Encryption is enabled on appropriate hardware in a user-friendly way while also protecting data. -### Measured Boot +## Measured Boot Windows 8 introduced Measured Boot as a way for the operating system to record the chain of measurements of software components and configuration information in the TPM through the initialization of the Windows operating system. In previous Windows versions, the measurement chain stopped at the Windows Boot Manager component itself, and the measurements in the TPM were not helpful for understanding the starting state of Windows. @@ -137,13 +137,13 @@ When new security features are added to Windows, Measured Boot adds security-rel *Figure 2: Process used to create evidence of boot software and configuration using a TPM* -### Health Attestation +## Health Attestation Some Windows 10 improvements help security solutions implement remote attestation scenarios. Microsoft provides a Health Attestation service, which can create attestation identity key certificates for TPMs from different manufacturers as well as parse measured boot information to extract simple security assertions, such as whether BitLocker is on or off. The simple security assertions can be used to evaluate device health. Mobile device management (MDM) solutions can receive simple security assertions from the Microsoft Health Attestation service for a client without having to deal with the complexity of the quote or the detailed TPM measurements. MDM solutions can act on the security information by quarantining unhealthy devices or blocking access to cloud services such as Microsoft Office 365. -### Credential Guard +## Credential Guard Credential Guard is a new feature in Windows 10 that helps protect Windows credentials in organizations that have deployed AD DS. Historically, a user’s credentials (e.g., logon password) was hashed to generate an authorization token. The user employed the token to access resources that he or she was permitted to use. One weakness of the token model is that malware that had access to the operating system kernel could look through the computer’s memory and harvest all the access tokens currently in use. The attacker could then use harvested tokens to log on to other machines and collect more credentials. This kind of attack is called a “pass the hash” attack, a malware technique that infects one machine to infect many machines across an organization. @@ -158,9 +158,9 @@ The TPM adds hardware-based security benefits to Windows 10. When installed on h |Feature | Benefits when used on a system with a TPM| |---|---| -| Platform Crypto Provider | •     If the machine is compromised, the private key associated with the certificate cannot be copied off the device.
•     The TPM’s dictionary attack mechanism protects PIN values to use a certificate. +| Platform Crypto Provider | •     If the machine is compromised, the private key associated with the certificate cannot be copied off the device.
•     The TPM’s dictionary attack mechanism protects PIN values to use a certificate. | Virtual Smart Card | •     Achieve security similar to that of physical smart cards without deploying physical smart cards or card readers.| -| Microsoft Passport | •     Credentials provisioned on a device cannot be copied elsewhere. • Confirm a device’s TPM before credentials are provisioned. +| Windows Hello for Business | •     Credentials provisioned on a device cannot be copied elsewhere. • Confirm a device’s TPM before credentials are provisioned. | BitLocker Drive Encryption | •     Multiple options are available for enterprises to protect data at rest while balancing security requirements with different device hardware. |Device Encryption | •     With a Microsoft account and the right hardware, consumers’ devices seamlessly benefit from data-at-rest protection. | Measured Boot | •     A hardware root of trust contains boot measurements that help detect malware during remote attestation. From 9daaa2416ce71b3ed3dba884e5082b1e2ff8cb78 Mon Sep 17 00:00:00 2001 From: John Tobin Date: Tue, 25 Jul 2017 10:28:05 -0700 Subject: [PATCH 4/6] Removed In this topic list. TOC changes --- windows/device-security/TOC.md | 2 +- .../tpm/how-windows-uses-the-tpm.md | 21 ++++--------------- 2 files changed, 5 insertions(+), 18 deletions(-) diff --git a/windows/device-security/TOC.md b/windows/device-security/TOC.md index 5e2eb5e7ac..ddd4bb48f1 100644 --- a/windows/device-security/TOC.md +++ b/windows/device-security/TOC.md @@ -650,7 +650,7 @@ ## [Trusted Platform Module](tpm/trusted-platform-module-top-node.md) ### [Trusted Platform Module Overview](tpm/trusted-platform-module-overview.md) ### [TPM fundamentals](tpm/tpm-fundamentals.md) -### [How Windows 10 uses the Trusted Platform Module](tpm/how-windows-uses-the-tpm.md) +### [How Windows 10 uses the TPM](tpm/how-windows-uses-the-tpm.md) ### [TPM Group Policy settings](tpm/trusted-platform-module-services-group-policy-settings.md) ### [Back up the TPM recovery information to AD DS](tpm/backup-tpm-recovery-information-to-ad-ds.md) ### [Manage TPM commands](tpm/manage-tpm-commands.md) diff --git a/windows/device-security/tpm/how-windows-uses-the-tpm.md b/windows/device-security/tpm/how-windows-uses-the-tpm.md index 41beb5ef6d..49cce2a92b 100644 --- a/windows/device-security/tpm/how-windows-uses-the-tpm.md +++ b/windows/device-security/tpm/how-windows-uses-the-tpm.md @@ -14,27 +14,14 @@ author: brianlic-msft The Windows 10 operating system improves most existing security features in the operating system and adds groundbreaking new security features such as Device Guard and Windows Hello for Business. It places hardware-based security deeper inside the operating system than previous Windows versions had done, maximizing platform security while increasing usability. To achieve many of these security enhancements, Windows 10 makes extensive use of the Trusted Platform Module (TPM). This article offers a brief overview of the TPM, describes how it works, and discusses the benefits that TPM brings to Windows 10—as well as the cumulative security impact of running Windows 10 on a PC that contains a TPM. -**In this topic:** - - - TPM Overview - - TPM in Windows 10: - - Platform Crypto Provider - - Virtual Smart Card - - Windows Hello for Business - - BitLocker Drive Encryption - - Device Encryption - - Measured Boot - - Health Attestation - - Credential Guard - - Conclusion **See also:** - - [Windows 10 Specifications](https://www.microsoft.com/en-us/windows/windows-10-specifications) + - [Windows 10 Specifications](https://www.microsoft.com/windows/windows-10-specifications) - - [TPM Fundamentals](https://technet.microsoft.com/en-us/library/jj889441.aspx) + - [TPM Fundamentals](https://technet.microsoft.com/library/jj889441.aspx) - - [TPM Recommendations](https://technet.microsoft.com/itpro/windows/keep-secure/tpm-recommendations)  + - [TPM Recommendations](tpm-recommendations.md)  ## TPM Overview @@ -169,4 +156,4 @@ The TPM adds hardware-based security benefits to Windows 10. When installed on h
-Although some of the aforementioned features have additional hardware requirements (e.g., virtualization support), the TPM is a cornerstone of Windows 10 security. Microsoft and other industry stakeholders continue to improve the global standards associated with TPM and find more and more applications that use it to provide tangible benefits to customers. Microsoft has included support for most TPM features in its version of Windows for the Internet of Things (IoT) called [Windows 10 IoT Core](https://developer.microsoft.com/en-us/windows/iot/iotcore). IoT devices that might be deployed in insecure physical locations and connected to cloud services like [Azure IoT Hub](https://azure.microsoft.com/en-us/documentation/services/iot-hub/) for management can use the TPM in innovative ways to address their emerging security requirements. \ No newline at end of file +Although some of the aforementioned features have additional hardware requirements (e.g., virtualization support), the TPM is a cornerstone of Windows 10 security. Microsoft and other industry stakeholders continue to improve the global standards associated with TPM and find more and more applications that use it to provide tangible benefits to customers. Microsoft has included support for most TPM features in its version of Windows for the Internet of Things (IoT) called [Windows 10 IoT Core](https://developer.microsoft.com/windows/iot/iotcore). IoT devices that might be deployed in insecure physical locations and connected to cloud services like [Azure IoT Hub](https://azure.microsoft.com/documentation/services/iot-hub/) for management can use the TPM in innovative ways to address their emerging security requirements. \ No newline at end of file From 6e79b2d956ec1296715f6b00ae5801e10a88cbd8 Mon Sep 17 00:00:00 2001 From: John Tobin Date: Tue, 25 Jul 2017 10:38:49 -0700 Subject: [PATCH 5/6] Created relative link --- windows/device-security/tpm/how-windows-uses-the-tpm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows/device-security/tpm/how-windows-uses-the-tpm.md b/windows/device-security/tpm/how-windows-uses-the-tpm.md index 49cce2a92b..760e7da080 100644 --- a/windows/device-security/tpm/how-windows-uses-the-tpm.md +++ b/windows/device-security/tpm/how-windows-uses-the-tpm.md @@ -19,7 +19,7 @@ The Windows 10 operating system improves most existing security features in the - [Windows 10 Specifications](https://www.microsoft.com/windows/windows-10-specifications) - - [TPM Fundamentals](https://technet.microsoft.com/library/jj889441.aspx) + - [TPM Fundamentals](tpm-fundamentals.md) - [TPM Recommendations](tpm-recommendations.md)  From 5e6a316d8de80120a25fa4905bb13daacb80404d Mon Sep 17 00:00:00 2001 From: John Tobin Date: Fri, 28 Jul 2017 09:49:29 -0700 Subject: [PATCH 6/6] Verbiage edits. Fix table bullet. --- .../device-security/tpm/how-windows-uses-the-tpm.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/windows/device-security/tpm/how-windows-uses-the-tpm.md b/windows/device-security/tpm/how-windows-uses-the-tpm.md index 760e7da080..db3b67446a 100644 --- a/windows/device-security/tpm/how-windows-uses-the-tpm.md +++ b/windows/device-security/tpm/how-windows-uses-the-tpm.md @@ -27,9 +27,9 @@ The Windows 10 operating system improves most existing security features in the The TPM is a cryptographic module that enhances computer security and privacy. Protecting data through encryption and decryption, protecting authentication credentials, and proving which software is running on a system are basic functionalities associated with computer security. The TPM helps with all these scenarios and more. -Traditionally, TPMs have been discrete chips soldered to a computer’s motherboard. Such implementations allow the computer’s original equipment manufacturer (OEM) to evaluate and certify the TPM separate from the rest of the system. Although discrete TPM implementations are still common, they can be problematic for integrated devices that are small or have low power consumption. Some newer TPM implementations integrate TPM functionality into the same chipset as other platform components while still providing logical separation similar to discrete TPM chips. +Historically, TPMs have been discrete chips soldered to a computer’s motherboard. Such implementations allow the computer’s original equipment manufacturer (OEM) to evaluate and certify the TPM separate from the rest of the system. Although discrete TPM implementations are still common, they can be problematic for integrated devices that are small or have low power consumption. Some newer TPM implementations integrate TPM functionality into the same chipset as other platform components while still providing logical separation similar to discrete TPM chips. -TPMs are passive: they receive commands and return responses. To realize the full benefit of a TPM, the OEM must carefully integrate system hardware and firmware with the TPM to send it commands and react to its responses. TPMs were originally designed to provide security and privacy benefits to a platform’s owner and users, but newer versions can provide security and privacy benefits to the system hardware itself. Before it can be used for advanced scenarios, however, a TPM must be provisioned. Windows 10 automatically provisions a TPM, but if the user reinstalls the operating system, he or she may need to tell the operating system to explicitly provision the TPM again before it can use all the TPM’s features. +TPMs are passive: they receive commands and return responses. To realize the full benefit of a TPM, the OEM must carefully integrate system hardware and firmware with the TPM to send it commands and react to its responses. TPMs were originally designed to provide security and privacy benefits to a platform’s owner and users, but newer versions can provide security and privacy benefits to the system hardware itself. Before it can be used for advanced scenarios, a TPM must be provisioned. Windows 10 automatically provisions a TPM, but if the user reinstalls the operating system, he or she may need to tell the operating system to explicitly provision the TPM again before it can use all the TPM’s features. The Trusted Computing Group (TCG) is the nonprofit organization that publishes and maintains the TPM specification. The TCG exists to develop, define, and promote vendor-neutral, global industry standards that support a hardware-based root of trust for interoperable trusted computing platforms. The TCG also publishes the TPM specification as the international standard ISO/IEC 11889, using the Publicly Available Specification Submission Process that the Joint Technical Committee 1 defines between the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). @@ -45,7 +45,7 @@ The security features of Windows 10 combined with the benefits of a TPM offer pr ## Platform Crypto Provider -Historically, Windows has included a cryptography framework called *Cryptographic API: Next Generation* (CNG), the basic approach of which is to implement cryptographic algorithms in different ways but with a common application programming interface (API). Applications that use cryptography can use the common API without knowing the details of how an algorithm is implemented much less the algorithm itself. +Historically, Windows includes a cryptography framework called *Cryptographic API: Next Generation* (CNG), the basic approach of which is to implement cryptographic algorithms in different ways but with a common application programming interface (API). Applications that use cryptography can use the common API without knowing the details of how an algorithm is implemented much less the algorithm itself. Although CNG sounds like a mundane starting point, it illustrates some of the advantages that a TPM provides. Underneath the CNG interface, Windows or third parties supply a cryptographic provider (that is, an implementation of an algorithm) implemented as software libraries alone or in a combination of software and available system hardware or third-party hardware. If implemented through hardware, the cryptographic provider communicates with the hardware behind the software interface of CNG. @@ -136,7 +136,7 @@ Credential Guard is a new feature in Windows 10 that helps protect Windows crede Similar to the way Microsoft Hyper-V keeps virtual machines (VMs) separate from one another, Credential Guard uses virtualization to isolate the process that hashes credentials in a memory area that the operating system kernel cannot access. This isolated memory area is initialized and protected during the boot process so that components in the larger operating system environment cannot tamper with it. Credential Guard uses the TPM to protect its keys with TPM measurements, so they are accessible only during the boot process step when the separate region is initialized; they are not available for the normal operating system kernel. The local security authority code in the Windows kernel interacts with the isolated memory area by passing in credentials and receiving single-use authorization tokens in return. -The resulting solution provides defense in depth, because even if malware runs in the operating system kernel, it cannot access the secrets inside the isolated memory area that actually generates authorization tokens handles. The solution does not solve the problem of key loggers because the passwords such loggers capture actually pass through the normal Windows kernel, but when combined with other solutions, such as smart cards for authentication, Credential Guard greatly enhances the protection of credentials in Windows 10. +The resulting solution provides defense in depth, because even if malware runs in the operating system kernel, it cannot access the secrets inside the isolated memory area that actually generates authorization tokens. The solution does not solve the problem of key loggers because the passwords such loggers capture actually pass through the normal Windows kernel, but when combined with other solutions, such as smart cards for authentication, Credential Guard greatly enhances the protection of credentials in Windows 10. ## Conclusion @@ -147,7 +147,7 @@ The TPM adds hardware-based security benefits to Windows 10. When installed on h |---|---| | Platform Crypto Provider | •     If the machine is compromised, the private key associated with the certificate cannot be copied off the device.
•     The TPM’s dictionary attack mechanism protects PIN values to use a certificate. | Virtual Smart Card | •     Achieve security similar to that of physical smart cards without deploying physical smart cards or card readers.| -| Windows Hello for Business | •     Credentials provisioned on a device cannot be copied elsewhere. • Confirm a device’s TPM before credentials are provisioned. +| Windows Hello for Business | •     Credentials provisioned on a device cannot be copied elsewhere.
•     Confirm a device’s TPM before credentials are provisioned. | | BitLocker Drive Encryption | •     Multiple options are available for enterprises to protect data at rest while balancing security requirements with different device hardware. |Device Encryption | •     With a Microsoft account and the right hardware, consumers’ devices seamlessly benefit from data-at-rest protection. | Measured Boot | •     A hardware root of trust contains boot measurements that help detect malware during remote attestation.