circuitmatter.certificates ========================== .. py:module:: circuitmatter.certificates Attributes ---------- .. autoapisummary:: circuitmatter.certificates.PAI_KEY_DER circuitmatter.certificates.INVALID_PASSCODES circuitmatter.certificates.D_TABLE circuitmatter.certificates.INV_TABLE circuitmatter.certificates.P_TABLE circuitmatter.certificates.initial_state Classes ------- .. autoapisummary:: circuitmatter.certificates.CertificationType circuitmatter.certificates.CertificationDeclaration Functions --------- .. autoapisummary:: circuitmatter.certificates.encode_set circuitmatter.certificates.encode_utf8_string circuitmatter.certificates.generate_certificates circuitmatter.certificates.generate_dac circuitmatter.certificates.compute_verifier circuitmatter.certificates.compute_manual_code circuitmatter.certificates.generate_initial_state Module Contents --------------- .. py:data:: PAI_KEY_DER :value: b"0w\x02\x01\x01\x04... .. py:data:: INVALID_PASSCODES :value: [0, 11111111, 22222222, 33333333, 44444444, 55555555, 66666666, 77777777, 88888888, 12345678, 87654321] .. py:class:: CertificationType Bases: :py:obj:`circuitmatter.data_model.Enum8` Enum where members are also (and must be) ints .. py:attribute:: DEVELOPMENT_AND_TEST :value: 0 .. py:attribute:: PROVISIONAL :value: 1 .. py:attribute:: OFFICIAL :value: 2 .. py:class:: CertificationDeclaration Bases: :py:obj:`circuitmatter.tlv.Structure` .. py:attribute:: format_version .. py:attribute:: vendor_id .. py:attribute:: product_id_array .. py:attribute:: device_type_id .. py:attribute:: certificate_id .. py:attribute:: security_level .. py:attribute:: security_information .. py:attribute:: version_number .. py:attribute:: certification_type .. py:attribute:: dac_origin_vendor_id .. py:attribute:: dac_origin_product_id .. py:attribute:: authorized_paa_list .. py:method:: __str__() .. py:method:: encode() -> memoryview .. py:method:: encode_into(buffer: bytearray, offset: int = 0) -> int .. py:method:: decode(buffer: memoryview, offset=0) -> Structure :classmethod: .. py:method:: decode_member(control_octet, buffer, offset=0, depth=0) -> tuple[dict, int] :classmethod: .. py:method:: construct_containers() .. py:method:: from_value(value) :classmethod: .. py:attribute:: values .. py:method:: max_length() :classmethod: .. py:method:: set_value(tag, value) .. py:method:: delete_value(tag) .. py:function:: encode_set(*encoded_pieces) .. py:function:: encode_utf8_string(s) .. py:function:: generate_certificates(vendor_id=65521, product_id=32768, device_type=22, prefix=None) .. py:function:: generate_dac(vendor_id, product_id, product_name, random_source) -> tuple[bytes, bytes] .. py:function:: compute_verifier(passcode: int, salt: bytes, iterations: int) -> bytes .. py:data:: D_TABLE .. py:data:: INV_TABLE :value: b'\x00\x04\x03\x02\x01\x05\x06\x07\x08\t' .. py:data:: P_TABLE .. py:function:: compute_manual_code(discriminator, passcode, vendor_id=None, product_id=None) -> str .. py:function:: generate_initial_state(vendor_id, product_id, product_name, random_source) .. py:data:: initial_state