BSI-DSZ-CC-0869-2015 for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 from Oracle Corporation BSI - Bundesamt für Sicherheit in der Informationstechnik, Postfach 20 03 63, D-53133 Bonn Phone +49 (0)228 99 9582-0, Fax +49 (0)228 9582-5477, Infoline +49 (0)228 99 9582-111 Certification Report V1.0 CC-Zert-327 V5.1 BSI-DSZ-CC-0869-2015 Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 from Oracle Corporation PP Conformance: Java Card Protection Profile - Open Configuration, Version 3.0, May 2012, ANSSI-CC-PP-2010/03-M01 Functionality: PP conformant including optional package EMG plus product specific extensions Common Criteria Part 2 extended Assurance: Common Criteria Part 3 conformant EAL 5 augmented by ALC_DVS.2 and AVA_VAN.5 Valid until (*): 17 February 2020 SOGIS Recognition Agreement The IT Product identified in this certificate has been evaluated at an approved evaluation facility using the Common Methodology for IT Security Evaluation (CEM), Version 3.1 extended by advice of the Certification Body for components beyond EAL 5 and CC Supporting Documents as listed in the Certification Report for conformance to the Common Criteria for IT Security Evaluation (CC), Version 3.1. CC and CEM are also published as ISO/IEC 15408 and ISO/IEC 18045. This certificate applies only to the specific version and release of the product in its evaluated configuration and in conjunction with the complete Certification Report. (*) For details on the validity see Certification Report part A chapter 4. The evaluation has been conducted in accordance with the provisions of the certification scheme of the German Federal Office for Information Security (BSI) and the conclusions of the evaluation facility in the evaluation technical report are consistent with the evidence adduced. This certificate is not an endorsement of the IT Product by the Federal Office for Information Security or any other organisation that recognises or gives effect to this certificate, and no warranty of the IT Product by the Federal Office for Information Security or any other organisation that recognises or gives effect to this certificate, is either expressed or implied. Common Criteria Recognition Arrangement for components up to EAL 4 Bonn, 17 February 2015 For the Federal Office for Information Security Bernd Kowalski L.S. Head of Department Bundesamt für Sicherheit in der Informationstechnik Godesberger Allee 185-189 - D-53175 Bonn - Postfach 20 03 63 - D-53133 Bonn Phone +49 (0)228 99 9582-0 - Fax +49 (0)228 9582-5477 - Infoline +49 (0)228 99 9582-111 Certification Report BSI-DSZ-CC-0869-2015 This page is intentionally left blank. 4 / 40 BSI-DSZ-CC-0869-2015 Certification Report Preliminary Remarks Under the BSIG1 Act, the Federal Office for Information Security (BSI) has the task of issuing certificates for information technology products. Certification of a product is carried out on the instigation of the vendor or a distributor, hereinafter called the sponsor. A part of the procedure is the technical examination (evaluation) of the product according to the security criteria published by the BSI or generally recognised security criteria. The evaluation is normally carried out by an evaluation facility recognised by the BSI or by BSI itself. The result of the certification procedure is the present Certification Report. This report contains among others the certificate (summarised assessment) and the detailed Certification Results. The Certification Results contain the technical description of the security functionality of the certified product, the details of the evaluation (strength and weaknesses) and instructions for the user. 1 Act on the Federal Office for Information Security (BSI-Gesetz - BSIG) of 14 August 2009, Bundesgesetzblatt I p. 2821 5 / 40 Certification Report BSI-DSZ-CC-0869-2015 Contents A. Certification........................................................................................................................7 1. Specifications of the Certification Procedure.................................................................7 2. Recognition Agreements................................................................................................7 3. Performance of Evaluation and Certification..................................................................9 4. Validity of the Certification Result...................................................................................9 5. Publication....................................................................................................................10 B. Certification Results.........................................................................................................11 1. Executive Summary.....................................................................................................12 2. Identification of the TOE...............................................................................................15 3. Security Policy..............................................................................................................17 4. Assumptions and Clarification of Scope.......................................................................17 5. Architectural Information...............................................................................................18 6. Documentation.............................................................................................................18 7. IT Product Testing.........................................................................................................19 8. Evaluated Configuration...............................................................................................21 9. Results of the Evaluation..............................................................................................21 10. Obligations and Notes for the Usage of the TOE.......................................................22 11. Security Target............................................................................................................23 12. Definitions...................................................................................................................23 13. Bibliography................................................................................................................25 C. Excerpts from the Criteria................................................................................................29 CC Part 1:........................................................................................................................29 CC Part 3:........................................................................................................................30 D. Annexes...........................................................................................................................37 6 / 40 BSI-DSZ-CC-0869-2015 Certification Report A. Certification 1. Specifications of the Certification Procedure The certification body conducts the procedure according to the criteria laid down in the following: ● Act on the Federal Office for Information Security2 ● BSI Certification and Approval Ordinance3 ● BSI Schedule of Costs4 ● Special decrees issued by the Bundesministerium des Innern (Federal Ministry of the Interior) ● DIN EN ISO/IEC 17065 standard ● BSI certification: Technical information on the IT security certification, Procedural Description (BSI 7138) [3] ● BSI certification: Requirements regarding the Evaluation Facility (BSI 7125) [3] ● Common Criteria for IT Security Evaluation (CC), Version 3.15 [1] also published as ISO/IEC 15408. ● Common Methodology for IT Security Evaluation (CEM), Version 3.1 [2] also published as ISO/IEC 18045. ● BSI certification: Application Notes and Interpretation of the Scheme (AIS) [4] 2. Recognition Agreements In order to avoid multiple certification of the same product in different countries a mutual recognition of IT security certificates - as far as such certificates are based on ITSEC or CC - under certain conditions was agreed. 2.1. European Recognition of ITSEC/CC – Certificates (SOGIS-MRA) The SOGIS-Mutual Recognition Agreement (SOGIS-MRA) Version 3 became effective in April 2010. It defines the recognition of certificates for IT-Products at a basic recognition level and, in addition, at higher recognition levels for IT-Products related to certain SOGIS Technical Domains only. The basic recognition level includes Common Criteria (CC) Evaluation Assurance Levels EAL 1 to EAL 4 and ITSEC Evaluation Assurance Levels E1 to E3 (basic). For 2 Act on the Federal Office for Information Security (BSI-Gesetz - BSIG) of 14 August 2009, Bundesgesetzblatt I p. 2821 3 Ordinance on the Procedure for Issuance of Security Certificates and Approval by the Federal Office for Information Security (BSI-Zertifizierungs- und -Anerkennungsverordnung - BSIZertV) of 17 December 2014, Bundesgesetzblatt 2014, part I, no. 61, p. 2231 4 Schedule of Cost for Official Procedures of the Bundesamt für Sicherheit in der Informationstechnik (BSI-Kostenverordnung, BSI-KostV) of 03 March 2005, Bundesgesetzblatt I p. 519 5 Proclamation of the Bundesministerium des Innern of 12 February 2007 in the Bundesanzeiger dated 23 February 2007, p. 3730 7 / 40 Certification Report BSI-DSZ-CC-0869-2015 "Smartcards and similar devices" a SOGIS Technical Domain is in place. For "HW Devices with Security Boxes" a SOGIS Technical Domains is in place, too. This Domain is linked to a conformance claim to one of the related SOGIS Recommended Protection Profiles. In addition, certificates issued for Protection Profiles based on Common Criteria are part of the recognition agreement. As of September 2011 the new agreement has been signed by the national bodies of Austria, Finland, France, Germany, Italy, The Netherlands, Norway, Spain, Sweden and the United Kingdom. Details on recognition and the history of the agreement can be found at https://www.bsi.bund.de/zertifizierung. The SOGIS-MRA logo printed on the certificate indicates that it is recognised under the terms of this agreement by the nations listed above. This certificate is recognized under SOGIS-MRA for all assurance components selected. 2.2. International Recognition of CC – Certificates (CCRA) The international arrangement on the mutual recognition of certificates based on the CC (Common Criteria Recognition Arrangement, CCRA-2014) has been ratified on 08 September 2014. It covers CC certificates based on collaborative Protection Profiles (cPP) (exact use), certificates based on assurance components up to and including EAL 2 or the assurance family Flaw Remediation (ALC_FLR) and certificates for Protection Profiles and for collaborative Protection Profiles (cPP). The CCRA-2014 replaces the old CCRA signed in May 2000 (CCRA-2000). Certificates based on CCRA-2000, issued before 08 September 2014 are still under recognition according to the rules of CCRA-2000. For on 08 September 2014 ongoing certification procedures and for Assurance Continuity (maintenance and re-certification) of old certificates a transition period on the recognition of certificates according to the rules of CCRA-2000 (i.e. assurance components up to and including EAL 4 or the assurance family Flaw Remediation (ALC_FLR)) is defined until 08 September 2017. As of September 2014 the signatories of the new CCRA are government representatives from the following nations: Australia, Austria, Canada, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, India, Israel, Italy, Japan, Malaysia, The Netherlands, New Zealand, Norway, Pakistan, Republic of Korea, Singapore, Spain, Sweden, Turkey, United Kingdom, and the United States. The current list of signatory nations and approved certification schemes can be seen on the website: http://www.commoncriteriaportal.org. The Common Criteria Recognition Arrangement logo printed on the certificate indicates that this certification is recognised under the terms of this agreement by the nations listed above. As the product certified has been accepted into the certification process before 08 September 2014, this certificate is recognized according to the rules of CCRA-2000, i.e. up to and including CC part 3 EAL 4 components. The evaluation contained the components ADV_FSP.5, ADV_INT.2, ADV_TDS.4, ALC_CMS.5, ALC_DVS.2, ALC_TAT.2, ATE_DPT.3 and AVA_VAN.5 that are not mutually recognised in accordance with the provisions of the CCRA-2000, for mutual recognition the EAL 4 components of these assurance families are relevant. 8 / 40 BSI-DSZ-CC-0869-2015 Certification Report 3. Performance of Evaluation and Certification The certification body monitors each individual evaluation to ensure a uniform procedure, a uniform interpretation of the criteria and uniform ratings. The product Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 has undergone the certification procedure at BSI. The evaluation of the product Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 was conducted by TÜV Informationstechnik GmbH. The evaluation was completed on 12 February 2015. TÜV Informationstechnik GmbH is an evaluation facility (ITSEF)6 recognised by the certification body of BSI. For this certification procedure the applicant is: Oracle Corporation. The product was developed by: Oracle Corporation. The certification is concluded with the comparability check and the production of this Certification Report. This work was completed by the BSI. 4. Validity of the Certification Result This Certification Report only applies to the version of the product as indicated. The confirmed assurance package is only valid on the condition that ● all stipulations regarding generation, configuration and operation, as given in the following report, are observed, ● the product is operated in the environment described, as specified in the following report and in the Security Target. For the meaning of the assurance levels please refer to the excerpts from the criteria at the end of the Certification Report. The Certificate issued confirms the assurance of the product claimed in the Security Target at the date of certification. As attack methods evolve over time, the resistance of the certified version of the product against new attack methods needs to be re-assessed. Therefore, the sponsor should apply for the certified product being monitored within the assurance continuity program of the BSI Certification Scheme (e.g. by a re-certification). Specifically, if results of the certification are used in subsequent evaluation and certification procedures, in a system integration process or if a user's risk management needs regularly updated results, it is recommended to perform a re-assessment on a regular e.g. annual basis. In order to avoid an indefinite usage of the certificate when evolved attack methods require a re-assessment of the products resistance to state of the art attack methods, the maximum validity of the certificate has been limited as outlined on the certificate. The owner of the certificate can apply for re-certification of the certified version of the product at any time to refresh the validity period and the evaluation does not reveal any security deficiencies. Nevertheless, the rules on re-usability for composition applies as defined in the supporting documents (AIS 36 [4]). The owner of the certificate is obliged 1. when advertising the certificate or the fact of the product's certification, to refer to the Certification Report as well as to provide the Certification Report and the Security Target 6 Information Technology Security Evaluation Facility 9 / 40 Certification Report BSI-DSZ-CC-0869-2015 and user guidance documentation mentioned herein to any applicant of the product for the application and usage of the certified product, 2. to inform the Certification Body at BSI immediately about vulnerabilities of the product that have been identified by the developer or any third party after issuance of the certificate, 3. to inform the Certification Body at BSI immediately in the case that security relevant changes in the product's evaluated life cycle, e.g. related to development and production sites or processes, occur or the confidentiality of documentation and information related to the product or resulting from the evaluation and certification procedure is not given any longer. In particular, prior to the dissemination of confidential documentation and information related to the product or resulting from the evaluation and certification procedure that do not belong to the product deliverables according to the Certification Report part B chapter 2 to third parties, permission of the Certification Body at BSI has to be obtained. In case of changes to the certified version of the product, the validity can be extended to the new versions and releases, provided the sponsor applies for assurance continuity (i.e. re-certification or maintenance) of the modified product, in accordance with the procedural requirements, and the evaluation does not reveal any security deficiencies. 5. Publication The product Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 has been included in the BSI list of certified products, which is published regularly (see also Internet: https://www.bsi.bund.de and [5]). Further information can be obtained from BSI-Infoline +49 228 9582-111. Further copies of this Certification Report can be requested from the developer7 of the product. The Certification Report may also be obtained in electronic form at the internet address stated above. 7 Oracle Corporation 520 Oracle Parkway, Thames Valley Park, Reading Berkshire, RG6 1RG United Kindom 10 / 40 BSI-DSZ-CC-0869-2015 Certification Report B. Certification Results The following results represent a summary of ● the Security Target of the sponsor for the Target of Evaluation, ● the relevant evaluation results from the evaluation facility, and ● complementary notes and stipulations of the certification body. 11 / 40 Certification Report BSI-DSZ-CC-0869-2015 1. Executive Summary The Target of Evaluation (TOE) Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 is a smart card operating system on the Infineon IC M7892 B11, certified as BSI-DSZ-CC-0782-2012-MA-01 [19]. It is a Java Card Platform compliant with Java Card Specification (Classic Edition) v3.0.1 and GlobalPlatform Specification v2.2. The TOE allows post-issuance downloading of applications that have been previously verified by an off-card trusted IT component. It constitutes a secure generic platform that supports multi-application runtime environment and provides facilities for secure loading and interoperability between different applications. The Java Card Platform is managed by the Card Manager that is a part of the TOE. The JCP is fully compliant with the Java Card Specification v3.0.1 excluding the optional part JCRMI which is not implemented by the TOE. No specific pre-issuance applets are in the scope of the TOE, but pre-issuance loading of applets is possible. Native code post-issuance downloading is out of scope. The TOE fulfills the requirements of the Protection Profile Java Card Protection Profile - Open Configuration, Version 3.0, May 2012, ANSSI-CC-PP-2010/03-M01 [8] and claims strict conformance to it. The TOE provides the ability to extend the JC/GP functionality by offering an extensible user code area (Sandbox) that can be populated with custom code and be reachable from post-issuance Java applets via a secure, controlled mechanism (functional package EMG). As JCRMI is not implemented the Remote Method Invocation (RMIG) functional package as defined in the PP is not part of the TOE. The TOE Security Assurance Requirements (SAR) are based entirely on the assurance components defined in Part 3 of the Common Criteria (see part C or [1], Part 3 for details). The TOE meets the assurance requirements of the Evaluation Assurance Level EAL 5 augmented by ALC_DVS.2 and AVA_VAN.5. The TOE Security Functional Requirements (SFR) relevant for the TOE are outlined in the Security Target [6] and [7], chapter 6.1. They are selected from Common Criteria Part 2 and some of them are newly defined. Thus the TOE is CC Part 2 extended. The TOE Security Functional Requirements are implemented by the following TOE Security Functionality: TOE Security Functionality Addressed issue Global Platform TOE Security Functionality SF.Card Manager In Open Mode configuration, the Card Manager is activated and is responsible for card administration. The goal of the Card Manager is to enforce the security policies of the Card Issuer on the card by providing the following features: Card Content Management (CCM), DAP Verification, Card Management Environment, APDU Commands Dispatcher, SSD Delegated Management, Life-Cycle Management, Logical Channel Management. SF.Secure Channels This TOE Security Functionality provides a secure mean for the IC Manufacturer/Composite Product Integrator/Card Issuer to perform card management. This TSF protects the sensitive assets exchanged during that process. It relies on the Secure Channel Protocols defined in GlobalPlatform specification. This is achieved by the following features: Mutual Authentication, Message Integrity Verification, Message Confidentiality, Secure Messaging acceleration. 12 / 40 BSI-DSZ-CC-0869-2015 Certification Report SF.Secure Channel Key Management This TOE Security Functionality is intended to securely manage the keys used to establish a secure channel. These are the session keys used to open a secure channel with the CAD and the ISD keys used to open a secure channel with the IC Manufacturer/Composite Product Integrator/Card Issuer. This is achieved by Session Key/ISD Key Generation. SF.Global PIN Management This TOE Security Functionality controls the update of the security attributes associated with the global CVM which is restricted to the applets installed with the CVM Privilege. Java Card TOE Security Functionality SF.Java Card Firewall The Java Card firewall provides protection against the most frequently anticipated security concern: developer mistakes and design oversights that might allow sensitive data to be “leaked” to another applet. However, if the object is owned by an applet protected by its own firewall, the requesting applet must satisfy certain access rules before it can use the reference to access the object. These set of access rules controls the sharing and separation of resources between applet instantiations. The firewall also provides protection against incorrect code. If incorrect code is loaded onto a card, the firewall still protects objects from being accessed by this code. SF.End User Authentication This TOE Security Functionality allows applet’s user identification and authentication using the following features: PIN comparison feature. SF.Sensitive Data Cleaner This TOE Security Functionality ensures that sensitive information contained in data containers (APDU buffer, cryptographic buffer, local variables, bArray, static fields, class instances fields, etc.) are cleared after usage upon sensitive operations (deletion of packages/applets/objects, cryptographic operations, APDU commands, etc.). SF.Atomic_Transactions This TOE Security Functionality ensures the atomicity of transactions. It manages the contents of persistent storage after a stop, failure, or fatal exception during an update of a single object field or single class field or single array component. An applet might need to atomically update several different fields or array components in several different objects. Either all updates take place correctly and consistently, or else all fields or components are restored to their previous values. SF.Security Violation This TOE Security Functionality detects an attempt to illegally access an object belonging to another applet across the firewall boundary, on violation of fundamental language restrictions, such as attempting to invoke a private method in another class, on unavailability of data upon allocation. SF.PIN integrity This TOE Security Functionality ensures that the PIN value is protected in integrity. The integrity value is checked as well as its persistent attributes before any operation made on the PIN value. SF.Key Management This TOE Security Functionality ensures a secure on-card cryptographic keys infrastructure. Thus, providing the following security features: Keys Integrity Protection, Keys Confidentiality Protection, Keys Secure Generation, Keys Secure Deletion, Keys Secure Distribution, Keys Secure Agreement. SF.Cryptographic Operations This TOE Security Functionality enforces security means to execute the 13 / 40 Certification Report BSI-DSZ-CC-0869-2015 following cryptographic operations: Message Digest Generation, Signature Generation & Verification, Encryption & Decryption, Unique Hash Value, Random Number Generation. SF.Extended Memory This feature provides controlled access means to the external memory and ensures that the external memory does not address Java Card System memory (containing User Data and TSF Data) and the extended JC/GP functionality does not interfere with the TOE's memory. Table 1: TOE Security Functionalities For more details please refer to the Security Target [7], chapter 7.1. The following table outlines further aspects of TOE and non-TSF parts regarding its security features: Components TOE parts Non-TSF parts SCP Micro Controller ISO 7816 Interface ISO 14443 A/B Interface Crypto2304T (asymmetric coprocessor) SCP (AES and TDES coprocessor) TRNG Mifare-compatible interface Crypto Library RSA EC (prime and binary) SHA-2 Toolbox IC dedicated software Firmware parts Embedded Software Protocols SCP02, SCP03 SCP01 Cryptographic Algorithms ECDSA (prime and binary) ECDH (prime and binary) RSA TDES AES RSA Key generation onboard EC Key generation onboard AIS20 DRG.4 (seeded from HW-TRNG) Korean SEED MD5 RIPEMD160 SHA-1 MACs DSA Modules LDS Supplementary Security Domains Match-on-Card CIPURSE Biometric package Templating Table 2: Security features of the TOE The assets to be protected by the TOE are defined in the Security Target [6] and [7], chapter 4.1. Based on these assets the TOE Security Problem is defined in terms of Assumptions, Threats and Organisational Security Policies. This is outlined in the Security Target [6] and [7], chapter 4.2 to 4.4. This certification covers the configurations of the TOE as outlined in chapter 8. 14 / 40 BSI-DSZ-CC-0869-2015 Certification Report The vulnerability assessment results as stated within this certificate do not include a rating for those cryptographic algorithms and their implementation suitable for encryption and decryption (see BSIG Section 9, Para. 4, Clause 2). The certification results only apply to the version of the product indicated in the certificate and on the condition that all the stipulations are kept as detailed in this Certification Report. This certificate is not an endorsement of the IT product by the Federal Office for Information Security (BSI) or any other organisation that recognises or gives effect to this certificate, and no warranty of the IT product by BSI or any other organisation that recognises or gives effect to this certificate, is either expressed or implied. 2. Identification of the TOE The Target of Evaluation (TOE) is called: Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 The TOE developer delivers his OS image for TOE production to the Chip Manufacturer. The OS image is accompanied by the guidance documents and further tools for conducting configuration, templating and merging with the TOE. After TOE production by the Chip Manufacturer and the Composite Product Integrator the TOE delivery is at the end of phase 5 of the life cycle model as outlined in the ST chapter 1.6 to the Card Issuer for personalisation, issuance and the operational use thereafter. Delivery to the Card Issuer comprises: No Type Identifier Release Form of Delivery 1 HW/SW ICC including the Software part of the TOE: Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) 8 Infineon M7892 B11 with Java Card Platform Implementation Version 1.0 Delivery as defined by certified IFX procedures [19] 2 DOC Operational user guidance [11] V1.5 3 DOC Data Book [12] V1.0 4 KEY DATA Card Manager Keyset (Transfer keyset for embedding) - 5 KEY DATA DAP Verification (Verification Authority’s RSA public key) - Table 3: Deliverables of the TOE At the time of TOE delivery, all provided configuration options of the TOE and its hardware are set and cannot be further modified. The TOE can be clearly identified and its configuration can be determined as described in the following: 8 The TOE in its final TOE configuration as shown in detail in the Security Target, ready for personalization: The first x is for the available interface (can be ‘C’, ‘L’, or ‘D’ for the contact-based, contactless or dual interface). The second x is for the available cryptography (can be ‘A’ for symmetric and asymmetric cryptography, and ‘B’ for only symmetric cryptography). The number yyy is the available user memory (can be one of the following sizes: 036, 064, 080, 128, 144, 160kB). The last letter z is a place holder for products that will be based on the TOE (can be ‘A’ for ePassport, ‘B’ for eDriving License, ‘C’ for National eID Open Platform, or ‘D’ for National eID with applications). 15 / 40 Certification Report BSI-DSZ-CC-0869-2015 In order to verify that the user uses a certified TOE and certified configuration, the TOE can be identified using the means described in the Operational User Guidance [11], chapter 1.4. The TOE can be identified using the command GET DATA. It retrieves the chip and configuration data from the card. The configuration data is retrieved using GET DATA tags 0xDF10 and 0xDF11 as per [12], chapter 5.8. All listed items below must have the following expected value(s) after TOE delivery: Offset Length Description Expected Value Tag ‘DF10’ 66 2 bytes Build information (major / minor version) ‘0x007b’ 69 1 byte Security profile CC compliant ‘C3’ 88 1 byte Dynamic reconfiguration disabled ‘E1’ 89 1 byte Templating disabled ‘E1’ 90 1 byte Auth. for proprietary commands by GP SCP ‘D2’ 91 1 byte Reflashing disabled ‘E1’ Tag ‘DF11’ 32 1 byte GP Secure Channel Protocol of ISD ‘02’ or ‘03’ 33 1 byte GP SCP implementation option of ISD - in case of SCP02 - in case of SCP03 ‘15’, ‘55’, ‘1A’ ‘00’ or ‘10’ 131 1 byte ISD supports GP command format ‘E1’ 132 1 byte GP configuration (GP ID or general GP) ‘E1’ or ‘D2’ Table 4: TOE identification data Further, the TOE offers a range of different configurations concerning the optional modules. A user can verify which modules are actually part of the TOE configuration and which of them are part of the TSF. Modules that are not part of the TSF do not lead to an uncertified configuration, but the use of them is not covered by this certification. Hence, the provided functionality of non-TSF modules cannot be used as certified basis for forthcoming applet evaluations. The configuration parameters returned by the GET DATA 'DF10' and 'DF11' command are defined in the following table (excerpt from [11], Annex B). The evaluation covers the options set in bold text. Parameter Length (byte) Description and Valid Options jCOS runtime mode 1 0xE1 - release mode 0xD2 - debug mode Max. security violations 1 Valid values are 0 through 10. The default is 3. Enabled modules 2 16-bit mask of enabled modules: 0x0001 – EC 0x0002 – RSA 0x0004 – DSA 0x0008 - CL (Contactless) 0x0010 - Legacy (Korean SEED, RIPEMD, SCP01, and MD5) 0x0020 - CB (Contact Based) 0x0040 - Advanced SSD (SCP03 and Downloadable SSD) 16 / 40 BSI-DSZ-CC-0869-2015 Certification Report Parameter Length (byte) Description and Valid Options 0x0080 - MC (Memory Card) 0x0100 - SAND (Biometry/Regional Cryptography) 0x0200 - EXT_GP (Advanced GP) 0x0400 - LDS Secure Messaging Accelerator (EPASSPORT) 0x0800 – Templating Note: unused bits 12-15 are set to 1 in the module mask CLA encoding 1 0xE1=JC3.0.1 0xD2=JC2.2.1 Table 5: TOE configuration data 3. Security Policy The Security Policy is expressed by the set of Security Functional Requirements and implemented by the TOE. It covers the following issues: The Security Policy of the TOE as a smart card with a Java Card operating system (OS) is to provide basic security functionalities to be used by the smart card applications thus providing an overall smart card system security. The TOE implements physical and logical security functionality in order to protect user data stored and operated on the smart card when used in a hostile environment. Hence the TOE maintains integrity and confidentiality of code and data stored in its memories and the different CPU modes with the related capabilities for configuration and memory access and for integrity, the correct operation and the confidentiality of security functionality provided by the TOE. Therefore the TOEs policy is to protect against malfunction, leakage, physical manipulation and probing. Besides, the TOE's life-cycle is supported as well as the user Identification whereas the abuse of functionality is prevented. Furthermore, random number generation as well as specific cryptographic services are being provided to be securely used by the smart card embedded software. Specific details concerning the above mentioned security policies can be found in section 6.1 of the Security Target [7]. 4. Assumptions and Clarification of Scope The Assumptions defined in the Security Target and some aspects of Threats and Organisational Security Policies are not covered by the TOE itself. These aspects lead to specific security objectives to be fulfilled by the TOE-Environment. Concerning the overall security of the TOE, constrains are imposed upon the user by the different guidance documents ([11], [12] [13], [14], [15], [16], [17]). Advices that are presented in the guidance have to be followed. In particular the security objectives for the environment have to be followed and considered. They are as follows: • OE.APPLET: No applet loaded post-issuance shall contain native methods. • OE.VERIFICATION: All the bytecodes shall be verified at least once, before the loading, before the installation or before the execution, depending on the card capabilities, in order to ensure that each bytecode is valid at execution time. See #.VERIFICATION in [7], chapter 3.4 for details. Additionally, the applet shall follow all the recommendations, if any, mandated in the platform guidance for maintaining 17 / 40 Certification Report BSI-DSZ-CC-0869-2015 the isolation property of the platform. Application Note: Constraints to maintain the isolation property of the platform are provided by the platform developer in application development guidance. The constraints apply to all application code loaded in the platform. • OE.CODE-EVIDENCE: For application code loaded pre-issuance, evaluated technical measures implemented by the TOE or audited organizational measures must ensure that loaded application has not been changed since the code verifications required in OE.VERIFICATION. For application code loaded post-issuance and verified off-card according to the requirements of OE.VERIFICATION, the verification authority shall provide digital evidence to the TOE that the application code has not been modified after the code verification and that he is the actor who performed code verification. For application code loaded post-issuance and partially or entirely verified on-card, technical measures must ensure that the verification required in OE.VERIFICATION are performed. On-card bytecode verifier is out of the scope of this Protection Profile. Application Note: For application code loaded post-issuance and verified off-card, the integrity and authenticity evidence can be achieved by electronic signature of the application code, after code verification, by the actor who performed verification. 5. Architectural Information The TOE design is defined by certain subsystems and modules. The subsystems again are logically grouped together and compose four layers of the TOE: GlobalPlatform Layer (GP): The GlobalPlatform layer relies on both the Java Card platform layer and the Operating System layer. This layer implements the GlobalPlatform industry standard, which defines the infrastructure for development, deployment and management of smart cards. Security domains and secure channel protocols are supported in this layer. Java Card Platform Layer (JC): The Java Card platform layer relies on the Operating System layer. The Java Card Platform layer complies with the specifications for the Java Card Platform, Version 3.0.1, Classic Edition, excluding the optional functionality for remote method invocation. This layer provides the security inherent in the Java programming language. Operating System Layer (OS): The operating system layer relies on the Hardware Abstraction layer. The OS layer provides a memory manager, cryptography engine and input/output. Hardware Abstraction Layer (HAL): The Hardware Abstraction layer interacts directly with the hardware. HAL implements CPU control, card initialization, memory operations, interruption control, and support for cryptography on the chip. The subsystems that compose the TOE and provide its functionality are each mapped to one layer. 6. Documentation The evaluated documentation as outlined in table 3 is being provided with the product to the customer. This documentation contains the required information for secure usage of the TOE in accordance with the Security Target. 18 / 40 BSI-DSZ-CC-0869-2015 Certification Report Additional obligations and notes for secure usage of the TOE as outlined in chapter 10 of this report have to be followed. 7. IT Product Testing For testing, the TOE was prepared by following the guidance documentation and using the Configurator and Templating tools. Thereby a wide range of TOE configurations were created and tested. Since the TOE provides manifold possible TOE configurations, not all of them could be tested. However, each module whether part of the TSF or not, was tested appropriately. The TOE configurations did not show unexpected behavior related to their different configuration options. All behavior of different TOE configurations during testing were as expected and according to their desired configured behavior. The following sections give more detail on the TOE configurations used during testing. Developer's Test according to ATE_FUN: The tested configurations compose a good subset of possible TOE configurations and were chosen to cover all the functional developer tests. Additional and different configurations were tested in the course of independent testing, which show that the several configuration options have no unexpected impact on the test results. Testing Approach: For functional testing, the developer used several test categories to cover the TOE security functionality the TOE provides. Following test categories are described in the test documentation and were found in the actual test environment: • TCK tests: The tests in the Java Card Technology Compatibility Kit are used to verify the standard Java Card APIs. • Generic tests: The generic tests cover product requirements dealing with open specifications such as Global Platform or Java Card platform specification. APDU and API tests are considered. • Secure tests: The tests referred to as Secure Tests cover security functionality involving IFX specific API, IFX proprietary code, IFX chip, hardware, etc. • Collis tests: Some functionality related to compliance to GlobalPlatform Card Specification 2.2 is tested using the GP 2.2 UICC configuration test suite from Collis. The tests mainly run automatically and perform all test steps including installation of test applets, test scripting, checking of results and clean-up procedures. ATE_COV and ATE_DPT were taken into account and all mappings to interfaces and modules of the TOE are covered by the tests. The testing approach covers all TSFI as described in the functional specification and all subsystems of the TOE design adequately. All configurations as described in the ST are covered by the approach of testing. All test results collected in the test reports are as expected and in accordance with the TOE design and the desired TOE functionality. Independent Testing according to ATE_IND: Approach for independent testing: (i) Examination of developer’s testing amount, depth and coverage analysis and of the developer’s test goals and plan for identification of gaps; (ii) Examination whether the TOE in its intended environment, is operating as specified using iterations of developer’s tests; (iii) Independent testing was performed at the 19 / 40 Certification Report BSI-DSZ-CC-0869-2015 Evaluation Body with the TOE developer test environment and additional Evaluation Body test equipment using tests applets, test scripts, simulation tools and LFI equipment. TOE test configurations: Tests were performed with different TOE configurations, i.e. with different optional modules activated and with different TOE interfaces (contactless, contact-based) as well as with the TOE simulator. The TOEs were generated using the Configurator Tool and the according guidance documents. Tests were done in different life-cycle phases (e.g. Global Platform life cycle states SECURED, OP_READY, etc.). Tests were performed with TOEs that were generated with or without using Templating functionality and the Templating tools. Subset size chosen: During sample testing the evaluator chose to sample the developer functional tests. Most of the tests were repeated in order to yield good test coverage of TOE functionality. During independent testing the evaluator used test applets and test scripts to invoke and test functionality given by the API and APDU interface. Further penetration testing was done for AVA_VAN aspects such as non-bypassability and domain separation. Interfaces tested: The selection criteria for the interfaces of the composed subset consider simply the security functionality that is available from these interfaces. Focus was laid upon interfaces and functionality that are in particular security sensitive for a JavaCard platform. The tested subset comprises the APDU and the API interfaces available to users. While the physical IC interface relies on the platform certification, the independent testing focused on the APDU interface (based on the Global Platform specification) and the API interface (which provides packages from JavaCard API, Global Platform API and proprietary API). During the evaluator’s TSF subset testing the TOE operated as specified. No unexpected behavior was observed, particularly related to different TOE configurations and generation of the TOE using the Configurator and Templating tools. Penetration Testing according to AVA_VAN: The TOE in different configurations being intended to be covered by the current evaluation was tested. Penetration testing approach: Based on the list of potential vulnerabilities applicable to the TOE in its operational environment the evaluators devised the attack scenarios for penetration tests when they were of the opinion, that those potential vulnerabilities could be exploited in the TOE’s operational environment. The aspects of the security architecture were considered for penetration testing as well as all other evaluation evidence. The source code reviews of the provided implementation representation accompanied the development of test cases and were used to find test input. The code inspection also supported the testing activity by enabling the evaluator to verify implementation aspects that could hardly be covered by test cases. In addition the evaluator applied tests and performed code reviews during the composite evaluation aspects to verify the implementation of the requirements imposed by the ETR and the guidance of the underlying platform. This ensured confidence in the security of the TOE as a whole. TOE test configurations: The evaluators used TOE samples for testing that were configured according to the ST. The configurations that were created for testing constitute a reasonable subset of possible configurations that are possible according to the modularization concept as defined in ST. The tests were performed in different test scenarios: (i) TOE smart cards tested using specialized test tools for smart cards, Java 20 / 40 BSI-DSZ-CC-0869-2015 Certification Report cards and for LFI testing; (ii) A simulator was used for test cases, which were not possible to perform with a real smart card TOE, e.g. memory manipulation; (iii) Different life-cycles as well as life-cycle management were tested. The overall test result is that no deviations were found between the expected and the actual test results. No attack scenario with the attack potential high was actually successful in the TOE’s operational environment as defined in the Security Target provided that all measures required by the developer are applied.” 8. Evaluated Configuration The TOE offers a range of TOE configurations that are defined by the available optional modules and the functionality they provide. The underlying hardware platform may also vary and provides different options by its available interface (contactless, contact-based or dual), its memory sizes and co-processors. Each of them is valid for the composite TOE and is covered by the underlying hardware certification BSI-DSZ-CC-0782-MA-01. The evaluated TOE configurations meet the definitions that are given by the TOE identification data as described above. The optional non-TSF modules were considered as part of the TOE configuration and do not introduce new vulnerabilities to circumvent the TSF. During production, the TOE configurations are set by using the Configurator tool which is delivered to the chip manufacturer accompanied by the according guidance documentation. 9. Results of the Evaluation 9.1. CC specific results The Evaluation Technical Report (ETR) [9] was provided by the ITSEF according to the Common Criteria [1], the Methodology [2], the requirements of the Scheme [3] and all interpretations and guidelines of the Scheme (AIS) [4] as relevant for the TOE. The Evaluation Methodology CEM [2] was used for those components up to EAL 5 extended by advice of the Certification Body for components beyond EAL 5 and guidance specific for the technology of the product [4] (AIS 34). The TOE was subject to a composite evaluation according AIS 36 [4]. The platform certificate for the Integrated Circuit (IC) M7892 B11, certification ID BSI-DSZ-CC-0782-2012, was used ([19] to [22]). The following guidance specific for the technology was used: (i) Composite product evaluation for Smart Cards and similar devices (see AIS 36). According to this concept the relevant guidance documents of the underlying platform and the documents ETR for Composition from the platform evaluations have been applied in the TOE evaluation. (ii) Guidance for Smartcard Evaluation (iii) Application of Attack Potential to Smartcards (see AIS 26) For RNG assessment the scheme interpretation AIS 20 was used (see [4]). To support composite evaluations according to AIS 36 the document ETR for composite evaluation [18] was provided and approved. This document provides details of this platform evaluation that have to be considered in the course of a composite evaluation on top. 21 / 40 Certification Report BSI-DSZ-CC-0869-2015 As a result of the evaluation the verdict PASS is confirmed for the following assurance components: • All components of the EAL 5 package including the class ASE as defined in the CC (see also part C of this report). • The components ALC_DVS.2 and AVA_VAN.5 augmented for this TOE evaluation. The evaluation has confirmed: • PP Conformance: Java Card Protection Profile - Open Configuration, Version 3.0, May 2012, ANSSI-CC-PP-2010/03-M01 [8] • for the Functionality: PP conformant including optional package EMG plus product specific extensions Common Criteria Part 2 extended • for the Assurance: Common Criteria Part 3 conformant, EAL 5 augmented by ALC_DVS.2 and AVA_VAN.5 For specific evaluation results regarding the development and production environment see annex B in part D of this report. The results of the evaluation are only applicable to the TOE as defined in chapter 2 and the configuration as outlined in chapter 8 above. 9.2. Results of cryptographic assessment For details of the cryptographic algorithms that are implemented by the TOE to enforce its security policy please refer to the annex Crypto Disclaimer of the Security Target [7]. The table outlines the Purpose, the Cryptographic Mechanism, the Standard of Implementation, the Key Size in bits, the Security Level and related references. The strength of the cryptographic algorithms was not rated in the course of this certification procedure (see BSIG Section 9, Para. 4, Clause 2). But Cryptographic Functionalities listed with a security level of lower than 100 bits can no longer be regarded as secure without considering the application context. Therefore, for these functionalities it shall be checked whether the related crypto operations are appropriate for the intended system. Some further hints and guidelines can be derived from the 'Technische Richtlinie BSI TR-02102' (https://www.bsi.bund.de) [23]. 10. Obligations and Notes for the Usage of the TOE The documents as outlined in table 3 contain necessary information about the usage of the TOE and all security hints therein have to be considered. In addition all aspects of Assumptions, Threats and OSPs as outlined in the Security Target not covered by the TOE itself need to be fulfilled by the operational environment of the TOE. The customer or user of the product shall consider the results of the certification within his system risk management process. In order for the evolution of attack methods and techniques to be covered, he should define the period of time until a re-assessment of the TOE is required and thus requested from the sponsor of the certificate. The limited validity for the usage of cryptographic algorithms as outlined in chapter 9 has to be considered by the user and his system risk management process. Some security measures are partly implemented in this certified TOE, but require additional configuration or control or measures to be implemented by a product layer on 22 / 40 BSI-DSZ-CC-0869-2015 Certification Report top using the TOE. For this reason the TOE includes guidance documentation (see table 3) which contains obligations and guidelines for the developer of the product layer on top on how to securely use this certified TOE and which measures have to be implemented in order to fulfil the security requirements of the Security Target of the TOE. In the course of the evaluation of the composite product or system it must be examined if the required measures have been correctly and effectively implemented by the product layer on top. Since the TOE provides a variety of possible configurations, it must be stated that there are configuration options that are not part of the TSF. Their use is not covered by the certification. That is for example, a security domain may offer the deprecated SCP01 module, but must be aware that authentication and subsequent actions like content management cannot be covered any longer by the certification. The constraints and exceptions on the usage of the TOE as pointed out above have to be followed. Additionally, the requirements provided for TOE users/administrators in the guidance documentation [11] to [17] have to be considered. They include mandatory information on the secure usage of the TOE functionality. 11. Security Target For the purpose of publishing, the Security Target [7] of the Target of Evaluation (TOE) is provided within a separate document as Annex A of this report. It is a sanitised version of the complete Security Target [6] used for the evaluation performed. Sanitisation was performed according to the rules as outlined in the relevant CCRA policy (see AIS 35 [4]). 12. Definitions 12.1. Acronyms AIS Application Notes and Interpretations of the Scheme API Application Programming Interface BSI Bundesamt für Sicherheit in der Informationstechnik / Federal Office for Information Security, Bonn, Germany BSIG BSI-Gesetz / Act on the Federal Office for Information Security CCRA Common Criteria Recognition Arrangement CC Common Criteria for IT Security Evaluation CEM Common Methodology for Information Technology Security Evaluation cPP Collaborative Protection Profile DRNG Deterministic Random Number Generator EAL Evaluation Assurance Level ETR Evaluation Technical Report GP Global Platform IFX Acronym for Infineon IT Information Technology 23 / 40 Certification Report BSI-DSZ-CC-0869-2015 ITSEF Information Technology Security Evaluation Facility JCRE Java Card Runtime Environment JCS Java Card System JCVM Java Card Virtual Machine KAT Known Answer Tests PP Protection Profile RNG Random Number Generator SAR Security Assurance Requirement SCP Smart Card Platform SFP Security Function Policy SFR Security Functional Requirement ST Security Target TCK Technology Compatibility Kit, a test suite provided by the developer as part of ATE_FUN TOE Target of Evaluation TRNG True Random Number Generator TSF TOE Security Functionality 12.2. Glossary Augmentation - The addition of one or more requirement(s) to a package. Collaborative Protection Profile - A Protection Profile collaboratively developed by an International Technical Community endorsed by the Management Committee. Extension - The addition to an ST or PP of functional requirements not contained in CC part 2 and/or assurance requirements not contained in CC part 3. Formal - Expressed in a restricted syntax language with defined semantics based on well-established mathematical concepts. Informal - Expressed in natural language. Object - A passive entity in the TOE, that contains or receives information, and upon which subjects perform operations. Package - Named set of either security functional or security assurance requirements Protection Profile - A formal document defined in CC, expressing an implementation independent set of security requirements for a category of IT Products that meet specific consumer needs. Security Target - An implementation-dependent statement of security needs for a specific identified TOE. Semiformal - Expressed in a restricted syntax language with defined semantics. Subject - An active entity in the TOE that performs operations on objects. Target of Evaluation - An IT Product and its associated administrator and user guidance documentation that is the subject of an Evaluation. 24 / 40 BSI-DSZ-CC-0869-2015 Certification Report TOE Security Functionality - Combined functionality of all hardware, software, and firmware of a TOE that must be relied upon for the correct enforcement of the SFRs. Deterministic (RNG) - An RNG that produces random numbers by applying a deterministic algorithm to a randomly selected seed and, possibly, on additional external inputs. Random number generator (RNG) - A group of components or an algorithm that outputs sequences of discrete values (usually represented as bit strings). True RNG - A device or mechanism for which the output values depend on some unpredictable source (noise source, entropy source) that produces entropy. 13. Bibliography [1] Common Criteria for Information Technology Security Evaluation, Version 3.1, Part 1: Introduction and general model, Revision 4, September 2012 Part 2: Security functional components, Revision 4, September 2012 Part 3: Security assurance components, Revision 4, September 2012 [2] Common Methodology for Information Technology Security Evaluation (CEM), Evaluation Methodology, Version 3.1, Rev. 4, September 2012 [3] BSI certification: Technical information on the IT security certification of products, protection profiles and sites (BSI 7138) and Requirements regarding the Evaluation Facility for the Evaluation of Products, Protection Profiles and Sites under the CC and ITSEC (BSI 7125) [4] Application Notes and Interpretations of the Scheme (AIS) as relevant for the TOE9 . [5] German IT Security Certificates (BSI 7148), periodically updated list published also in the BSI Website [6] Security Target for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, BSI-DSZ-CC-0869-2015, ST Version 2.0, 20 November 2014, Oracle Corporation (confidential document) 9 specifically • AIS 1, Version 13, Durchführung der Ortsbesichtigung in der Entwicklungsumgebung des Herstellers • AIS 20, Version 3, Funktionalitätsklassen und Evaluationsmethodologie für deterministische Zufallszahlengeneratoren • AIS 25, Version 8, Anwendung der CC auf Integrierte Schaltungen including JIL Document and CC Supporting Document • AIS 26, Version 9, Evaluationsmethodologie für in Hardware integrierte Schaltungen including JIL Document and CC Supporting Document • AIS 32, Version 7, CC-Interpretationen im deutschen Zertifizierungsschema • AIS 34, Version 3, Evaluation Methodology for CC Assurance Classes for EAL 5+ (CCv2.3 & CCv3.1) and EAL 6 (CCv3.1) • AIS 35, Version 2, Öffentliche Fassung des Security Targets (ST-Lite) including JIL Document and CC Supporting Document and CCRA policies • AIS 36, Version 4, Kompositionsevaluierung including JIL Document and CC Supporting Document • AIS 46, Version 3, Informationen zur Evaluierung von kryptographischen Algorithmen und ergänzende Hinweise für die Evaluierung von Zufallszahlengeneratoren 25 / 40 Certification Report BSI-DSZ-CC-0869-2015 [7] Security Target for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, BSI-DSZ-CC-0869-2015, ST Lite Version 2.0, 20 November 2014, Oracle Corporation [8] Common Criteria Java Card Protection Profile - Open Configuration, Version 3.0, May 2012, ANSSI-CC-PP-2010/03-M01 [9] Evaluation Technical Report, Version 2, 30 January 2015 for Oracle Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, BSI-DSZ-CC-0869-2015, TÜViT GmbH (confidential document) [10] Configuration List BSI-DSZ-CC-0869-2015: Configuration Management Scope for Java Card Platform Implementation for Infineon on SLE78 (SLJ 52GxxyyyzR) V 1.0, Version 1.4, 29 January 2015, Oracle Corporation (confidential document) [11] AGD_OPE for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Version 1.5, September 2014, Oracle Corporation [12] Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR), Data Book, E39029-01, Version 1.0, February 2014, Oracle Corporation [13] AGD_PRE Composite Product Integrator for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Version 1.7, September 2014, Oracle Corporation [14] AGD_PRE Chip Manufacturer for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Version 1.7, September 2014, Oracle Corporation [15] Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, E39028-01, Version 1.0, September 2013, Oracle Corporation [16] Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Configurator Tool Guide, E29344-01, Version 1.0, September 2013, Oracle Corporation [17] Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Tools Programming Guide, Version 1.0, E29342-01, Oracle Corporation [18] Evaluation Technical Report for Composite Evaluation (ETR Comp) according to AIS 36 for Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0, Version 1, 30 January 2015, TÜViT GmbH (confidential document) [19] Certification Report – for Infineon Security Controller M7892 B11 with optional RSA2048/4096 v1.02.013, EC v1.02.013, SHA-2 v1.01 and Toolbox v1.02.013 libraries and with specific IC dedicated software (firmware), 11 September 2012, BSI-DSZ-CC-0782-2012, BSI and Assurance Continuity Maintenance Report, Infineon Security Controller M7892 B11 with optional RSA2048/4096 v1.02.013, ECv1.02.013, SHA-2 v1.01 and Toolbox v1.02.013 libraries and with specific IC dedicated software (firmware), from Infineon Technologies AG, BSI-DSZ-CC-0782-2012-MA-01, 05 September 2013, BSI [20] ETR for Composition (ETR-COMP), M7892 B11, BSI-DSZ-CC-0782, Version 5, 20 March 2014, TÜViT GmbH (confidential document) [21] SLx 70 Family Production and Personalization User’s Manual, Revision 2012-06-27, Infineon Technologies AG 26 / 40 BSI-DSZ-CC-0869-2015 Certification Report [22] Security Target Lite M7892 B11 including optional Software Libraries RSA – EC – SHA-2 – Toolbox, Version 1.4, 28 June 2013, Infineon Technologies AG [23] Technische Richtlinie BSI TR-02102-1, Kryptographische Verfahren: Empfehlungen und Schlüssellängen, Version 2014-01, 10.2.2014, BSI, https://www.bsi.bund.de/TR [24] GlobalPlatform Card Specification, Version 2.2, March 2006 [25] GlobalPlatform Card ID Configuration, Version 1.0 Member Release, December 2011, Document Reference: GPC_GUI_039 [26] Java Card Platform, Version 3.0.1 (May 2009), Classic Edition, Application Programming Interface, May 2009 Java Card Platform, Version 3.0.1 (May 2009), Classic Edition, Runtime Environment (Java Card RE) Specification, May 2009 Java Card Platform, Version 3.0.1 (May 2009), Classic Edition, Virtual Machine (Java Card VM) Specification 27 / 40 Certification Report BSI-DSZ-CC-0869-2015 This page is intentionally left blank. 28 / 40 BSI-DSZ-CC-0869-2015 Certification Report C. Excerpts from the Criteria CC Part 1: Conformance Claim (chapter 10.4) “The conformance claim indicates the source of the collection of requirements that is met by a PP or ST that passes its evaluation. This conformance claim contains a CC conformance claim that: ● describes the version of the CC to which the PP or ST claims conformance. ● describes the conformance to CC Part 2 (security functional requirements) as either: – CC Part 2 conformant - A PP or ST is CC Part 2 conformant if all SFRs in that PP or ST are based only upon functional components in CC Part 2, or – CC Part 2 extended - A PP or ST is CC Part 2 extended if at least one SFR in that PP or ST is not based upon functional components in CC Part 2. ● describes the conformance to CC Part 3 (security assurance requirements) as either: – CC Part 3 conformant - A PP or ST is CC Part 3 conformant if all SARs in that PP or ST are based only upon assurance components in CC Part 3, or – CC Part 3 extended - A PP or ST is CC Part 3 extended if at least one SAR in that PP or ST is not based upon assurance components in CC Part 3. Additionally, the conformance claim may include a statement made with respect to packages, in which case it consists of one of the following: ● Package name Conformant - A PP or ST is conformant to a pre-defined package (e.g. EAL) if: – the SFRs of that PP or ST are identical to the SFRs in the package, or – the SARs of that PP or ST are identical to the SARs in the package. ● Package name Augmented - A PP or ST is an augmentation of a predefined package if: – the SFRs of that PP or ST contain all SFRs in the package, but have at least one additional SFR or one SFR that is hierarchically higher than an SFR in the package. – the SARs of that PP or ST contain all SARs in the package, but have at least one additional SAR or one SAR that is hierarchically higher than an SAR in the package. Note that when a TOE is successfully evaluated to a given ST, any conformance claims of the ST also hold for the TOE. A TOE can therefore also be e.g. CC Part 2 conformant. Finally, the conformance claim may also include two statements with respect to Protection Profiles: ● PP Conformant - A PP or TOE meets specific PP(s), which are listed as part of the conformance result. ● Conformance Statement (Only for PPs) - This statement describes the manner in which PPs or STs must conform to this PP: strict or demonstrable. For more information on this Conformance Statement, see Annex D.” 29 / 40 Certification Report BSI-DSZ-CC-0869-2015 CC Part 3: Class APE: Protection Profile evaluation (chapter 10) “Evaluating a PP is required to demonstrate that the PP is sound and internally consistent, and, if the PP is based on one or more other PPs or on packages, that the PP is a correct instantiation of these PPs and packages. These properties are necessary for the PP to be suitable for use as the basis for writing an ST or another PP. Assurance Class Assurance Components Class APE: Protection Profile evaluation APE_INT.1 PP introduction APE_CCL.1 Conformance claims APE_SPD.1 Security problem definition APE_OBJ.1 Security objectives for the operational environment APE_OBJ.2 Security objectives APE_ECD.1 Extended components definition APE_REQ.1 Stated security requirements APE_REQ.2 Derived security requirements APE: Protection Profile evaluation class decomposition” Class ASE: Security Target evaluation (chapter 11) “Evaluating an ST is required to demonstrate that the ST is sound and internally consistent, and, if the ST is based on one or more PPs or packages, that the ST is a correct instantiation of these PPs and packages. These properties are necessary for the ST to be suitable for use as the basis for a TOE evaluation.” Assurance Class Assurance Components Class ASE: Security Target evaluation ASE_INT.1 ST introduction ASE_CCL.1 Conformance claims ASE_SPD.1 Security problem definition ASE_OBJ.1 Security objectives for the operational environment ASE_OBJ.2 Security objectives ASE_ECD.1 Extended components definition ASE_REQ.1 Stated security requirements ASE_REQ.2 Derived security requirements ASE_TSS.1 TOE summary specification ASE_TSS.2 TOE summary specification with architectural design summary ASE: Security Target evaluation class decomposition 30 / 40 BSI-DSZ-CC-0869-2015 Certification Report Security assurance components (chapter 7) “The following Sections describe the constructs used in representing the assurance classes, families, and components.“ “Each assurance class contains at least one assurance family.” “Each assurance family contains one or more assurance components.” The following table shows the assurance class decomposition. Assurance Class Assurance Components ADV: Development ADV_ARC.1 Security architecture description ADV_FSP.1 Basic functional specification ADV_FSP.2 Security-enforcing functional specification ADV_FSP.3 Functional specification with complete summary ADV_FSP.4 Complete functional specification ADV_FSP.5 Complete semi-formal functional specification with additional error information ADV_FSP.6 Complete semi-formal functional specification with additional formal specification ADV_IMP.1 Implementation representation of the TSF ADV_IMP.2 Implementation of the TSF ADV_INT.1 Well-structured subset of TSF internals ADV_INT.2 Well-structured internals ADV_INT.3 Minimally complex internals ADV_SPM.1 Formal TOE security policy model ADV_TDS.1 Basic design ADV_TDS.2 Architectural design ADV_TDS.3 Basic modular design ADV_TDS.4 Semiformal modular design ADV_TDS.5 Complete semiformal modular design ADV_TDS.6 Complete semiformal modular design with formal high-level design presentation AGD: Guidance documents AGD_OPE.1 Operational user guidance AGD_PRE.1 Preparative procedures ALC: Life cycle support ALC_CMC.1 Labelling of the TOE ALC_CMC.2 Use of a CM system ALC_CMC.3 Authorisation controls ALC_CMC.4 Production support, acceptance procedures and automation ALC_CMC.5 Advanced support ALC_CMS.1 TOE CM coverage ALC_CMS.2 Parts of the TOE CM coverage ALC_CMS.3 Implementation representation CM coverage ALC_CMS.4 Problem tracking CM coverage ALC_CMS.5 Development tools CM coverage ALC_DEL.1 Delivery procedures ALC_DVS.1 Identification of security measures ALC_DVS.2 Sufficiency of security measures ALC_FLR.1 Basic flaw remediation ALC_FLR.2 Flaw reporting procedures ALC_FLR.3 Systematic flaw remediation ALC_LCD.1 Developer defined life-cycle model 31 / 40 Certification Report BSI-DSZ-CC-0869-2015 Assurance Class Assurance Components ALC_LCD.2 Measurable life-cycle model ALC_TAT.1 Well-defined development tools ALC_TAT.2 Compliance with implementation standards ALC_TAT.3 Compliance with implementation standards - all parts ATE: Tests ATE_COV.1 Evidence of coverage ATE_COV.2 Analysis of coverage ATE_COV.3 Rigorous analysis of coverage ATE_DPT.1 Testing: basic design ATE_DPT.2 Testing: security enforcing modules ATE_DPT.3 Testing: modular design ATE_DPT.4 Testing: implementation representation ATE_FUN.1 Functional testing ATE_FUN.2 Ordered functional testing ATE_IND.1 Independent testing – conformance ATE_IND.2 Independent testing – sample ATE_IND.3 Independent testing – complete AVA: Vulnerability assessment AVA_VAN.1 Vulnerability survey AVA_VAN.2 Vulnerability analysis AVA_VAN.3 Focused vulnerability analysis AVA_VAN.4 Methodical vulnerability analysis AVA_VAN.5 Advanced methodical vulnerability analysis Assurance class decomposition Evaluation assurance levels (chapter 8) “The Evaluation Assurance Levels (EALs) provide an increasing scale that balances the level of assurance obtained with the cost and feasibility of acquiring that degree of assurance. The CC approach identifies the separate concepts of assurance in a TOE at the end of the evaluation, and of maintenance of that assurance during the operational use of the TOE. It is important to note that not all families and components from CC Part 3 are included in the EALs. This is not to say that these do not provide meaningful and desirable assurances. Instead, it is expected that these families and components will be considered for augmentation of an EAL in those PPs and STs for which they provide utility.” Evaluation assurance level (EAL) overview (chapter 8.1) “Table 1 represents a summary of the EALs. The columns represent a hierarchically ordered set of EALs, while the rows represent assurance families. Each number in the resulting matrix identifies a specific assurance component where applicable. As outlined in the next Section, seven hierarchically ordered evaluation assurance levels are defined in the CC for the rating of a TOE's assurance. They are hierarchically ordered inasmuch as each EAL represents more assurance than all lower EALs. The increase in assurance from EAL to EAL is accomplished by substitution of a hierarchically higher assurance component from the same assurance family (i.e. increasing rigour, scope, and/or depth) and from the addition of assurance components from other assurance families (i.e. adding new requirements). These EALs consist of an appropriate combination of assurance components as described in Chapter 7 of this CC Part 3. More precisely, each EAL includes no more than one 32 / 40 BSI-DSZ-CC-0869-2015 Certification Report component of each assurance family and all assurance dependencies of every component are addressed. While the EALs are defined in the CC, it is possible to represent other combinations of assurance. Specifically, the notion of “augmentation” allows the addition of assurance components (from assurance families not already included in the EAL) or the substitution of assurance components (with another hierarchically higher assurance component in the same assurance family) to an EAL. Of the assurance constructs defined in the CC, only EALs may be augmented. The notion of an “EAL minus a constituent assurance component” is not recognised by the standard as a valid claim. Augmentation carries with it the obligation on the part of the claimant to justify the utility and added value of the added assurance component to the EAL. An EAL may also be augmented with extended assurance requirements. Evaluation assurance level 1 (EAL 1) - functionally tested (chapter 8.3) “Objectives EAL 1 is applicable where some confidence in correct operation is required, but the threats to security are not viewed as serious. It will be of value where independent assurance is required to support the contention that due care has been exercised with respect to the protection of personal or similar information. EAL 1 requires only a limited security target. It is sufficient to simply state the SFRs that the TOE must meet, rather than deriving them from threats, OSPs and assumptions through security objectives. EAL 1 provides an evaluation of the TOE as made available to the customer, including independent testing against a specification, and an examination of the guidance documentation provided. It is intended that an EAL 1 evaluation could be successfully conducted without assistance from the developer of the TOE, and for minimal outlay. An evaluation at this level should provide evidence that the TOE functions in a manner consistent with its documentation.” Evaluation assurance level 2 (EAL 2) - structurally tested (chapter 8.4) “Objectives EAL 2 requires the co-operation of the developer in terms of the delivery of design information and test results, but should not demand more effort on the part of the developer than is consistent with good commercial practise. As such it should not require a substantially increased investment of cost or time. EAL 2 is therefore applicable in those circumstances where developers or users require a low to moderate level of independently assured security in the absence of ready availability of the complete development record. Such a situation may arise when securing legacy systems, or where access to the developer may be limited.” Evaluation assurance level 3 (EAL 3) - methodically tested and checked (chapter 8.5) “Objectives EAL 3 permits a conscientious developer to gain maximum assurance from positive security engineering at the design stage without substantial alteration of existing sound development practises. 33 / 40 Certification Report BSI-DSZ-CC-0869-2015 EAL 3 is applicable in those circumstances where developers or users require a moderate level of independently assured security, and require a thorough investigation of the TOE and its development without substantial re-engineering.” Evaluation assurance level 4 (EAL 4) - methodically designed, tested, and reviewed (chapter 8.6) “Objectives EAL 4 permits a developer to gain maximum assurance from positive security engineering based on good commercial development practises which, though rigorous, do not require substantial specialist knowledge, skills, and other resources. EAL 4 is the highest level at which it is likely to be economically feasible to retrofit to an existing product line. EAL 4 is therefore applicable in those circumstances where developers or users require a moderate to high level of independently assured security in conventional commodity TOEs and are prepared to incur additional security-specific engineering costs.” Evaluation assurance level 5 (EAL 5) - semiformally designed and tested (chapter 8.7) “Objectives EAL 5 permits a developer to gain maximum assurance from security engineering based upon rigorous commercial development practises supported by moderate application of specialist security engineering techniques. Such a TOE will probably be designed and developed with the intent of achieving EAL 5 assurance. It is likely that the additional costs attributable to the EAL 5 requirements, relative to rigorous development without the application of specialised techniques, will not be large. EAL 5 is therefore applicable in those circumstances where developers or users require a high level of independently assured security in a planned development and require a rigorous development approach without incurring unreasonable costs attributable to specialist security engineering techniques.” Evaluation assurance level 6 (EAL 6) - semiformally verified design and tested (chapter 8.8) “Objectives EAL 6 permits developers to gain high assurance from application of security engineering techniques to a rigorous development environment in order to produce a premium TOE for protecting high value assets against significant risks. EAL 6 is therefore applicable to the development of security TOEs for application in high risk situations where the value of the protected assets justifies the additional costs.” Evaluation assurance level 7 (EAL 7) - formally verified design and tested (chapter 8.9) “Objectives EAL 7 is applicable to the development of security TOEs for application in extremely high risk situations and/or where the high value of the assets justifies the higher costs. Practical application of EAL 7 is currently limited to TOEs with tightly focused security functionality that is amenable to extensive formal analysis.” 34 / 40 BSI-DSZ-CC-0869-2015 Certification Report Assurance Class Assurance Family Assurance Components by Evaluation Assurance Level EAL 1 EAL 2 EAL 3 EAL 4 EAL 5 EAL 6 EAL 7 Development ADV_ARC 1 1 1 1 1 1 ADV_FSP 1 2 3 4 5 5 6 ADV_IMP 1 1 2 2 ADV_INT 2 3 3 ADV_SPM 1 1 ADV_TDS 1 2 3 4 5 6 Guidance Documents AGD_OPE 1 1 1 1 1 1 1 AGD_PRE 1 1 1 1 1 1 1 Life cycle Support ALC_CMC 1 2 3 4 4 5 5 ALC_CMS 1 2 3 4 5 5 5 ALC_DEL 1 1 1 1 1 1 ALC_DVS 1 1 1 2 2 ALC_FLR ALC_LCD 1 1 1 1 2 ALC_TAT 1 2 3 3 Security Target Evaluation ASE_CCL 1 1 1 1 1 1 1 ASE_ECD 1 1 1 1 1 1 1 ASE_INT 1 1 1 1 1 1 1 ASE_OBJ 1 2 2 2 2 2 2 ASR_REQ 1 2 2 2 2 2 2 ASE_SPD 1 1 1 1 1 1 ASE_TSS 1 1 1 1 1 1 1 Tests ATE_COV 1 2 2 2 3 3 ATE_DPT 1 1 3 3 4 ATE_FUN 1 1 1 1 2 2 ATE_IND 1 2 2 2 2 2 3 Vulnerability assessment AVA_VAN 1 2 2 3 4 5 5 Table 1: Evaluation assurance level summary” 35 / 40 Certification Report BSI-DSZ-CC-0869-2015 Class AVA: Vulnerability assessment (chapter 16) “The AVA: Vulnerability assessment class addresses the possibility of exploitable vulnerabilities introduced in the development or the operation of the TOE.” Vulnerability analysis (AVA_VAN) (chapter 16.1) “Objectives Vulnerability analysis is an assessment to determine whether potential vulnerabilities identified, during the evaluation of the development and anticipated operation of the TOE or by other methods (e.g. by flaw hypotheses or quantitative or statistical analysis of the security behaviour of the underlying security mechanisms), could allow attackers to violate the SFRs. Vulnerability analysis deals with the threats that an attacker will be able to discover flaws that will allow unauthorised access to data and functionality, allow the ability to interfere with or alter the TSF, or interfere with the authorised capabilities of other users.” 36 / 40 BSI-DSZ-CC-0869-2015 Certification Report D. Annexes List of annexes of this certification report Annex A: Security Target [7] provided within a separate document. Annex B: Evaluation results regarding development and production environment. 37 / 40 Certification Report BSI-DSZ-CC-0869-2015 This page is intentionally left blank. 38 / 40 BSI-DSZ-CC-0869-2015 Certification Report Annex B of Certification Report BSI-DSZ-CC-0869-2015 Evaluation results regarding development and production environment The IT product Java Card Platform Implementation for Infineon on SLE 78 (SLJ 52GxxyyyzR) V1.0 (Target of Evaluation, TOE) has been evaluated at an approved evaluation facility using the Common Methodology for IT Security Evaluation (CEM), Version 3.1 extended by advice of the Certification Body for components beyond EAL 5 and guidance specific for the technology of the product for conformance to the Common Criteria for IT Security Evaluation (CC), Version 3.1. As a result of the TOE certification, dated 17 February 2015, the following results regarding the development and production environment apply. The Common Criteria assurance requirements ALC – Life cycle support (i.e. ALC_CMC.4, ALC_CMS.5, ALC_DEL.1, ALC_DVS.2, ALC_LCD.1, ALC_TAT.2) are fulfilled for the development and production sites of the TOE listed below: a) Oracle, Santa Clara (short: SCA), 4210 Network Cycle, Santa Clara California 95054, United States (Development Environment). b) Oracle, Austin (short: ADC), 11400 N Lamar Blvd, Austin, TX 78753-2663, United States (Data Center). c) For development and production sites regarding the platform please refer to the certification report BSI-DSZ-CC-0782-MA-01 [19] For the sites listed above, the requirements have been specifically applied in accordance with the Security Target [6]. The evaluators verified, that the threats, security objectives and requirements for the TOE life cycle phases up to delivery (as stated in the Security Target [6] and [7]) are fulfilled by the procedures of these sites. 39 / 40 Certification Report BSI-DSZ-CC-0869-2015 This page is intentionally left blank. 40 / 40