Class Index | File Index

## Classes

- _global_
- AccessController
- APDU
- AuthenticationObject
- CAConnection
- ChipAuthentication
- ChipAuthenticationDomainParameterInfo
- ChipAuthenticationInfo
- ChipAuthenticationPublicKeyInfo
- CommandInterpreter
- CRLGenerator
- CVC
- CVCCA
- CVCertificateStore
- DataUnitAPDU
- DF
- DKEK
- DNEncoder
- EAC20
- EAC2CVCertificateGenerator
- EAC2CVRequestGenerator
- FCP
- File
- FileEncryptor
- FileSelector
- FileSystemIdObject
- FSNode
- GPSCP03
- HSMCVCertificateStore
- HSMKeyStore
- LinearEF
- ManagePKA
- P11CVCertificateStore
- PACE
- PACEDomainParameterInfo
- PACEInfo
- PaperKeyEncoding
- PKCS10Generator
- PublicKeyFile
- PublicKeyReference
- RAMClient
- RestrictedIdentificationDomainParameterInfo
- RestrictedIdentificationInfo
- SecureChannelHandler
- SecureMessagingCommandAPDUDecoder
- SecurityEnvironment
- SignatureKey
- SmartCardHSM
- SmartCardHSMCrypto
- SmartCardHSMInitializer
- SmartCardHSMKey
- SmartCardHSMKeySpecGenerator
- SmartCardHSMSymmetricKeySpecGenerator
- TransparentEF
- TrustAnchor
- X509CertificateGenerator
- X509CertificateIssuer
- X509CertificateStore
- X509Signer

# Class ChipAuthenticationPublicKeyInfo

This class encodes and decodes ChipAuthenticationPublicKeyInfo objects.

The class implements the following ASN.1 syntax:

    	ChipAuthenticationPublicKeyInfo ::= SEQUENCE {
    		protocol OBJECT IDENTIFIER(id-PK-DH | id-PK-ECDH),
    		chipAuthenticationPublicKey SubjectPublicKeyInfo,
    		keyId INTEGER OPTIONAL
    	}

    	SubjectPublicKeyInfo ::= SEQUENCE {
    		algorithm  AlgorithmIdentifier,
    		subjectPublicKey BIT STRING
    	}

    	AlgorithmIdentifier ::= SEQUENCE {
    		algorithm  OBJECT IDENTIFIER,
    		parameters ANY DEFINED BY algorithm OPTIONAL
    	}

Defined in: ChipAuthentication.js.

Class Summary
Constructor Attributes | Constructor Name and Description
--- | ---
| ChipAuthenticationPublicKeyInfo(the) Create a ChipAuthenticationPublicKeyInfo object

Method Summary
Method Attributes | Method Name and Description
--- | ---
<static> | ChipAuthenticationPublicKeyInfo.convertUnsignedInteger(value) Removes leading zeros and prepends a single '00' to ByteStrings which have the most significant bit set.
<static> | ChipAuthenticationPublicKeyInfo.createECSubjectPublicKeyInfo(publicKey, encodeECDomainParameter) Creates the EC Public Key as subjectPublicKeyInfo TLV structure object.
| toTLV() Convert object to TLV structure

Class Detail
ChipAuthenticationPublicKeyInfo(the)
Create a ChipAuthenticationPublicKeyInfo object

Parameters:
{ASN1} the
  optional tlv structure to initialize the object

Method Detail
<static> {ByteString} ChipAuthenticationPublicKeyInfo.convertUnsignedInteger(value)
Removes leading zeros and prepends a single '00' to ByteStrings which have the most significant bit set. This prevent interpretation of the integer representation if converted into a signed ASN1 INTEGER.

Parameters:
{ByteString} value
  the value to convert

Returns:
  the converted value

<static> {ASN1} ChipAuthenticationPublicKeyInfo.createECSubjectPublicKeyInfo(publicKey, encodeECDomainParameter)
Creates the EC Public Key as subjectPublicKeyInfo TLV structure object.

The structure is defined as:

    	SubjectPublicKeyInfo  ::=  SEQUENCE  {
    		algorithm            AlgorithmIdentifier,
    		subjectPublicKey     BIT STRING  }

    	AlgorithmIdentifier  ::=  SEQUENCE  {
    		algorithm               OBJECT IDENTIFIER,
    		parameters              ANY DEFINED BY algorithm OPTIONAL  }

    	id-ecPublicKey OBJECT IDENTIFIER ::= {
    		iso(1) member-body(2) us(840) ansi-X9-62(10045) keyType(2) 1 }

    	ECParameters ::= CHOICE {
    		namedCurve         OBJECT IDENTIFIER,
    		implicitCurve      NULL,
    		specifiedCurve     SpecifiedECDomain }

Parameters:
publicKey
encodeECDomainParameter

Returns:
  the subjectPublicKey TLV structure

{ASN1} toTLV()
Convert object to TLV structure

Returns:
  the TLV structure

Documentation generated by JsDoc Toolkit 2.4.0 on Fri Mar 27 2026 16:43:33 GMT+0100 (CET)