Extended CAP File Manifest File Syntax

An extended CAP file utilizes the JAR file format, and has the same properties as a compact CAP file. However, there are some differences in the way the information that is specific to the extended CAP file is represented in the META-INF/MANIFEST.MF file.

The following table lists the names in the manifest file that are specific to the Java Card packages and Java Card Applets. These fields are changed to consider the extended CAP file context:

The information in the manifest file is presented in name:value pairs. These name:value pairs are described in Sample Extended CAP Manifest File.

Table 6-2 Extended CAP File Manifest File Name Syntax

Name Changed To: Change Description
Java-Card-Package-AID
Java-Card-Package-<n>-AID

An extended CAP file can have multiple packages. Therefore, an index is added for each package name.

Java-Card-Package-Version
Java-Card-Package-<n>-Version

An extended CAP file can have multiple packages. Therefore, an index is added for each package version.

If the package is not exported (private or applet package with no shareable interfaces), the value of this field is set to private.

Java-Card-Applet-<n>-AID
Java-Card-Package-<m>-Java-Card-Applet-<n>-AID

An extended CAP file can have multiple packages. Therefore, the package that contains the applet is added for each applet AID.

Java-Card-Applet-<n>-Name
Java-Card-Package-<m>-Java-Card-Applet-<n>-Name

An extended CAP file can have multiple packages. Therefore, the package that contains the applet is added for each applet name.

Some new name:value pairs are added in the extended CAP manifest file. These name value pairs have extended CAP file-specific information. The following table lists and describes the new name value pairs.

Table 6-3 Name:Value Pairs in the extended CAP MANIFEST.MF File

Name Value
Java-Card-CAP-Name

The extended CAP file name as defined in the CAP_name field from the JSON input configuration file.

Java-Card-CAP-AID

The extended CAP file AID as present in the header component of the CAP file.

Java-Card-CAP-Version

The extended CAP file version as present in the header component of the CAP file.

Sample Extended CAP Manifest File

The following code sample illustrates the sample extended CAP MANIFEST.MF file.

Manifest-Version: 1.0
Created-By: 1.7.0_60 (Oracle Corporation)
Name: BigApplet007
Java-Card-Integer-Support-Required: FALSE
Java-Card-Imported-Package-1-AID: 0xa0:0x00:0x00:0x00:0x62:0x00:0x01
Java-Card-Package-1-Name: com.oracle.lib
Java-Card-CAP-Version: 1.0
Java-Card-Package-3-Java-Card-Applet-1-AID: 0x01:0x02:0x03:0x04:0x05:0x06:0x01
Java-Card-Imported-Package-1-Version: 1.0
Java-Card-Package-3-Java-Card-Applet-1-Name: BigApplet001
Java-Card-Package-4-AID: private
Java-Card-CAP-Creation-Time: Thu Dec 06 18:47:17 FET 2018
Java-Card-Converter-Provider: Oracle Corporation
Java-Card-Package-4-Version: private
Java-Card-Package-2-Name: com.oracle.ext
Java-Card-Package-1-AID: 0x01:0x02:0x03:0x04:0x05:0x09
Java-Card-Package-4-Java-Card-Applet-2-Name: BigApplet001
Java-Card-Package-3-Name: com.oracle.bigapp
Java-Card-Package-3-Version: private
Java-Card-CAP-Name: BigApplet007
Java-Card-Package-2-Version: 1.0
Java-Card-Converter-Version:  [v3.1.0]
Java-Card-Package-4-Java-Card-Applet-1-Name: BigApplet002
Java-Card-Imported-Package-2-AID: 0xa0:0x00:0x00:0x00:0x62:0x01:0x01
Java-Card-Package-2-AID: 0x01:0x02:0x03:0x04:0x05:0x0b
Java-Card-Package-4-Java-Card-Applet-1-AID: 0x01:0x02:0x03:0x04:0x05:0x07:0x01
Java-Card-Package-4-Java-Card-Applet-2-AID: 0x01:0x02:0x03:0x04:0x05:0x08:0x01
Java-Card-CAP-AID: 0x01:0x02:0x03:0x04:0x05:0x06:0x0a
Java-Card-Package-4-Name: com.oracle.bigapp02
Java-Card-CAP-File-Version: 2.3
Java-Card-Package-3-AID: private
Java-Card-Imported-Package-2-Version: 1.7
Java-Card-Package-1-Version: 1.0