Site Tools


Sidebar

Smart Card Solution

User Manual

JavaCard API Samples

Java Card Specification

Knowledge Sharing

javacard:java-card-api:aid

javacard.framework

Class AID


public class AIDextends Object

This class encapsulates the Application Identifier (AID) associated with an applet. An AID is defined in ISO 7816-5 to be a sequence of bytes between 5 and 16 bytes in length.

The Java Card runtime environment creates instances of AID class to identify and manage every applet on the card. Applets need not create instances of this class. An applet may request and use the Java Card runtime environment-owned instances to identify itself and other applet instances. Java Card runtime environment-owned instances of AID are permanent Java Card runtime environment Entry Point Objects and can be accessed from any applet context. References to these permanent objects can be stored and re-used. An applet instance can obtain a reference to Java Card runtime environment-owned instances of its own AID object by using the JCSystem.getAID() method and another applet's AID object via the JCSystem.lookupAID() method. An applet uses AID instances to request to share another applet's object or to control access to its own shared object from another applet. See Runtime Environment Specification for the Java Card Platform, section 6.2 for details.

See Also:JCSystem , SystemException


Constructor Summary
AID (byte[] bArray,short offset,byte length)          The Java Card runtime environment uses this constructor to create a new AID instance encapsulating the specified AID bytes.

 

Method Summary
 boolean equals (byte[] bArray,short offset,byte length)          Checks if the specified AID bytes in bArray are the same as those encapsulated in this AID object.
 boolean equals (Object  anObject)          Compares the AID bytes in this AID instance to the AID bytes in the specified object.
 byte getBytes (byte[] dest,short offset)          Called to get all the AID bytes encapsulated within AID object.
 byte getPartialBytes (short aidOffset,byte[] dest,short oOffset,byte oLength)          Called to get part of the AID bytes encapsulated within the AID object starting at the specified offset for the specified length.
 boolean partialEquals (byte[] bArray,short offset,byte length)          Checks if the specified partial AID byte sequence matches the first length bytes of the encapsulated AID bytes within this AID object.
 boolean RIDEquals (AID  otherAID)          Checks if the RID (National Registered Application provider identifier) portion of the encapsulated AID bytes within the otherAID object matches that of this AID object.

 

Constructor Detail

AID

public AID(byte[] bArray, short offset, byte length) throws SystemException , NullPointerException , ArrayIndexOutOfBoundsException , SecurityException

The Java Card runtime environment uses this constructor to create a new AID instance encapsulating the specified AID bytes.

Parameters:bArray - the byte array containing the AID bytes

offset - the start of AID bytes in bArray

length - the length of the AID bytes in bArray

Throws: SecurityException - if the bArray array is not accessible in the caller's context

SystemException - with the following reason code:


  • SystemException.ILLEGAL_VALUE if the length parameter is less than 5 or greater than 16


NullPointerException - if the bArray parameter is null

ArrayIndexOutOfBoundsException - if the offset parameter or length parameter is negative or if offset+length is greater than the length of the bArray parameter

Method Detail

getBytes

public final byte getBytes(byte[] dest, short offset) throws NullPointerException , ArrayIndexOutOfBoundsException , SecurityException

Called to get all the AID bytes encapsulated within AID object.

Parameters:dest - byte array to copy the AID bytes

offset - within dest where the AID bytes begin

Returns:the length of the AID bytes

Throws: SecurityException - if the dest array is not accessible in the caller's context

NullPointerException - if the dest parameter is null

ArrayIndexOutOfBoundsException - if the offset parameter is negative or offset+length of AID bytes is greater than the length of the dest array


equals

public final boolean equals(Object  anObject) throws SecurityException

Compares the AID bytes in this AID instance to the AID bytes in the specified object. The result is true if and only if the argument is not null and is an AID object that encapsulates the same AID bytes as this object. This method does not throw NullPointerException.

Overrides:equals in class Object

Parameters:anObject - the object to compare this AID against

Returns:true if the AID byte values are equal, false otherwise

Throws: SecurityException - if anObject object is not accessible in the caller's context


equals

public final boolean equals(byte[] bArray, short offset, byte length) throws ArrayIndexOutOfBoundsException , SecurityException

Checks if the specified AID bytes in bArray are the same as those encapsulated in this AID object. The result is true if and only if the bArray argument is not null and the AID bytes encapsulated in this AID object are equal to the specified AID bytes in bArray. This method does not throw NullPointerException.

Parameters:bArray - containing the AID bytes

offset - within bArray to begin

length - of AID bytes in bArray

Returns:true if equal, false otherwise

Throws: SecurityException - if the bArray array is not accessible in the caller's context

ArrayIndexOutOfBoundsException - if the offset parameter or length parameter is negative or if offset+length is greater than the length of the bArray parameter


partialEquals

public final boolean partialEquals(byte[] bArray, short offset, byte length) throws ArrayIndexOutOfBoundsException , SecurityException

Checks if the specified partial AID byte sequence matches the first length bytes of the encapsulated AID bytes within this AID object. The result is true if and only if the bArray argument is not null and the input length is less than or equal to the length of the encapsulated AID bytes within this AID object and the specified bytes match. This method does not throw NullPointerException.

Parameters:bArray - containing the partial AID byte sequence

offset - within bArray to begin

length - of partial AID bytes in bArray

Returns:true if equal, false otherwise

Throws: SecurityException - if the bArray array is not accessible in the caller's context

ArrayIndexOutOfBoundsException - if the offset parameter or length parameter is negative or if offset+length is greater than the length of the bArray parameter


RIDEquals

public final boolean RIDEquals(AID  otherAID) throws SecurityException

Checks if the RID (National Registered Application provider identifier) portion of the encapsulated AID bytes within the otherAID object matches that of this AID object. The first 5 bytes of an AID byte sequence is the RID. See ISO 7816-5 for details. The result is true if and only if the argument is not null and is an AID object that encapsulates the same RID bytes as this object. This method does not throw NullPointerException.

Parameters:otherAID - the AID to compare against

Returns:true if the RID bytes match, false otherwise

Throws: SecurityException - if the otherAID object is not accessible in the caller's context


getPartialBytes

public final byte getPartialBytes(short aidOffset, byte[] dest, short oOffset, byte oLength) throws NullPointerException , ArrayIndexOutOfBoundsException , SecurityException

Called to get part of the AID bytes encapsulated within the AID object starting at the specified offset for the specified length.

Parameters:aidOffset - offset within AID array to begin copying bytes

dest - the destination byte array to copy the AID bytes into

oOffset - offset within dest where the output bytes begin

oLength - the length of bytes requested in dest. 0 implies a request to copy all remaining AID bytes.

Returns:the actual length of the bytes returned in dest

Throws: SecurityException - if the dest array is not accessible in the caller's context

NullPointerException - if the dest parameter is null

ArrayIndexOutOfBoundsException - if the aidOffset parameter is negative or greater than the length of the encapsulated AID bytes or the oOffset parameter is negative or oOffset+length of bytes requested is greater than the length of the dest array

javacard/java-card-api/aid.txt · Last modified: 2017/05/13 04:04 (external edit)