@matter/thread-br-client 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +192 -0
- package/dist/cjs/coap/CoapClient.d.ts +33 -0
- package/dist/cjs/coap/CoapClient.d.ts.map +1 -0
- package/dist/cjs/coap/CoapClient.js +281 -0
- package/dist/cjs/coap/CoapClient.js.map +6 -0
- package/dist/cjs/coap/CoapMessage.d.ts +23 -0
- package/dist/cjs/coap/CoapMessage.d.ts.map +1 -0
- package/dist/cjs/coap/CoapMessage.js +182 -0
- package/dist/cjs/coap/CoapMessage.js.map +6 -0
- package/dist/cjs/coap/index.d.ts +8 -0
- package/dist/cjs/coap/index.d.ts.map +1 -0
- package/dist/cjs/coap/index.js +31 -0
- package/dist/cjs/coap/index.js.map +6 -0
- package/dist/cjs/commissioner/Commissioner.d.ts +89 -0
- package/dist/cjs/commissioner/Commissioner.d.ts.map +1 -0
- package/dist/cjs/commissioner/Commissioner.js +188 -0
- package/dist/cjs/commissioner/Commissioner.js.map +6 -0
- package/dist/cjs/commissioner/LeadKa.d.ts +17 -0
- package/dist/cjs/commissioner/LeadKa.d.ts.map +1 -0
- package/dist/cjs/commissioner/LeadKa.js +63 -0
- package/dist/cjs/commissioner/LeadKa.js.map +6 -0
- package/dist/cjs/commissioner/LeadPet.d.ts +14 -0
- package/dist/cjs/commissioner/LeadPet.d.ts.map +1 -0
- package/dist/cjs/commissioner/LeadPet.js +66 -0
- package/dist/cjs/commissioner/LeadPet.js.map +6 -0
- package/dist/cjs/commissioner/index.d.ts +12 -0
- package/dist/cjs/commissioner/index.d.ts.map +1 -0
- package/dist/cjs/commissioner/index.js +38 -0
- package/dist/cjs/commissioner/index.js.map +6 -0
- package/dist/cjs/credentials/ThreadCredentialsRegistry.d.ts +50 -0
- package/dist/cjs/credentials/ThreadCredentialsRegistry.d.ts.map +1 -0
- package/dist/cjs/credentials/ThreadCredentialsRegistry.js +119 -0
- package/dist/cjs/credentials/ThreadCredentialsRegistry.js.map +6 -0
- package/dist/cjs/credentials/ThreadNetworkCredentials.d.ts +26 -0
- package/dist/cjs/credentials/ThreadNetworkCredentials.d.ts.map +1 -0
- package/dist/cjs/credentials/ThreadNetworkCredentials.js +22 -0
- package/dist/cjs/credentials/ThreadNetworkCredentials.js.map +6 -0
- package/dist/cjs/credentials/index.d.ts +8 -0
- package/dist/cjs/credentials/index.d.ts.map +1 -0
- package/dist/cjs/credentials/index.js +30 -0
- package/dist/cjs/credentials/index.js.map +6 -0
- package/dist/cjs/crypto/AesCmacPrf128.d.ts +24 -0
- package/dist/cjs/crypto/AesCmacPrf128.d.ts.map +1 -0
- package/dist/cjs/crypto/AesCmacPrf128.js +107 -0
- package/dist/cjs/crypto/AesCmacPrf128.js.map +6 -0
- package/dist/cjs/crypto/Pbkdf2AesCmac.d.ts +18 -0
- package/dist/cjs/crypto/Pbkdf2AesCmac.d.ts.map +1 -0
- package/dist/cjs/crypto/Pbkdf2AesCmac.js +62 -0
- package/dist/cjs/crypto/Pbkdf2AesCmac.js.map +6 -0
- package/dist/cjs/crypto/Pskc.d.ts +21 -0
- package/dist/cjs/crypto/Pskc.d.ts.map +1 -0
- package/dist/cjs/crypto/Pskc.js +69 -0
- package/dist/cjs/crypto/Pskc.js.map +6 -0
- package/dist/cjs/crypto/index.d.ts +9 -0
- package/dist/cjs/crypto/index.d.ts.map +1 -0
- package/dist/cjs/crypto/index.js +35 -0
- package/dist/cjs/crypto/index.js.map +6 -0
- package/dist/cjs/dataset/OperationalDataset.d.ts +74 -0
- package/dist/cjs/dataset/OperationalDataset.d.ts.map +1 -0
- package/dist/cjs/dataset/OperationalDataset.js +244 -0
- package/dist/cjs/dataset/OperationalDataset.js.map +6 -0
- package/dist/cjs/dataset/SecurityPolicy.d.ts +22 -0
- package/dist/cjs/dataset/SecurityPolicy.d.ts.map +1 -0
- package/dist/cjs/dataset/SecurityPolicy.js +59 -0
- package/dist/cjs/dataset/SecurityPolicy.js.map +6 -0
- package/dist/cjs/dataset/errors.d.ts +10 -0
- package/dist/cjs/dataset/errors.d.ts.map +1 -0
- package/dist/cjs/dataset/errors.js +32 -0
- package/dist/cjs/dataset/errors.js.map +6 -0
- package/dist/cjs/dataset/index.d.ts +9 -0
- package/dist/cjs/dataset/index.d.ts.map +1 -0
- package/dist/cjs/dataset/index.js +36 -0
- package/dist/cjs/dataset/index.js.map +6 -0
- package/dist/cjs/dataset/meshcopTlvTypes.d.ts +61 -0
- package/dist/cjs/dataset/meshcopTlvTypes.d.ts.map +1 -0
- package/dist/cjs/dataset/meshcopTlvTypes.js +82 -0
- package/dist/cjs/dataset/meshcopTlvTypes.js.map +6 -0
- package/dist/cjs/diagnostic/DefaultTlvSet.d.ts +8 -0
- package/dist/cjs/diagnostic/DefaultTlvSet.d.ts.map +1 -0
- package/dist/cjs/diagnostic/DefaultTlvSet.js +52 -0
- package/dist/cjs/diagnostic/DefaultTlvSet.js.map +6 -0
- package/dist/cjs/diagnostic/DiagnosticResponse.d.ts +47 -0
- package/dist/cjs/diagnostic/DiagnosticResponse.d.ts.map +1 -0
- package/dist/cjs/diagnostic/DiagnosticResponse.js +22 -0
- package/dist/cjs/diagnostic/DiagnosticResponse.js.map +6 -0
- package/dist/cjs/diagnostic/DiagnosticSource.d.ts +64 -0
- package/dist/cjs/diagnostic/DiagnosticSource.d.ts.map +1 -0
- package/dist/cjs/diagnostic/DiagnosticSource.js +34 -0
- package/dist/cjs/diagnostic/DiagnosticSource.js.map +6 -0
- package/dist/cjs/diagnostic/MeshCopDiagnosticSource.d.ts +78 -0
- package/dist/cjs/diagnostic/MeshCopDiagnosticSource.d.ts.map +1 -0
- package/dist/cjs/diagnostic/MeshCopDiagnosticSource.js +654 -0
- package/dist/cjs/diagnostic/MeshCopDiagnosticSource.js.map +6 -0
- package/dist/cjs/diagnostic/connectMeshcop.d.ts +38 -0
- package/dist/cjs/diagnostic/connectMeshcop.d.ts.map +1 -0
- package/dist/cjs/diagnostic/connectMeshcop.js +100 -0
- package/dist/cjs/diagnostic/connectMeshcop.js.map +6 -0
- package/dist/cjs/diagnostic/errors.d.ts +10 -0
- package/dist/cjs/diagnostic/errors.d.ts.map +1 -0
- package/dist/cjs/diagnostic/errors.js +32 -0
- package/dist/cjs/diagnostic/errors.js.map +6 -0
- package/dist/cjs/diagnostic/index.d.ts +13 -0
- package/dist/cjs/diagnostic/index.d.ts.map +1 -0
- package/dist/cjs/diagnostic/index.js +35 -0
- package/dist/cjs/diagnostic/index.js.map +6 -0
- package/dist/cjs/discovery/BorderRouterEntry.d.ts +54 -0
- package/dist/cjs/discovery/BorderRouterEntry.d.ts.map +1 -0
- package/dist/cjs/discovery/BorderRouterEntry.js +22 -0
- package/dist/cjs/discovery/BorderRouterEntry.js.map +6 -0
- package/dist/cjs/discovery/BorderRouterRegistry.d.ts +36 -0
- package/dist/cjs/discovery/BorderRouterRegistry.d.ts.map +1 -0
- package/dist/cjs/discovery/BorderRouterRegistry.js +522 -0
- package/dist/cjs/discovery/BorderRouterRegistry.js.map +6 -0
- package/dist/cjs/discovery/DnssdLikeTypes.d.ts +50 -0
- package/dist/cjs/discovery/DnssdLikeTypes.d.ts.map +1 -0
- package/dist/cjs/discovery/DnssdLikeTypes.js +22 -0
- package/dist/cjs/discovery/DnssdLikeTypes.js.map +6 -0
- package/dist/cjs/discovery/index.d.ts +8 -0
- package/dist/cjs/discovery/index.d.ts.map +1 -0
- package/dist/cjs/discovery/index.js +30 -0
- package/dist/cjs/discovery/index.js.map +6 -0
- package/dist/cjs/dtls/channel/DtlsChannel.d.ts +39 -0
- package/dist/cjs/dtls/channel/DtlsChannel.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/DtlsChannel.js +32 -0
- package/dist/cjs/dtls/channel/DtlsChannel.js.map +6 -0
- package/dist/cjs/dtls/channel/DtlsConnectOpts.d.ts +38 -0
- package/dist/cjs/dtls/channel/DtlsConnectOpts.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/DtlsConnectOpts.js +22 -0
- package/dist/cjs/dtls/channel/DtlsConnectOpts.js.map +6 -0
- package/dist/cjs/dtls/channel/DtlsRetransmitTimer.d.ts +43 -0
- package/dist/cjs/dtls/channel/DtlsRetransmitTimer.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/DtlsRetransmitTimer.js +97 -0
- package/dist/cjs/dtls/channel/DtlsRetransmitTimer.js.map +6 -0
- package/dist/cjs/dtls/channel/NobleDtlsChannel.d.ts +35 -0
- package/dist/cjs/dtls/channel/NobleDtlsChannel.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/NobleDtlsChannel.js +440 -0
- package/dist/cjs/dtls/channel/NobleDtlsChannel.js.map +6 -0
- package/dist/cjs/dtls/channel/connectDtls.d.ts +15 -0
- package/dist/cjs/dtls/channel/connectDtls.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/connectDtls.js +41 -0
- package/dist/cjs/dtls/channel/connectDtls.js.map +6 -0
- package/dist/cjs/dtls/channel/index.d.ts +14 -0
- package/dist/cjs/dtls/channel/index.d.ts.map +1 -0
- package/dist/cjs/dtls/channel/index.js +32 -0
- package/dist/cjs/dtls/channel/index.js.map +6 -0
- package/dist/cjs/dtls/ecjpake/EcJpakePms.d.ts +35 -0
- package/dist/cjs/dtls/ecjpake/EcJpakePms.d.ts.map +1 -0
- package/dist/cjs/dtls/ecjpake/EcJpakePms.js +61 -0
- package/dist/cjs/dtls/ecjpake/EcJpakePms.js.map +6 -0
- package/dist/cjs/dtls/ecjpake/EcJpakeRound.d.ts +119 -0
- package/dist/cjs/dtls/ecjpake/EcJpakeRound.d.ts.map +1 -0
- package/dist/cjs/dtls/ecjpake/EcJpakeRound.js +248 -0
- package/dist/cjs/dtls/ecjpake/EcJpakeRound.js.map +6 -0
- package/dist/cjs/dtls/ecjpake/SchnorrZkp.d.ts +60 -0
- package/dist/cjs/dtls/ecjpake/SchnorrZkp.d.ts.map +1 -0
- package/dist/cjs/dtls/ecjpake/SchnorrZkp.js +162 -0
- package/dist/cjs/dtls/ecjpake/SchnorrZkp.js.map +6 -0
- package/dist/cjs/dtls/ecjpake/index.d.ts +28 -0
- package/dist/cjs/dtls/ecjpake/index.d.ts.map +1 -0
- package/dist/cjs/dtls/ecjpake/index.js +34 -0
- package/dist/cjs/dtls/ecjpake/index.js.map +6 -0
- package/dist/cjs/dtls/handshake/ChangeCipherSpec.d.ts +23 -0
- package/dist/cjs/dtls/handshake/ChangeCipherSpec.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ChangeCipherSpec.js +41 -0
- package/dist/cjs/dtls/handshake/ChangeCipherSpec.js.map +6 -0
- package/dist/cjs/dtls/handshake/ClientHelloMessage.d.ts +34 -0
- package/dist/cjs/dtls/handshake/ClientHelloMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ClientHelloMessage.js +117 -0
- package/dist/cjs/dtls/handshake/ClientHelloMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.d.ts +22 -0
- package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.js +35 -0
- package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/DtlsClient.d.ts +57 -0
- package/dist/cjs/dtls/handshake/DtlsClient.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/DtlsClient.js +502 -0
- package/dist/cjs/dtls/handshake/DtlsClient.js.map +6 -0
- package/dist/cjs/dtls/handshake/FinishedMessage.d.ts +13 -0
- package/dist/cjs/dtls/handshake/FinishedMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/FinishedMessage.js +48 -0
- package/dist/cjs/dtls/handshake/FinishedMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/HandshakeMessage.d.ts +58 -0
- package/dist/cjs/dtls/handshake/HandshakeMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/HandshakeMessage.js +117 -0
- package/dist/cjs/dtls/handshake/HandshakeMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/HandshakeType.d.ts +29 -0
- package/dist/cjs/dtls/handshake/HandshakeType.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/HandshakeType.js +45 -0
- package/dist/cjs/dtls/handshake/HandshakeType.js.map +6 -0
- package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.d.ts +11 -0
- package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.js +49 -0
- package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.d.ts +14 -0
- package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.js +37 -0
- package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/ServerHelloMessage.d.ts +15 -0
- package/dist/cjs/dtls/handshake/ServerHelloMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ServerHelloMessage.js +113 -0
- package/dist/cjs/dtls/handshake/ServerHelloMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.d.ts +24 -0
- package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.js +35 -0
- package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.js.map +6 -0
- package/dist/cjs/dtls/handshake/index.d.ts +14 -0
- package/dist/cjs/dtls/handshake/index.d.ts.map +1 -0
- package/dist/cjs/dtls/handshake/index.js +30 -0
- package/dist/cjs/dtls/handshake/index.js.map +6 -0
- package/dist/cjs/dtls/prf/HandshakeTranscript.d.ts +36 -0
- package/dist/cjs/dtls/prf/HandshakeTranscript.d.ts.map +1 -0
- package/dist/cjs/dtls/prf/HandshakeTranscript.js +55 -0
- package/dist/cjs/dtls/prf/HandshakeTranscript.js.map +6 -0
- package/dist/cjs/dtls/prf/TlsPrf.d.ts +82 -0
- package/dist/cjs/dtls/prf/TlsPrf.d.ts.map +1 -0
- package/dist/cjs/dtls/prf/TlsPrf.js +121 -0
- package/dist/cjs/dtls/prf/TlsPrf.js.map +6 -0
- package/dist/cjs/dtls/prf/index.d.ts +13 -0
- package/dist/cjs/dtls/prf/index.d.ts.map +1 -0
- package/dist/cjs/dtls/prf/index.js +32 -0
- package/dist/cjs/dtls/prf/index.js.map +6 -0
- package/dist/cjs/dtls/record/AesCcm8.d.ts +32 -0
- package/dist/cjs/dtls/record/AesCcm8.d.ts.map +1 -0
- package/dist/cjs/dtls/record/AesCcm8.js +78 -0
- package/dist/cjs/dtls/record/AesCcm8.js.map +6 -0
- package/dist/cjs/dtls/record/AntiReplayWindow.d.ts +38 -0
- package/dist/cjs/dtls/record/AntiReplayWindow.d.ts.map +1 -0
- package/dist/cjs/dtls/record/AntiReplayWindow.js +84 -0
- package/dist/cjs/dtls/record/AntiReplayWindow.js.map +6 -0
- package/dist/cjs/dtls/record/ContentType.d.ts +19 -0
- package/dist/cjs/dtls/record/ContentType.d.ts.map +1 -0
- package/dist/cjs/dtls/record/ContentType.js +39 -0
- package/dist/cjs/dtls/record/ContentType.js.map +6 -0
- package/dist/cjs/dtls/record/DtlsCipherState.d.ts +79 -0
- package/dist/cjs/dtls/record/DtlsCipherState.d.ts.map +1 -0
- package/dist/cjs/dtls/record/DtlsCipherState.js +173 -0
- package/dist/cjs/dtls/record/DtlsCipherState.js.map +6 -0
- package/dist/cjs/dtls/record/DtlsRecord.d.ts +89 -0
- package/dist/cjs/dtls/record/DtlsRecord.d.ts.map +1 -0
- package/dist/cjs/dtls/record/DtlsRecord.js +195 -0
- package/dist/cjs/dtls/record/DtlsRecord.js.map +6 -0
- package/dist/cjs/dtls/record/index.d.ts +15 -0
- package/dist/cjs/dtls/record/index.d.ts.map +1 -0
- package/dist/cjs/dtls/record/index.js +42 -0
- package/dist/cjs/dtls/record/index.js.map +6 -0
- package/dist/cjs/index.d.ts +32 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +77 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/otbr-rest/OtbrRestCapability.d.ts +22 -0
- package/dist/cjs/otbr-rest/OtbrRestCapability.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/OtbrRestCapability.js +22 -0
- package/dist/cjs/otbr-rest/OtbrRestCapability.js.map +6 -0
- package/dist/cjs/otbr-rest/OtbrRestClient.d.ts +257 -0
- package/dist/cjs/otbr-rest/OtbrRestClient.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/OtbrRestClient.js +544 -0
- package/dist/cjs/otbr-rest/OtbrRestClient.js.map +6 -0
- package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.d.ts +88 -0
- package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.js +156 -0
- package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.js.map +6 -0
- package/dist/cjs/otbr-rest/OtbrRestError.d.ts +18 -0
- package/dist/cjs/otbr-rest/OtbrRestError.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/OtbrRestError.js +42 -0
- package/dist/cjs/otbr-rest/OtbrRestError.js.map +6 -0
- package/dist/cjs/otbr-rest/OtbrRestProbe.d.ts +17 -0
- package/dist/cjs/otbr-rest/OtbrRestProbe.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/OtbrRestProbe.js +96 -0
- package/dist/cjs/otbr-rest/OtbrRestProbe.js.map +6 -0
- package/dist/cjs/otbr-rest/caseNormalizer.d.ts +12 -0
- package/dist/cjs/otbr-rest/caseNormalizer.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/caseNormalizer.js +59 -0
- package/dist/cjs/otbr-rest/caseNormalizer.js.map +6 -0
- package/dist/cjs/otbr-rest/index.d.ts +15 -0
- package/dist/cjs/otbr-rest/index.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/index.js +40 -0
- package/dist/cjs/otbr-rest/index.js.map +6 -0
- package/dist/cjs/otbr-rest/translation.d.ts +24 -0
- package/dist/cjs/otbr-rest/translation.d.ts.map +1 -0
- package/dist/cjs/otbr-rest/translation.js +301 -0
- package/dist/cjs/otbr-rest/translation.js.map +6 -0
- package/dist/cjs/package.json +6 -0
- package/dist/cjs/selection/index.d.ts +11 -0
- package/dist/cjs/selection/index.d.ts.map +1 -0
- package/dist/cjs/selection/index.js +36 -0
- package/dist/cjs/selection/index.js.map +6 -0
- package/dist/cjs/selection/selectBr.d.ts +37 -0
- package/dist/cjs/selection/selectBr.d.ts.map +1 -0
- package/dist/cjs/selection/selectBr.js +66 -0
- package/dist/cjs/selection/selectBr.js.map +6 -0
- package/dist/cjs/selection/selectSource.d.ts +32 -0
- package/dist/cjs/selection/selectSource.d.ts.map +1 -0
- package/dist/cjs/selection/selectSource.js +43 -0
- package/dist/cjs/selection/selectSource.js.map +6 -0
- package/dist/cjs/selection/withExtPanIdLock.d.ts +23 -0
- package/dist/cjs/selection/withExtPanIdLock.d.ts.map +1 -0
- package/dist/cjs/selection/withExtPanIdLock.js +50 -0
- package/dist/cjs/selection/withExtPanIdLock.js.map +6 -0
- package/dist/cjs/tlv/BasicTlvCodec.d.ts +22 -0
- package/dist/cjs/tlv/BasicTlvCodec.d.ts.map +1 -0
- package/dist/cjs/tlv/BasicTlvCodec.js +97 -0
- package/dist/cjs/tlv/BasicTlvCodec.js.map +6 -0
- package/dist/cjs/tlv/NetworkDiagnosticTlv.d.ts +30 -0
- package/dist/cjs/tlv/NetworkDiagnosticTlv.d.ts.map +1 -0
- package/dist/cjs/tlv/NetworkDiagnosticTlv.js +41 -0
- package/dist/cjs/tlv/NetworkDiagnosticTlv.js.map +6 -0
- package/dist/cjs/tlv/TypeListTlv.d.ts +23 -0
- package/dist/cjs/tlv/TypeListTlv.d.ts.map +1 -0
- package/dist/cjs/tlv/TypeListTlv.js +49 -0
- package/dist/cjs/tlv/TypeListTlv.js.map +6 -0
- package/dist/cjs/tlv/diag/ChildIpv6AddressList.d.ts +22 -0
- package/dist/cjs/tlv/diag/ChildIpv6AddressList.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/ChildIpv6AddressList.js +48 -0
- package/dist/cjs/tlv/diag/ChildIpv6AddressList.js.map +6 -0
- package/dist/cjs/tlv/diag/ChildTable.d.ts +29 -0
- package/dist/cjs/tlv/diag/ChildTable.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/ChildTable.js +91 -0
- package/dist/cjs/tlv/diag/ChildTable.js.map +6 -0
- package/dist/cjs/tlv/diag/Connectivity.d.ts +45 -0
- package/dist/cjs/tlv/diag/Connectivity.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Connectivity.js +99 -0
- package/dist/cjs/tlv/diag/Connectivity.js.map +6 -0
- package/dist/cjs/tlv/diag/Ipv6AddressList.d.ts +21 -0
- package/dist/cjs/tlv/diag/Ipv6AddressList.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Ipv6AddressList.js +61 -0
- package/dist/cjs/tlv/diag/Ipv6AddressList.js.map +6 -0
- package/dist/cjs/tlv/diag/LeaderData.d.ts +28 -0
- package/dist/cjs/tlv/diag/LeaderData.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/LeaderData.js +64 -0
- package/dist/cjs/tlv/diag/LeaderData.js.map +6 -0
- package/dist/cjs/tlv/diag/MacCounters.d.ts +28 -0
- package/dist/cjs/tlv/diag/MacCounters.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/MacCounters.js +85 -0
- package/dist/cjs/tlv/diag/MacCounters.js.map +6 -0
- package/dist/cjs/tlv/diag/MleCounters.d.ts +41 -0
- package/dist/cjs/tlv/diag/MleCounters.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/MleCounters.js +118 -0
- package/dist/cjs/tlv/diag/MleCounters.js.map +6 -0
- package/dist/cjs/tlv/diag/Mode.d.ts +26 -0
- package/dist/cjs/tlv/diag/Mode.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Mode.js +57 -0
- package/dist/cjs/tlv/diag/Mode.js.map +6 -0
- package/dist/cjs/tlv/diag/NetworkData.d.ts +93 -0
- package/dist/cjs/tlv/diag/NetworkData.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/NetworkData.js +157 -0
- package/dist/cjs/tlv/diag/NetworkData.js.map +6 -0
- package/dist/cjs/tlv/diag/Primitives.d.ts +34 -0
- package/dist/cjs/tlv/diag/Primitives.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Primitives.js +163 -0
- package/dist/cjs/tlv/diag/Primitives.js.map +6 -0
- package/dist/cjs/tlv/diag/Route64.d.ts +42 -0
- package/dist/cjs/tlv/diag/Route64.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Route64.js +98 -0
- package/dist/cjs/tlv/diag/Route64.js.map +6 -0
- package/dist/cjs/tlv/diag/RouterNeighbor.d.ts +46 -0
- package/dist/cjs/tlv/diag/RouterNeighbor.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/RouterNeighbor.js +65 -0
- package/dist/cjs/tlv/diag/RouterNeighbor.js.map +6 -0
- package/dist/cjs/tlv/diag/Timeout.d.ts +17 -0
- package/dist/cjs/tlv/diag/Timeout.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/Timeout.js +53 -0
- package/dist/cjs/tlv/diag/Timeout.js.map +6 -0
- package/dist/cjs/tlv/diag/VendorInfo.d.ts +35 -0
- package/dist/cjs/tlv/diag/VendorInfo.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/VendorInfo.js +130 -0
- package/dist/cjs/tlv/diag/VendorInfo.js.map +6 -0
- package/dist/cjs/tlv/diag/index.d.ts +26 -0
- package/dist/cjs/tlv/diag/index.d.ts.map +1 -0
- package/dist/cjs/tlv/diag/index.js +67 -0
- package/dist/cjs/tlv/diag/index.js.map +6 -0
- package/dist/cjs/tlv/meshcop/Ip6AddressTlv.d.ts +21 -0
- package/dist/cjs/tlv/meshcop/Ip6AddressTlv.d.ts.map +1 -0
- package/dist/cjs/tlv/meshcop/Ip6AddressTlv.js +48 -0
- package/dist/cjs/tlv/meshcop/Ip6AddressTlv.js.map +6 -0
- package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.d.ts +27 -0
- package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.d.ts.map +1 -0
- package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.js +62 -0
- package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.js.map +6 -0
- package/dist/cjs/tlv/networkDiagTlvTypes.d.ts +59 -0
- package/dist/cjs/tlv/networkDiagTlvTypes.d.ts.map +1 -0
- package/dist/cjs/tlv/networkDiagTlvTypes.js +76 -0
- package/dist/cjs/tlv/networkDiagTlvTypes.js.map +6 -0
- package/dist/cjs/util/meshLocalAddr.d.ts +27 -0
- package/dist/cjs/util/meshLocalAddr.d.ts.map +1 -0
- package/dist/cjs/util/meshLocalAddr.js +67 -0
- package/dist/cjs/util/meshLocalAddr.js.map +6 -0
- package/dist/esm/coap/CoapClient.d.ts +33 -0
- package/dist/esm/coap/CoapClient.d.ts.map +1 -0
- package/dist/esm/coap/CoapClient.js +270 -0
- package/dist/esm/coap/CoapClient.js.map +6 -0
- package/dist/esm/coap/CoapMessage.d.ts +23 -0
- package/dist/esm/coap/CoapMessage.d.ts.map +1 -0
- package/dist/esm/coap/CoapMessage.js +162 -0
- package/dist/esm/coap/CoapMessage.js.map +6 -0
- package/dist/esm/coap/index.d.ts +8 -0
- package/dist/esm/coap/index.d.ts.map +1 -0
- package/dist/esm/coap/index.js +11 -0
- package/dist/esm/coap/index.js.map +6 -0
- package/dist/esm/commissioner/Commissioner.d.ts +89 -0
- package/dist/esm/commissioner/Commissioner.d.ts.map +1 -0
- package/dist/esm/commissioner/Commissioner.js +168 -0
- package/dist/esm/commissioner/Commissioner.js.map +6 -0
- package/dist/esm/commissioner/LeadKa.d.ts +17 -0
- package/dist/esm/commissioner/LeadKa.d.ts.map +1 -0
- package/dist/esm/commissioner/LeadKa.js +43 -0
- package/dist/esm/commissioner/LeadKa.js.map +6 -0
- package/dist/esm/commissioner/LeadPet.d.ts +14 -0
- package/dist/esm/commissioner/LeadPet.d.ts.map +1 -0
- package/dist/esm/commissioner/LeadPet.js +46 -0
- package/dist/esm/commissioner/LeadPet.js.map +6 -0
- package/dist/esm/commissioner/index.d.ts +12 -0
- package/dist/esm/commissioner/index.d.ts.map +1 -0
- package/dist/esm/commissioner/index.js +23 -0
- package/dist/esm/commissioner/index.js.map +6 -0
- package/dist/esm/credentials/ThreadCredentialsRegistry.d.ts +50 -0
- package/dist/esm/credentials/ThreadCredentialsRegistry.d.ts.map +1 -0
- package/dist/esm/credentials/ThreadCredentialsRegistry.js +99 -0
- package/dist/esm/credentials/ThreadCredentialsRegistry.js.map +6 -0
- package/dist/esm/credentials/ThreadNetworkCredentials.d.ts +26 -0
- package/dist/esm/credentials/ThreadNetworkCredentials.d.ts.map +1 -0
- package/dist/esm/credentials/ThreadNetworkCredentials.js +6 -0
- package/dist/esm/credentials/ThreadNetworkCredentials.js.map +6 -0
- package/dist/esm/credentials/index.d.ts +8 -0
- package/dist/esm/credentials/index.d.ts.map +1 -0
- package/dist/esm/credentials/index.js +10 -0
- package/dist/esm/credentials/index.js.map +6 -0
- package/dist/esm/crypto/AesCmacPrf128.d.ts +24 -0
- package/dist/esm/crypto/AesCmacPrf128.d.ts.map +1 -0
- package/dist/esm/crypto/AesCmacPrf128.js +87 -0
- package/dist/esm/crypto/AesCmacPrf128.js.map +6 -0
- package/dist/esm/crypto/Pbkdf2AesCmac.d.ts +18 -0
- package/dist/esm/crypto/Pbkdf2AesCmac.d.ts.map +1 -0
- package/dist/esm/crypto/Pbkdf2AesCmac.js +42 -0
- package/dist/esm/crypto/Pbkdf2AesCmac.js.map +6 -0
- package/dist/esm/crypto/Pskc.d.ts +21 -0
- package/dist/esm/crypto/Pskc.d.ts.map +1 -0
- package/dist/esm/crypto/Pskc.js +49 -0
- package/dist/esm/crypto/Pskc.js.map +6 -0
- package/dist/esm/crypto/index.d.ts +9 -0
- package/dist/esm/crypto/index.d.ts.map +1 -0
- package/dist/esm/crypto/index.js +15 -0
- package/dist/esm/crypto/index.js.map +6 -0
- package/dist/esm/dataset/OperationalDataset.d.ts +74 -0
- package/dist/esm/dataset/OperationalDataset.d.ts.map +1 -0
- package/dist/esm/dataset/OperationalDataset.js +224 -0
- package/dist/esm/dataset/OperationalDataset.js.map +6 -0
- package/dist/esm/dataset/SecurityPolicy.d.ts +22 -0
- package/dist/esm/dataset/SecurityPolicy.d.ts.map +1 -0
- package/dist/esm/dataset/SecurityPolicy.js +39 -0
- package/dist/esm/dataset/SecurityPolicy.js.map +6 -0
- package/dist/esm/dataset/errors.d.ts +10 -0
- package/dist/esm/dataset/errors.d.ts.map +1 -0
- package/dist/esm/dataset/errors.js +12 -0
- package/dist/esm/dataset/errors.js.map +6 -0
- package/dist/esm/dataset/index.d.ts +9 -0
- package/dist/esm/dataset/index.d.ts.map +1 -0
- package/dist/esm/dataset/index.js +16 -0
- package/dist/esm/dataset/index.js.map +6 -0
- package/dist/esm/dataset/meshcopTlvTypes.d.ts +61 -0
- package/dist/esm/dataset/meshcopTlvTypes.d.ts.map +1 -0
- package/dist/esm/dataset/meshcopTlvTypes.js +62 -0
- package/dist/esm/dataset/meshcopTlvTypes.js.map +6 -0
- package/dist/esm/diagnostic/DefaultTlvSet.d.ts +8 -0
- package/dist/esm/diagnostic/DefaultTlvSet.d.ts.map +1 -0
- package/dist/esm/diagnostic/DefaultTlvSet.js +32 -0
- package/dist/esm/diagnostic/DefaultTlvSet.js.map +6 -0
- package/dist/esm/diagnostic/DiagnosticResponse.d.ts +47 -0
- package/dist/esm/diagnostic/DiagnosticResponse.d.ts.map +1 -0
- package/dist/esm/diagnostic/DiagnosticResponse.js +6 -0
- package/dist/esm/diagnostic/DiagnosticResponse.js.map +6 -0
- package/dist/esm/diagnostic/DiagnosticSource.d.ts +64 -0
- package/dist/esm/diagnostic/DiagnosticSource.d.ts.map +1 -0
- package/dist/esm/diagnostic/DiagnosticSource.js +14 -0
- package/dist/esm/diagnostic/DiagnosticSource.js.map +6 -0
- package/dist/esm/diagnostic/MeshCopDiagnosticSource.d.ts +78 -0
- package/dist/esm/diagnostic/MeshCopDiagnosticSource.d.ts.map +1 -0
- package/dist/esm/diagnostic/MeshCopDiagnosticSource.js +663 -0
- package/dist/esm/diagnostic/MeshCopDiagnosticSource.js.map +6 -0
- package/dist/esm/diagnostic/connectMeshcop.d.ts +38 -0
- package/dist/esm/diagnostic/connectMeshcop.d.ts.map +1 -0
- package/dist/esm/diagnostic/connectMeshcop.js +80 -0
- package/dist/esm/diagnostic/connectMeshcop.js.map +6 -0
- package/dist/esm/diagnostic/errors.d.ts +10 -0
- package/dist/esm/diagnostic/errors.d.ts.map +1 -0
- package/dist/esm/diagnostic/errors.js +12 -0
- package/dist/esm/diagnostic/errors.js.map +6 -0
- package/dist/esm/diagnostic/index.d.ts +13 -0
- package/dist/esm/diagnostic/index.d.ts.map +1 -0
- package/dist/esm/diagnostic/index.js +15 -0
- package/dist/esm/diagnostic/index.js.map +6 -0
- package/dist/esm/discovery/BorderRouterEntry.d.ts +54 -0
- package/dist/esm/discovery/BorderRouterEntry.d.ts.map +1 -0
- package/dist/esm/discovery/BorderRouterEntry.js +6 -0
- package/dist/esm/discovery/BorderRouterEntry.js.map +6 -0
- package/dist/esm/discovery/BorderRouterRegistry.d.ts +36 -0
- package/dist/esm/discovery/BorderRouterRegistry.d.ts.map +1 -0
- package/dist/esm/discovery/BorderRouterRegistry.js +508 -0
- package/dist/esm/discovery/BorderRouterRegistry.js.map +6 -0
- package/dist/esm/discovery/DnssdLikeTypes.d.ts +50 -0
- package/dist/esm/discovery/DnssdLikeTypes.d.ts.map +1 -0
- package/dist/esm/discovery/DnssdLikeTypes.js +6 -0
- package/dist/esm/discovery/DnssdLikeTypes.js.map +6 -0
- package/dist/esm/discovery/index.d.ts +8 -0
- package/dist/esm/discovery/index.d.ts.map +1 -0
- package/dist/esm/discovery/index.js +10 -0
- package/dist/esm/discovery/index.js.map +6 -0
- package/dist/esm/dtls/channel/DtlsChannel.d.ts +39 -0
- package/dist/esm/dtls/channel/DtlsChannel.d.ts.map +1 -0
- package/dist/esm/dtls/channel/DtlsChannel.js +12 -0
- package/dist/esm/dtls/channel/DtlsChannel.js.map +6 -0
- package/dist/esm/dtls/channel/DtlsConnectOpts.d.ts +38 -0
- package/dist/esm/dtls/channel/DtlsConnectOpts.d.ts.map +1 -0
- package/dist/esm/dtls/channel/DtlsConnectOpts.js +6 -0
- package/dist/esm/dtls/channel/DtlsConnectOpts.js.map +6 -0
- package/dist/esm/dtls/channel/DtlsRetransmitTimer.d.ts +43 -0
- package/dist/esm/dtls/channel/DtlsRetransmitTimer.d.ts.map +1 -0
- package/dist/esm/dtls/channel/DtlsRetransmitTimer.js +77 -0
- package/dist/esm/dtls/channel/DtlsRetransmitTimer.js.map +6 -0
- package/dist/esm/dtls/channel/NobleDtlsChannel.d.ts +35 -0
- package/dist/esm/dtls/channel/NobleDtlsChannel.d.ts.map +1 -0
- package/dist/esm/dtls/channel/NobleDtlsChannel.js +432 -0
- package/dist/esm/dtls/channel/NobleDtlsChannel.js.map +6 -0
- package/dist/esm/dtls/channel/connectDtls.d.ts +15 -0
- package/dist/esm/dtls/channel/connectDtls.d.ts.map +1 -0
- package/dist/esm/dtls/channel/connectDtls.js +21 -0
- package/dist/esm/dtls/channel/connectDtls.js.map +6 -0
- package/dist/esm/dtls/channel/index.d.ts +14 -0
- package/dist/esm/dtls/channel/index.d.ts.map +1 -0
- package/dist/esm/dtls/channel/index.js +12 -0
- package/dist/esm/dtls/channel/index.js.map +6 -0
- package/dist/esm/dtls/ecjpake/EcJpakePms.d.ts +35 -0
- package/dist/esm/dtls/ecjpake/EcJpakePms.d.ts.map +1 -0
- package/dist/esm/dtls/ecjpake/EcJpakePms.js +41 -0
- package/dist/esm/dtls/ecjpake/EcJpakePms.js.map +6 -0
- package/dist/esm/dtls/ecjpake/EcJpakeRound.d.ts +119 -0
- package/dist/esm/dtls/ecjpake/EcJpakeRound.d.ts.map +1 -0
- package/dist/esm/dtls/ecjpake/EcJpakeRound.js +228 -0
- package/dist/esm/dtls/ecjpake/EcJpakeRound.js.map +6 -0
- package/dist/esm/dtls/ecjpake/SchnorrZkp.d.ts +60 -0
- package/dist/esm/dtls/ecjpake/SchnorrZkp.d.ts.map +1 -0
- package/dist/esm/dtls/ecjpake/SchnorrZkp.js +142 -0
- package/dist/esm/dtls/ecjpake/SchnorrZkp.js.map +6 -0
- package/dist/esm/dtls/ecjpake/index.d.ts +28 -0
- package/dist/esm/dtls/ecjpake/index.d.ts.map +1 -0
- package/dist/esm/dtls/ecjpake/index.js +14 -0
- package/dist/esm/dtls/ecjpake/index.js.map +6 -0
- package/dist/esm/dtls/handshake/ChangeCipherSpec.d.ts +23 -0
- package/dist/esm/dtls/handshake/ChangeCipherSpec.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ChangeCipherSpec.js +21 -0
- package/dist/esm/dtls/handshake/ChangeCipherSpec.js.map +6 -0
- package/dist/esm/dtls/handshake/ClientHelloMessage.d.ts +34 -0
- package/dist/esm/dtls/handshake/ClientHelloMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ClientHelloMessage.js +97 -0
- package/dist/esm/dtls/handshake/ClientHelloMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.d.ts +22 -0
- package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.js +15 -0
- package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/DtlsClient.d.ts +57 -0
- package/dist/esm/dtls/handshake/DtlsClient.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/DtlsClient.js +482 -0
- package/dist/esm/dtls/handshake/DtlsClient.js.map +6 -0
- package/dist/esm/dtls/handshake/FinishedMessage.d.ts +13 -0
- package/dist/esm/dtls/handshake/FinishedMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/FinishedMessage.js +28 -0
- package/dist/esm/dtls/handshake/FinishedMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/HandshakeMessage.d.ts +58 -0
- package/dist/esm/dtls/handshake/HandshakeMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/HandshakeMessage.js +97 -0
- package/dist/esm/dtls/handshake/HandshakeMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/HandshakeType.d.ts +29 -0
- package/dist/esm/dtls/handshake/HandshakeType.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/HandshakeType.js +25 -0
- package/dist/esm/dtls/handshake/HandshakeType.js.map +6 -0
- package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.d.ts +11 -0
- package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.js +29 -0
- package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/ServerHelloDoneMessage.d.ts +14 -0
- package/dist/esm/dtls/handshake/ServerHelloDoneMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ServerHelloDoneMessage.js +17 -0
- package/dist/esm/dtls/handshake/ServerHelloDoneMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/ServerHelloMessage.d.ts +15 -0
- package/dist/esm/dtls/handshake/ServerHelloMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ServerHelloMessage.js +93 -0
- package/dist/esm/dtls/handshake/ServerHelloMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.d.ts +24 -0
- package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.js +15 -0
- package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.js.map +6 -0
- package/dist/esm/dtls/handshake/index.d.ts +14 -0
- package/dist/esm/dtls/handshake/index.d.ts.map +1 -0
- package/dist/esm/dtls/handshake/index.js +10 -0
- package/dist/esm/dtls/handshake/index.js.map +6 -0
- package/dist/esm/dtls/prf/HandshakeTranscript.d.ts +36 -0
- package/dist/esm/dtls/prf/HandshakeTranscript.d.ts.map +1 -0
- package/dist/esm/dtls/prf/HandshakeTranscript.js +35 -0
- package/dist/esm/dtls/prf/HandshakeTranscript.js.map +6 -0
- package/dist/esm/dtls/prf/TlsPrf.d.ts +82 -0
- package/dist/esm/dtls/prf/TlsPrf.d.ts.map +1 -0
- package/dist/esm/dtls/prf/TlsPrf.js +101 -0
- package/dist/esm/dtls/prf/TlsPrf.js.map +6 -0
- package/dist/esm/dtls/prf/index.d.ts +13 -0
- package/dist/esm/dtls/prf/index.d.ts.map +1 -0
- package/dist/esm/dtls/prf/index.js +12 -0
- package/dist/esm/dtls/prf/index.js.map +6 -0
- package/dist/esm/dtls/record/AesCcm8.d.ts +32 -0
- package/dist/esm/dtls/record/AesCcm8.d.ts.map +1 -0
- package/dist/esm/dtls/record/AesCcm8.js +58 -0
- package/dist/esm/dtls/record/AesCcm8.js.map +6 -0
- package/dist/esm/dtls/record/AntiReplayWindow.d.ts +38 -0
- package/dist/esm/dtls/record/AntiReplayWindow.d.ts.map +1 -0
- package/dist/esm/dtls/record/AntiReplayWindow.js +64 -0
- package/dist/esm/dtls/record/AntiReplayWindow.js.map +6 -0
- package/dist/esm/dtls/record/ContentType.d.ts +19 -0
- package/dist/esm/dtls/record/ContentType.d.ts.map +1 -0
- package/dist/esm/dtls/record/ContentType.js +19 -0
- package/dist/esm/dtls/record/ContentType.js.map +6 -0
- package/dist/esm/dtls/record/DtlsCipherState.d.ts +79 -0
- package/dist/esm/dtls/record/DtlsCipherState.d.ts.map +1 -0
- package/dist/esm/dtls/record/DtlsCipherState.js +153 -0
- package/dist/esm/dtls/record/DtlsCipherState.js.map +6 -0
- package/dist/esm/dtls/record/DtlsRecord.d.ts +89 -0
- package/dist/esm/dtls/record/DtlsRecord.d.ts.map +1 -0
- package/dist/esm/dtls/record/DtlsRecord.js +175 -0
- package/dist/esm/dtls/record/DtlsRecord.js.map +6 -0
- package/dist/esm/dtls/record/index.d.ts +15 -0
- package/dist/esm/dtls/record/index.d.ts.map +1 -0
- package/dist/esm/dtls/record/index.js +29 -0
- package/dist/esm/dtls/record/index.js.map +6 -0
- package/dist/esm/index.d.ts +32 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +74 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/otbr-rest/OtbrRestCapability.d.ts +22 -0
- package/dist/esm/otbr-rest/OtbrRestCapability.d.ts.map +1 -0
- package/dist/esm/otbr-rest/OtbrRestCapability.js +6 -0
- package/dist/esm/otbr-rest/OtbrRestCapability.js.map +6 -0
- package/dist/esm/otbr-rest/OtbrRestClient.d.ts +257 -0
- package/dist/esm/otbr-rest/OtbrRestClient.d.ts.map +1 -0
- package/dist/esm/otbr-rest/OtbrRestClient.js +524 -0
- package/dist/esm/otbr-rest/OtbrRestClient.js.map +6 -0
- package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.d.ts +88 -0
- package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.d.ts.map +1 -0
- package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.js +136 -0
- package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.js.map +6 -0
- package/dist/esm/otbr-rest/OtbrRestError.d.ts +18 -0
- package/dist/esm/otbr-rest/OtbrRestError.d.ts.map +1 -0
- package/dist/esm/otbr-rest/OtbrRestError.js +22 -0
- package/dist/esm/otbr-rest/OtbrRestError.js.map +6 -0
- package/dist/esm/otbr-rest/OtbrRestProbe.d.ts +17 -0
- package/dist/esm/otbr-rest/OtbrRestProbe.d.ts.map +1 -0
- package/dist/esm/otbr-rest/OtbrRestProbe.js +76 -0
- package/dist/esm/otbr-rest/OtbrRestProbe.js.map +6 -0
- package/dist/esm/otbr-rest/caseNormalizer.d.ts +12 -0
- package/dist/esm/otbr-rest/caseNormalizer.d.ts.map +1 -0
- package/dist/esm/otbr-rest/caseNormalizer.js +39 -0
- package/dist/esm/otbr-rest/caseNormalizer.js.map +6 -0
- package/dist/esm/otbr-rest/index.d.ts +15 -0
- package/dist/esm/otbr-rest/index.d.ts.map +1 -0
- package/dist/esm/otbr-rest/index.js +20 -0
- package/dist/esm/otbr-rest/index.js.map +6 -0
- package/dist/esm/otbr-rest/translation.d.ts +24 -0
- package/dist/esm/otbr-rest/translation.d.ts.map +1 -0
- package/dist/esm/otbr-rest/translation.js +281 -0
- package/dist/esm/otbr-rest/translation.js.map +6 -0
- package/dist/esm/package.json +6 -0
- package/dist/esm/selection/index.d.ts +11 -0
- package/dist/esm/selection/index.d.ts.map +1 -0
- package/dist/esm/selection/index.js +16 -0
- package/dist/esm/selection/index.js.map +6 -0
- package/dist/esm/selection/selectBr.d.ts +37 -0
- package/dist/esm/selection/selectBr.d.ts.map +1 -0
- package/dist/esm/selection/selectBr.js +46 -0
- package/dist/esm/selection/selectBr.js.map +6 -0
- package/dist/esm/selection/selectSource.d.ts +32 -0
- package/dist/esm/selection/selectSource.d.ts.map +1 -0
- package/dist/esm/selection/selectSource.js +23 -0
- package/dist/esm/selection/selectSource.js.map +6 -0
- package/dist/esm/selection/withExtPanIdLock.d.ts +23 -0
- package/dist/esm/selection/withExtPanIdLock.d.ts.map +1 -0
- package/dist/esm/selection/withExtPanIdLock.js +30 -0
- package/dist/esm/selection/withExtPanIdLock.js.map +6 -0
- package/dist/esm/tlv/BasicTlvCodec.d.ts +22 -0
- package/dist/esm/tlv/BasicTlvCodec.d.ts.map +1 -0
- package/dist/esm/tlv/BasicTlvCodec.js +77 -0
- package/dist/esm/tlv/BasicTlvCodec.js.map +6 -0
- package/dist/esm/tlv/NetworkDiagnosticTlv.d.ts +30 -0
- package/dist/esm/tlv/NetworkDiagnosticTlv.d.ts.map +1 -0
- package/dist/esm/tlv/NetworkDiagnosticTlv.js +21 -0
- package/dist/esm/tlv/NetworkDiagnosticTlv.js.map +6 -0
- package/dist/esm/tlv/TypeListTlv.d.ts +23 -0
- package/dist/esm/tlv/TypeListTlv.d.ts.map +1 -0
- package/dist/esm/tlv/TypeListTlv.js +29 -0
- package/dist/esm/tlv/TypeListTlv.js.map +6 -0
- package/dist/esm/tlv/diag/ChildIpv6AddressList.d.ts +22 -0
- package/dist/esm/tlv/diag/ChildIpv6AddressList.d.ts.map +1 -0
- package/dist/esm/tlv/diag/ChildIpv6AddressList.js +28 -0
- package/dist/esm/tlv/diag/ChildIpv6AddressList.js.map +6 -0
- package/dist/esm/tlv/diag/ChildTable.d.ts +29 -0
- package/dist/esm/tlv/diag/ChildTable.d.ts.map +1 -0
- package/dist/esm/tlv/diag/ChildTable.js +71 -0
- package/dist/esm/tlv/diag/ChildTable.js.map +6 -0
- package/dist/esm/tlv/diag/Connectivity.d.ts +45 -0
- package/dist/esm/tlv/diag/Connectivity.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Connectivity.js +79 -0
- package/dist/esm/tlv/diag/Connectivity.js.map +6 -0
- package/dist/esm/tlv/diag/Ipv6AddressList.d.ts +21 -0
- package/dist/esm/tlv/diag/Ipv6AddressList.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Ipv6AddressList.js +41 -0
- package/dist/esm/tlv/diag/Ipv6AddressList.js.map +6 -0
- package/dist/esm/tlv/diag/LeaderData.d.ts +28 -0
- package/dist/esm/tlv/diag/LeaderData.d.ts.map +1 -0
- package/dist/esm/tlv/diag/LeaderData.js +44 -0
- package/dist/esm/tlv/diag/LeaderData.js.map +6 -0
- package/dist/esm/tlv/diag/MacCounters.d.ts +28 -0
- package/dist/esm/tlv/diag/MacCounters.d.ts.map +1 -0
- package/dist/esm/tlv/diag/MacCounters.js +65 -0
- package/dist/esm/tlv/diag/MacCounters.js.map +6 -0
- package/dist/esm/tlv/diag/MleCounters.d.ts +41 -0
- package/dist/esm/tlv/diag/MleCounters.d.ts.map +1 -0
- package/dist/esm/tlv/diag/MleCounters.js +98 -0
- package/dist/esm/tlv/diag/MleCounters.js.map +6 -0
- package/dist/esm/tlv/diag/Mode.d.ts +26 -0
- package/dist/esm/tlv/diag/Mode.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Mode.js +37 -0
- package/dist/esm/tlv/diag/Mode.js.map +6 -0
- package/dist/esm/tlv/diag/NetworkData.d.ts +93 -0
- package/dist/esm/tlv/diag/NetworkData.d.ts.map +1 -0
- package/dist/esm/tlv/diag/NetworkData.js +137 -0
- package/dist/esm/tlv/diag/NetworkData.js.map +6 -0
- package/dist/esm/tlv/diag/Primitives.d.ts +34 -0
- package/dist/esm/tlv/diag/Primitives.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Primitives.js +143 -0
- package/dist/esm/tlv/diag/Primitives.js.map +6 -0
- package/dist/esm/tlv/diag/Route64.d.ts +42 -0
- package/dist/esm/tlv/diag/Route64.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Route64.js +78 -0
- package/dist/esm/tlv/diag/Route64.js.map +6 -0
- package/dist/esm/tlv/diag/RouterNeighbor.d.ts +46 -0
- package/dist/esm/tlv/diag/RouterNeighbor.d.ts.map +1 -0
- package/dist/esm/tlv/diag/RouterNeighbor.js +45 -0
- package/dist/esm/tlv/diag/RouterNeighbor.js.map +6 -0
- package/dist/esm/tlv/diag/Timeout.d.ts +17 -0
- package/dist/esm/tlv/diag/Timeout.d.ts.map +1 -0
- package/dist/esm/tlv/diag/Timeout.js +33 -0
- package/dist/esm/tlv/diag/Timeout.js.map +6 -0
- package/dist/esm/tlv/diag/VendorInfo.d.ts +35 -0
- package/dist/esm/tlv/diag/VendorInfo.d.ts.map +1 -0
- package/dist/esm/tlv/diag/VendorInfo.js +110 -0
- package/dist/esm/tlv/diag/VendorInfo.js.map +6 -0
- package/dist/esm/tlv/diag/index.d.ts +26 -0
- package/dist/esm/tlv/diag/index.d.ts.map +1 -0
- package/dist/esm/tlv/diag/index.js +55 -0
- package/dist/esm/tlv/diag/index.js.map +6 -0
- package/dist/esm/tlv/meshcop/Ip6AddressTlv.d.ts +21 -0
- package/dist/esm/tlv/meshcop/Ip6AddressTlv.d.ts.map +1 -0
- package/dist/esm/tlv/meshcop/Ip6AddressTlv.js +28 -0
- package/dist/esm/tlv/meshcop/Ip6AddressTlv.js.map +6 -0
- package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.d.ts +27 -0
- package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.d.ts.map +1 -0
- package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.js +42 -0
- package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.js.map +6 -0
- package/dist/esm/tlv/networkDiagTlvTypes.d.ts +59 -0
- package/dist/esm/tlv/networkDiagTlvTypes.d.ts.map +1 -0
- package/dist/esm/tlv/networkDiagTlvTypes.js +56 -0
- package/dist/esm/tlv/networkDiagTlvTypes.js.map +6 -0
- package/dist/esm/util/meshLocalAddr.d.ts +27 -0
- package/dist/esm/util/meshLocalAddr.d.ts.map +1 -0
- package/dist/esm/util/meshLocalAddr.js +47 -0
- package/dist/esm/util/meshLocalAddr.js.map +6 -0
- package/package.json +73 -0
- package/src/coap/CoapClient.ts +355 -0
- package/src/coap/CoapMessage.ts +190 -0
- package/src/coap/index.ts +8 -0
- package/src/commissioner/Commissioner.ts +205 -0
- package/src/commissioner/LeadKa.ts +48 -0
- package/src/commissioner/LeadPet.ts +53 -0
- package/src/commissioner/index.ts +17 -0
- package/src/credentials/ThreadCredentialsRegistry.ts +117 -0
- package/src/credentials/ThreadNetworkCredentials.ts +26 -0
- package/src/credentials/index.ts +8 -0
- package/src/crypto/AesCmacPrf128.ts +101 -0
- package/src/crypto/Pbkdf2AesCmac.ts +57 -0
- package/src/crypto/Pskc.ts +57 -0
- package/src/crypto/index.ts +9 -0
- package/src/dataset/OperationalDataset.ts +326 -0
- package/src/dataset/SecurityPolicy.ts +48 -0
- package/src/dataset/errors.ts +10 -0
- package/src/dataset/index.ts +9 -0
- package/src/dataset/meshcopTlvTypes.ts +69 -0
- package/src/diagnostic/DefaultTlvSet.ts +31 -0
- package/src/diagnostic/DiagnosticResponse.ts +45 -0
- package/src/diagnostic/DiagnosticSource.ts +66 -0
- package/src/diagnostic/MeshCopDiagnosticSource.ts +808 -0
- package/src/diagnostic/connectMeshcop.ts +122 -0
- package/src/diagnostic/errors.ts +10 -0
- package/src/diagnostic/index.ts +13 -0
- package/src/discovery/BorderRouterEntry.ts +54 -0
- package/src/discovery/BorderRouterRegistry.ts +645 -0
- package/src/discovery/DnssdLikeTypes.ts +51 -0
- package/src/discovery/index.ts +8 -0
- package/src/dtls/channel/DtlsChannel.ts +42 -0
- package/src/dtls/channel/DtlsConnectOpts.ts +50 -0
- package/src/dtls/channel/DtlsRetransmitTimer.ts +107 -0
- package/src/dtls/channel/NobleDtlsChannel.ts +519 -0
- package/src/dtls/channel/connectDtls.ts +26 -0
- package/src/dtls/channel/index.ts +15 -0
- package/src/dtls/ecjpake/EcJpakePms.ts +65 -0
- package/src/dtls/ecjpake/EcJpakeRound.ts +279 -0
- package/src/dtls/ecjpake/SchnorrZkp.ts +193 -0
- package/src/dtls/ecjpake/index.ts +29 -0
- package/src/dtls/handshake/ChangeCipherSpec.ts +32 -0
- package/src/dtls/handshake/ClientHelloMessage.ts +150 -0
- package/src/dtls/handshake/ClientKeyExchangeMessage.ts +25 -0
- package/src/dtls/handshake/DtlsClient.ts +610 -0
- package/src/dtls/handshake/FinishedMessage.ts +36 -0
- package/src/dtls/handshake/HandshakeMessage.ts +144 -0
- package/src/dtls/handshake/HandshakeType.ts +35 -0
- package/src/dtls/handshake/HelloVerifyRequestMessage.ts +47 -0
- package/src/dtls/handshake/ServerHelloDoneMessage.ts +20 -0
- package/src/dtls/handshake/ServerHelloMessage.ts +129 -0
- package/src/dtls/handshake/ServerKeyExchangeMessage.ts +31 -0
- package/src/dtls/handshake/index.ts +15 -0
- package/src/dtls/prf/HandshakeTranscript.ts +52 -0
- package/src/dtls/prf/TlsPrf.ts +173 -0
- package/src/dtls/prf/index.ts +14 -0
- package/src/dtls/record/AesCcm8.ts +83 -0
- package/src/dtls/record/AntiReplayWindow.ts +87 -0
- package/src/dtls/record/ContentType.ts +23 -0
- package/src/dtls/record/DtlsCipherState.ts +202 -0
- package/src/dtls/record/DtlsRecord.ts +249 -0
- package/src/dtls/record/index.ts +26 -0
- package/src/index.ts +93 -0
- package/src/otbr-rest/OtbrRestCapability.ts +22 -0
- package/src/otbr-rest/OtbrRestClient.ts +644 -0
- package/src/otbr-rest/OtbrRestDiagnosticSource.ts +172 -0
- package/src/otbr-rest/OtbrRestError.ts +29 -0
- package/src/otbr-rest/OtbrRestProbe.ts +85 -0
- package/src/otbr-rest/caseNormalizer.ts +49 -0
- package/src/otbr-rest/index.ts +21 -0
- package/src/otbr-rest/translation.ts +344 -0
- package/src/selection/index.ts +11 -0
- package/src/selection/selectBr.ts +77 -0
- package/src/selection/selectSource.ts +51 -0
- package/src/selection/withExtPanIdLock.ts +40 -0
- package/src/tlv/BasicTlvCodec.ts +83 -0
- package/src/tlv/NetworkDiagnosticTlv.ts +37 -0
- package/src/tlv/TypeListTlv.ts +38 -0
- package/src/tlv/diag/ChildIpv6AddressList.ts +41 -0
- package/src/tlv/diag/ChildTable.ts +92 -0
- package/src/tlv/diag/Connectivity.ts +115 -0
- package/src/tlv/diag/Ipv6AddressList.ts +47 -0
- package/src/tlv/diag/LeaderData.ts +59 -0
- package/src/tlv/diag/MacCounters.ts +84 -0
- package/src/tlv/diag/MleCounters.ts +147 -0
- package/src/tlv/diag/Mode.ts +52 -0
- package/src/tlv/diag/NetworkData.ts +241 -0
- package/src/tlv/diag/Primitives.ts +146 -0
- package/src/tlv/diag/Route64.ts +118 -0
- package/src/tlv/diag/RouterNeighbor.ts +85 -0
- package/src/tlv/diag/Timeout.ts +36 -0
- package/src/tlv/diag/VendorInfo.ts +113 -0
- package/src/tlv/diag/index.ts +59 -0
- package/src/tlv/meshcop/Ip6AddressTlv.ts +36 -0
- package/src/tlv/meshcop/UdpEncapsulationTlv.ts +57 -0
- package/src/tlv/networkDiagTlvTypes.ts +69 -0
- package/src/tsconfig.json +21 -0
- package/src/util/meshLocalAddr.ts +63 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentType.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/ContentType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,WAAW;aACpB,kBAAkB,EAAE,EAAE;aACtB,KAAK,EAAE,EAAE;aACT,SAAS,EAAE,EAAE;aACb,gBAAgB,EAAE,EAAE;CACd,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,WAAW,CAEjE"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var ContentType_exports = {};
|
|
20
|
+
__export(ContentType_exports, {
|
|
21
|
+
ContentType: () => ContentType,
|
|
22
|
+
isContentType: () => isContentType
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(ContentType_exports);
|
|
25
|
+
/**
|
|
26
|
+
* @license
|
|
27
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
28
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
29
|
+
*/
|
|
30
|
+
const ContentType = {
|
|
31
|
+
CHANGE_CIPHER_SPEC: 20,
|
|
32
|
+
ALERT: 21,
|
|
33
|
+
HANDSHAKE: 22,
|
|
34
|
+
APPLICATION_DATA: 23
|
|
35
|
+
};
|
|
36
|
+
function isContentType(value) {
|
|
37
|
+
return value === 20 || value === 21 || value === 22 || value === 23;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=ContentType.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/dtls/record/ContentType.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWO,MAAM,cAAc;AAAA,EACvB,oBAAoB;AAAA,EACpB,OAAO;AAAA,EACP,WAAW;AAAA,EACX,kBAAkB;AACtB;AAIO,SAAS,cAAc,OAAqC;AAC/D,SAAO,UAAU,MAAM,UAAU,MAAM,UAAU,MAAM,UAAU;AACrE;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ContentType } from "./ContentType.js";
|
|
7
|
+
import { type DtlsRecordCipherState } from "./DtlsRecord.js";
|
|
8
|
+
/**
|
|
9
|
+
* Materials a TLS 1.2 key block produces for `*_WITH_AES_128_CCM_8` (RFC 6655 §3,
|
|
10
|
+
* RFC 5246 §6.3): two AES-128 keys (`{client,server}_write_key`) and two 4-byte
|
|
11
|
+
* implicit-IV salts (`{client,server}_write_IV`). The PRF that derives them lands
|
|
12
|
+
* in sub-batch 4; sub-batch 2 only consumes the four byte arrays.
|
|
13
|
+
*/
|
|
14
|
+
export interface DtlsCipherStateInputs {
|
|
15
|
+
/** 16-byte AES key the client uses to encrypt outbound records. */
|
|
16
|
+
clientWriteKey: Uint8Array;
|
|
17
|
+
/** 16-byte AES key the server uses to encrypt outbound records. */
|
|
18
|
+
serverWriteKey: Uint8Array;
|
|
19
|
+
/** 4-byte client implicit-IV salt (`client_write_IV`). */
|
|
20
|
+
clientWriteSalt: Uint8Array;
|
|
21
|
+
/** 4-byte server implicit-IV salt (`server_write_IV`). */
|
|
22
|
+
serverWriteSalt: Uint8Array;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Per-connection DTLS 1.2 record-layer cipher state for `TLS_ECJPAKE_WITH_AES_128_CCM_8`.
|
|
26
|
+
*
|
|
27
|
+
* Holds:
|
|
28
|
+
* - the four key-block byte arrays,
|
|
29
|
+
* - the local role (controls which write key/salt is used for encrypt vs decrypt),
|
|
30
|
+
* - per-direction epoch and sequence counters,
|
|
31
|
+
* - and a per-read-epoch {@link AntiReplayWindow} (RFC 6347 §4.1.2.6).
|
|
32
|
+
*
|
|
33
|
+
* Both epochs start at 0 (plaintext handshake records). After ChangeCipherSpec the
|
|
34
|
+
* sender bumps its own epoch and resets its sequence counter to 0; the handshake
|
|
35
|
+
* layer drives that via {@link advanceWriteEpoch} / {@link advanceReadEpoch}. The
|
|
36
|
+
* read window is allocated lazily for any epoch > 0 because plaintext records carry
|
|
37
|
+
* no AEAD tag and therefore cannot meaningfully participate in anti-replay.
|
|
38
|
+
*/
|
|
39
|
+
export declare class DtlsCipherState implements DtlsRecordCipherState {
|
|
40
|
+
#private;
|
|
41
|
+
readonly role: "client" | "server";
|
|
42
|
+
constructor(role: "client" | "server", inputs: DtlsCipherStateInputs);
|
|
43
|
+
get writeEpoch(): number;
|
|
44
|
+
get readEpoch(): number;
|
|
45
|
+
/** Most recently allocated outbound seq, or `-1n` before the first allocation in the current epoch. */
|
|
46
|
+
get lastWriteSeq(): bigint;
|
|
47
|
+
/**
|
|
48
|
+
* Allocate the next outbound sequence number for the current write epoch and bump
|
|
49
|
+
* the counter. Throws if the 48-bit space is exhausted within an epoch.
|
|
50
|
+
*/
|
|
51
|
+
nextWriteSeq(): bigint;
|
|
52
|
+
/**
|
|
53
|
+
* Increment the outbound epoch (called once after sending ChangeCipherSpec) and reset
|
|
54
|
+
* the seq counter to 0 (RFC 6347 §4.1.2.5).
|
|
55
|
+
*/
|
|
56
|
+
advanceWriteEpoch(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Increment the inbound epoch (called once after receiving ChangeCipherSpec) and
|
|
59
|
+
* reset the read-side anti-replay window for the new epoch.
|
|
60
|
+
*/
|
|
61
|
+
advanceReadEpoch(): void;
|
|
62
|
+
/**
|
|
63
|
+
* Test+mark an inbound (epoch, seqNum) pair. Returns false on replay or wrong epoch
|
|
64
|
+
* so callers can drop the record per RFC 6347 §4.1.2.6. Plaintext epoch=0 records
|
|
65
|
+
* are accepted unconditionally — they carry no MAC and replay is meaningless.
|
|
66
|
+
*/
|
|
67
|
+
acceptIncoming(epoch: number, seqNum: bigint): boolean;
|
|
68
|
+
encryptParams(): {
|
|
69
|
+
key: Uint8Array;
|
|
70
|
+
salt: Uint8Array;
|
|
71
|
+
};
|
|
72
|
+
decryptParams(): {
|
|
73
|
+
key: Uint8Array;
|
|
74
|
+
salt: Uint8Array;
|
|
75
|
+
};
|
|
76
|
+
nonceFor(salt: Uint8Array, epoch: number, seqNum: bigint): Uint8Array;
|
|
77
|
+
aadFor(type: ContentType, epoch: number, seqNum: bigint, plaintextLen: number): Uint8Array;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=DtlsCipherState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DtlsCipherState.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/DtlsCipherState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAoB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE/E;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IAClC,mEAAmE;IACnE,cAAc,EAAE,UAAU,CAAC;IAC3B,mEAAmE;IACnE,cAAc,EAAE,UAAU,CAAC;IAC3B,0DAA0D;IAC1D,eAAe,EAAE,UAAU,CAAC;IAC5B,0DAA0D;IAC1D,eAAe,EAAE,UAAU,CAAC;CAC/B;AAgBD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,eAAgB,YAAW,qBAAqB;;IACzD,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAUnC,YAAY,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAMnE;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,uGAAuG;IACvG,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;OAGG;IACH,YAAY,IAAI,MAAM,CASrB;IAED;;;OAGG;IACH,iBAAiB,IAAI,IAAI,CAMxB;IAED;;;OAGG;IACH,gBAAgB,IAAI,IAAI,CAMvB;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAWrD;IAED,aAAa,IAAI;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAIrD;IAED,aAAa,IAAI;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAIrD;IAED,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAkBpE;IAED,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAsBzF;CACJ"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var DtlsCipherState_exports = {};
|
|
20
|
+
__export(DtlsCipherState_exports, {
|
|
21
|
+
DtlsCipherState: () => DtlsCipherState
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(DtlsCipherState_exports);
|
|
24
|
+
var import_general = require("@matter/general");
|
|
25
|
+
var import_AntiReplayWindow = require("./AntiReplayWindow.js");
|
|
26
|
+
var import_DtlsRecord = require("./DtlsRecord.js");
|
|
27
|
+
/**
|
|
28
|
+
* @license
|
|
29
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
30
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
31
|
+
*/
|
|
32
|
+
const KEY_LEN = 16;
|
|
33
|
+
const SALT_LEN = 4;
|
|
34
|
+
const NONCE_LEN = 12;
|
|
35
|
+
const AAD_LEN = 13;
|
|
36
|
+
const MAX_EPOCH = 65535;
|
|
37
|
+
const MAX_SEQ = (1n << 48n) - 1n;
|
|
38
|
+
function copyExpect(name, value, expectedLen) {
|
|
39
|
+
if (value.length !== expectedLen) {
|
|
40
|
+
throw new import_general.InternalError(`DtlsCipherState ${name} must be ${expectedLen} bytes, got ${value.length}`);
|
|
41
|
+
}
|
|
42
|
+
return new Uint8Array(value);
|
|
43
|
+
}
|
|
44
|
+
class DtlsCipherState {
|
|
45
|
+
role;
|
|
46
|
+
#clientWriteKey;
|
|
47
|
+
#serverWriteKey;
|
|
48
|
+
#clientWriteSalt;
|
|
49
|
+
#serverWriteSalt;
|
|
50
|
+
#writeEpoch = 0;
|
|
51
|
+
#writeSeq = 0n;
|
|
52
|
+
#readEpoch = 0;
|
|
53
|
+
#readWindow;
|
|
54
|
+
constructor(role, inputs) {
|
|
55
|
+
this.role = role;
|
|
56
|
+
this.#clientWriteKey = copyExpect("clientWriteKey", inputs.clientWriteKey, KEY_LEN);
|
|
57
|
+
this.#serverWriteKey = copyExpect("serverWriteKey", inputs.serverWriteKey, KEY_LEN);
|
|
58
|
+
this.#clientWriteSalt = copyExpect("clientWriteSalt", inputs.clientWriteSalt, SALT_LEN);
|
|
59
|
+
this.#serverWriteSalt = copyExpect("serverWriteSalt", inputs.serverWriteSalt, SALT_LEN);
|
|
60
|
+
}
|
|
61
|
+
get writeEpoch() {
|
|
62
|
+
return this.#writeEpoch;
|
|
63
|
+
}
|
|
64
|
+
get readEpoch() {
|
|
65
|
+
return this.#readEpoch;
|
|
66
|
+
}
|
|
67
|
+
/** Most recently allocated outbound seq, or `-1n` before the first allocation in the current epoch. */
|
|
68
|
+
get lastWriteSeq() {
|
|
69
|
+
return this.#writeSeq - 1n;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Allocate the next outbound sequence number for the current write epoch and bump
|
|
73
|
+
* the counter. Throws if the 48-bit space is exhausted within an epoch.
|
|
74
|
+
*/
|
|
75
|
+
nextWriteSeq() {
|
|
76
|
+
if (this.#writeSeq > MAX_SEQ) {
|
|
77
|
+
throw new import_general.InternalError(
|
|
78
|
+
`DtlsCipherState write sequence_number space exhausted at epoch ${this.#writeEpoch}`
|
|
79
|
+
);
|
|
80
|
+
}
|
|
81
|
+
const seq = this.#writeSeq;
|
|
82
|
+
this.#writeSeq += 1n;
|
|
83
|
+
return seq;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Increment the outbound epoch (called once after sending ChangeCipherSpec) and reset
|
|
87
|
+
* the seq counter to 0 (RFC 6347 §4.1.2.5).
|
|
88
|
+
*/
|
|
89
|
+
advanceWriteEpoch() {
|
|
90
|
+
if (this.#writeEpoch >= MAX_EPOCH) {
|
|
91
|
+
throw new import_general.InternalError(`DtlsCipherState write epoch overflow`);
|
|
92
|
+
}
|
|
93
|
+
this.#writeEpoch += 1;
|
|
94
|
+
this.#writeSeq = 0n;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Increment the inbound epoch (called once after receiving ChangeCipherSpec) and
|
|
98
|
+
* reset the read-side anti-replay window for the new epoch.
|
|
99
|
+
*/
|
|
100
|
+
advanceReadEpoch() {
|
|
101
|
+
if (this.#readEpoch >= MAX_EPOCH) {
|
|
102
|
+
throw new import_general.InternalError(`DtlsCipherState read epoch overflow`);
|
|
103
|
+
}
|
|
104
|
+
this.#readEpoch += 1;
|
|
105
|
+
this.#readWindow = new import_AntiReplayWindow.AntiReplayWindow();
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Test+mark an inbound (epoch, seqNum) pair. Returns false on replay or wrong epoch
|
|
109
|
+
* so callers can drop the record per RFC 6347 §4.1.2.6. Plaintext epoch=0 records
|
|
110
|
+
* are accepted unconditionally — they carry no MAC and replay is meaningless.
|
|
111
|
+
*/
|
|
112
|
+
acceptIncoming(epoch, seqNum) {
|
|
113
|
+
if (epoch !== this.#readEpoch) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
if (epoch === 0) {
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
if (this.#readWindow === void 0) {
|
|
120
|
+
this.#readWindow = new import_AntiReplayWindow.AntiReplayWindow();
|
|
121
|
+
}
|
|
122
|
+
return this.#readWindow.check(seqNum);
|
|
123
|
+
}
|
|
124
|
+
encryptParams() {
|
|
125
|
+
return this.role === "client" ? { key: this.#clientWriteKey, salt: this.#clientWriteSalt } : { key: this.#serverWriteKey, salt: this.#serverWriteSalt };
|
|
126
|
+
}
|
|
127
|
+
decryptParams() {
|
|
128
|
+
return this.role === "client" ? { key: this.#serverWriteKey, salt: this.#serverWriteSalt } : { key: this.#clientWriteKey, salt: this.#clientWriteSalt };
|
|
129
|
+
}
|
|
130
|
+
nonceFor(salt, epoch, seqNum) {
|
|
131
|
+
if (salt.length !== SALT_LEN) {
|
|
132
|
+
throw new import_general.InternalError(`DtlsCipherState nonceFor: salt must be ${SALT_LEN} bytes, got ${salt.length}`);
|
|
133
|
+
}
|
|
134
|
+
if (epoch < 0 || epoch > MAX_EPOCH) {
|
|
135
|
+
throw new import_general.InternalError(`DtlsCipherState nonceFor: epoch ${epoch} out of range`);
|
|
136
|
+
}
|
|
137
|
+
if (seqNum < 0n || seqNum > MAX_SEQ) {
|
|
138
|
+
throw new import_general.InternalError(`DtlsCipherState nonceFor: seqNum ${seqNum} out of range`);
|
|
139
|
+
}
|
|
140
|
+
const out = new Uint8Array(NONCE_LEN);
|
|
141
|
+
out.set(salt, 0);
|
|
142
|
+
out[4] = epoch >>> 8 & 255;
|
|
143
|
+
out[5] = epoch & 255;
|
|
144
|
+
for (let i = 0; i < 6; i++) {
|
|
145
|
+
out[6 + i] = Number(seqNum >> BigInt((5 - i) * 8) & 0xffn);
|
|
146
|
+
}
|
|
147
|
+
return out;
|
|
148
|
+
}
|
|
149
|
+
aadFor(type, epoch, seqNum, plaintextLen) {
|
|
150
|
+
if (epoch < 0 || epoch > MAX_EPOCH) {
|
|
151
|
+
throw new import_general.InternalError(`DtlsCipherState aadFor: epoch ${epoch} out of range`);
|
|
152
|
+
}
|
|
153
|
+
if (seqNum < 0n || seqNum > MAX_SEQ) {
|
|
154
|
+
throw new import_general.InternalError(`DtlsCipherState aadFor: seqNum ${seqNum} out of range`);
|
|
155
|
+
}
|
|
156
|
+
if (plaintextLen < 0 || plaintextLen > 65535) {
|
|
157
|
+
throw new import_general.InternalError(`DtlsCipherState aadFor: plaintextLen ${plaintextLen} out of range`);
|
|
158
|
+
}
|
|
159
|
+
const out = new Uint8Array(AAD_LEN);
|
|
160
|
+
out[0] = epoch >>> 8 & 255;
|
|
161
|
+
out[1] = epoch & 255;
|
|
162
|
+
for (let i = 0; i < 6; i++) {
|
|
163
|
+
out[2 + i] = Number(seqNum >> BigInt((5 - i) * 8) & 0xffn);
|
|
164
|
+
}
|
|
165
|
+
out[8] = type;
|
|
166
|
+
out[9] = import_DtlsRecord.DTLS_1_2_VERSION.major;
|
|
167
|
+
out[10] = import_DtlsRecord.DTLS_1_2_VERSION.minor;
|
|
168
|
+
out[11] = plaintextLen >>> 8 & 255;
|
|
169
|
+
out[12] = plaintextLen & 255;
|
|
170
|
+
return out;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=DtlsCipherState.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/dtls/record/DtlsCipherState.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MatterError } from "@matter/general";
|
|
7
|
+
import { ContentType } from "./ContentType.js";
|
|
8
|
+
/**
|
|
9
|
+
* DTLS 1.2 protocol version on the wire is `{ major: 0xfe, minor: 0xfd }`,
|
|
10
|
+
* the 1's-complement convention TLS uses (RFC 6347 §4.1).
|
|
11
|
+
*/
|
|
12
|
+
export declare const DTLS_1_2_VERSION: Readonly<{
|
|
13
|
+
major: 254;
|
|
14
|
+
minor: 253;
|
|
15
|
+
}>;
|
|
16
|
+
/** Maximum length of the DTLSCiphertext.fragment field (RFC 6347 §4.1). */
|
|
17
|
+
export declare const DTLS_MAX_FRAGMENT_LEN: number;
|
|
18
|
+
/** 8-byte explicit AEAD nonce + 8-byte CCM-8 tag overhead per RFC 6655 §3. */
|
|
19
|
+
export declare const DTLS_AEAD_OVERHEAD = 16;
|
|
20
|
+
/** Length of the DTLS record header (RFC 6347 §4.1). */
|
|
21
|
+
export declare const DTLS_HEADER_LEN = 13;
|
|
22
|
+
/**
|
|
23
|
+
* Minimal cipher-state surface the record codec needs. The full {@link DtlsCipherState}
|
|
24
|
+
* class implements this and adds key-block bookkeeping; this interface lets the codec
|
|
25
|
+
* accept either the class or a stand-in test double without forcing a circular import.
|
|
26
|
+
*
|
|
27
|
+
* `acceptIncoming`, when present, is invoked after a successful AEAD decrypt to apply
|
|
28
|
+
* the RFC 6347 §4.1.2.6 anti-replay window. Returning `false` causes the codec to throw
|
|
29
|
+
* a {@link DtlsReplayError}.
|
|
30
|
+
*/
|
|
31
|
+
export interface DtlsRecordCipherState {
|
|
32
|
+
/** AES key + 4-byte salt to use for outbound (encrypt) records. */
|
|
33
|
+
encryptParams(): {
|
|
34
|
+
key: Uint8Array;
|
|
35
|
+
salt: Uint8Array;
|
|
36
|
+
};
|
|
37
|
+
/** AES key + 4-byte salt to use for inbound (decrypt) records. */
|
|
38
|
+
decryptParams(): {
|
|
39
|
+
key: Uint8Array;
|
|
40
|
+
salt: Uint8Array;
|
|
41
|
+
};
|
|
42
|
+
/** Build the 12-byte CCM nonce: salt(4) || epoch(2) || seq(6). */
|
|
43
|
+
nonceFor(salt: Uint8Array, epoch: number, seqNum: bigint): Uint8Array;
|
|
44
|
+
/** Build the 13-byte DTLS AAD: epoch||seq(8) || type(1) || version(2) || plaintextLen(2). */
|
|
45
|
+
aadFor(type: ContentType, epoch: number, seqNum: bigint, plaintextLen: number): Uint8Array;
|
|
46
|
+
/** Optional read-side replay-window check; absent on test doubles or pre-handshake states. */
|
|
47
|
+
acceptIncoming?(epoch: number, seqNum: bigint): boolean;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Thrown by {@link DtlsRecord.decode} when a successfully-decrypted record is rejected
|
|
51
|
+
* by the read-side anti-replay window. Distinguishable from AEAD failures so the caller
|
|
52
|
+
* can log/drop without treating the record as a fatal error.
|
|
53
|
+
*/
|
|
54
|
+
export declare class DtlsReplayError extends MatterError {
|
|
55
|
+
readonly epoch: number;
|
|
56
|
+
readonly sequenceNumber: bigint;
|
|
57
|
+
constructor(epoch: number, sequenceNumber: bigint);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Decoded DTLS 1.2 record (RFC 6347 §4.1).
|
|
61
|
+
* `fragment` is always the *plaintext* payload — for epoch=0 records it is the wire bytes
|
|
62
|
+
* verbatim, for epoch>0 records it is the AEAD-decrypted body.
|
|
63
|
+
*/
|
|
64
|
+
export interface DtlsRecord {
|
|
65
|
+
type: ContentType;
|
|
66
|
+
epoch: number;
|
|
67
|
+
sequenceNumber: bigint;
|
|
68
|
+
fragment: Uint8Array;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* DTLS 1.2 record-layer codec.
|
|
72
|
+
*
|
|
73
|
+
* `encode` frames a record as `header(13) || fragment`; for `epoch > 0` the fragment is
|
|
74
|
+
* `explicit_nonce(8) || ciphertext(plaintext_len) || tag(8)` per RFC 6655 §3.
|
|
75
|
+
*
|
|
76
|
+
* `decode` parses one record off the front of the buffer and returns it together with
|
|
77
|
+
* the number of consumed bytes, so a caller can split multiple records concatenated in
|
|
78
|
+
* one UDP datagram. When the supplied state implements {@link DtlsRecordCipherState.acceptIncoming},
|
|
79
|
+
* decode invokes it after AEAD success and throws {@link DtlsReplayError} on rejection.
|
|
80
|
+
*/
|
|
81
|
+
export declare namespace DtlsRecord {
|
|
82
|
+
function encode(record: DtlsRecord, state?: DtlsRecordCipherState): Uint8Array;
|
|
83
|
+
interface DecodeResult {
|
|
84
|
+
record: DtlsRecord;
|
|
85
|
+
consumed: number;
|
|
86
|
+
}
|
|
87
|
+
function decode(bytes: Uint8Array, state?: DtlsRecordCipherState): DecodeResult;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=DtlsRecord.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DtlsRecord.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/DtlsRecord.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAiB,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG7D,OAAO,EAAE,WAAW,EAAiB,MAAM,kBAAkB,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;EAA8C,CAAC;AAE5E,2EAA2E;AAC3E,eAAO,MAAM,qBAAqB,QAAU,CAAC;AAE7C,8EAA8E;AAC9E,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC,wDAAwD;AACxD,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,mEAAmE;IACnE,aAAa,IAAI;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;IACvD,kEAAkE;IAClE,aAAa,IAAI;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;IACvD,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;IACtE,6FAA6F;IAC7F,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAAC;IAC3F,8FAA8F;IAC9F,cAAc,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3D;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,YAAY,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAKhD;CACJ;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,UAAU,CAAC;CACxB;AAkCD;;;;;;;;;;GAUG;AACH,yBAAiB,UAAU,CAAC,CAAC;IACzB,SAAgB,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,qBAAqB,GAAG,UAAU,CAmDpF;IAED,UAAiB,YAAY;QACzB,MAAM,EAAE,UAAU,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;KACpB;IAED,SAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,qBAAqB,GAAG,YAAY,CAoErF;CACJ"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var DtlsRecord_exports = {};
|
|
20
|
+
__export(DtlsRecord_exports, {
|
|
21
|
+
DTLS_1_2_VERSION: () => DTLS_1_2_VERSION,
|
|
22
|
+
DTLS_AEAD_OVERHEAD: () => DTLS_AEAD_OVERHEAD,
|
|
23
|
+
DTLS_HEADER_LEN: () => DTLS_HEADER_LEN,
|
|
24
|
+
DTLS_MAX_FRAGMENT_LEN: () => DTLS_MAX_FRAGMENT_LEN,
|
|
25
|
+
DtlsRecord: () => DtlsRecord,
|
|
26
|
+
DtlsReplayError: () => DtlsReplayError
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(DtlsRecord_exports);
|
|
29
|
+
var import_general = require("@matter/general");
|
|
30
|
+
var import_DtlsChannel = require("../channel/DtlsChannel.js");
|
|
31
|
+
var import_AesCcm8 = require("./AesCcm8.js");
|
|
32
|
+
var import_ContentType = require("./ContentType.js");
|
|
33
|
+
/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
36
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
37
|
+
*/
|
|
38
|
+
const DTLS_1_2_VERSION = Object.freeze({ major: 254, minor: 253 });
|
|
39
|
+
const DTLS_MAX_FRAGMENT_LEN = 1 << 14;
|
|
40
|
+
const DTLS_AEAD_OVERHEAD = 16;
|
|
41
|
+
const DTLS_HEADER_LEN = 13;
|
|
42
|
+
class DtlsReplayError extends import_general.MatterError {
|
|
43
|
+
epoch;
|
|
44
|
+
sequenceNumber;
|
|
45
|
+
constructor(epoch, sequenceNumber) {
|
|
46
|
+
super(`DTLS replay or wrong-epoch record at epoch=${epoch} seq=${sequenceNumber}`);
|
|
47
|
+
this.name = "DtlsReplayError";
|
|
48
|
+
this.epoch = epoch;
|
|
49
|
+
this.sequenceNumber = sequenceNumber;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const MAX_EPOCH = 65535;
|
|
53
|
+
const MAX_SEQ = (1n << 48n) - 1n;
|
|
54
|
+
function writeUint16BE(buf, offset, value) {
|
|
55
|
+
buf[offset] = value >>> 8 & 255;
|
|
56
|
+
buf[offset + 1] = value & 255;
|
|
57
|
+
}
|
|
58
|
+
function readUint16BE(buf, offset) {
|
|
59
|
+
return buf[offset] << 8 | buf[offset + 1];
|
|
60
|
+
}
|
|
61
|
+
function writeUint48BE(buf, offset, value) {
|
|
62
|
+
if (value < 0n || value > MAX_SEQ) {
|
|
63
|
+
throw new import_general.InternalError(`DTLS sequence_number out of range: ${value}`);
|
|
64
|
+
}
|
|
65
|
+
buf[offset] = Number(value >> 40n & 0xffn);
|
|
66
|
+
buf[offset + 1] = Number(value >> 32n & 0xffn);
|
|
67
|
+
buf[offset + 2] = Number(value >> 24n & 0xffn);
|
|
68
|
+
buf[offset + 3] = Number(value >> 16n & 0xffn);
|
|
69
|
+
buf[offset + 4] = Number(value >> 8n & 0xffn);
|
|
70
|
+
buf[offset + 5] = Number(value & 0xffn);
|
|
71
|
+
}
|
|
72
|
+
function readUint48BE(buf, offset) {
|
|
73
|
+
let v = 0n;
|
|
74
|
+
for (let i = 0; i < 6; i++) {
|
|
75
|
+
v = v << 8n | BigInt(buf[offset + i]);
|
|
76
|
+
}
|
|
77
|
+
return v;
|
|
78
|
+
}
|
|
79
|
+
var DtlsRecord;
|
|
80
|
+
((DtlsRecord2) => {
|
|
81
|
+
function encode(record, state) {
|
|
82
|
+
if (record.epoch < 0 || record.epoch > MAX_EPOCH) {
|
|
83
|
+
throw new import_general.InternalError(`DTLS epoch out of range: ${record.epoch}`);
|
|
84
|
+
}
|
|
85
|
+
if (record.sequenceNumber < 0n || record.sequenceNumber > MAX_SEQ) {
|
|
86
|
+
throw new import_general.InternalError(`DTLS sequence_number out of range: ${record.sequenceNumber}`);
|
|
87
|
+
}
|
|
88
|
+
if (!(0, import_ContentType.isContentType)(record.type)) {
|
|
89
|
+
throw new import_general.InternalError(`DTLS unknown ContentType: ${record.type}`);
|
|
90
|
+
}
|
|
91
|
+
let fragment;
|
|
92
|
+
if (record.epoch === 0) {
|
|
93
|
+
if (record.fragment.length > DTLS_MAX_FRAGMENT_LEN) {
|
|
94
|
+
throw new import_general.InternalError(
|
|
95
|
+
`DTLS plaintext fragment too large: ${record.fragment.length} > ${DTLS_MAX_FRAGMENT_LEN}`
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
fragment = record.fragment;
|
|
99
|
+
} else {
|
|
100
|
+
if (state === void 0) {
|
|
101
|
+
throw new import_general.InternalError(`DTLS encode at epoch ${record.epoch} requires cipher state`);
|
|
102
|
+
}
|
|
103
|
+
const plaintextLen = record.fragment.length;
|
|
104
|
+
if (plaintextLen + DTLS_AEAD_OVERHEAD > DTLS_MAX_FRAGMENT_LEN) {
|
|
105
|
+
throw new import_general.InternalError(
|
|
106
|
+
`DTLS encrypted fragment too large: ${plaintextLen + DTLS_AEAD_OVERHEAD} > ${DTLS_MAX_FRAGMENT_LEN}`
|
|
107
|
+
);
|
|
108
|
+
}
|
|
109
|
+
const { key, salt } = state.encryptParams();
|
|
110
|
+
const nonce = state.nonceFor(salt, record.epoch, record.sequenceNumber);
|
|
111
|
+
const aad = state.aadFor(record.type, record.epoch, record.sequenceNumber, plaintextLen);
|
|
112
|
+
const cipherWithTag = import_AesCcm8.AesCcm8.encrypt({ key, nonce, aad, plaintext: record.fragment });
|
|
113
|
+
fragment = new Uint8Array(8 + cipherWithTag.length);
|
|
114
|
+
fragment[0] = record.epoch >>> 8 & 255;
|
|
115
|
+
fragment[1] = record.epoch & 255;
|
|
116
|
+
writeUint48BE(fragment, 2, record.sequenceNumber);
|
|
117
|
+
fragment.set(cipherWithTag, 8);
|
|
118
|
+
}
|
|
119
|
+
const out = new Uint8Array(DTLS_HEADER_LEN + fragment.length);
|
|
120
|
+
out[0] = record.type;
|
|
121
|
+
out[1] = DTLS_1_2_VERSION.major;
|
|
122
|
+
out[2] = DTLS_1_2_VERSION.minor;
|
|
123
|
+
writeUint16BE(out, 3, record.epoch);
|
|
124
|
+
writeUint48BE(out, 5, record.sequenceNumber);
|
|
125
|
+
writeUint16BE(out, 11, fragment.length);
|
|
126
|
+
out.set(fragment, DTLS_HEADER_LEN);
|
|
127
|
+
return out;
|
|
128
|
+
}
|
|
129
|
+
DtlsRecord2.encode = encode;
|
|
130
|
+
function decode(bytes, state) {
|
|
131
|
+
if (bytes.length < DTLS_HEADER_LEN) {
|
|
132
|
+
throw new import_DtlsChannel.DtlsError(`DTLS record header truncated: have ${bytes.length}, need ${DTLS_HEADER_LEN}`);
|
|
133
|
+
}
|
|
134
|
+
const type = bytes[0];
|
|
135
|
+
if (!(0, import_ContentType.isContentType)(type)) {
|
|
136
|
+
throw new import_DtlsChannel.DtlsError(`DTLS unknown ContentType: ${type}`);
|
|
137
|
+
}
|
|
138
|
+
const major = bytes[1];
|
|
139
|
+
const minor = bytes[2];
|
|
140
|
+
if (major !== DTLS_1_2_VERSION.major || minor !== DTLS_1_2_VERSION.minor) {
|
|
141
|
+
throw new import_DtlsChannel.DtlsError(
|
|
142
|
+
`DTLS unsupported version ${major.toString(16)}.${minor.toString(16)}; only DTLS 1.2 is supported`
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
const epoch = readUint16BE(bytes, 3);
|
|
146
|
+
const sequenceNumber = readUint48BE(bytes, 5);
|
|
147
|
+
const length = readUint16BE(bytes, 11);
|
|
148
|
+
if (length > DTLS_MAX_FRAGMENT_LEN) {
|
|
149
|
+
throw new import_DtlsChannel.DtlsError(`DTLS fragment length ${length} exceeds limit ${DTLS_MAX_FRAGMENT_LEN}`);
|
|
150
|
+
}
|
|
151
|
+
const total = DTLS_HEADER_LEN + length;
|
|
152
|
+
if (bytes.length < total) {
|
|
153
|
+
throw new import_DtlsChannel.DtlsError(`DTLS record truncated: header says ${length}, have ${bytes.length - DTLS_HEADER_LEN}`);
|
|
154
|
+
}
|
|
155
|
+
let fragment;
|
|
156
|
+
if (epoch === 0) {
|
|
157
|
+
fragment = bytes.slice(DTLS_HEADER_LEN, total);
|
|
158
|
+
} else {
|
|
159
|
+
if (state === void 0) {
|
|
160
|
+
throw new import_general.InternalError(`DTLS decode at epoch ${epoch} requires cipher state`);
|
|
161
|
+
}
|
|
162
|
+
if (length < DTLS_AEAD_OVERHEAD) {
|
|
163
|
+
throw new import_DtlsChannel.DtlsError(
|
|
164
|
+
`DTLS encrypted fragment ${length} bytes < ${DTLS_AEAD_OVERHEAD}-byte AEAD overhead`
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
const explicitNonce = bytes.subarray(DTLS_HEADER_LEN, DTLS_HEADER_LEN + 8);
|
|
168
|
+
const cipherWithTag = bytes.subarray(DTLS_HEADER_LEN + 8, total);
|
|
169
|
+
const plaintextLen = cipherWithTag.length - 8;
|
|
170
|
+
const { key, salt } = state.decryptParams();
|
|
171
|
+
const wireEpoch = explicitNonce[0] << 8 | explicitNonce[1];
|
|
172
|
+
let wireSeq = 0n;
|
|
173
|
+
for (let i = 2; i < 8; i++) {
|
|
174
|
+
wireSeq = wireSeq << 8n | BigInt(explicitNonce[i]);
|
|
175
|
+
}
|
|
176
|
+
if (wireEpoch !== epoch || wireSeq !== sequenceNumber) {
|
|
177
|
+
throw new import_DtlsChannel.DtlsError(
|
|
178
|
+
`DTLS explicit nonce ${wireEpoch}/${wireSeq} disagrees with header ${epoch}/${sequenceNumber}`
|
|
179
|
+
);
|
|
180
|
+
}
|
|
181
|
+
const nonce = state.nonceFor(salt, epoch, sequenceNumber);
|
|
182
|
+
const aad = state.aadFor(type, epoch, sequenceNumber, plaintextLen);
|
|
183
|
+
fragment = import_AesCcm8.AesCcm8.decrypt({ key, nonce, aad, ciphertextWithTag: cipherWithTag });
|
|
184
|
+
if (state.acceptIncoming !== void 0 && !state.acceptIncoming(epoch, sequenceNumber)) {
|
|
185
|
+
throw new DtlsReplayError(epoch, sequenceNumber);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
record: { type, epoch, sequenceNumber, fragment },
|
|
190
|
+
consumed: total
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
DtlsRecord2.decode = decode;
|
|
194
|
+
})(DtlsRecord || (DtlsRecord = {}));
|
|
195
|
+
//# sourceMappingURL=DtlsRecord.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/dtls/record/DtlsRecord.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["DtlsRecord"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* DTLS 1.2 record layer for `TLS_ECJPAKE_WITH_AES_128_CCM_8`. Internal to `dtls/`;
|
|
8
|
+
* not re-exported from the package public API surface until the {@link DtlsChannel}
|
|
9
|
+
* interface ships in sub-batch 5.
|
|
10
|
+
*/
|
|
11
|
+
export { AntiReplayWindow } from "./AntiReplayWindow.js";
|
|
12
|
+
export { ContentType, isContentType } from "./ContentType.js";
|
|
13
|
+
export { DtlsCipherState, type DtlsCipherStateInputs } from "./DtlsCipherState.js";
|
|
14
|
+
export { DTLS_1_2_VERSION, DTLS_AEAD_OVERHEAD, DTLS_HEADER_LEN, DTLS_MAX_FRAGMENT_LEN, DtlsRecord, DtlsReplayError, type DtlsRecordCipherState, } from "./DtlsRecord.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,KAAK,qBAAqB,GAC7B,MAAM,iBAAiB,CAAC"}
|