Crescendo SDK
Loading...
Searching...
No Matches
CrescendoDLL.PCSC.GenericContainerObject Class Reference

Represents a generic PIV (Personal Identity Verification) container object. More...

Public Member Functions

 GenericContainerObject (byte[] data, AppletProperties appletProperties)
 Initializes a new instance of the GenericContainerObject class by parsing raw PIV data.
 

Properties

byte[] BERTLVValue = default! [get, set]
 The BER-TLV Tag of the container object.
 
CommunicationMediaCommunicationMedia [get, set]
 Communication media type for the container.
 
string ContactlessUsageACR = default! [get, set]
 Access control rule for contactless usage.
 
string ContactUsageACR = default! [get, set]
 Access control rule for contact-based usage.
 
string DataObjectName = default! [get, set]
 The name of the data object represented by this container as defined in NIST SP 800-73-4.
 
string MaxBufferLength = default! [get, set]
 Maximum buffer length supported by the container. Extracted from the tag 0x42.
 
string PersonalizationACR = default! [get, set]
 Access control rule for personalization operations. Extracted from the tag 0x4D.
 

Detailed Description

Represents a generic PIV (Personal Identity Verification) container object.

This class parses and encapsulates data from the PIV General Container Object as defined in NIST SP 800-73-4.

Constructor & Destructor Documentation

◆ GenericContainerObject()

CrescendoDLL.PCSC.GenericContainerObject.GenericContainerObject ( byte[]  data,
AppletProperties  appletProperties 
)
inline

Initializes a new instance of the GenericContainerObject class by parsing raw PIV data.

Parameters
dataThe raw byte array containing BER-TLV encoded data.
appletPropertiesThe properties of the PIV applet, including version information.
Exceptions
ArgumentNullExceptionThrown if the input data is null.

This constructor parses BER-TLV encoded data and extracts:

  • General attributes like BER-TLV value and data object name
  • Communication media type
  • Access control rules (ACRs) for personalization, contact, and contactless usage

References CrescendoDLL.PCSC.AppletProperties.AppletVersion, and CrescendoDLL.PCSC.PIV.

Property Documentation

◆ BERTLVValue

byte [] CrescendoDLL.PCSC.GenericContainerObject.BERTLVValue = default!
getset

The BER-TLV Tag of the container object.

Extracted from the tag 0x47. Represents the raw binary data of the container's value.

◆ CommunicationMedia

CommunicationMedia? CrescendoDLL.PCSC.GenericContainerObject.CommunicationMedia
getset

Communication media type for the container.

Extracted from the tag 0x26. Indicates whether the container is accessible via contact, contactless, or both communication media.

◆ ContactlessUsageACR

string CrescendoDLL.PCSC.GenericContainerObject.ContactlessUsageACR = default!
getset

Access control rule for contactless usage.

◆ ContactUsageACR

string CrescendoDLL.PCSC.GenericContainerObject.ContactUsageACR = default!
getset

Access control rule for contact-based usage.

◆ DataObjectName

string CrescendoDLL.PCSC.GenericContainerObject.DataObjectName = default!
getset

The name of the data object represented by this container as defined in NIST SP 800-73-4.

◆ MaxBufferLength

string CrescendoDLL.PCSC.GenericContainerObject.MaxBufferLength = default!
getset

Maximum buffer length supported by the container. Extracted from the tag 0x42.

◆ PersonalizationACR

string CrescendoDLL.PCSC.GenericContainerObject.PersonalizationACR = default!
getset

Access control rule for personalization operations. Extracted from the tag 0x4D.