Class Index | File Index

Classes


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
 
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.
 
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 Feb 16 2024 18:38:11 GMT+0100 (CET)