Source: http://technodocbox.com/Network_Security/70425126-Payment-card-industry-pci-software-based-pin-entry-on-cots-security-requirements-version-1-0-january-2018.html
Timestamp: 2019-01-16 18:51:12
Document Index: 408140000

Matched Legal Cases: ['art 1', 'art 1', 'art 3', 'art 2', 'art 1', 'art 3', 'art 1']

Payment Card Industry (PCI) Software-based PIN Entry on COTS. Security Requirements. Version 1.0. January PDF
Payment Card Industry (PCI) Software-based PIN Entry on COTS. Security Requirements. Version 1.0. January 2018
Download "Payment Card Industry (PCI) Software-based PIN Entry on COTS. Security Requirements. Version 1.0. January 2018"
1 Payment Card Industry (PCI) Software-based PIN Entry on COTS Security Version 1.0 January 2018
2 Document Changes Date Version Description January Initial Release PCI Software-Based PIN Entry on COTS Security, v1.0 Page i
3 Contents Document Changes... i Introduction... 1 Purpose... 1 Audience... 1 Usage Conventions... 1 Glossary... 2 Publications and References Scope of Overview Background Security Model Traditional Hardware PIN Entry vs. Software-based PIN Entry Software-based PIN Entry Solution Overview Security Objective and Assets Security Objective Security Assets Security and Module 1: Core Protection of Sensitive Services Random Numbers Acceptable Cryptography Key Management Secure Software Development Practices Module 2: PIN Cardholder Verification Method (CVM) Application Development Secure Provisioning Tamper Checks PIN Entry PIN Encryption PCI Software-Based PIN Entry on COTS Security, v1.0 Page ii
4 2.6 Audit Logs Module 3: Back-end Systems Monitoring/Attestation PIN CVM Application Remote Software Attestation Components COTS System Baseline Attestation Mechanism Type 1 Attestation of SCRP Type 2 Attestation of COTS Type 3 Monitoring Environment Attestation of PIN CVM Application Basic Protections Operational Management Module 4: Solution Integration Pairing of Disparate Components Secure Channels PIN CVM Solution Module 5: Back-end Systems Processing Security of Cardholder Data and PIN Processing Environment Module 6: Secure Card Reader (SCRP) Use of a PCI PTS Approved Device Appendix A Monitoring Environment Basic Protections A.1 Governance and Security Policies A.2 Secure Networks A.3 Vulnerability Management A.4 Access Controls A.5 Physical Security A.6 Incident Response A.7 Audit Logs Appendix B Appendix C Minimum and Equivalent Key Sizes and Strengths for Approved Algorithms Appendix D Application Security PCI Software-Based PIN Entry on COTS Security, v1.0 Page iii
5 Introduction Purpose The purpose of this document is to provide a set of principles, requirements and an evaluation methodology for a mobile payment-acceptance solution where the PIN Cardholder Verification Method (CVM) entry is performed on a commercial off-the-shelf (COTS) device (e.g., smartphone, tablet) in a merchant attended environment. The security requirements described in this document provide a security risk framework to protect the confidentiality and integrity of sensitive payment information captured and processed on a PIN CVM Solution operating in a production environment. Audience The security requirements outlined in this document apply to entities developing PIN CVM Applications, evaluator labs, assessors and organizations managing and deploying PIN CVM Solutions. A separate document, Software-based PIN Entry on COTS Test, is available to provide more granularity and visibility into the testing processes performed by software-based PIN Entry on COTS evaluation laboratories. The security requirements and testing requirements have been developed for specific audiences, therefore it should be noted that there is not a one-to-one mapping between the documents. The two should be read in combination to fully understand the requirements and the methods for evaluation. Usage Conventions This document has been prepared with certain conventions. Within this document, the following terms have a specific meaning when used: MUST: Defines a mandatory requirement. SHOULD: Defines a recommendation. Please note: This standard does not supersede the PCI standards, nor do these requirements constitute a recommendation from the Council or obligate merchants, service providers, or financial institutions to purchase or deploy such solutions. As with all other PCI standards, any mandates, regulations, or rules regarding these requirements are provided by the participating payment brands. PCI Software-based PIN Entry on COTS Security, v1.0 Page 1
6 Glossary Term Definition AES Ahead of Time (AoT) compilation Asymmetric Encryption Attestation Attestation System Attestation component Abbreviation for Advanced Encryption Standard. Block cipher used in symmetric key cryptography adopted by NIST in November 2001 as FIPS PUB 197 (or FIPS 197). Compiling of code at some arbitrary time prior to the need to execute the code. Also known as public key cryptography. A cryptographic technique that uses two related transformations, a public transformation (defined by the public key) and a private transformation (defined by the private key). The two transformations have the property that, given the public transformation, it is not computationally feasible to derive the private transformation. A system based on asymmetric cryptographic techniques can be an encipherment system, a signature system, a combined encipherment and signature system or a key-agreement system. With asymmetric cryptographic techniques, there are four elementary transformations: sign and verify for signature systems, and encipher and decipher for encipherment systems. The signature and the decipherment transformation are kept private by the owning entity, whereas the corresponding verification and encipherment transformations are published. There exist asymmetric cryptosystems (e.g., RSA) where the four elementary functions may be achieved by only two transformations: one private transformation suffices for both signing and decrypting messages, and one public transformation suffices for both verifying and encrypting messages. However, this does not conform to the principle of key separation and, where used, the four elementary transformations and the corresponding keys should be kept separate. The act of attestation in this standard is the interaction between a verifier (possibly server-based) and a prover (possibly client-based) to determine the current security state/behavior of the prover based on predefined measurements and thresholds provided by the prover. The set of components that perform attestation processing for the PIN CVM Solution. Its components include the PIN CVM Application attestation component and the back-end attestation component the latter works in close association with the back-end monitoring system. An element of the PIN CVM Solution that performs attestation processing. Authentication Account data The process for unambiguously establishing the identity of an entity, process, organization or person Account data consists of cardholder data and/or sensitive authentication data. PCI Software-based PIN Entry on COTS Security, v1.0 Page 2
7 Term Back-end Systems Cardholder Cardholder Data Cardholder Verification Method (CVM) CDE Clear text Commercial off-the-shelf (COTS) Device Consumer Compiling Correlatable Data COTS Platform Deterministic Random Number Generator (DRNG) Definition The set of systems providing the server-side functionality of the PIN CVM Solution. These functionalities include monitoring, attestation and transaction processing. In addition, the back-end systems include the IT environments necessary to support the functionalities of the PIN CVM Solution. Customer to whom a payment card or card proxy is issued, or any individual authorized to use a payment card or card proxy. At a minimum, cardholder data consists of the full PAN. Cardholder data may also appear in the form of the full PAN plus any of the following: cardholder name, expiration date and/or service code. See Sensitive Authentication Data for additional data elements that may be transmitted or processed (but not stored) as part of a payment transaction. A method of authenticating a cardholder during a transaction. Common CVMs include signature, PIN and biometrics. Acronym for cardholder data environment. The people, processes and technology that store, process or transmit cardholder data or sensitive authentication data. Intelligible data that has meaning and can be read or acted upon without the application of decryption. Also known as plaintext. A mobile device (e.g., smartphone or tablet) that is designed for mass-market distribution, and is not designed specifically for payment processing. Individual purchasing goods, services, or both. Translation of computer code from one format into another format. Usually used to take human-readable source code and transform this into a format that can be executed by a specific platform or execution environment. In the context of this standard, this is data that would facilitate the correlation of a PIN with a separate transaction or database that contains cardholder data such that interception of this data and the entered PIN could reasonably lead to the association of the PIN with its PAN. Examples might include time and date stamps, device identifying information and loyalty program identifiers. The hardware of the COTS device. See Pseudo Random Number Generator (PRNG). PCI Software-based PIN Entry on COTS Security, v1.0 Page 3
8 Term Dual Control ECC EMV EMVCo Encryption Environment Execution environment Full screen mode Graphical user interface (GUI) Definition A process of using two or more separate entities (usually persons), operating in concert, to protect sensitive functions or information. Each entity is equally responsible for the physical protection of materials involved in vulnerable processes. No single person must be able to access or to use the materials (e.g., cryptographic key). For manual key generation, conveyance, loading, storage and retrieval, dual control requires split knowledge of the key among the entities. No single person can gain control of a protected item or process. Also see Split Knowledge. Acronym for Elliptic Curve Cryptography. Approach to public-key cryptography based on elliptic curves over finite fields. A payment standard that implements cryptographic authentication, published by EMVCo. A privately owned corporation. The current members of EMVCo are JCB International, American Express, Mastercard, China UnionPay, Discover Financial and Visa Inc. Process of converting information into an unintelligible form except to holders of a specific cryptographic key. Use of encryption protects information between the encryption process and the decryption process (the inverse of encryption) against unauthorized disclosure. The IT environment supporting one or more functionalities of the PIN CVM Solution such as the IT environment hosting the back-end monitoring system. The set of hardware and software on which a program is executed. This may be provided through hardware alone, include a combination of hardware and software elements, or be virtualized and implemented in software such that the execution environment can be similarly executed on different hardware platforms. Where the PIN CVM application that is currently executing is in control of the primary display and input mechanism(s) of the COTS device. A full screen mode may still include display features that are controlled and/or managed by the COTS Operating System, but may not include any display from other applications. It is assumed by this standard that full screen mode mitigates the use of any separately controlled or managed displays or input mechanisms to display prompts for data entry, or capture such data entry. A user interface that is provided through images and text. PCI Software-based PIN Entry on COTS Security, v1.0 Page 4
9 Term Definition Hash Hash-based message authentication code (HMAC) Integrity Just-in-time (JIT) compilation Key agreement Key generation Key installation Key loading Key management Key variant A (mathematical) function that is a non-secret algorithm, which takes any arbitrary-length message as input and produces a fixed-length hash result. Approved hash functions satisfy the following properties: a) One-way It is computationally infeasible to find any input that maps to any pre-specified output. b) Collision-resistant It is computationally infeasible to find any two distinct inputs (e.g., messages) that map to the same output. It may be used to reduce a potentially long message into a hash value or message digest that is sufficiently compact to be input into a digital-signature algorithm. A good hash is such that the results of applying the function to a (large) set of values in a given domain will be evenly (and randomly) distributed over a smaller range. A message authentication code that is produced using hash algorithms rather than a symmetric cryptographic algorithm. Defined in FIPS Ensuring consistency of data; in particular, preventing unauthorized and undetected creation, alteration, or destruction of data. Compiling of code immediately prior to the execution of that code. A key-establishment protocol for establishing a shared secret key between entities in such a way that neither of them can predetermine the value of that key. That is, the secret key is a function of information contributed by two or more participants. Creation of a cryptographic key either from a random number generator or through a one-way process utilizing another cryptographic key. Note: Key variants are not allowed. Loading of a key that is protected with white-box cryptography, usually embedded within an application. Process by which a key is manually or electronically transferred into a secure cryptographic device. The activities involving the handling of cryptographic keys and other related security parameters (e.g., initialization vectors, counters) during the entire life cycle of the keys, including their generation, storage, distribution, loading and use, deletion, destruction and archiving. A new key formed by a process (which need not be secret) with the original key, such that one or more of the non-parity bits of the new key differ from the corresponding bits of the original key. PCI Software-based PIN Entry on COTS Security, v1.0 Page 5
10 Term Key Check Value (KCV) Key wrapping Man-in-the-middle (MITM) attack Mandatory access control Manual key loading MAC Mobile device M of N Monitor Definition A value used to identify a key without revealing any bits of the actual key itself. Check values are computed by encrypting an all-zero block using the key or component as the encryption key, using the leftmost n-bits of the result; where n is at most 24 bits (6 hexadecimal digits/3 bytes TDEA and 5 bytes AES). This method may be used for TDEA. TDEA may optionally use, and AES uses a technique where the KCV is calculated by MACing an all-zero block using the CMAC algorithm as specified in ISO (see also NIST SP B). The check value will be the leftmost n-bits of the result, where n is at most 40 bits (10 hexadecimal digits). The block cipher used in the CMAC function is the same as the block cipher of the key itself. A TDEA key or a component of a TDEA key will be MAC d using the TDEA block cipher, while a 128-bit AES key or component will be MAC d using the AES-128 block cipher. Also known as Key verification check (KVC). A format for storage and transmission of symmetric cryptographic keys that embeds metadata about the key type and use, as well as providing cryptographic authentication across the encrypted key and this metadata to ensure that the key and its purpose cannot be altered. An attack method where a malicious third party interposes between two other communicating parties and modifies the data sent between them. Access control by which the operating system constrains the ability of a process or thread to access or perform an operation on objects or targets such as files, directories, TCP/UDP ports, shared memory segments, IO devices, etc., though an authorization rule enforced by the operating system kernel. Loading of a cryptographic key using two or more full-length components or use m of n shares, entered directly through a secure physical mechanism. In cryptography, an acronym for message authentication code. A small piece of information used to authenticate a message. In the context of this standard, see COTS. An m-of-n scheme is a component or share allocation scheme where m is the number of shares or components necessary to form the key, and n is the number of the total set of shares or components related to the key. Management of the shares or components must be sufficient to ensure that no one person can gain access to enough of the item to form the key alone. In this standard, the monitor is an implementation that may be shared across different execution environments, which provides a level of validation and assurance of the execution environment in which the PIN CVM Application executes, providing a level of software-based tamper detection and response. The monitor must be capable of being regularly updated to detect and respond to new threats. PCI Software-based PIN Entry on COTS Security, v1.0 Page 6
11 Term Definition NRNG Obfuscation Offline Payment Transaction Offline PIN verification Online PIN verification Operating system (OS) PCI DSS PCI PIN Personal identification number (PIN) PIN CVM Application PIN CVM Solution ( The Solution ) A random number generator that has access to an entropy source and (when working properly) produces output numbers (or bit strings) that have full entropy. Sometimes called a True Random Number (or Bit) Generator. Contrast with a deterministic random number generator (DRNG). Protection applied to a process or data through increasing the complexity of interpreting that data. For the purposes of this standard, obfuscation refers to code obfuscation, where computational processes have been applied to increase the complexity of a code set to reduce the ability to reverse-engineer that code. In an offline EMV transaction, the card and terminal communicate and use issuer-defined risk parameters that are set in the card to determine whether the transaction can be authorized. Offline transactions are used when terminals do not have online connectivity e.g., at a ticket kiosk or in countries where telecommunications costs are high. A method of PIN verification that sends the PIN entered by the cardholder to the EMV chip on the card. A process used to verify the cardholder's PIN by sending an encrypted PIN value to the issuer or its agent for validation in an authorization request. System software that manages the underlying hardware and software resources and provides common services for programs. Common operating systems in a COTS environment include, but are not limited to, Android and ios. The Data Security Standard published and maintained by the Payment Card Industry Security Standards Council. PCI DSS provides a baseline of technical and operational requirements designed to protect account data. A PCI standard that contains a complete set of requirements for the secure management, processing and transmission of personal identification number (PIN) data during online and offline payment card transaction processing at ATMs and attended and unattended point-of-sale (POS) terminals. A numeric personal identification code that authenticates a cardholder. A PIN consists only of decimal digits. All parts of the code, regardless of execution environment, that are installed and executed on the merchant COTS device for the purposes of accepting and processing the cardholder s PIN The client-side monitor and/or a payment application may be incorporated into the PIN CVM Application or may be a separate application. The set of components and processes that support the entry of PIN data in to a COTS device. At a minimum, The Solution includes SCRP, PIN CVM Application and the back-end systems and environments that perform attestation, monitoring and payment and online PIN processing. PCI Software-based PIN Entry on COTS Security, v1.0 Page 7
12 Term Physical Unclonable Function (PUF) Definition An intrinsic value or transformation that can be provided by a system that is a function of some physical process, such that it cannot be replicated or altered. PIN block Defined formats used for offline and online PIN processing and transmission, as defined in ISO 9564 Part 1. Private key Pseudo Random Number Generator (PRNG) Public key Public key cryptography Random Number Generator (RNG) Replay attack RSA Secure Boot Secure card reader PIN (SCRP) Secure channel A cryptographic key used with a public-key cryptographic algorithm that is uniquely associated with an entity and is not made public. In the case of an asymmetric signature system, the private key defines the signature transformation. In the case of an asymmetric encipherment system, the private key defines the decipherment transformation. A deterministic algorithm to generate a sequence of numbers with little or no discernible pattern in the numbers, except for broad statistical properties. A cryptographic key used with a public-key cryptographic algorithm that is uniquely associated with an entity and may be made public. In the case of an asymmetric signature system, the public key defines the verification transformation. In the case of an asymmetric encipherment system, the public key defines the encipherment transformation. A key that is publicly known is not necessarily globally available. The key may only be available to all members of a pre-specified group. See Asymmetric Encryption. The process of generating values with a high level of entropy and that satisfy various qualifications, using cryptographic and hardware-based noise mechanisms. This results in a value in a set that has equal probability of being selected from the total population of possibilities, hence unpredictable. A replay attack (also known as playback attack) is a form of network attack in which a valid data transmission is maliciously or fraudulently repeated or delayed. An asymmetric encryption algorithm that was defined by the cryptographers Rivest, Shamir and Aldeman. See Trusted Boot. A physical card reader that has been assessed compliant to the PCI PTS SCRP Approval Class and is listed on the PTS approval website. A cryptographically protected connection between two processing elements. PCI Software-based PIN Entry on COTS Security, v1.0 Page 8
13 Term Secure cryptographic device (SCD) Secure reading and exchange of data (SRED) Sensitive Authentication Data Sensitive Data Sensitive Services Split Knowledge Software Protection Mechanisms Solution Provider Supported Platform Symmetric encryption Tamper-detection Tamper-responsive TDES Definition A physically and logically protected hardware device that provides a secure set of cryptographic services. It includes the set of hardware, firmware, software, or some combination thereof that implements cryptographic logic, cryptographic processes, or both, including cryptographic algorithms. Examples include ANSI X9.24 part 1 or ISO Module 4 of the PCI PTS POI Standard, detailing the requirements for devices that protect account data. Security-related information including but not limited to card validation codes/values, full track data (from the magnetic stripe or equivalent on a chip), PINs and PIN blocks used to authenticate cardholders and/or authorize payment card transactions. For the purposes of this standard, sensitive data is cryptographic materials e.g., keys, certificates, cardholder PINs or cardholder data. Those functions that affect underlying processes that support the protection of sensitive data e.g., cryptographic keys, PINs and cardholder data. A condition under which two or more entities separately have key components or key shares that individually convey no knowledge of the resultant cryptographic key. The information needed to perform a process such as key formation is split among two or more people. No individual has enough information to gain knowledge of any part of the actual key that is formed. Methods and implementations used to prevent the reverse engineering and modification of software. See Obfuscation and White-box cryptography as examples of commonly used software protection mechanisms. An entity that develops, manages and/or deploys PIN CVM Solutions. The most current operating system supported by the operating system vendor. A cryptographic key that is used in symmetric cryptographic algorithms. The same symmetric key that is used for encryption is also used for decryption. Also known as secret key. The automatic determination by a cryptographic module that an attempt has been made to compromise the security of the module. A characteristic that provides an active response to the detection of an attack, thereby preventing a success. An algorithm specified in ISO/IEC : Information technology Security techniques Encryption algorithms Part 3: Block ciphers. (PIN) PCI Software-based PIN Entry on COTS Security, v1.0 Page 9
14 Term Test (TR) The Solution Third Party App Stores True Random Number Generator (TRNG) Trusted Boot Trusted Execution Environment (TEE) User interface (UI) White-box cryptography Definition that dictate the set of tests that must be performed to confirm compliance with a specific standard. See PIN CVM Solution. App stores that are not supported by the COTS OS vendor and are not pre-installed by the device manufacturer. A device that generates random numbers from a physical process, such as a Physical Unclonable Function, rather than a deterministic algorithm. A cryptographic process where the bootloader verifies the integrity of all components (e.g., kernel objects) loaded during operating system start-up process, before loading. Also known as Verified Boot and Secure Boot (e.g., Google or Apple). A Trusted Execution Environment provides security features such as isolated execution environment for Trusted Applications ( Trustlets ). It protects security assets from general software attacks, defines safeguards as to data and functions that a program can access and resists a set of defined threats. The set of the human-machine interfaces that allows for interaction between a person and a computerized system. A method used to obfuscate a cryptographic algorithm and key with the intent that the determination of the key value is computationally complex. PCI Software-based PIN Entry on COTS Security, v1.0 Page 10
15 Publications and References PCI SSC Standards DSS DESV HSM PA-DSS PIN POI Data Security Standard Designated Entities Supplemental Validation (Appendix A3 in PCI DSS v3.2) PIN Transaction Security (PTS) Hardware Security Module Security Payment Application Data Security Standard PTS PIN Security PTS Point of Interaction Module Security Other Industry Security References CERTSECCODE OWASPMOB10 OWASPMOB2015 SCSECSWDEV ANSI X9.24 FIPS FIPS FIPS SEI CERT Coding Standards OWASP Mobile Security Project Top Ten Mobile Risks OWASP Mobile Security Project 2015 Scratchpad The Ten Best Practices for Secure Software Development Certification Programs/CSSLP/ISC2_WPIV.pdf Retail Financial Services Key Management Federal Information Processing Standard, Security for Cryptographic Modules Federal Information Processing Standard, Digital Signature Standard (DSS) Federal Information Processing Standard, The Keyed-Hash Message Authentication Code, (HMAC) PCI Software-based PIN Entry on COTS Security, v1.0 Page 11
16 Other Industry Security References FIPS PUB 197 (or FIPS 197 ) ISECOM ISSEA SSE-CMM ISO ISO ISO ISO ISO ISO/IEC ISO/IEC ISO/IEC ISO/IEC MITRE s Common Vulnerabilities and Exposures list NIST SP B NIST SP NIST SP NIST SP Federal Information Processing Standards Publication 197 ADVANCED ENCRYPTION STANDARD (AES) Institute for Security and Open Methodologies International Systems Security Engineering Association Systems Security Engineering Capability Maturity Model Financial Services, Key Management Financial Services, Secure Cryptographic Devices Banking for message authentication using symmetric techniques Financial services -- Personal Identification Number (PIN) management and security -- Part 2: Approved algorithms for PIN encipherment Financial services -- Personal Identification Number (PIN) management and security -- Part 1: Basic principles and requirements for PINs in card-based systems Information technology -- Security techniques -- Key management Information technology -- Security techniques -- Random bit generation Information technology Security techniques Encryption algorithms Part 3: Block ciphers Federal Information Processing Standard, Advanced Encryption Standard MITRE Common Vulnerabilities and Exposures database National Institute of Standards and Technology, Special Report on Recommendation for Block Cipher Modes of Operation: the CMAC Mode for Authentication National Institute of Standards and Technology, Special Report on Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations National Institute of Standards and Technology, Special Report on Recommendation for Key Management, Part 1: General (Revision 3) National Institute of Standards and Technology, Special Report on A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications PCI Software-based PIN Entry on COTS Security, v1.0 Page 12
17 Other Industry Security References NIST Special Publication A NIST Special Publication NIST s National Vulnerability Database Open Source Security Testing Methodology Manual (OSSTMM) U.S. Department of Homeland Security s US-CERT National Institute of Standards and Technology, Special Report on Recommendation for Random Number Generation Using Deterministic Random Bit Generators National Institute of Standards and Technology, Special Report on Framework for Designing Cryptographic Key Management Systems National Institute of Standards and Technology National Vulnerability Database United States Computer Emergency Readiness Team PCI Software-based PIN Entry on COTS Security, v1.0 Page 13
18 Scope of These security requirements apply to the individual components and processes that make up the production Software-based PIN CVM Solution, referred to as "The Solution, that allows a cardholder to enter their PIN into a COTS device for authorization of contact or contactless EMV card payment transactions. For the purposes of these requirements, a COTS device is defined as a mobile device (e.g., smartphone or tablet). Software-based PIN entry (online or offline PIN) is only permitted for contact and contactless EMV chip transactions processed online. Offline payment transactions are prohibited, e.g., EMV offline transaction authorization or batch authorizations. Overview Background In traditional merchant payment PIN entry scenarios, cardholder authentication data e.g., a PIN is entered into a device specifically designed for the protection of PIN data e.g., a PIN entry device (PED). The payment industry recognizes PEDs that have been independently tested and comply with detailed security requirements developed by PCI to ensure the confidentiality, integrity and availability of the PIN data. Traditional PEDs rely on hardware protections as the primary mechanisms to ensure the security of PIN data within the device. Merchants use traditional PEDs to support cardholder PIN acceptance. In recent years, there has been a substantial increase in mobile payments. Mobile payment acceptance enables the processing of payment transactions, e.g., using a smartphone or tablet, that performs the functions of an electronic point-of-sale terminal. Software-based PIN entry solutions allow for the processing of mobile payment-acceptance transactions with a cardholder s PIN. Software-based cardholder authentication provides an alternative for chip and PIN markets by providing a software application interface on a merchant s COTS device to capture and process a cardholder s PIN. These solutions rely on a combination of mechanisms and security controls including but not limited to device hardware, application software and independent management and oversight of the entire process to ensure the security of the transaction and PIN data. The following figure highlights the security model differences (and reliance on controls) between a traditional PED implementation (hardware PIN) and a software-based PIN entry solution (software PIN) for the protection of PIN data. PCI Software-based PIN Entry on COTS Security, v1.0 Page 14
19 Security Model Traditional Hardware PIN Entry vs. Software-based PIN Entry In a hardware PIN entry security model, the protection of the PIN is primarily the responsibility of the specialized PED hardware and software (including the firmware). Some hardware-based solutions may utilize backend systems to supplement their security posture; however, traditional hardware PIN entry devices have all protections within the device itself. Detection mechanisms that identify when security controls are not in an approved state operate within the PED, and the response for the hardware security model is to disable the PED from processing PIN-based transactions and to clear all sensitive data from the device. All PIN security protections are performed within the PED itself. In a software-based PIN entry security model, the device where the PIN is entered and initially protected remains an important component. In addition, mechanisms that support attestation (to ensure the security mechanisms are intact and operational), detection (to notify when anomalies are present) and response (controls to alert and take action), play an equally significant role in the overall software-based PIN entry solution security model. Furthermore, having the device connected online provides opportunities to extend these capabilities to back-end monitoring systems. There are, however, individual components of a software solution where there is limited control for example, the underlying mobile device hardware platform and operating system. Given that these are COTS devices, there is an assumption that these components (e.g., COTS operating system, configuration of hardware components of a phone, etc.) are unknown or untrusted. It must be assumed that an attacker has full access to the software that executes on any unknown or untrusted platform (where that software may be a binary executable, interpreted bytecode, etc., as it is loaded onto the platform). Therefore, it is considered important for the software to provide inherent protections that complicate reverse engineering and tampering of the code execution flow. This may include, but is not limited to, protections using obfuscation of the code, internal integrity checks for code and processing flows and encryption of code segments, etc. Figure 1: Hardware- and Software-based PIN Entry PCI Software-based PIN Entry on COTS Security, v1.0 Page 15
20 Software-based PIN entry architecture relies upon the following components that combine to provide for protection, attestation, detection and response controls: 1. An SCRP device that supports The Solution. The SCRP is SRED-enabled and connected to the COTS device. The SCRP provides: a. Protection of cardholder data sourced from the payment instrument b. Decryption of encrypted PIN data received from the PIN CVM Application c. Translation of PIN data into required PIN-block format (This would only apply to online PIN verification processing.) d. Re-encryption of PIN data 2. A PIN CVM Application that resides on the COTS device and: a. Provides a secure user interface for PIN entry b. Performs initial encryption of the PIN c. Passes attestation health-check data about the SCRP, COTS platform and PIN CVM Application to the monitoring environment d. Contains software protection mechanisms to maintain its own integrity against attack e. Delivers the encrypted PIN to the SCRP to be decrypted/re-encrypted in order for it to be passed to the back-end monitoring and attestation systems 3. A commercial off-the-shelf (COTS) device that is operated by the merchant to run the PIN CVM Application as well as the SCRP. The COTS may have a Trusted Execution Environment (TEE) built in but it is not a requirement. 4. A set of back-end systems that perform functions for the PIN CVM Solution such as: Attestation Processes attestation health-check data from the PIN CVM Application and enforces pre-established security policies Monitoring Monitors and provisions security controls to detect, alert and mitigate suspected or actual threats and attacks against the SCRP, PIN CVM Application and the COTS device Processing Processing environment that receives encrypted cardholder and PIN data (for online PIN) from the SCRP PCI Software-based PIN Entry on COTS Security, v1.0 Page 16
21 Figure 2: Example of PIN CVM Solution Architecture PCI Software-based PIN Entry on COTS Security, v1.0 Page 17
22 Software-based PIN Entry Solution Overview The following diagram illustrates the flow of a PIN transaction in a software-based PIN entry solution. Steps 1-7 are detailed on the following page. Figure 3: Software-based PIN Entry Solution PCI Software-based PIN Entry on COTS Security, v1.0 Page 18
23 1. PIN CVM Application and SCRP are initialized with their financial keys (this may be asynchronous with the transaction). 2. A secure communication channel between the PIN CVM Application and the back-end monitoring system is established. 3. The back-end monitoring system determines the security status of the mobile payment-acceptance platform (SCRP, COTS platform and PIN CVM Application) using the attestation component. 4. An EMV card, contact or contactless, or an NFC-enabled mobile EMV payment device is presented to the SCRP. 5. The PIN CVM Application PIN entry component renders a PIN entry screen on the COTS platform and the cardholder enters their PIN using the rendered PIN pad from the PIN CVM Application. The resulting information is enciphered and sent to the SCRP by the PIN CVM Application. 6. The SRED component of the SCRP enciphers the account data using preloaded data-encryption keys according to either Figure 4 (online PIN verification) or Figure 5 (offline PIN verification) below. 7. The payment transaction is processed. Figure 4: Online PIN Verification An enciphered PIN block is generated by the SCRP component (online PIN processing, contact and contactless EMV) using preloaded PIN-encryption keys. The SRED data and enciphered PIN block (online PIN processing only) are transmitted to an HSM within the back-end payment processing system. OR (See following page) PCI Software-based PIN Entry on COTS Security, v1.0 Page 19
24 Figure 5: Offline PIN Verification The SCRP performs offline PIN verification (contact EMV only). The SRED data is transmitted to an HSM within the back-end payment processing system. PCI Software-based PIN Entry on COTS Security, v1.0 Page 20
25 Security Objective and Assets Security Objective The objective of these security requirements is to provide reasonable assurance that Software-based PIN CVM Solutions provide adequate security mechanisms, controls and mitigations to protect the consumer s cardholder data, PIN and other assets e.g., cryptographic keys, correlatable data, etc. from unauthorized disclosure, modification or misuse by providing an attack surface that may be perceived as uneconomic for an attacker to penetrate. It is recognized that an attacker may have other objectives e.g., self-promotion, nation-state attack, etc. and may expend more resources to circumvent established controls than is warranted by the direct financial fraud payback. For the COTS components, the objective of these security requirements is to provide reasonable assurance that these components have been kept up to date and have not been modified from what had been deployed by the COTS provider. Security Assets There are a number of assets to be protected within the payment ecosystem for example PIN, PAN and full-track-equivalent data. The Payment Card Industry Security Standards Council (PCI SSC) defines security requirements for the protection of this data as well as the protection of other sensitive assets, such as cryptographic keys used to protect cardholder data and PIN data. There may be additional assets that require protection as determined by national or regional regulations e.g., personally identifiable information (PII). Protection of these additional assets is out of scope of these requirements. Assets are categorized as requiring one or more security services: Confidentiality (C), Integrity (I) and Integrity with the addition of auditability/authentication (I+). The Solution Provider may identify other security services, for example confidentiality of binaries. The following are assets to be protected by The Solution. The Solution Provider may implement additional controls for other assets not referenced in this list. Security Assets PIN data (C and I) Attestation data (C and I+) Private and secret keys or session keys and related parameters (static and ephemeral) used during PIN processing and cardholder data encryption. (C and I) PIN CVM Application (C and I+) Cryptographic keys and related parameters (static and ephemeral) used for communications processing and to secure transport to/from the COTS device. (C and I+) Account Data (C and I) PCI Software-based PIN Entry on COTS Security, v1.0 Page 21
26 Security and The following security requirements have been defined to address attack scenarios known at time of publication. As detailed in the requirements, Solution Providers have ongoing responsibility to proactively perform risk assessments to identify potential flaws or gaps that may be introduced into software-based PIN entry scenarios that may be associated with changes in technology or identification of new threats and vulnerabilities. A guidance column is provided to describe the intent or security objective behind each of the security requirements. This column contains guidance only and is intended to assist with understanding the intent of each requirement. The guidance in this column does not replace, limit or extend the actual security requirement. The requirements defined in this standard have been categorized to align with major components that support the security of the overall solution and to support security evaluations if components are the responsibility of different organizations. Categories include: Module Title Description 1. Core General requirements that define security controls applicable to the overall solution. The Solution Provider is responsible to ensure these requirements are in place. 2. PIN Cardholder Verification Method (CVM) Application The PIN CVM Application requirements apply to the software application(s) that reside on the COTS device and communicate with the SCRP and the back-end attestation component and back-end monitoring systems. The PIN CVM Application is responsible for displaying the PIN entry screen, masking entered PIN values in the display, initial encryption of the entered PIN, collecting and reporting attestation information. 3. Back-end Systems Monitoring/Attestation 4. Solution Integration 5. Back-end Systems Processing The back-end monitoring system supports the management of The Solution. It interacts with the PIN CVM Application on the COTS device and facilitates detecting anomalous and potentially fraudulent activity, including suspicious transactions. The back-end attestation ensures that the required security controls and mitigation mechanisms on the COTS device, SCRP and functions within the PIN CVM Application that are necessary to protect cardholder and PIN data are intact and functioning as intended. The back-end attestation component requires integration with the PIN CVM Application to send the attestation data to it. Overall oversight, governance and responsibility of The Solution is necessary to ensure all security controls are in place and functioning as intended. The Solution Provider is responsible for ensuring these requirements are implemented. The back-end payment processing systems are the processes/environments that perform and complete PIN and payment processing. PCI Software-based PIN Entry on COTS Security, v1.0 Page 22
27 Module 1: Core Control Objective: All solution security requirements must work in concert to protect the cardholder s PIN and support a secure mobile payment-acceptance transaction. If applicable, all parties involved in The Solution are required to adhere to stated requirements in this section. The Solution Providers are ultimately responsible for ensuring the stated requirements are met. The Solution in its entirety must be assessed against these Core. 1.1 Protection of Sensitive Services Sensitive services are those functions that affect underlying processes that support the protection of sensitive data e.g., cryptographic keys, PINs and cardholder data. All sensitive services must be identified and support the confidentiality, integrity and availability of The Solution. Entering or exiting sensitive services must not reveal or otherwise affect sensitive data. 1. Documentation detailing all sensitive services implemented by the components and solution must exist and be updated as necessary, or at least annually. At a minimum, this must include key loading (for all in-scope areas), signing of applications and SCRP firmware and signing of updates to the monitor services or configuration. 2. A dual-control process must exist for the generation of cryptographic keys used for digital signatures to verify the authenticity and integrity of security assets. Proper identification of processes and functions that are fundamental to the security of The Solution is necessary to ensure common understanding and assist with identifying roles and responsibilities for proper management and security of these processes and/or functions. Without this information, implementation of security controls may be overlooked which could lead to unauthorized disclosure or compromise of The Solution. Use of COTS devices introduces additional risks as it relates to privacy, unauthorized disclosure and exposure to vulnerabilities. Therefore, it is imperative that trust is established through the use of digital signatures to ensure The Solution components know which other components are authentic and the data exchange to and from components is intact and has not been altered. Use of dual control and cryptographic keys further enhances the trust of digital signatures by ensuring the processes to create the digital signatures conform to industry acceptable practices. Refer to Appendix C Minimum and Equivalent Key Sizes and Strengths for Approved Algorithms for more information. PCI Software-based PIN Entry on COTS Security, v1.0 Page 23
28 1.2 Random Numbers Random numbers must be generated using a process that ensures sufficient entropy (as defined in NIST SP800-22) and lack of statistical correlation. This applies to all components and parts of The Solution where random numbers are generated for security functions. 1. Documentation to identify all random number generation functions and reliance on random data used in The Solution must exist and be maintained. 2. Any random numbers used on the COTS device for security purposes must be seeded from a value provided from the RNG on the SCRP that has been validated through PCI PTS testing. Note: This excludes the establishment of secure communication protocols where the use of the native OS RNG is out of the control of the PIN CVM Application. 3. Random number generation used by the PIN CVM Application must utilize a PRNG that was originally seeded by a random seed provided by the SCRP. It must not be possible to replay or reuse the same seed except by chance. Identification of all security functions implemented within The Solution that require or rely upon the use of random data is necessary to ensure the process used is sound and cannot be circumvented since cryptography depends on the creation of secret data that is known to only those that have a need to know and unknown and unpredictable to others. Random number generation sets the security baseline that other security controls rely upon. This may include the generation of padding data (for example, for use in certificates, key bundles, EMV unpredictable numbers, or offline encrypted PIN blocks), generation of cryptographic keys, randomization of the keypad, etc. Random generator attacks used by malicious users seek out weak random number implementations and have been the cause of a number of high profile vulnerabilities, therefore the quality of the random numbers generated by the system is vital. Sufficient entropy is not assured in COTS devices (e.g., NIST SP800-22), therefore confirmation that the secret value, e.g., seeded value, is from a trusted and tested source such as the SCRP is necessary and the seed length is at least 256-bits. A PCI PTS SCRP is a hardware security component that has been independently tested to ensure it meets the most stringent of requirements. Combination of the seeds should ensure that entropy of the seeds is maintained. An example of how this might be done is XOR ing the two seed values. This may be combined with a further seed generated on the COTS platform. The random number seed obtained from the SCRP may be used by the white-box deterministic random number generator to generate any cryptographic keys or random numbers required by the PIN CVM Application. However, each time the PIN CVM Application is started, it should be reseeded from the SCRP. The seed value should never be stored in non-volatile memory. The secret value (e.g., random seed) used by the PIN CVM Application random number generation process is critical to ensure appropriate entropy for the process as well as protect against the ability to obtain the key itself. The PIN CVM Application may have limited controls due to the nature of software; therefore, the PIN CVM Application relies on obtaining the initial random seed from a secure cryptographic device that has had trust established. An SCRP provides the required high confidence and trust. PCI Software-based PIN Entry on COTS Security, v1.0 Page 24
29 1.2 Random Numbers 4. The PIN CVM Application must use an assessed random number generator (RNG) where cryptographic algorithms require the use of random numbers. 5. Any random numbers used on a back-end system for security purposes must be seeded from a value provided initially from the RNG on at least a FIPS Level 3 or PCI-approved HSM. Note: Random numbers that are not directly relied upon for security of the customer PIN, cardholder data or monitoring/attestation data e.g., random values used in TLS sessions, where the data being transmitted is otherwise protected using application level cryptography do not need to meet this requirement. Random number generators come in two types: Deterministic RNG (DRNG) and Nondeterministic RNG (NRNG). A DRNG depends on an initial seed value, provided by an NRNG, from which it generates pseudo random numbers. In this case, the seed value comes from the SCRP. Vendors should avoid implementing their own DRNG and where possible implement well known sources or algorithms as specified in NIST a. The PIN CVM Application RNG should be tested for fitness of purpose against a known standard (e.g., NIST , NIST a). RNG generation performed in a FIPS Level 3 (or above) or PCI-approved HSM that has been independently tested ensures the process meets the most stringent of requirements. PCI Software-based PIN Entry on COTS Security, v1.0 Page 25
30 1.3 Acceptable Cryptography Cryptography is an important factor to ensure confidentiality and integrity of data and processes that support The Solution, therefore it is important that only industry-recognized standard cryptographic algorithms and implementation methodologies be the basis for any security services used in The Solution. This applies to all components and processes used in The Solution. 1. Documentation must exist to identify cryptographic processes and operations used by The Solution for security services. At a minimum, documentation must include the following: Cryptographic algorithms used and where Identification of all keys, the complete key hierarchy, their purposes and crypto periods Key-generation or key-agreement processes 2. All security services provided by The Solution must adhere to Appendix C Minimum and Equivalent Key Sizes and Strengths for Approved Algorithms. Information that identifies cryptographic operations used in The Solution assist with ensuring controls are appropriately tested as well as identify areas where cryptography may be beneficial to increase The Solution s security assurance. Comprehensive documentation that includes (but is not limited to) cipher suites or other cryptographic algorithms implemented includes transport layer protocols that are used for secure channels. Use of recognized cryptographic methods provides assurance that The Solution adheres to industry-tested and accepted algorithms, along with appropriate key lengths that provide effective key strength and proper key-management practices. Proprietary or home-grown algorithms do not provide this assurance and are not permitted. Refer to industry standards and best practices for information on cryptography and secure protocols (e.g., NIST SP and SP , OWASP, etc.). The Solution should utilize the most robust and current encryption algorithms and key sizes to withstand modern day attacks and ensure support into the future. Legacy algorithms have a shelf life and may lose some of their effectiveness over time. AES, ECC and RSA are algorithms recognized as being the current industry standard. PCI Software-based PIN Entry on COTS Security, v1.0 Page 26
31 1.3 Acceptable Cryptography 3. Where key-derivation methods are used for creating a unique key, the method must not be reversible (e.g., using XOR operations only) and provide perfect forward secrecy. 4. Hash functions must be implemented in accordance with Appendix C Minimum and Equivalent Key Sizes and Strengths for Approved Algorithms. 5. Encryption used to protect PIN data or tamperdetection data must be performed using a key that is unique per transaction/communication session and per PIN CVM Application instance. 6. All messages that are communicated between components in The Solution must use a unique key per session. 7. Security must not be provided to any key by a key of lesser strength. While the Base Derivation Key (BDK) does not provide for forward secrecy, the use of derived unique key per transaction (DUKPT) as a key-management method does provide forward secrecy. The Initial PIN Encryption Key (IPEK) creates a set of keys that are irreversibly derived from it. The actual keys used for PIN encryption are these keys, each of which is only used once. The compromise of any one of these keys does not compromise future or past data encrypted by any other derived key. The BDK is created within and only resides within an HSM. The IPEK is securely loaded into an SCD (in the case of this standard, the SCRP), is unique to the SCD and never leaves the SCD. As long as the BDK and IPEK remain secure, DUKPT as a keymanagement method meets the requirement for forward secrecy as specified in this standard. Use of hash functions ensures the integrity of data and since hash functions are based on mathematical and cryptographic functions, use of recognized, accepted methods is necessary. This does not preclude the use of other hash types, such as MD5, where collision resistance is not required as a security feature e.g., fingerprinting or file comparison. Requiring unique keys per transaction and communication session ensures that in the event the keys were compromised they could not be used in subsequent transactions. Replay attacks occur when a malicious user is able to reuse session keys for multiple messages. Requiring unique keys per session thwarts this type of attack. Encryption keys lose their strength when protected by a key of lesser strength, making it easier for malicious users to perform attacks against the weaker key to reveal its content. For example, assume a data-encryption key is created with 256-bit AES security, which is considered a strong key and can with high probability withstand current data attacks. However, if that same dataencryption key was then transported with a key-encryption key (KEK) that was only 128-bit AES key strength, the data-encryption key has then lost its strength and is providing only 128-bit of security making it much more vulnerable to attack. Organizations should always consider this when managing keys to avoid inadvertently lessening the key strength. PCI Software-based PIN Entry on COTS Security, v1.0 Page 27
32 1.3 Acceptable Cryptography 8. Public keys/certificates used by The Solution must be signed or MAC d. Self-signed certificates are prohibited unless the integrity and authenticity of the key is ensured. Mechanisms must be in place to identify expired certificates and prevent continued processing when certificates are expired. 9. Each key must have a single unique purpose, and no keys may be used for multiple purposes (such as both signing and encrypting data). 10. Keys used to validate authenticity must be unique to each end point so that an (H)MAC or signature generated at one end would always be different if generated by the other end point. 11. Any key signature or fingerprint values returned by the system must not reveal any details about the key itself. 12. KCVs must be limited to five bytes or less, and hash algorithms used for key fingerprints (on secret or private keys) must implement SHA256 or stronger (or be truncated to no more than five bytes). Public keys/certificates due to the nature of their use, are public and may be sent and received in clear text. Requiring encryption to preserve the confidentiality of the public key/certificate is not required. However, it is important that the public key is protected to ensure it is genuine (authentic) and has not been substituted or altered (integrity). Digital signatures or message authentication codes, e.g., MAC is a method that provides this assurance. Self-signed certificates that exist as part of the base COTS platform on which the PIN CVM application is executed are excluded from this requirement. However, the self-signed certificates must not be relied upon for security services by the PIN CVM application unless the integrity and authenticity of the key is ensured. Expired certificates introduce unacceptable risk to The Solution. Primarily expire certificates could be an indication of a malicious user being an imposter of a legitimate organization/process which may associated with phishing for sensitive information. Keys used to encrypt PIN data should not be used for any other operation (such as generalpurpose data encryption, or monitor message encryption, etc.). Requiring unique keys for dedicated purposes ensures that in the event a key has been compromised the exposure is limited. (H)MAC or digital signatures protect against tampering of the message and impersonation so there is assurance that the information contained in the message is intact and was not intercepted or altered in transit. Ensuring unique keys are used for each endpoint further enhances this protection by limiting exposure in the event the key was compromised to only the affected endpoint and not the entire population. Since the secrecy of the encryption key is paramount to the overall security, a key signature or fingerprint is the value that is shared between organizations to ensure the key that was conveyed is the key that was received. Key signatures or fingerprints require this value that is shared to be public therefore, the key signature and fingerprint is created in a way that would not disclose information about the underlying encryption key or be allowed to be used to reverse-engineer the value of the key itself. Key-check values (KCVs) also referred to as key-verification checks (KVCs) are values that are produced as a result of a key-generation process. Since encryption keys cannot be in clear text, KCVs provide a mechanism to validate the authenticity of a key without disclosing specific information about the key itself. Limiting the number of bytes for the KCV ensures that the ability to retrieve the underlying clear-text key value from the KCV is greatly reduced. PCI Software-based PIN Entry on COTS Security, v1.0 Page 28
33 1.4 Key Management Successful key management is critical to the security of cryptographic systems. It is a fundamental factor for ensuring the confidentiality and integrity of data and processes that support The Solution. Hardware key-management practices must conform to industry-accepted practices as described in this section. Where software encryption is used e.g., white-box cryptography key-management practices must adhere to requirements specified in Module 2 of this standard. Cryptographic keys are securely managed using recognized industry requirements throughout the cryptographic lifecycle including, but not limited to: 1. Generation 2. Distribution/conveyance 3. Storage 4. Established crypto periods 5. Replacement/rotation when the crypto period is reached 6. Escrow/backup 7. Key compromise and recovery 8. Emergency procedures to destroy and replace keys 9. Accountability and audit This applies to the following components in The Solution: the PIN CVM Application and all relative back-end systems (attestation component, monitoring and processing). PCI Software-based PIN Entry on COTS Security, v1.0 Page 29
34 1.4 Key Management 1. Documentation, including procedures, must exist to support all key lifecycle management functions used by The Solution. 2. Key-management techniques must protect the integrity and purpose of symmetric cryptographic keys. A good key-management process, whether manual or automated, is based on industry standards and addresses all elements of the key lifecycle that include, distribution/conveyance, storage, established crypto periods, replacement/rotation when the crypto period is reached, escrow/backup, key compromise and recovery, emergency procedures to destroy and replace keys and accountability and audit. For example, the generation should conform to industry-recognized procedures that ensure the confidentiality of the underlying key. Keys should only be distributed in a secure manner, never in the clear and only to designated custodians or recipients. Procedures for distribution apply both within and external to the entity. Secret and private keys should be encrypted with a strong keyencrypting key that is stored separately, be stored within a secure cryptographic device (such as a HSM), or be stored as at least two full-length key components or key shares, in accordance with an industry-accepted method. A crypto period should be identified for each key based on a risk assessment, and keys changed when this period is reached. Additionally, keys should be destroyed and replaced immediately upon suspicion of a compromise. Secure key-management practices include minimizing access to keys to the fewest number of custodians necessary, enforcing split knowledge and dual control for activities involving clear-text keys or key components and defining roles and responsibilities for Key Custodians and Key Managers. For cryptographic keys to provide security reliably, they require mechanisms that 1) associate the type/purpose of the key to ensure that the key is not used for other than its designated purpose e.g., as a key-encrypting key or as a PIN-encrypting key and 2) protect the integrity of the key including the order of key parts for algorithms that require multiple key parts e.g., Triple Data Encryption Algorithm (TDEA). Methods of encryption of symmetric keys may not by themselves provide for key-block integrity or authentication. Because of this, there are known attacks that weaken the underlying key s security, resulting in key recovery and thereby compromising the encrypted data. Key blocks or equivalent methods provide this additional assurance. Additional information is available from the PCI SSC Document Library website, Cryptographic Key Blocks Information Supplement. ment_june_2017.pdf PCI Software-based PIN Entry on COTS Security, v1.0 Page 30
35 1.4 Key Management 3. Cryptographic key-management processes must conform to recognized national or international key-management standards. 4. Key-loading methods must enforce dual control to ensure that no one person is solely responsible for key-loading operations. 5. Secret and/or private cryptographic keys must be unique per devices and/or applications. 6. Generation and loading of clear-text secret and/or private keys or key components must ensure split-knowledge principles are enforced. Alignment with industry-accepted key-management practices provide reasonable assurance that required due diligence and execution reduce risk of unauthorized disclosure and supports the overall security of the processes. Applicable standards include NIST Special Publication (all parts), Special Publication , ISO and ISO/IEC 11770; ANSI X9.24 Key Management Techniques and NIST Special Publication A, ISO/IEC including associated normative references cited within as applicable. The ability to perform sensitive security functions, e.g., key loading of encryption keys, requires at a minimum two individuals to perform the process. Dual control practices prevent misuse of the sensitive process it is more difficult to establish a breach of a process when multiple entities are colluding to coordinate misuse. Dual-control procedures can be implemented logically. Or dual control can be implemented through physical controls where more than one individual is required. Unique cryptographic keys per devices and/or applications limit exposure in the event the key is ever compromised. Fundamental to cryptographic processes are the keys used for the encryption process. It is imperative that encryption keys are never disclosed so that the entire key is made available in clear text or in a form where the possibility of its disclosure in its entirety exists. The security principles of dual control and split knowledge requires at least two entities to be involved in a process to prevent a single entity from having access to the entire process, e.g., dual control as well has at least two individuals that have only partial information about the key. There are a number of ways to implement dual control and split knowledge either through logical or physical mechanisms or both. PCI Software-based PIN Entry on COTS Security, v1.0 Page 31
36 1.4 Key Management 7. Secret and/or private cryptographic keys must be maintained in one or more of the following approved forms: a. Encrypted by a key of equal or greater strength b. Stored within a secure cryptographic device c. Managed as two or more full-length components Note: These approved methods do not apply when storing secret and/or private cryptographic keys within the PIN CVM Application. For the PIN CVM Application (e.g., white-box cryptography) refer to Module Shared public keys/certificates are acceptable, but methods and procedures to revoke compromised public/private key pairs must be documented and implemented. 9. All key-generation functions must implement one-way functions or other irreversible keygeneration processes. 10. Keys must be generated with equivalent entropy (e.g., a 128-bit key is generated with 128 bits of entropy input). Cryptographic keys need to be protected to prevent unauthorized or unnecessary access that could result in the exposure of encrypted data. Refer to industry-accepted practices for acceptable methods. Never store secret and/or private keys in clear text. Security requirements for white-box cryptography can be found in Module 2: PIN Cardholder Verification Method (CVM) Application. Refer to Module 2: PIN Cardholder Verification Method (CVM) Application for white-box cryptography requirements. The ability to identify and revoke compromised public keys/certificates and private keys are necessary to respond to confirmed or suspicious activity that could lead to misuse or data breaches. Ensuring that there are documented procedures in place and implemented supports common knowledge and sets expectations. One-way functions or other irreversible key-generation processes produce keys that are impossible to revert to the original data that formed the key. Adhering to industry-accepted cryptography algorithms and techniques supports these concepts. Entropy ensures that the cryptographic process ensures randomness is used to the fullest extent, which in turn strengthens the cryptographic process and encryption processes. PCI Software-based PIN Entry on COTS Security, v1.0 Page 32
37 1.4 Key Management 11. Audit logs must be maintained for all keymanagement activities and all activities involving clear-text key components. The audit log includes: a. Unique identification of the individual that performed each function b. Date and time c. Function being performed d. Purpose e. Success or failure of activity Controls must be established to protect logs from unauthorized modifications or deletion. Retention of key-management audit logs must conform to industry accepted practices and the organization s record retention policies. 12. Incident response procedures must exist and include activities for reporting and responding to suspicious or confirmed key-related issues, including key compromises. Recording the function or key-management activity being performed (for example, key loading) and the purpose of the affected key (for example, data encryption) provides the entity with a complete and concise record of key-management activities. Identifying whether the activity resulted in success or failure confirms the status upon conclusion of the activity. By recording these details for the auditable events a potential compromise can be quickly identified, with sufficient detail to know who, what, where, when and how. Documented procedures assist with performing a process when time and access to resources are of the essence. They need to explain how the issue would be escalated for further investigation and resolution, including initiation of the organization s incident response procedures. Appropriate personnel need to be notified immediately of any breach impacting the keys. PCI Software-based PIN Entry on COTS Security, v1.0 Page 33
38 1.5 Secure Software Development Practices Software needs to be developed and maintained according to a defined software-security development process. Software developers require knowledge to address software vulnerabilities and emerging risks. These requirements address the development of software for all aspects of The Solution, including the PIN CVM Application, and the back-end systems (processing, monitoring and attestation component) monitoring environment. Additional requirements specific to the PIN CVM Application are stated in Module 2, PIN CVM Application. Also refer to Appendix D Application Security. DEVELOPMENT 1. All software must be developed according to the development process and to the development requirements outlined in Appendix D. Ensure the application is developed and software maintained in accordance with secure coding standards and best practices to reduce risk of exploitation of vulnerabilities introduced through poor coding techniques. Knowledge of additional industry application development standards and best practices provides information on current exploits and trends. For example, CERT secure coding standards, Institute for Security and Open Methodologies (ISECOM), Open Source Security Testing Methodology Manual (OSSTMM) and International Systems Security Engineering Association (ISSEA) Systems Security Engineering Capability Maturity Model (SSE-CMM), ISO/IEC PCI Software-based PIN Entry on COTS Security, v1.0 Page 34
39 Module 2: PIN Cardholder Verification Method (CVM) Application Control Objective: Ensure the software application that resides on the COTS device and captures the PIN from the cardholder enforces security controls to protect sensitive information and mitigate risks of unauthorized disclosure. The PIN CVM Application is developed and tested to ensure application processing integrity. These requirements apply specifically to the PIN CVM Application and client-side monitoring components if those components are not part of the PIN CVM Application. 2.1 Development 1. Software that handles, secures or otherwise affects the security of the PIN entry and processing on the COTS device must be logically separated from code that is used for other purposes (such as general merchant UI). Areas of the PIN CVM Application that are not directly involved in the processing or handling of the PIN data, or providing security services and interface to the monitoring system, will be able to be updated without affecting the security code. This isolation may be achieved in many ways, but simply having different functions within the same body of code for security and nonsecurity functions is not considered sufficient isolation. Multiple layers/levels of separation of the code may be implemented for example, the code used for cryptographic key storage may be logically isolated from code used for PIN entry, and both of these code segments logically isolated from the overall merchant UI code. PCI Software-based PIN Entry on COTS Security, v1.0 Page 35
40 2.1 Development 2. Documentation must exist and be maintained to detail the following: Protections provided to the application to protect against tampering, side-channel attacks, fault injection and reverse engineering for the various supported platform and protection methods (such as TEE, white-box cryptography). Details of all areas where functions provided by the application are executed. This should include the main processing environment of the COTS device but may also include other local execution environments (such as a TEE or embedded security processor). Data-flow diagrams that show how the PIN is entered, processed, encrypted and validated within the application, where the data is transmitted outside of the scope of the application and any assumptions made about these external connections. Block diagram that indicates where all sensitive data is available in clear text on the merchant-side systems. This includes, but may not be limited to, the SCRP, the COTS operating system, any TEE or physically separate securityprocessing elements used. This diagram must indicate the flow of sensitive data through the various elements. for merchants regarding how to ensure the PIN is entered in a way that it cannot be observed. Identification of where internal buffers are used and cleared when collecting sensitive data. Process that is demonstrably in use for the discovery and remediation of bugs and vulnerabilities in the system. A policy on how to manage vulnerabilities and perform security testing. The Solution Provider and the various parties involved will need to document various aspects of their solution sufficiently so that labs, assessors and other entities are able to understand the security around the various components individually and as a full solution. PCI Software-based PIN Entry on COTS Security, v1.0 Page 36
41 2.1 Development 3. Mechanisms must exist to uniquely identify each instance of the PIN CVM Application to the back-end monitoring system and the backend attestation component. 4. The PIN CVM Application must only communicate with known and trusted PCI PTS approved SCRPs. 5. The PIN CVM Application must prevent against attacks designed to expose data in storage or memory and deploy appropriate controls including minimizing such storage post transaction completion or application timeout. The Solution Provider should ensure that each instance of the PIN CVM Application is uniquely identified to the back-end monitoring system. The Solution Provider should periodically conduct a risk assessment to ensure the adequacy of the authentication mechanisms and that controls remain in place. A list of known and trusted SCRPs should be associated and maintained for each authorized user after initialization. The PIN CVM Application might collect other data that can be used to correlate the PIN to the user and PAN at other places. The application should be designed in a manner that there is not unexpected leakage of PIN and other correlateable data that can potentially be compromised and misused. 6. The PIN CVM Application must be securely developed to prevent screen captures. Controls need to be in place to ensure that sensitive data collected via the application screen is not displayed without masking where appropriate and that the application does not allow the screen to be captured to prevent leakage of sensitive data. Protection methods include restricting access to the UI components as well as controlling inter-process communications and event handling. For example, when an application goes into the background, it could prevent screen capturing by the underlying OS by intercepting the applicationdidenterbackground event to control what information is shared with ios (e.g., splash screen or blurred window snapshot), or preventing manual and automatic screenshots altogether by setting FLAG_SECURE on Android. 7. The PIN CVM Application must be resistant to reverse engineering. The PIN CVM Application should have adequate controls around the code such as code obfuscation so that the code cannot be parsed and reverseengineered. This will prevent with tampering of the code. Resistance is quantified through costing based on Software Tamper- Responsive Attack Costing Framework as contained in the Software-based PIN Entry on COTS Test. 8. Correlatable data that may be supplied by the cardholder e.g., e- mail addresses and/or mobile phone numbers required for receiving virtual receipts must only be viewed in clear text during its initial entry for the purposes of error correction by the cardholder. Thereafter, any re-presentation of this data by the PIN CVM Application must be masked to prevent exposure of the information. The PIN and PAN should always be isolated per transaction. Design the application in a manner to ensure that there is no leakage of correlated data that can potentially be compromised and misused e.g., display only the last four digits of the mobile phone, display, at a minimum, only the first two characters of address and the first two and last two of the domain name, Additional privacy controls may be required by regional/country regulations. PCI Software-based PIN Entry on COTS Security, v1.0 Page 37
42 2.1 Development 9. Establishing a new session or refreshing a secure session between the PIN CVM Application and the back-end monitoring system and back-end attestation component must require successful attestation between the PIN CVM Application and monitoring environment. 10. The PIN CVM Application must automatically clear the internal buffers it controls when any one of the following occurs: The transaction terminated for any reason (including success or failure), or The PIN CVM Application has timed out waiting for the response from the cardholder or merchant or A tamper-detection event has been signaled by the back-end monitoring system, or the PIN CVM Application is halted, loses focus or otherwise is moved to background processing. Every time the PIN CVM Application connects to the SCRP and authenticates to the back-end monitoring system and the back-end attestation component, it would need to successfully pass the attestation requirement to ensure that the PIN CVM Application, SCRP and COTS device are all in an acceptable state. Sensitive data shall not be retained any longer, or used more often, than necessary. PIN data and other correlatable data should be encrypted within the PIN CVM Application immediately after entry is complete and has been signified as such by the cardholder e.g., via pressing the enter button. The device will support the encipherment of the PIN multiple times as part of a transaction series; transferring it between the PIN CVM Application and SCRP, then from the SCRP to the payment back-end. Implement each merchant-side instance to clear the buffers as soon as practical after use. Solely relying on "garbage collection" functions for clearing buffer data is not sufficient to meet this requirement. PCI Software-based PIN Entry on COTS Security, v1.0 Page 38
43 2.2 Secure Provisioning 1. There must be a clear definition of all platforms including device types, hardware and operating systems on which the PIN CVM Application can be executed. 2. PIN CVM Applications must be developed only for supported platforms. Although these requirements are designed to allow for the entry of a PIN on a COTS platform that has not been directly assessed for security, it is expected that the system will have criteria for which platforms are considered acceptable for PIN entry, and which are not. For example, it is expected that systems using older COTS operating systems that may contain unpatched vulnerabilities will not be deemed acceptable for PIN entry. The system vendor provides a clear methodology for determining the suitability of any PIN entry platform; this may be a whitelist, blacklist or hybrid approach, but should clearly demonstrate a risk analysis of the platform that accommodates for any known or potential vulnerabilities in each merchant device. There are two requirements in this standard that address the suitability of devices/operating systems on which the PIN CVM Application may be executed. This supported platforms requirement addresses the need for the PIN CVM Application to be targeted to a limited subset of all available devices, and that the developer should have undertaken some risk analysis and mitigation steps to identify which platforms are suitable and secure. Where operating systems are no longer supported, security patches might not be available to protect the system from known exploits which poses a significant risk. Unsupported operating systems expose the device, applications and data on the device to unauthorized disclosure and modification. All new solutions would need to ensure that they operate only on supported platforms. PCI Software-based PIN Entry on COTS Security, v1.0 Page 39
44 2.2 Secure Provisioning 3. The PIN CVM Application must only support platforms that, at a minimum, provide the following features: An enforcing mandatory access control framework A trusted boot mechanism that validates the operating system s authenticity Ability to prevent all applications other than the foreground application from accessing touch-event details Validation of an application signature upon loading and execution of that application. This signature must be calculated with cryptography, and no known bypass measures may exist for the acceptable baseline systems. Isolation of touch-event data such that only the application currently in focus can receive or otherwise identify the location of touch events 4. The PIN CVM Application must be installed and updated using methods that ensure its integrity and authenticity, using only the OS store provided by the supported COTS operating-system vendor implementing cryptographic validation of this store and any loaded applications. The OS store must not have publicly disclosed vulnerabilities that have not been patched or otherwise remediated by other features of the overall solution. To ensure the security of The Solution, the PIN CVM Application should be enabled only on a COTS device that meets minimum acceptable criteria. The PIN CVM Application developer should undertake some risk analysis and mitigation steps to identify which platforms are suitable and secure. The authenticity of the PIN CVM Application is a paramount concern in the security of PIN entry. Loading of applications from the operating system store provides a level of confidence that the application has not been tampered before being installed on the merchant system. Third-party app stores are not allowed. Where the PIN CVM Application allows or requires download of additional data from the back-end monitoring and attestation systems, such data should also be cryptographically signed and authenticated by the PIN CVM Application prior to use or execution. Reliance upon the secure channel that exists between the PIN CVM Application and the back-end monitoring system and attestation component are not sufficient. This requirement implies that each datagram sent from the device to the back-end monitoring system and the back-end attestation component, or vise-versa, has an individual signature or (H)MAC applied. The validation of this datagram signature/mac is provided by systems outside of the execution environment of the PIN CVM Application (e.g., by the external SCRP used in situations where CVM may include PINs). PCI Software-based PIN Entry on COTS Security, v1.0 Page 40
45 2.2 Secure Provisioning 5. Any required cryptographic keys or other data necessary for first execution must be securely provided to the PIN CVM Application and securely stored. Where an external SCRP is used, this must include the use of cryptographic keys stored within the SCRP to provide security to the provisioning process. Where white-box cryptography is used white-box keys must be unique per PIN CVM Application instance. The reliance and use of common white-box keys must be minimized after the secure provisioning process. Secure provisioning must implement the principles of perfect forward secrecy. 6. The PIN CVM Application executables and scripts must be digitally signed and a signature provided to confirm the software author and guarantee that the application from the OS store (and any other updates) has not been altered or corrupted since it was last signed. The digital signatures must be checked prior to use of the application and at required attestation intervals. 7. The process to generate digital signatures must be performed using dual control, based on cryptographic keys that are secured within an HSM formally approved to PCI HSM or FIPS140-2 Level 3 (or above). 8. A security policy must exist for acceptable use of the PIN CVM Application and be provided to all users of the PIN CVM Application, and is part of the PIN CVM Application End User License Agreement (EULA). As the PIN CVM Application is downloaded as a single instance from an OS store, each application install is initially identical to all others. The system should have methods immediately upon first execution to ensure that instance is unique to any other and can be uniquely identified and secured through communication with the back-end monitoring system and the back-end attestation components. Where the PIN CVM Application allows or requires download of additional data from the back-end monitoring system and the back-end attestation components, such data should also be cryptographically signed and authenticated by the PIN CVM Application prior to use or execution. The PIN CVM Application may be authenticated through the use of multiple signatures. These may be validated by the COTS operating system as well as the monitoring system. In order to ensure the digital signatures are authentic, it should be performed within a controlled environment that meets industry standards. The vendor must supply documentation to allow the merchant to understand the context of the approval of the PIN CVM Application and The Solution and to ensure that it does not deploy or use the system in a non-compliant manner. In this context, the security policy both informs the merchant how to use and maintain the system securely, and also provides information to the laboratory during the PIN CVM Solution evaluation. PCI Software-based PIN Entry on COTS Security, v1.0 Page 41
46 2.3 Tamper Checks 1. The PIN CVM Application must offer tamper-resistance measures around the handling of code, application/monitor interface code and any code that is involved in the use or security of cryptographic keys (both public and private/secret keys) for all the supported platform and protection methods (such as TEE, white-box cryptography). 2. Documentation must exist and be maintained on how tamper resistance is achieved for each of the supported platforms, including but not limited to: Code obfuscation Protections provided by specific platforms Reliance on TEE, security processor or other security feature of the COTS devices used Obfuscation should reduce the efficacy of common tools that may be used for decompilation of the code. Obfuscation methods may include, but not be limited to, control-flow and data obfuscation, execution of code sections in remote/cloud environments, API renaming, etc. Where the application is provided as a number of files (e.g., libraries) note what protections are provided for the calls between the libraries. These protections are not required across all code, but should be implemented to protect all code that provides PIN security features, such that code complexity can be demonstrated to be significantly increased, or execution can be shown to be possible only on un-modified environments e.g., through use of a device Physically Unclonable Function to encrypt data/execution, or by implementing the PIN-acceptance code in a trustlet which can be executed only in a secure TEE. The Solution Provider and the various parties involved will need to document how tamper resistance is achieved for each supported platform, where it leverages protections offered by the platform and how it compensates for any security gaps. This information is critical for the labs to review and validate. PCI Software-based PIN Entry on COTS Security, v1.0 Page 42
47 2.3 Tamper Checks 3. The PIN CVM Application must implement methods for detecting and reporting to the monitoring system if any COTS devices have been rooted or jailbroken, including but not limited to: When the PIN CVM Application is executed As requested by the monitoring system Whenever white-box cryptography or obfuscation methods, implementations, or instantiations are updated The monitoring system must detect when the PIN CVM Application has been side loaded outside of normal channels and treat this as a tamper-detection event. Applications that fail this check should be prohibited from use to accept PINs. Even though a supported platform may offer many security and/or tamperprotection mechanisms, rooting or jailbreaking a device could impact and weaken the overall security controls and open up avenues for a malicious user to install malware or exploit other vulnerabilities to harvest sensitive data or affect the integrity of The Solution. If such security issues are noted, a tamper-detection response should be triggered to the back-end monitoring system and the application should not be allowed to accept PIN data. PCI Software-based PIN Entry on COTS Security, v1.0 Page 43
48 2.4 PIN Entry 1. The PIN CVM Application must not display the PIN entry screen if it detects that it is being run in developer or emulator mode. 2. The following events during a PIN entry session must be detected by the PIN CVM Application and result in termination of the PIN entry session and deletion of all data collected during the transaction, including PIN data, and not limited to: Switching between applications (e.g., PIN CVM Application and any other application on the COTS device) Stealing focus during PIN entry Stealing focus at any other time during the foreground execution of the PIN CVM Application to maliciously prompt for (and thereby capture) PIN entry Screen capture during PIN entry Not using full screen mode Activating sensors or pooling sensor data Enablement or access of the NFC interface by any other application Developer, emulator mode and similar tools provide flexibility when developing applications but may circumvent required security controls required for production environments. Therefore, controls should be established to ensure when these non-secure modes are present that sensitive information and functions are not displayed or performed. This is specific to the production level PIN CVM Application. The PIN entry process should be protected against manipulation or subversion. Attempts to modify or overlay the cardholder prompts, keyboard, or other UI features that are important for the security of the system should be prevented. The security of the other applications on the COTS device is not known and therefore should not be trusted. PCI Software-based PIN Entry on COTS Security, v1.0 Page 44
49 2.4 PIN Entry 3. The PIN CVM Application must not allow PIN entry to be triggered unless the transaction is EMV-based. All transactions must be processed online. Note: This does not prohibit the use of offline PIN verification. 4. PIN display in the PIN CVM Application must be fully masked so as not to display any digit of the PIN value. 5. The PIN entry keyboard must not rely on the COTS device operating system keyboard, and it must be securely rendered by the PIN CVM Application. 6. During PIN entry, any signal or event (visual, audible, etc.) must be uncorrelated to the touch event position and the PIN digit being selected. In addition, this must account for other leakage factors e.g., local haptic feedback, numeric key animation when pressed, on device sensors, etc. EMV-based transactions introduce dynamic data into the ecosystem, which will be encrypted within the SCRP to be sent to the back-end processing systems. Merchants may have alternate solutions to accept card transactions if the SCRP or the PIN CVM Application is not working. But, those solutions cannot be used to accept PIN data unless they comply with the PTS PIN Standard. In the context of this requirement, "online" refers to the transmission of the financial message to the remote host during the performance of the transaction. Such transactions may utilize either online or offline PIN processing. Where online connectivity is not available, the transaction processing is to be prevented. If connectivity drops during a transaction and the transaction has to be reversed, all customer data has to be erased from the system. PIN data should be protected from intentional or unintentional exposure when the data is collected and displayed for confirmation. Refer to PCI PTS POI Security for additional information on PIN display. The PIN entry process should be protected against manipulation or subversion. Operating system keyboards could be susceptible to compromise and spoofing. The PIN entry process should be protected against manipulation or subversion. There are products in the marketplace that can convert audible tones into actual numbers thus exposing the underlying PIN value, as well as products in the marketplace that can convert touch events and their emitting lights to the actual values. Understanding these techniques and protecting against them is important to ensure PIN values are not disclosed through unintended channels. Therefore, additional considerations are necessary to prevent identifying the PIN values through audible tones and emission of touch-event light. 7. The PIN CVM Application must not cache PINs. The PIN CVM Application should prevent storing of PINs. PCI Software-based PIN Entry on COTS Security, v1.0 Page 45
50 2.5 PIN Encryption 1. PIN data must be encrypted upon entry into the PIN CVM Application and remain encrypted when transmitted by the PIN CVM Application through a trusted and secure interface to the SCRP. 2. Encrypted PIN data must be protected from malicious activity, attacks and attempts to extract masked PIN values. 3. The PIN-encryption keys and algorithms in the PIN CVM Application used to initially encrypt the PIN must adhere to requirements specified in Appendix C Minimum and Equivalent Key Sizes and Strength for Approved Algorithms. 4. PIN-encryption keys must be established in the PIN CVM Application in a secure manner. 5. Secret keys associated with PIN encryption must be protected to ensure their confidentiality as well as their integrity. 6. Where white-box cryptography is used, the white-box cryptographic keys must be changed monthly, at a minimum. 7. The customer PIN data must be encrypted using ISO format 4 for transport between the PIN CVM Application and the SCRP. Encryption of the cardholder s PIN as it is entered into the PIN CVM Application and as it is transmitted to the SCRP is essential and sets the expectation of PIN protection throughout The Solution. Since PIN encryption is performed in software within the PIN CVM Application, additional measures are required to ensure the confidentiality of the encrypted PIN and the processes performing the encryption. The PIN CVM Application should provide assurance that even encrypted PIN values are not susceptible to non-authorized disclosure. Industry accepted requirements are based on substantial research and testing. Conformance to these requirements greatly increases an organization s security posture. Key loading is to be performed to ensure no one individual has knowledge of or access to the key that encrypts/decrypts PINs. The procedures used should align with industry accepted key-management practices including keyagreement protocols (e.g., mutually authenticated ECDH). Encryption keys are fundamental to the overall protection of assets and security of The Solution. Mechanisms are to be implemented to ensure the confidentiality and integrity of the secret keys used for PIN encryption. Protection mechanisms may include software obfuscation, key chain and whitebox cryptography, use of secure elements or trusted execution environments. Frequently changing the white-box encryption keys used to protect data substantially increases the security of The Solution. When encryption is performed in software, it is critical to change the white-box key often to prevent unauthorized disclosure. For ISO format 4 PIN blocks generated by the PIN CVM Application, the PAN value is supplied by the SCRP as a secure PAN token. The SCRP may translate the PIN block into ISO format 0, 3 or 4 for online PIN verification and format 2 for offline PIN verification. Note: The use of TDES for encryption of the customer PIN on the SCRP is the only exception allowing the use of TDES in this standard. PCI Software-based PIN Entry on COTS Security, v1.0 Page 46
51 2.6 Audit Logs 1. The PIN CVM Application must ensure logs exist and are communicated securely to the back-end monitoring system. The logs must not contain correlatable data or PIN data. 2. The audit trail generated by the PIN CVM Application must support reconstructing the following events: All user access to correlatable or PIN data. All activity that impacts security functions of the PIN CVM Application (e.g., changes to cryptographic functions, changes to application permissions, failure or success to establish secure channel with monitoring system, etc.) All access to the audit trail managed by or within the PIN CVM Application. Use of and changes to the PIN CVM Application s identification and authentication mechanisms. Initialization, stopping or pausing of the PIN CVM Application logs. 3. All recorded events must capture at least the following information: User identification Type of event Date and time Success or failure Origination of event Identity or name of affected data, system component or resource Application logs assist with providing individual accountability, reconstruction of events, intrusion detection and problem identification. Sensitive information should not be included in audit logs as they may not be protected in the same manner. Logging of the security events enables an organization to identify and trace potentially malicious activities. While the correlation and analysis of the event could occur on the back-end monitoring system, the PIN CVM Application should be able to capture and securely communicate events that could be used by the back-end monitoring system. By recording these details for the auditable events, a potential compromise can be quickly identified, and with sufficient detail to know who, what, where, when and how. PCI Software-based PIN Entry on COTS Security, v1.0 Page 47
52 Module 3: Back-end Systems Monitoring/Attestation Control Objective: Assurance that components in The Solution are in a secure state and the ability to react and address anomalies is fundamental to the overall security of The Solution. Attestation sets the framework for this assurance. Attestation is the interaction between a verifier (possibly server-based) and a prover (possibly client-based) to determine the current security state/behavior of the prover based on predefined measurements and thresholds provided by the prover. For the purposes of this document, attestation may be based on a hardware or software-based verification. Attestation may be demonstrated using a protocol between the prover and the verifier that provides the measurements to the verifier. The measurements may be determined in various ways, for example through a health-check interface that can be accessed by the prover. Attestation provides necessary assurance to the verifier that established security controls at the prover are in an acceptable state and have not been modified. PIN CVM Application Remote Software Attestation Components The PIN CVM Application software attestation component is the process on the COTS platform used by the PIN CVM Application to manage attestation. It may perform the role of the verifier and the prover. For example, in the role of verifier it may perform an attestation of the COTS platform (as the prover) by taking measurements and comparing these with locally stored information (followed by any necessary action), whereas in the role of prover it may service a remote software attestation request sent from the server-based attestation component (as the verifier) and return the results back to the server. The back-end attestation component (a server-based attestation component) is a process that manages attestation. It performs the role of verifier. Thus, The Solution may implement various types of attestation. Two verifier types are presented in the table below corresponding to possible locations of the verifier. For PIN entry on COTS, the attestation health checks will be performed on varying components (provers): SCRP, COTS platform and the PIN CVM Application. The Solution may use various types of attestation. Three prover types are presented in the table below indicating possible locations of the verifier. Note: During attestation, the prover is assumed to be untrusted and the verifier is trusted. During Type 1 and Type 2 attestations, if the PIN CVM Application component has the role of the verifier, it may itself be compromised. Therefore, the security model must account for this risk when using the results of Type 1 and Type 2 attestations provided by the PIN CVM Application if used as part of a Type 3 attestation. PCI Software-based PIN Entry on COTS Security, v1.0 Page 48
53 PIN CVM Solution Attestation Types and Components Type Prover Verifier Purpose 1. SCRP a) PIN CVM Application Attestation Component b) Back-end Attestation Component Verifies the SCRP is valid. A PIN CVM Application instantiated attestation and response may be fairly limited due to limited processing availability and security afforded to local storage of measurement parameters, whereas an attestation call performed by the back-end attestation component (required) can be more robust since parameter checking is performed in close association by the monitoring system. 2. COTS Platform (via various sampled measurements) 3. PIN CVM Application (attestation component) a) PIN CVM Application Attestation Component b) Back-end Attestation Component c) SCRP a) Back-end Attestation Component b) SCRP Verifies that the COTS platform security model is intact. The assurance for Type 2 Attestation relies on the inability of the attacker to spoof the measurements that are performed or, by the time it is possible for spoofing to be reliably performed, the presence of the attacker in the COTS device has been detected by the fraud systems and appropriate action taken. A PIN CVM Application/SCRP instantiated attestation and response may be fairly limited due to limited processing availability and security afforded to local storage of measurement parameters, whereas an attestation call performed by the back-end attestation component (required) can be more robust since parameter checking is performed in close association by the back-end monitoring system. Verifies that both the security model of the PIN CVM Application and its COTS platform are intact. An SCRP instantiated attestation and response may be fairly limited due to limited processing availability and security afforded to local storage of measurement parameters, whereas an attestation call performed by the back-end attestation component (required) can be more robust since parameter checking is performed in close association with the back-end monitoring system. Example attestation flows corresponding to each attestation type are shown on the following page. PCI Software-based PIN Entry on COTS Security, v1.0 Page 49
54 Figure 6: Attestation Flows PCI Software-based PIN Entry on COTS Security, v1.0 Page 50
Advanced Certifications PA-DSS and P2PE. Erik Winkler, VP, ControlCase
Advanced Certifications PA-DSS and P2PE Erik Winkler, VP, ControlCase ControlCase Annual Conference Miami, Florida USA 2017 PCI Family of Standards Ecosystem of payment devices, applications, infrastructure
Certification Report EAL 4+ Evaluation of Version 2.6 Issued by: Communications Security Establishment Canada Certification Body Canadian Common Criteria Evaluation and Certification Scheme Government
DynaPro Go. Secure PIN Entry Device PCI PTS POI Security Policy. September Document Number: D REGISTERED TO ISO 9001:2008
DynaPro Go Secure PIN Entry Device PCI PTS POI Security Policy September 2017 Document Number: D998200217-11 REGISTERED TO ISO 9001:2008 MagTek I 1710 Apollo Court I Seal Beach, CA 90740 I Phone: (562)
Q2. Why is there an Australian specific device approval process?
IAC DEVICE EVALUATION FAQ Version 3 (Effective 21 November 2016) This FAQ provides answers to questions regarding APCA s physical and logical device security requirements and evaluation methodologies as
PCI PA-DSS Implementation Guide For Atos Worldline Banksys XENTA, XENTEO, XENTEO ECO, XENOA ECO YOMANI and YOMANI XR terminals using the Point BKX Payment Core Software Versions A05.01 and A05.02 Version
Hewlett-Packard Development Company, L.P. NonStop Volume Level Encryption (NSVLE) Product No: T0867 SW Version: 2.0
Hewlett-Packard Development Company, L.P. NonStop Volume Level Encryption (NSVLE) Product No: T0867 SW Version: 2.0 FIPS 140 2 Non Proprietary Security Policy FIPS Security Level: 1 Document Version: 1.3
EPC020-08 12.12.2013 (Vol Ref. 7.4.1.00) SEPA CARDS STANDARDISATION (SCS) VOLUME BOOK 4 SECURITY REQUIREMENTS PART OF THE APPROVED VERSION OF SCS VOLUME V7.0 Payments and Cash withdrawals with Cards in
Watchdata W9110 Security Policy
Watchdata W9110 Security Policy Production Name: W9110 Production Version: 0.9 2/18 Table of Contents TABLE OF CONTENTS... 2 1. DOCUMENT INFORMATION...3 1.1 EVOLUTION FOLLOW-UP...3 1.2 ACRONYMS & TERMS...
Apple Inc. Certification Authority Certification Practice Statement Apple Application Integration Sub-CA Apple Application Integration 2 Sub-CA Apple Application Integration - G3 Sub-CA Version 6.2 Effective
Seagate Secure TCG Enterprise SSC Pulsar.2 Self-Encrypting Drive FIPS 140 Module Security Policy
Seagate Secure TCG Enterprise SSC Pulsar.2 Self-Encrypting Drive FIPS 140 Module Security Policy Security Level 2 Rev. 0.9 November 12, 2012 Seagate Technology, LLC Page 1 Table of Contents 1 Introduction...
Lexmark PrintCryption TM (Firmware Version 1.3.1)
Lexmark PrintCryption TM (Firmware Version 1.3.1) FIPS 140-2 Non-Proprietary Security Policy Level 1 Validation Version 0.95 April 2007 Table of Contents INTRODUCTION... 3 PURPOSE... 3 REFERENCES... 3
Old requirement New requirement Detail Effect Impact
RISK ADVISORY THE POWER OF BEING UNDERSTOOD PCI DSS VERSION 3.2 How will it affect your organization? The payment card industry (PCI) security standards council developed version 3.2 of the Data Security
Apple Corporate Certificates Certificate Policy and Certification Practice Statement. Apple Inc.
Apple Inc. Certificate Policy and Certification Practice Statement Version 1.0 Effective Date: March 12, 2015 Table of Contents 1. Introduction... 4 1.1. Trademarks... 4 1.2. Table of acronyms... 4 1.3.
FDE itc: Encryption Engine (EE) cpp Functional and Assurance Requirements
FDEiTC-EE-English-00 v0. 0-0- 0 0 FDE itc: Encryption Engine (EE) cpp Functional and Assurance Requirements BEV (Border Encryption Value) - the key(s) (or secret(s)) that is passed from the AA to the EE
Card Signature Payment Use Case (DRAFT)
Card Use Case (DRAFT) The Card Use Case maps out the lifecycle of a Card to establish a common understanding of the payment journey and serve as an educational reference guide to payment/security practitioners.
Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations
Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations Version 1.18 Effective Date: August 16, 2017 Table of Contents 1. Introduction... 5 1.1. Trademarks...
HARDWARE SECURITY MODULES (HSMs) Cryptography: The basics Protection of data by using keys based on complex, randomly-generated, unique numbers Data is processed by using standard algorithms (mathematical
Dolby IMS-SM FIPS Level 2 Validation. Nonproprietary Security Policy Version: 4
Dolby IMS-SM FIPS 140-2 Level 2 Validation Nonproprietary Security Policy Version: 4 Corporate Headquarters Dolby Laboratories, Inc. 100 Potrero Avenue San Francisco, CA 94103-4813 USA Telephone 415-558-0200
The Benefits of Strong Authentication for the Centers for Medicare and Medicaid Services This document was developed by the Smart Card Alliance Health and Human Services Council in response to the GAO
EMV Contactless Specifications for Payment Systems Book B Entry Point Specification Version 2.6 July 2016 pursuant to the applicable agreement between the user and EMVCo found at www.emvco.com. EMV is
Certification Report EAL 4+ Evaluation of Chrysalis-ITS, Inc. Luna CA³ Issued by: Communications Security Establishment Certification Body Canadian Common Criteria Evaluation and Certification Scheme 2002
An Introduction to Key Management for Secure Storage Walt Hubis, LSI Corporation SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA. Member companies and individuals may
EVALUATION OF PAYMENT APPLICATION DATA SECURITY STANDARD (PA-DSS) ELIGIBILITY WITH CAYAN GENIUS AND CAYAN TRANSPORT
trustwave.com EVALUATION OF PAYMENT APPLICATION DATA SECURITY STANDARD (PA-DSS) ELIGIBILITY WITH CAYAN GENIUS AND CAYAN TRANSPORT Prepared for: Date prepared: 12 May 2015 Prepared by: Marc Bayerkohler,
Payment Card Industry (PCI) PTS PIN Security Requirements. Technical FAQs for use with Version 2
Payment Card Industry (PCI) PTS PIN Security Requirements Technical FQs for use with Version 2 pril 2016 Table of Contents PIN Security Requirements: Frequently sked Questions... 1 General... 1 PIN Security
Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations Version 1.10 Effective Date: June 10, 2013
Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations Version 1.10 Effective Date: June 10, 2013 Table of Contents 1. Introduction... 5 1.1. Trademarks... 5
Xerox FreeFlow Print Server. Security White Paper. Secure solutions. for you and your customers
Xerox FreeFlow Print Server Security White Paper Secure solutions for you and your customers Executive Summary Why is security more important than ever? New government regulations have been implemented
Certification Report EAL 4+ Evaluation of JUNOS-FIPS for SRX Series version 10.4R4 Issued by: Communications Security Establishment Canada Certification Body Canadian Common Criteria Evaluation and Certification
fips185 U.S. DEPARTMENT OF COMMERCE/National Institute of Standards and Technology
FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION 185 1994 February 9 U.S. DEPARTMENT OF COMMERCE/National Institute of Standards and Technology ESCROWED ENCRYPTION STANDARD CATEGORY: TELECOMMUNICATIONS
Webinar Tokenization 101
Webinar Tokenization 101 René M. Pelegero Retail Payments Global Consulting Group L.L.C December 15 th, 2014 Webinar Overview A description of tokenization and how the technology is being employed in the
Credant CmgCryptoLib Version 1.7 Credant Cryptographic Kernel Version 1.5 FIPS Non-Proprietary Security Policy, Version 1.7 Level 1 Validation
Credant CmgCryptoLib Version 1.7 Credant Cryptographic Kernel Version 1.5 FIPS 140-2 Non-Proprietary Security Policy, Version 1.7 Level 1 Validation October 2007 1. INTRODUCTION 3 2. PRODUCT, BOUNDARY,
PCI PA-DSS Implementation Guide For Verifone VX 820 and Verifone VX 825 terminals using the Verifone ipos payment core I02.01 Software Page number 2 (21) Revision History Version Name Date Comments 1.00
Visa Chip Security Program Security Testing Process Visa Supplemental Requirements Version 2.1 January 2018 Visa Public Important Information on Confidentiality and Copyright Note: This document is a supplement