Intel® Dynamic Application Loader (Intel® DAL) Developer Guide
ID
773482
Date
3/24/2023
Public
For API Level 1 - Intel® ME 7.x - Sandy Bridge
For API Level 1.1 - Intel® ME 8.x lite - Sandy Bridge
For API Level 2 - Intel® ME 8.0 - Ivy Bridge
For API Level 3 - Intel® ME 8.1 - Ivy Bridge
For API Level 3 - SEC1.0, SEC1.1, SEC1.2, SEC2.0
For API Level 4 - Intel® ME 9.5, Intel ME 9.5.55 - Haswell
For API Level 4 - Intel® ME 9.1, Intel ME 9.1.35 - Haswell
For API Level 5 - Intel® ME 10.0.0 - Haswell
For API Level 6 - Intel® ME 10.0.20 - Broadwell
For API Level 7 - ME 11.0 - Skylake_LP and Skylake_H
For API Level 8 - TXE3.0 - Broxton, ME 11.5/11.8 - Kabylake_LP, Kabylake_H
For API Level 9 - Intel® ME 12.0 - Cannon Lake
Trusted Application Validation Guidelines
Validating the Manifest
Memory and Performance
Error Handling and Recovery
Functional Validation and Multi-Instance Support
Pack and DALP Generation and Validation
Host-Side Software Validation Guidelines
Trusted Application Management Flows
Error Handling and Recovery Flows
Multi-Instance and Interoperability Testing of Trusted Application Management
General and Platform-Related Events
End-to-End and Setup Validation Guidelines
Cross Trusted Application Interoperability Functional Testing
Creating a New Project
Importing an Existing Project
Converting an Existing Project
Building and Packaging Your Project and Running in Emulated Environment
Running Your Project
Running and Testing on Emulation and on Silicon
Debugging Trusted Applications
Preparing and Submitting Your Project for Signing
Signing an Applet
Signing New Versions
Specific Fields
Access control
The applet.access.control field specifies the Java* classes and packages that the applet is allowed to use. It is a bit mask represented in hexadecimal value according to the following table. The commands com.intel.langutil.* and all exceptions do not require the bit mask and are accessible to all.
Example: If an applet uses Crypto (bit1), Utils (bit 2) and SSL (bit 8), the match bit pattern is 0000100000110 and the converted hexa value is 0x106, meaning the applet.access.control is 106.
The access control value can be obtained via the Pack tool by calling the following command:
packtool.exe get-access-control -jeff <jeff-file> -version <FW version>
Supported and Mandatory from API level 7
Group name | Classes | Bit (LSB first) |
Reserved | 0 - must be always 0 | |
Cryptography | Symmetric ciphers, Symmetric signature, Hash, RSA, Random, PasswordKeyDerivationAlg | 1 |
Utils | MTC, timers, events | 2 |
Secure Time | Calendar | 3 |
Debug | DebugPrint | 4 |
Storage | FlashStorage | 5 |
Key Exchange | EpidAlg, EpidAlgEx, SigmaAlg, SigmaAlgEx | 6 |
Trusted Output | com.intel.ui.* | 7 |
SSL | CertificateChain, CertificateStore, SslSession | 8 |
IAC | ServiceApplet, ServiceClient, ServiceResult | 11 |
Platform | PowerGating | 12 |
Secure Enclave | SEMonotonicCounter | 13 |
AMT | AMT | 14 |
VTEE | VTEE | 15 |
PlatformSeed | PlatformSeed | 16 |
AMT provisioning | AMTProvision | 1 |
See pages under SKU Matrix for API level information.