class
Matter::Session::Case::CaseResponder
- Matter::Session::Case::CaseResponder
- Reference
- Object
Overview
CASE session establishment (responder side - device)
Defined in:
matter/session/case/case.crConstructors
Instance Method Summary
- #cert_chain : CertificateChain
- #cert_chain=(cert_chain : CertificateChain)
- #crypto : Crypto::CryptoBase
- #crypto=(crypto : Crypto::CryptoBase)
-
#derive_session_keys : NamedTuple(encryption: Bytes, decryption: Bytes)
Derive session keys after successful CASE
- #ephemeral_key : Crypto::Key | Nil
- #ephemeral_key=(ephemeral_key : Crypto::Key | Nil)
- #fabric_id : UInt64
- #fabric_id=(fabric_id : UInt64)
- #node_id : UInt64
- #node_id=(node_id : UInt64)
- #operational_key : Crypto::Key
- #operational_key=(operational_key : Crypto::Key)
- #peer_cert : Bytes | Nil
- #peer_cert=(peer_cert : Bytes | Nil)
-
#process_sigma1(peer_ephemeral_public_key : Bytes, peer_random : Bytes, peer_session_id : UInt16) : NamedTuple(ephemeral_public_key: Bytes, random: Bytes, encrypted_cert: Bytes, session_id: UInt16)
Step 1: Process Sigma1 and generate Sigma2 response
-
#process_sigma3(encrypted_cert : Bytes, signature : Bytes) : Bool
Step 2: Process Sigma3 and verify
Constructor Detail
def self.new(cert_chain : CertificateChain, operational_key : Crypto::Key, fabric_id : UInt64, node_id : UInt64, crypto : Crypto::CryptoBase = Crypto::StandardCrypto.new)
#
Instance Method Detail
def derive_session_keys : NamedTuple(encryption: Bytes, decryption: Bytes)
#
Derive session keys after successful CASE
def process_sigma1(peer_ephemeral_public_key : Bytes, peer_random : Bytes, peer_session_id : UInt16) : NamedTuple(ephemeral_public_key: Bytes, random: Bytes, encrypted_cert: Bytes, session_id: UInt16)
#
Step 1: Process Sigma1 and generate Sigma2 response
def process_sigma3(encrypted_cert : Bytes, signature : Bytes) : Bool
#
Step 2: Process Sigma3 and verify