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.
Constructor Attributes | Constructor Name and Description |
---|---|
Create a ChipAuthenticationPublicKeyInfo object
|
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