@matter/thread-br-client 0.0.1 → 0.17.5-alpha.0-20260706-fd4c49e2e

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.
Files changed (575) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +5 -5
  3. package/dist/cjs/coap/CoapClient.d.ts +2 -2
  4. package/dist/cjs/coap/CoapClient.d.ts.map +1 -1
  5. package/dist/cjs/coap/CoapClient.js +9 -16
  6. package/dist/cjs/coap/CoapClient.js.map +1 -1
  7. package/dist/cjs/coap/CoapMessage.d.ts +11 -6
  8. package/dist/cjs/coap/CoapMessage.d.ts.map +1 -1
  9. package/dist/cjs/coap/CoapMessage.js +8 -5
  10. package/dist/cjs/coap/CoapMessage.js.map +1 -1
  11. package/dist/cjs/commissioner/Commissioner.d.ts.map +1 -1
  12. package/dist/cjs/commissioner/Commissioner.js +5 -2
  13. package/dist/cjs/commissioner/Commissioner.js.map +1 -1
  14. package/dist/cjs/commissioner/LeadKa.d.ts +3 -3
  15. package/dist/cjs/commissioner/LeadKa.d.ts.map +1 -1
  16. package/dist/cjs/commissioner/LeadKa.js +1 -1
  17. package/dist/cjs/commissioner/LeadKa.js.map +1 -1
  18. package/dist/cjs/commissioner/LeadPet.d.ts +3 -2
  19. package/dist/cjs/commissioner/LeadPet.d.ts.map +1 -1
  20. package/dist/cjs/commissioner/LeadPet.js +4 -3
  21. package/dist/cjs/commissioner/LeadPet.js.map +1 -1
  22. package/dist/cjs/credentials/ThreadCredentialsRegistry.d.ts +5 -5
  23. package/dist/cjs/credentials/ThreadCredentialsRegistry.d.ts.map +1 -1
  24. package/dist/cjs/credentials/ThreadCredentialsRegistry.js +10 -9
  25. package/dist/cjs/credentials/ThreadCredentialsRegistry.js.map +1 -1
  26. package/dist/cjs/credentials/ThreadNetworkCredentials.d.ts +4 -3
  27. package/dist/cjs/credentials/ThreadNetworkCredentials.d.ts.map +1 -1
  28. package/dist/cjs/crypto/AesCmacPrf128.d.ts +4 -14
  29. package/dist/cjs/crypto/AesCmacPrf128.d.ts.map +1 -1
  30. package/dist/cjs/crypto/AesCmacPrf128.js +7 -71
  31. package/dist/cjs/crypto/AesCmacPrf128.js.map +2 -2
  32. package/dist/cjs/crypto/Pbkdf2AesCmac.d.ts +5 -4
  33. package/dist/cjs/crypto/Pbkdf2AesCmac.d.ts.map +1 -1
  34. package/dist/cjs/crypto/Pbkdf2AesCmac.js +5 -4
  35. package/dist/cjs/crypto/Pbkdf2AesCmac.js.map +1 -1
  36. package/dist/cjs/crypto/Pskc.d.ts +4 -3
  37. package/dist/cjs/crypto/Pskc.d.ts.map +1 -1
  38. package/dist/cjs/crypto/Pskc.js +6 -5
  39. package/dist/cjs/crypto/Pskc.js.map +1 -1
  40. package/dist/cjs/crypto/index.d.ts +1 -1
  41. package/dist/cjs/crypto/index.d.ts.map +1 -1
  42. package/dist/cjs/crypto/index.js +0 -1
  43. package/dist/cjs/crypto/index.js.map +1 -1
  44. package/dist/cjs/dataset/OperationalDataset.d.ts +10 -10
  45. package/dist/cjs/dataset/OperationalDataset.d.ts.map +1 -1
  46. package/dist/cjs/dataset/OperationalDataset.js +32 -31
  47. package/dist/cjs/dataset/OperationalDataset.js.map +1 -1
  48. package/dist/cjs/dataset/SecurityPolicy.d.ts +3 -2
  49. package/dist/cjs/dataset/SecurityPolicy.d.ts.map +1 -1
  50. package/dist/cjs/dataset/SecurityPolicy.js +5 -4
  51. package/dist/cjs/dataset/SecurityPolicy.js.map +1 -1
  52. package/dist/cjs/diagnostic/DiagnosticResponse.d.ts +5 -4
  53. package/dist/cjs/diagnostic/DiagnosticResponse.d.ts.map +1 -1
  54. package/dist/cjs/diagnostic/DiagnosticSource.d.ts +2 -2
  55. package/dist/cjs/diagnostic/DiagnosticSource.d.ts.map +1 -1
  56. package/dist/cjs/diagnostic/MeshCopDiagnosticSource.d.ts +7 -3
  57. package/dist/cjs/diagnostic/MeshCopDiagnosticSource.d.ts.map +1 -1
  58. package/dist/cjs/diagnostic/MeshCopDiagnosticSource.js +48 -43
  59. package/dist/cjs/diagnostic/MeshCopDiagnosticSource.js.map +1 -1
  60. package/dist/cjs/diagnostic/connectMeshcop.d.ts.map +1 -1
  61. package/dist/cjs/diagnostic/connectMeshcop.js +5 -12
  62. package/dist/cjs/diagnostic/connectMeshcop.js.map +1 -1
  63. package/dist/cjs/diagnostic/errors.d.ts +1 -1
  64. package/dist/cjs/diagnostic/errors.d.ts.map +1 -1
  65. package/dist/cjs/discovery/BorderRouterRegistry.d.ts.map +1 -1
  66. package/dist/cjs/discovery/BorderRouterRegistry.js +2 -4
  67. package/dist/cjs/discovery/BorderRouterRegistry.js.map +1 -1
  68. package/dist/cjs/dtls/channel/DtlsConnectOpts.d.ts +3 -3
  69. package/dist/cjs/dtls/channel/DtlsConnectOpts.d.ts.map +1 -1
  70. package/dist/cjs/dtls/channel/NobleDtlsChannel.d.ts.map +1 -1
  71. package/dist/cjs/dtls/channel/NobleDtlsChannel.js +89 -58
  72. package/dist/cjs/dtls/channel/NobleDtlsChannel.js.map +1 -1
  73. package/dist/cjs/dtls/ecjpake/EcJpakePms.d.ts +5 -4
  74. package/dist/cjs/dtls/ecjpake/EcJpakePms.d.ts.map +1 -1
  75. package/dist/cjs/dtls/ecjpake/EcJpakePms.js +4 -5
  76. package/dist/cjs/dtls/ecjpake/EcJpakePms.js.map +1 -1
  77. package/dist/cjs/dtls/ecjpake/EcJpakeRound.d.ts +16 -15
  78. package/dist/cjs/dtls/ecjpake/EcJpakeRound.d.ts.map +1 -1
  79. package/dist/cjs/dtls/ecjpake/EcJpakeRound.js +40 -29
  80. package/dist/cjs/dtls/ecjpake/EcJpakeRound.js.map +1 -1
  81. package/dist/cjs/dtls/ecjpake/SchnorrZkp.d.ts +10 -9
  82. package/dist/cjs/dtls/ecjpake/SchnorrZkp.d.ts.map +1 -1
  83. package/dist/cjs/dtls/ecjpake/SchnorrZkp.js +17 -13
  84. package/dist/cjs/dtls/ecjpake/SchnorrZkp.js.map +1 -1
  85. package/dist/cjs/dtls/handshake/ChangeCipherSpec.d.ts +2 -1
  86. package/dist/cjs/dtls/handshake/ChangeCipherSpec.d.ts.map +1 -1
  87. package/dist/cjs/dtls/handshake/ChangeCipherSpec.js +3 -1
  88. package/dist/cjs/dtls/handshake/ChangeCipherSpec.js.map +1 -1
  89. package/dist/cjs/dtls/handshake/ClientHelloMessage.d.ts +27 -4
  90. package/dist/cjs/dtls/handshake/ClientHelloMessage.d.ts.map +1 -1
  91. package/dist/cjs/dtls/handshake/ClientHelloMessage.js +3 -1
  92. package/dist/cjs/dtls/handshake/ClientHelloMessage.js.map +1 -1
  93. package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.d.ts +2 -1
  94. package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.d.ts.map +1 -1
  95. package/dist/cjs/dtls/handshake/ClientKeyExchangeMessage.js.map +1 -1
  96. package/dist/cjs/dtls/handshake/DtlsClient.d.ts +9 -6
  97. package/dist/cjs/dtls/handshake/DtlsClient.d.ts.map +1 -1
  98. package/dist/cjs/dtls/handshake/DtlsClient.js +99 -77
  99. package/dist/cjs/dtls/handshake/DtlsClient.js.map +1 -1
  100. package/dist/cjs/dtls/handshake/FinishedMessage.d.ts +10 -3
  101. package/dist/cjs/dtls/handshake/FinishedMessage.d.ts.map +1 -1
  102. package/dist/cjs/dtls/handshake/FinishedMessage.js +4 -2
  103. package/dist/cjs/dtls/handshake/FinishedMessage.js.map +1 -1
  104. package/dist/cjs/dtls/handshake/HandshakeMessage.d.ts +5 -4
  105. package/dist/cjs/dtls/handshake/HandshakeMessage.d.ts.map +1 -1
  106. package/dist/cjs/dtls/handshake/HandshakeMessage.js +13 -11
  107. package/dist/cjs/dtls/handshake/HandshakeMessage.js.map +1 -1
  108. package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.d.ts +19 -2
  109. package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.d.ts.map +1 -1
  110. package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.js +3 -1
  111. package/dist/cjs/dtls/handshake/HelloVerifyRequestMessage.js.map +1 -1
  112. package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.d.ts +2 -1
  113. package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.d.ts.map +1 -1
  114. package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.js +3 -2
  115. package/dist/cjs/dtls/handshake/ServerHelloDoneMessage.js.map +1 -1
  116. package/dist/cjs/dtls/handshake/ServerHelloMessage.d.ts +4 -3
  117. package/dist/cjs/dtls/handshake/ServerHelloMessage.d.ts.map +1 -1
  118. package/dist/cjs/dtls/handshake/ServerHelloMessage.js +3 -1
  119. package/dist/cjs/dtls/handshake/ServerHelloMessage.js.map +1 -1
  120. package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.d.ts +2 -1
  121. package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.d.ts.map +1 -1
  122. package/dist/cjs/dtls/handshake/ServerKeyExchangeMessage.js.map +1 -1
  123. package/dist/cjs/dtls/prf/HandshakeTranscript.d.ts +7 -5
  124. package/dist/cjs/dtls/prf/HandshakeTranscript.d.ts.map +1 -1
  125. package/dist/cjs/dtls/prf/HandshakeTranscript.js +14 -9
  126. package/dist/cjs/dtls/prf/HandshakeTranscript.js.map +1 -1
  127. package/dist/cjs/dtls/prf/TlsPrf.d.ts +23 -22
  128. package/dist/cjs/dtls/prf/TlsPrf.d.ts.map +1 -1
  129. package/dist/cjs/dtls/prf/TlsPrf.js +33 -30
  130. package/dist/cjs/dtls/prf/TlsPrf.js.map +1 -1
  131. package/dist/cjs/dtls/record/AesCcm8.d.ts +13 -12
  132. package/dist/cjs/dtls/record/AesCcm8.d.ts.map +1 -1
  133. package/dist/cjs/dtls/record/AesCcm8.js +12 -34
  134. package/dist/cjs/dtls/record/AesCcm8.js.map +1 -1
  135. package/dist/cjs/dtls/record/DtlsCipherState.d.ts +11 -10
  136. package/dist/cjs/dtls/record/DtlsCipherState.d.ts.map +1 -1
  137. package/dist/cjs/dtls/record/DtlsCipherState.js +10 -6
  138. package/dist/cjs/dtls/record/DtlsCipherState.js.map +1 -1
  139. package/dist/cjs/dtls/record/DtlsRecord.d.ts +10 -10
  140. package/dist/cjs/dtls/record/DtlsRecord.d.ts.map +1 -1
  141. package/dist/cjs/dtls/record/DtlsRecord.js +10 -8
  142. package/dist/cjs/dtls/record/DtlsRecord.js.map +1 -1
  143. package/dist/cjs/otbr-rest/OtbrRestCapability.d.ts +3 -4
  144. package/dist/cjs/otbr-rest/OtbrRestCapability.d.ts.map +1 -1
  145. package/dist/cjs/otbr-rest/OtbrRestClient.d.ts +27 -8
  146. package/dist/cjs/otbr-rest/OtbrRestClient.d.ts.map +1 -1
  147. package/dist/cjs/otbr-rest/OtbrRestClient.js +50 -20
  148. package/dist/cjs/otbr-rest/OtbrRestClient.js.map +1 -1
  149. package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.d.ts +2 -1
  150. package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.d.ts.map +1 -1
  151. package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.js +3 -3
  152. package/dist/cjs/otbr-rest/OtbrRestDiagnosticSource.js.map +1 -1
  153. package/dist/cjs/otbr-rest/OtbrRestProbe.d.ts +6 -4
  154. package/dist/cjs/otbr-rest/OtbrRestProbe.d.ts.map +1 -1
  155. package/dist/cjs/otbr-rest/OtbrRestProbe.js +11 -43
  156. package/dist/cjs/otbr-rest/OtbrRestProbe.js.map +1 -1
  157. package/dist/cjs/otbr-rest/caseNormalizer.d.ts +7 -0
  158. package/dist/cjs/otbr-rest/caseNormalizer.d.ts.map +1 -1
  159. package/dist/cjs/otbr-rest/caseNormalizer.js +11 -0
  160. package/dist/cjs/otbr-rest/caseNormalizer.js.map +1 -1
  161. package/dist/cjs/otbr-rest/parseHexBytes.d.ts +22 -0
  162. package/dist/cjs/otbr-rest/parseHexBytes.d.ts.map +1 -0
  163. package/dist/cjs/otbr-rest/parseHexBytes.js +50 -0
  164. package/dist/cjs/otbr-rest/parseHexBytes.js.map +6 -0
  165. package/dist/cjs/otbr-rest/translation.d.ts +2 -1
  166. package/dist/cjs/otbr-rest/translation.d.ts.map +1 -1
  167. package/dist/cjs/otbr-rest/translation.js +20 -22
  168. package/dist/cjs/otbr-rest/translation.js.map +1 -1
  169. package/dist/cjs/selection/selectBr.d.ts +8 -4
  170. package/dist/cjs/selection/selectBr.d.ts.map +1 -1
  171. package/dist/cjs/selection/selectBr.js +6 -5
  172. package/dist/cjs/selection/selectBr.js.map +1 -1
  173. package/dist/cjs/selection/withExtPanIdLock.d.ts +2 -1
  174. package/dist/cjs/selection/withExtPanIdLock.d.ts.map +1 -1
  175. package/dist/cjs/selection/withExtPanIdLock.js.map +1 -1
  176. package/dist/cjs/tlv/BasicTlvCodec.d.ts +4 -4
  177. package/dist/cjs/tlv/BasicTlvCodec.d.ts.map +1 -1
  178. package/dist/cjs/tlv/BasicTlvCodec.js +13 -11
  179. package/dist/cjs/tlv/BasicTlvCodec.js.map +1 -1
  180. package/dist/cjs/tlv/NetworkDiagnosticTlv.d.ts +3 -2
  181. package/dist/cjs/tlv/NetworkDiagnosticTlv.d.ts.map +1 -1
  182. package/dist/cjs/tlv/NetworkDiagnosticTlv.js.map +1 -1
  183. package/dist/cjs/tlv/TypeListTlv.d.ts +3 -2
  184. package/dist/cjs/tlv/TypeListTlv.d.ts.map +1 -1
  185. package/dist/cjs/tlv/TypeListTlv.js +1 -1
  186. package/dist/cjs/tlv/TypeListTlv.js.map +1 -1
  187. package/dist/cjs/tlv/diag/ChildIpv6AddressList.d.ts +3 -2
  188. package/dist/cjs/tlv/diag/ChildIpv6AddressList.d.ts.map +1 -1
  189. package/dist/cjs/tlv/diag/ChildIpv6AddressList.js +5 -3
  190. package/dist/cjs/tlv/diag/ChildIpv6AddressList.js.map +1 -1
  191. package/dist/cjs/tlv/diag/ChildTable.d.ts +3 -2
  192. package/dist/cjs/tlv/diag/ChildTable.d.ts.map +1 -1
  193. package/dist/cjs/tlv/diag/ChildTable.js +7 -6
  194. package/dist/cjs/tlv/diag/ChildTable.js.map +1 -1
  195. package/dist/cjs/tlv/diag/Connectivity.d.ts +3 -2
  196. package/dist/cjs/tlv/diag/Connectivity.d.ts.map +1 -1
  197. package/dist/cjs/tlv/diag/Connectivity.js +14 -14
  198. package/dist/cjs/tlv/diag/Connectivity.js.map +1 -1
  199. package/dist/cjs/tlv/diag/Ipv6AddressList.d.ts +3 -2
  200. package/dist/cjs/tlv/diag/Ipv6AddressList.d.ts.map +1 -1
  201. package/dist/cjs/tlv/diag/Ipv6AddressList.js +6 -5
  202. package/dist/cjs/tlv/diag/Ipv6AddressList.js.map +1 -1
  203. package/dist/cjs/tlv/diag/LeaderData.d.ts +3 -2
  204. package/dist/cjs/tlv/diag/LeaderData.d.ts.map +1 -1
  205. package/dist/cjs/tlv/diag/LeaderData.js +8 -7
  206. package/dist/cjs/tlv/diag/LeaderData.js.map +1 -1
  207. package/dist/cjs/tlv/diag/MacCounters.d.ts +3 -2
  208. package/dist/cjs/tlv/diag/MacCounters.d.ts.map +1 -1
  209. package/dist/cjs/tlv/diag/MacCounters.js +12 -11
  210. package/dist/cjs/tlv/diag/MacCounters.js.map +1 -1
  211. package/dist/cjs/tlv/diag/MleCounters.d.ts +3 -2
  212. package/dist/cjs/tlv/diag/MleCounters.d.ts.map +1 -1
  213. package/dist/cjs/tlv/diag/MleCounters.js +18 -17
  214. package/dist/cjs/tlv/diag/MleCounters.js.map +1 -1
  215. package/dist/cjs/tlv/diag/Mode.d.ts +3 -2
  216. package/dist/cjs/tlv/diag/Mode.d.ts.map +1 -1
  217. package/dist/cjs/tlv/diag/Mode.js +5 -3
  218. package/dist/cjs/tlv/diag/Mode.js.map +1 -1
  219. package/dist/cjs/tlv/diag/NetworkData.d.ts +7 -6
  220. package/dist/cjs/tlv/diag/NetworkData.d.ts.map +1 -1
  221. package/dist/cjs/tlv/diag/NetworkData.js +23 -18
  222. package/dist/cjs/tlv/diag/NetworkData.js.map +1 -1
  223. package/dist/cjs/tlv/diag/Primitives.d.ts +15 -14
  224. package/dist/cjs/tlv/diag/Primitives.d.ts.map +1 -1
  225. package/dist/cjs/tlv/diag/Primitives.js +25 -19
  226. package/dist/cjs/tlv/diag/Primitives.js.map +1 -1
  227. package/dist/cjs/tlv/diag/Route64.d.ts +3 -2
  228. package/dist/cjs/tlv/diag/Route64.d.ts.map +1 -1
  229. package/dist/cjs/tlv/diag/Route64.js +8 -7
  230. package/dist/cjs/tlv/diag/Route64.js.map +1 -1
  231. package/dist/cjs/tlv/diag/RouterNeighbor.d.ts +3 -2
  232. package/dist/cjs/tlv/diag/RouterNeighbor.d.ts.map +1 -1
  233. package/dist/cjs/tlv/diag/RouterNeighbor.js +13 -11
  234. package/dist/cjs/tlv/diag/RouterNeighbor.js.map +1 -1
  235. package/dist/cjs/tlv/diag/Timeout.d.ts +3 -2
  236. package/dist/cjs/tlv/diag/Timeout.d.ts.map +1 -1
  237. package/dist/cjs/tlv/diag/Timeout.js +4 -3
  238. package/dist/cjs/tlv/diag/Timeout.js.map +1 -1
  239. package/dist/cjs/tlv/diag/VendorInfo.d.ts +13 -12
  240. package/dist/cjs/tlv/diag/VendorInfo.d.ts.map +1 -1
  241. package/dist/cjs/tlv/diag/VendorInfo.js +4 -3
  242. package/dist/cjs/tlv/diag/VendorInfo.js.map +1 -1
  243. package/dist/cjs/tlv/meshcop/Ip6AddressTlv.d.ts +3 -2
  244. package/dist/cjs/tlv/meshcop/Ip6AddressTlv.d.ts.map +1 -1
  245. package/dist/cjs/tlv/meshcop/Ip6AddressTlv.js +7 -4
  246. package/dist/cjs/tlv/meshcop/Ip6AddressTlv.js.map +1 -1
  247. package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.d.ts +4 -3
  248. package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.d.ts.map +1 -1
  249. package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.js +9 -7
  250. package/dist/cjs/tlv/meshcop/UdpEncapsulationTlv.js.map +1 -1
  251. package/dist/cjs/util/meshLocalAddr.d.ts +5 -4
  252. package/dist/cjs/util/meshLocalAddr.d.ts.map +1 -1
  253. package/dist/cjs/util/meshLocalAddr.js +6 -4
  254. package/dist/cjs/util/meshLocalAddr.js.map +1 -1
  255. package/dist/esm/coap/CoapClient.d.ts +2 -2
  256. package/dist/esm/coap/CoapClient.d.ts.map +1 -1
  257. package/dist/esm/coap/CoapClient.js +11 -17
  258. package/dist/esm/coap/CoapClient.js.map +1 -1
  259. package/dist/esm/coap/CoapMessage.d.ts +11 -6
  260. package/dist/esm/coap/CoapMessage.d.ts.map +1 -1
  261. package/dist/esm/coap/CoapMessage.js +8 -5
  262. package/dist/esm/coap/CoapMessage.js.map +1 -1
  263. package/dist/esm/commissioner/Commissioner.d.ts.map +1 -1
  264. package/dist/esm/commissioner/Commissioner.js +5 -2
  265. package/dist/esm/commissioner/Commissioner.js.map +1 -1
  266. package/dist/esm/commissioner/LeadKa.d.ts +3 -3
  267. package/dist/esm/commissioner/LeadKa.d.ts.map +1 -1
  268. package/dist/esm/commissioner/LeadKa.js +2 -2
  269. package/dist/esm/commissioner/LeadKa.js.map +1 -1
  270. package/dist/esm/commissioner/LeadPet.d.ts +3 -2
  271. package/dist/esm/commissioner/LeadPet.d.ts.map +1 -1
  272. package/dist/esm/commissioner/LeadPet.js +4 -3
  273. package/dist/esm/commissioner/LeadPet.js.map +1 -1
  274. package/dist/esm/credentials/ThreadCredentialsRegistry.d.ts +5 -5
  275. package/dist/esm/credentials/ThreadCredentialsRegistry.d.ts.map +1 -1
  276. package/dist/esm/credentials/ThreadCredentialsRegistry.js +10 -9
  277. package/dist/esm/credentials/ThreadCredentialsRegistry.js.map +1 -1
  278. package/dist/esm/credentials/ThreadNetworkCredentials.d.ts +4 -3
  279. package/dist/esm/credentials/ThreadNetworkCredentials.d.ts.map +1 -1
  280. package/dist/esm/crypto/AesCmacPrf128.d.ts +4 -14
  281. package/dist/esm/crypto/AesCmacPrf128.d.ts.map +1 -1
  282. package/dist/esm/crypto/AesCmacPrf128.js +8 -72
  283. package/dist/esm/crypto/AesCmacPrf128.js.map +2 -2
  284. package/dist/esm/crypto/Pbkdf2AesCmac.d.ts +5 -4
  285. package/dist/esm/crypto/Pbkdf2AesCmac.d.ts.map +1 -1
  286. package/dist/esm/crypto/Pbkdf2AesCmac.js +6 -5
  287. package/dist/esm/crypto/Pbkdf2AesCmac.js.map +1 -1
  288. package/dist/esm/crypto/Pskc.d.ts +4 -3
  289. package/dist/esm/crypto/Pskc.d.ts.map +1 -1
  290. package/dist/esm/crypto/Pskc.js +7 -6
  291. package/dist/esm/crypto/Pskc.js.map +1 -1
  292. package/dist/esm/crypto/index.d.ts +1 -1
  293. package/dist/esm/crypto/index.d.ts.map +1 -1
  294. package/dist/esm/crypto/index.js +1 -2
  295. package/dist/esm/crypto/index.js.map +1 -1
  296. package/dist/esm/dataset/OperationalDataset.d.ts +10 -10
  297. package/dist/esm/dataset/OperationalDataset.d.ts.map +1 -1
  298. package/dist/esm/dataset/OperationalDataset.js +32 -31
  299. package/dist/esm/dataset/OperationalDataset.js.map +1 -1
  300. package/dist/esm/dataset/SecurityPolicy.d.ts +3 -2
  301. package/dist/esm/dataset/SecurityPolicy.d.ts.map +1 -1
  302. package/dist/esm/dataset/SecurityPolicy.js +6 -5
  303. package/dist/esm/dataset/SecurityPolicy.js.map +1 -1
  304. package/dist/esm/diagnostic/DiagnosticResponse.d.ts +5 -4
  305. package/dist/esm/diagnostic/DiagnosticResponse.d.ts.map +1 -1
  306. package/dist/esm/diagnostic/DiagnosticSource.d.ts +2 -2
  307. package/dist/esm/diagnostic/DiagnosticSource.d.ts.map +1 -1
  308. package/dist/esm/diagnostic/MeshCopDiagnosticSource.d.ts +7 -3
  309. package/dist/esm/diagnostic/MeshCopDiagnosticSource.d.ts.map +1 -1
  310. package/dist/esm/diagnostic/MeshCopDiagnosticSource.js +49 -43
  311. package/dist/esm/diagnostic/MeshCopDiagnosticSource.js.map +1 -1
  312. package/dist/esm/diagnostic/connectMeshcop.d.ts.map +1 -1
  313. package/dist/esm/diagnostic/connectMeshcop.js +6 -13
  314. package/dist/esm/diagnostic/connectMeshcop.js.map +1 -1
  315. package/dist/esm/diagnostic/errors.d.ts +1 -1
  316. package/dist/esm/diagnostic/errors.d.ts.map +1 -1
  317. package/dist/esm/discovery/BorderRouterRegistry.d.ts.map +1 -1
  318. package/dist/esm/discovery/BorderRouterRegistry.js +2 -4
  319. package/dist/esm/discovery/BorderRouterRegistry.js.map +1 -1
  320. package/dist/esm/dtls/channel/DtlsConnectOpts.d.ts +3 -3
  321. package/dist/esm/dtls/channel/DtlsConnectOpts.d.ts.map +1 -1
  322. package/dist/esm/dtls/channel/NobleDtlsChannel.d.ts.map +1 -1
  323. package/dist/esm/dtls/channel/NobleDtlsChannel.js +90 -58
  324. package/dist/esm/dtls/channel/NobleDtlsChannel.js.map +1 -1
  325. package/dist/esm/dtls/ecjpake/EcJpakePms.d.ts +5 -4
  326. package/dist/esm/dtls/ecjpake/EcJpakePms.d.ts.map +1 -1
  327. package/dist/esm/dtls/ecjpake/EcJpakePms.js +5 -6
  328. package/dist/esm/dtls/ecjpake/EcJpakePms.js.map +1 -1
  329. package/dist/esm/dtls/ecjpake/EcJpakeRound.d.ts +16 -15
  330. package/dist/esm/dtls/ecjpake/EcJpakeRound.d.ts.map +1 -1
  331. package/dist/esm/dtls/ecjpake/EcJpakeRound.js +41 -30
  332. package/dist/esm/dtls/ecjpake/EcJpakeRound.js.map +1 -1
  333. package/dist/esm/dtls/ecjpake/SchnorrZkp.d.ts +10 -9
  334. package/dist/esm/dtls/ecjpake/SchnorrZkp.d.ts.map +1 -1
  335. package/dist/esm/dtls/ecjpake/SchnorrZkp.js +18 -14
  336. package/dist/esm/dtls/ecjpake/SchnorrZkp.js.map +1 -1
  337. package/dist/esm/dtls/handshake/ChangeCipherSpec.d.ts +2 -1
  338. package/dist/esm/dtls/handshake/ChangeCipherSpec.d.ts.map +1 -1
  339. package/dist/esm/dtls/handshake/ChangeCipherSpec.js +3 -1
  340. package/dist/esm/dtls/handshake/ChangeCipherSpec.js.map +1 -1
  341. package/dist/esm/dtls/handshake/ClientHelloMessage.d.ts +27 -4
  342. package/dist/esm/dtls/handshake/ClientHelloMessage.d.ts.map +1 -1
  343. package/dist/esm/dtls/handshake/ClientHelloMessage.js +4 -2
  344. package/dist/esm/dtls/handshake/ClientHelloMessage.js.map +1 -1
  345. package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.d.ts +2 -1
  346. package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.d.ts.map +1 -1
  347. package/dist/esm/dtls/handshake/ClientKeyExchangeMessage.js.map +1 -1
  348. package/dist/esm/dtls/handshake/DtlsClient.d.ts +9 -6
  349. package/dist/esm/dtls/handshake/DtlsClient.d.ts.map +1 -1
  350. package/dist/esm/dtls/handshake/DtlsClient.js +100 -78
  351. package/dist/esm/dtls/handshake/DtlsClient.js.map +1 -1
  352. package/dist/esm/dtls/handshake/FinishedMessage.d.ts +10 -3
  353. package/dist/esm/dtls/handshake/FinishedMessage.d.ts.map +1 -1
  354. package/dist/esm/dtls/handshake/FinishedMessage.js +5 -3
  355. package/dist/esm/dtls/handshake/FinishedMessage.js.map +1 -1
  356. package/dist/esm/dtls/handshake/HandshakeMessage.d.ts +5 -4
  357. package/dist/esm/dtls/handshake/HandshakeMessage.d.ts.map +1 -1
  358. package/dist/esm/dtls/handshake/HandshakeMessage.js +14 -12
  359. package/dist/esm/dtls/handshake/HandshakeMessage.js.map +1 -1
  360. package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.d.ts +19 -2
  361. package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.d.ts.map +1 -1
  362. package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.js +3 -1
  363. package/dist/esm/dtls/handshake/HelloVerifyRequestMessage.js.map +1 -1
  364. package/dist/esm/dtls/handshake/ServerHelloDoneMessage.d.ts +2 -1
  365. package/dist/esm/dtls/handshake/ServerHelloDoneMessage.d.ts.map +1 -1
  366. package/dist/esm/dtls/handshake/ServerHelloDoneMessage.js +3 -2
  367. package/dist/esm/dtls/handshake/ServerHelloDoneMessage.js.map +1 -1
  368. package/dist/esm/dtls/handshake/ServerHelloMessage.d.ts +4 -3
  369. package/dist/esm/dtls/handshake/ServerHelloMessage.d.ts.map +1 -1
  370. package/dist/esm/dtls/handshake/ServerHelloMessage.js +3 -1
  371. package/dist/esm/dtls/handshake/ServerHelloMessage.js.map +1 -1
  372. package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.d.ts +2 -1
  373. package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.d.ts.map +1 -1
  374. package/dist/esm/dtls/handshake/ServerKeyExchangeMessage.js.map +1 -1
  375. package/dist/esm/dtls/prf/HandshakeTranscript.d.ts +7 -5
  376. package/dist/esm/dtls/prf/HandshakeTranscript.d.ts.map +1 -1
  377. package/dist/esm/dtls/prf/HandshakeTranscript.js +15 -10
  378. package/dist/esm/dtls/prf/HandshakeTranscript.js.map +1 -1
  379. package/dist/esm/dtls/prf/TlsPrf.d.ts +23 -22
  380. package/dist/esm/dtls/prf/TlsPrf.d.ts.map +1 -1
  381. package/dist/esm/dtls/prf/TlsPrf.js +34 -31
  382. package/dist/esm/dtls/prf/TlsPrf.js.map +1 -1
  383. package/dist/esm/dtls/record/AesCcm8.d.ts +13 -12
  384. package/dist/esm/dtls/record/AesCcm8.d.ts.map +1 -1
  385. package/dist/esm/dtls/record/AesCcm8.js +13 -35
  386. package/dist/esm/dtls/record/AesCcm8.js.map +1 -1
  387. package/dist/esm/dtls/record/DtlsCipherState.d.ts +11 -10
  388. package/dist/esm/dtls/record/DtlsCipherState.d.ts.map +1 -1
  389. package/dist/esm/dtls/record/DtlsCipherState.js +11 -7
  390. package/dist/esm/dtls/record/DtlsCipherState.js.map +1 -1
  391. package/dist/esm/dtls/record/DtlsRecord.d.ts +10 -10
  392. package/dist/esm/dtls/record/DtlsRecord.d.ts.map +1 -1
  393. package/dist/esm/dtls/record/DtlsRecord.js +11 -9
  394. package/dist/esm/dtls/record/DtlsRecord.js.map +1 -1
  395. package/dist/esm/otbr-rest/OtbrRestCapability.d.ts +3 -4
  396. package/dist/esm/otbr-rest/OtbrRestCapability.d.ts.map +1 -1
  397. package/dist/esm/otbr-rest/OtbrRestClient.d.ts +27 -8
  398. package/dist/esm/otbr-rest/OtbrRestClient.d.ts.map +1 -1
  399. package/dist/esm/otbr-rest/OtbrRestClient.js +51 -21
  400. package/dist/esm/otbr-rest/OtbrRestClient.js.map +1 -1
  401. package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.d.ts +2 -1
  402. package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.d.ts.map +1 -1
  403. package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.js +4 -4
  404. package/dist/esm/otbr-rest/OtbrRestDiagnosticSource.js.map +1 -1
  405. package/dist/esm/otbr-rest/OtbrRestProbe.d.ts +6 -4
  406. package/dist/esm/otbr-rest/OtbrRestProbe.d.ts.map +1 -1
  407. package/dist/esm/otbr-rest/OtbrRestProbe.js +12 -44
  408. package/dist/esm/otbr-rest/OtbrRestProbe.js.map +1 -1
  409. package/dist/esm/otbr-rest/caseNormalizer.d.ts +7 -0
  410. package/dist/esm/otbr-rest/caseNormalizer.d.ts.map +1 -1
  411. package/dist/esm/otbr-rest/caseNormalizer.js +11 -0
  412. package/dist/esm/otbr-rest/caseNormalizer.js.map +1 -1
  413. package/dist/esm/otbr-rest/parseHexBytes.d.ts +22 -0
  414. package/dist/esm/otbr-rest/parseHexBytes.d.ts.map +1 -0
  415. package/dist/esm/otbr-rest/parseHexBytes.js +30 -0
  416. package/dist/esm/otbr-rest/parseHexBytes.js.map +6 -0
  417. package/dist/esm/otbr-rest/translation.d.ts +2 -1
  418. package/dist/esm/otbr-rest/translation.d.ts.map +1 -1
  419. package/dist/esm/otbr-rest/translation.js +16 -18
  420. package/dist/esm/otbr-rest/translation.js.map +1 -1
  421. package/dist/esm/selection/selectBr.d.ts +8 -4
  422. package/dist/esm/selection/selectBr.d.ts.map +1 -1
  423. package/dist/esm/selection/selectBr.js +6 -5
  424. package/dist/esm/selection/selectBr.js.map +1 -1
  425. package/dist/esm/selection/withExtPanIdLock.d.ts +2 -1
  426. package/dist/esm/selection/withExtPanIdLock.d.ts.map +1 -1
  427. package/dist/esm/selection/withExtPanIdLock.js.map +1 -1
  428. package/dist/esm/tlv/BasicTlvCodec.d.ts +4 -4
  429. package/dist/esm/tlv/BasicTlvCodec.d.ts.map +1 -1
  430. package/dist/esm/tlv/BasicTlvCodec.js +14 -12
  431. package/dist/esm/tlv/BasicTlvCodec.js.map +1 -1
  432. package/dist/esm/tlv/NetworkDiagnosticTlv.d.ts +3 -2
  433. package/dist/esm/tlv/NetworkDiagnosticTlv.d.ts.map +1 -1
  434. package/dist/esm/tlv/NetworkDiagnosticTlv.js.map +1 -1
  435. package/dist/esm/tlv/TypeListTlv.d.ts +3 -2
  436. package/dist/esm/tlv/TypeListTlv.d.ts.map +1 -1
  437. package/dist/esm/tlv/TypeListTlv.js +2 -2
  438. package/dist/esm/tlv/TypeListTlv.js.map +1 -1
  439. package/dist/esm/tlv/diag/ChildIpv6AddressList.d.ts +3 -2
  440. package/dist/esm/tlv/diag/ChildIpv6AddressList.d.ts.map +1 -1
  441. package/dist/esm/tlv/diag/ChildIpv6AddressList.js +5 -3
  442. package/dist/esm/tlv/diag/ChildIpv6AddressList.js.map +1 -1
  443. package/dist/esm/tlv/diag/ChildTable.d.ts +3 -2
  444. package/dist/esm/tlv/diag/ChildTable.d.ts.map +1 -1
  445. package/dist/esm/tlv/diag/ChildTable.js +8 -7
  446. package/dist/esm/tlv/diag/ChildTable.js.map +1 -1
  447. package/dist/esm/tlv/diag/Connectivity.d.ts +3 -2
  448. package/dist/esm/tlv/diag/Connectivity.d.ts.map +1 -1
  449. package/dist/esm/tlv/diag/Connectivity.js +14 -14
  450. package/dist/esm/tlv/diag/Connectivity.js.map +1 -1
  451. package/dist/esm/tlv/diag/Ipv6AddressList.d.ts +3 -2
  452. package/dist/esm/tlv/diag/Ipv6AddressList.d.ts.map +1 -1
  453. package/dist/esm/tlv/diag/Ipv6AddressList.js +7 -6
  454. package/dist/esm/tlv/diag/Ipv6AddressList.js.map +1 -1
  455. package/dist/esm/tlv/diag/LeaderData.d.ts +3 -2
  456. package/dist/esm/tlv/diag/LeaderData.d.ts.map +1 -1
  457. package/dist/esm/tlv/diag/LeaderData.js +9 -8
  458. package/dist/esm/tlv/diag/LeaderData.js.map +1 -1
  459. package/dist/esm/tlv/diag/MacCounters.d.ts +3 -2
  460. package/dist/esm/tlv/diag/MacCounters.d.ts.map +1 -1
  461. package/dist/esm/tlv/diag/MacCounters.js +13 -12
  462. package/dist/esm/tlv/diag/MacCounters.js.map +1 -1
  463. package/dist/esm/tlv/diag/MleCounters.d.ts +3 -2
  464. package/dist/esm/tlv/diag/MleCounters.d.ts.map +1 -1
  465. package/dist/esm/tlv/diag/MleCounters.js +19 -18
  466. package/dist/esm/tlv/diag/MleCounters.js.map +1 -1
  467. package/dist/esm/tlv/diag/Mode.d.ts +3 -2
  468. package/dist/esm/tlv/diag/Mode.d.ts.map +1 -1
  469. package/dist/esm/tlv/diag/Mode.js +5 -3
  470. package/dist/esm/tlv/diag/Mode.js.map +1 -1
  471. package/dist/esm/tlv/diag/NetworkData.d.ts +7 -6
  472. package/dist/esm/tlv/diag/NetworkData.d.ts.map +1 -1
  473. package/dist/esm/tlv/diag/NetworkData.js +23 -18
  474. package/dist/esm/tlv/diag/NetworkData.js.map +1 -1
  475. package/dist/esm/tlv/diag/Primitives.d.ts +15 -14
  476. package/dist/esm/tlv/diag/Primitives.d.ts.map +1 -1
  477. package/dist/esm/tlv/diag/Primitives.js +26 -20
  478. package/dist/esm/tlv/diag/Primitives.js.map +1 -1
  479. package/dist/esm/tlv/diag/Route64.d.ts +3 -2
  480. package/dist/esm/tlv/diag/Route64.d.ts.map +1 -1
  481. package/dist/esm/tlv/diag/Route64.js +9 -8
  482. package/dist/esm/tlv/diag/Route64.js.map +1 -1
  483. package/dist/esm/tlv/diag/RouterNeighbor.d.ts +3 -2
  484. package/dist/esm/tlv/diag/RouterNeighbor.d.ts.map +1 -1
  485. package/dist/esm/tlv/diag/RouterNeighbor.js +13 -11
  486. package/dist/esm/tlv/diag/RouterNeighbor.js.map +1 -1
  487. package/dist/esm/tlv/diag/Timeout.d.ts +3 -2
  488. package/dist/esm/tlv/diag/Timeout.d.ts.map +1 -1
  489. package/dist/esm/tlv/diag/Timeout.js +5 -4
  490. package/dist/esm/tlv/diag/Timeout.js.map +1 -1
  491. package/dist/esm/tlv/diag/VendorInfo.d.ts +13 -12
  492. package/dist/esm/tlv/diag/VendorInfo.d.ts.map +1 -1
  493. package/dist/esm/tlv/diag/VendorInfo.js +5 -4
  494. package/dist/esm/tlv/diag/VendorInfo.js.map +1 -1
  495. package/dist/esm/tlv/meshcop/Ip6AddressTlv.d.ts +3 -2
  496. package/dist/esm/tlv/meshcop/Ip6AddressTlv.d.ts.map +1 -1
  497. package/dist/esm/tlv/meshcop/Ip6AddressTlv.js +7 -4
  498. package/dist/esm/tlv/meshcop/Ip6AddressTlv.js.map +1 -1
  499. package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.d.ts +4 -3
  500. package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.d.ts.map +1 -1
  501. package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.js +10 -8
  502. package/dist/esm/tlv/meshcop/UdpEncapsulationTlv.js.map +1 -1
  503. package/dist/esm/util/meshLocalAddr.d.ts +5 -4
  504. package/dist/esm/util/meshLocalAddr.d.ts.map +1 -1
  505. package/dist/esm/util/meshLocalAddr.js +7 -5
  506. package/dist/esm/util/meshLocalAddr.js.map +1 -1
  507. package/package.json +5 -5
  508. package/src/coap/CoapClient.ts +13 -20
  509. package/src/coap/CoapMessage.ts +17 -9
  510. package/src/commissioner/Commissioner.ts +5 -2
  511. package/src/commissioner/LeadKa.ts +4 -4
  512. package/src/commissioner/LeadPet.ts +6 -5
  513. package/src/credentials/ThreadCredentialsRegistry.ts +14 -13
  514. package/src/credentials/ThreadNetworkCredentials.ts +5 -3
  515. package/src/crypto/AesCmacPrf128.ts +10 -87
  516. package/src/crypto/Pbkdf2AesCmac.ts +14 -10
  517. package/src/crypto/Pskc.ts +7 -6
  518. package/src/crypto/index.ts +1 -1
  519. package/src/dataset/OperationalDataset.ts +48 -47
  520. package/src/dataset/SecurityPolicy.ts +8 -7
  521. package/src/diagnostic/DiagnosticResponse.ts +5 -4
  522. package/src/diagnostic/DiagnosticSource.ts +2 -2
  523. package/src/diagnostic/MeshCopDiagnosticSource.ts +80 -64
  524. package/src/diagnostic/connectMeshcop.ts +6 -14
  525. package/src/diagnostic/errors.ts +1 -1
  526. package/src/discovery/BorderRouterRegistry.ts +2 -4
  527. package/src/dtls/channel/DtlsConnectOpts.ts +3 -3
  528. package/src/dtls/channel/NobleDtlsChannel.ts +96 -60
  529. package/src/dtls/ecjpake/EcJpakePms.ts +5 -6
  530. package/src/dtls/ecjpake/EcJpakeRound.ts +57 -37
  531. package/src/dtls/ecjpake/SchnorrZkp.ts +43 -30
  532. package/src/dtls/handshake/ChangeCipherSpec.ts +3 -1
  533. package/src/dtls/handshake/ClientHelloMessage.ts +8 -6
  534. package/src/dtls/handshake/ClientKeyExchangeMessage.ts +2 -1
  535. package/src/dtls/handshake/DtlsClient.ts +119 -95
  536. package/src/dtls/handshake/FinishedMessage.ts +5 -3
  537. package/src/dtls/handshake/HandshakeMessage.ts +18 -16
  538. package/src/dtls/handshake/HelloVerifyRequestMessage.ts +3 -1
  539. package/src/dtls/handshake/ServerHelloDoneMessage.ts +5 -3
  540. package/src/dtls/handshake/ServerHelloMessage.ts +5 -3
  541. package/src/dtls/handshake/ServerKeyExchangeMessage.ts +2 -1
  542. package/src/dtls/prf/HandshakeTranscript.ts +18 -11
  543. package/src/dtls/prf/TlsPrf.ts +68 -54
  544. package/src/dtls/record/AesCcm8.ts +23 -49
  545. package/src/dtls/record/DtlsCipherState.ts +20 -16
  546. package/src/dtls/record/DtlsRecord.ts +17 -15
  547. package/src/otbr-rest/OtbrRestCapability.ts +4 -4
  548. package/src/otbr-rest/OtbrRestClient.ts +64 -29
  549. package/src/otbr-rest/OtbrRestDiagnosticSource.ts +5 -5
  550. package/src/otbr-rest/OtbrRestProbe.ts +12 -47
  551. package/src/otbr-rest/caseNormalizer.ts +17 -0
  552. package/src/otbr-rest/parseHexBytes.ts +47 -0
  553. package/src/otbr-rest/translation.ts +24 -22
  554. package/src/selection/selectBr.ts +26 -13
  555. package/src/selection/withExtPanIdLock.ts +1 -1
  556. package/src/tlv/BasicTlvCodec.ts +17 -15
  557. package/src/tlv/NetworkDiagnosticTlv.ts +3 -2
  558. package/src/tlv/TypeListTlv.ts +4 -4
  559. package/src/tlv/diag/ChildIpv6AddressList.ts +8 -5
  560. package/src/tlv/diag/ChildTable.ts +10 -9
  561. package/src/tlv/diag/Connectivity.ts +16 -16
  562. package/src/tlv/diag/Ipv6AddressList.ts +9 -8
  563. package/src/tlv/diag/LeaderData.ts +11 -10
  564. package/src/tlv/diag/MacCounters.ts +15 -14
  565. package/src/tlv/diag/MleCounters.ts +21 -20
  566. package/src/tlv/diag/Mode.ts +7 -5
  567. package/src/tlv/diag/NetworkData.ts +31 -26
  568. package/src/tlv/diag/Primitives.ts +42 -36
  569. package/src/tlv/diag/Route64.ts +11 -10
  570. package/src/tlv/diag/RouterNeighbor.ts +16 -13
  571. package/src/tlv/diag/Timeout.ts +7 -6
  572. package/src/tlv/diag/VendorInfo.ts +19 -18
  573. package/src/tlv/meshcop/Ip6AddressTlv.ts +9 -6
  574. package/src/tlv/meshcop/UdpEncapsulationTlv.ts +13 -11
  575. package/src/util/meshLocalAddr.ts +10 -8
@@ -21,6 +21,7 @@ __export(HelloVerifyRequestMessage_exports, {
21
21
  HelloVerifyRequestMessage: () => HelloVerifyRequestMessage
22
22
  });
23
23
  module.exports = __toCommonJS(HelloVerifyRequestMessage_exports);
24
+ var import_general = require("@matter/general");
24
25
  var import_DtlsChannel = require("../channel/DtlsChannel.js");
25
26
  /**
26
27
  * @license
@@ -29,7 +30,8 @@ var import_DtlsChannel = require("../channel/DtlsChannel.js");
29
30
  */
30
31
  const MAX_COOKIE_LEN = 255;
31
32
  const HelloVerifyRequestMessage = {
32
- parse(body) {
33
+ parse(rawBody) {
34
+ const body = import_general.Bytes.of(rawBody);
33
35
  if (body.length < 2 + 1) {
34
36
  throw new import_DtlsChannel.DtlsError(`HelloVerifyRequest body truncated: have ${body.length}, need >= 3`);
35
37
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/HelloVerifyRequestMessage.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBA,yBAA0B;AAvB1B;AAAA;AAAA;AAAA;AAAA;AAyBA,MAAM,iBAAiB;AAEhB,MAAM,4BAA4B;AAAA,EACrC,MAAM,MAA0C;AAC5C,QAAI,KAAK,SAAS,IAAI,GAAG;AACrB,YAAM,IAAI,6BAAU,2CAA2C,KAAK,MAAM,aAAa;AAAA,IAC3F;AAEA,UAAM,YAAY,KAAK,CAAC;AACxB,QAAI,YAAY,gBAAgB;AAC5B,YAAM,IAAI,6BAAU,oCAAoC,SAAS,YAAY,cAAc,EAAE;AAAA,IACjG;AACA,UAAM,cAAc,IAAI,IAAI;AAC5B,QAAI,KAAK,WAAW,aAAa;AAC7B,YAAM,IAAI;AAAA,QACN,kCAAkC,KAAK,MAAM,iCAAiC,SAAS,cAAc,WAAW;AAAA,MACpH;AAAA,IACJ;AAEA,WAAO,EAAE,QAAQ,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;AAAA,EAClD;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBA,qBAAsB;AACtB,yBAA0B;AAxB1B;AAAA;AAAA;AAAA;AAAA;AA0BA,MAAM,iBAAiB;AAEhB,MAAM,4BAA4B;AAAA,EACrC,MAAM,SAAmC;AACrC,UAAM,OAAO,qBAAM,GAAG,OAAO;AAC7B,QAAI,KAAK,SAAS,IAAI,GAAG;AACrB,YAAM,IAAI,6BAAU,2CAA2C,KAAK,MAAM,aAAa;AAAA,IAC3F;AAEA,UAAM,YAAY,KAAK,CAAC;AACxB,QAAI,YAAY,gBAAgB;AAC5B,YAAM,IAAI,6BAAU,oCAAoC,SAAS,YAAY,cAAc,EAAE;AAAA,IACjG;AACA,UAAM,cAAc,IAAI,IAAI;AAC5B,QAAI,KAAK,WAAW,aAAa;AAC7B,YAAM,IAAI;AAAA,QACN,kCAAkC,KAAK,MAAM,iCAAiC,SAAS,cAAc,WAAW;AAAA,MACpH;AAAA,IACJ;AAEA,WAAO,EAAE,QAAQ,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;AAAA,EAClD;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,12 +3,13 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Bytes } from "@matter/general";
6
7
  /**
7
8
  * ServerHelloDone body parser (RFC 5246 §7.4.5). The body is empty; this
8
9
  * exists only so the state machine has a uniform per-message entry point and
9
10
  * a single place to fail loudly if a future BR ever sends payload bytes here.
10
11
  */
11
12
  export declare const ServerHelloDoneMessage: {
12
- parse(body: Uint8Array): void;
13
+ parse(body: Bytes): void;
13
14
  };
14
15
  //# sourceMappingURL=ServerHelloDoneMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerHelloDoneMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerHelloDoneMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;IAC/B,KAAK,OAAO,UAAU,GAAG,IAAI;CAKvB,CAAC"}
1
+ {"version":3,"file":"ServerHelloDoneMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerHelloDoneMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGxC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;IAC/B,KAAK,OAAO,KAAK,GAAG,IAAI;CAMlB,CAAC"}
@@ -29,8 +29,9 @@ var import_DtlsChannel = require("../channel/DtlsChannel.js");
29
29
  */
30
30
  const ServerHelloDoneMessage = {
31
31
  parse(body) {
32
- if (body.length !== 0) {
33
- throw new import_DtlsChannel.DtlsError(`ServerHelloDone body must be empty, got ${body.length} bytes`);
32
+ const length = body.byteLength;
33
+ if (length !== 0) {
34
+ throw new import_DtlsChannel.DtlsError(`ServerHelloDone body must be empty, got ${length} bytes`);
34
35
  }
35
36
  }
36
37
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/ServerHelloDoneMessage.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAA0B;AAN1B;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,yBAAyB;AAAA,EAClC,MAAM,MAAwB;AAC1B,QAAI,KAAK,WAAW,GAAG;AACnB,YAAM,IAAI,6BAAU,2CAA2C,KAAK,MAAM,QAAQ;AAAA,IACtF;AAAA,EACJ;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,yBAA0B;AAP1B;AAAA;AAAA;AAAA;AAAA;AAcO,MAAM,yBAAyB;AAAA,EAClC,MAAM,MAAmB;AACrB,UAAM,SAAS,KAAK;AACpB,QAAI,WAAW,GAAG;AACd,YAAM,IAAI,6BAAU,2CAA2C,MAAM,QAAQ;AAAA,IACjF;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,13 +3,14 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Bytes } from "@matter/general";
6
7
  export interface ParsedServerHello {
7
8
  /** Server's 32-byte random — feeds the TLS PRF. */
8
- serverRandom: Uint8Array;
9
+ serverRandom: Bytes;
9
10
  /** Server's `ecjpake_kkpp` extension data (round-1 ECJPAKEKeyKPPairList). */
10
- ecjpakeKkpp: Uint8Array;
11
+ ecjpakeKkpp: Bytes;
11
12
  }
12
13
  export declare const ServerHelloMessage: {
13
- parse(body: Uint8Array): ParsedServerHello;
14
+ parse(rawBody: Bytes): ParsedServerHello;
14
15
  };
15
16
  //# sourceMappingURL=ServerHelloMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerHelloMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerHelloMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwCH,MAAM,WAAW,iBAAiB;IAC9B,mDAAmD;IACnD,YAAY,EAAE,UAAU,CAAC;IACzB,6EAA6E;IAC7E,WAAW,EAAE,UAAU,CAAC;CAC3B;AAED,eAAO,MAAM,kBAAkB;IAC3B,KAAK,OAAO,UAAU,GAAG,iBAAiB;CA4EpC,CAAC"}
1
+ {"version":3,"file":"ServerHelloMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerHelloMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAuCxC,MAAM,WAAW,iBAAiB;IAC9B,mDAAmD;IACnD,YAAY,EAAE,KAAK,CAAC;IACpB,6EAA6E;IAC7E,WAAW,EAAE,KAAK,CAAC;CACtB;AAED,eAAO,MAAM,kBAAkB;IAC3B,KAAK,UAAU,KAAK,GAAG,iBAAiB;CA6ElC,CAAC"}
@@ -21,6 +21,7 @@ __export(ServerHelloMessage_exports, {
21
21
  ServerHelloMessage: () => ServerHelloMessage
22
22
  });
23
23
  module.exports = __toCommonJS(ServerHelloMessage_exports);
24
+ var import_general = require("@matter/general");
24
25
  var import_DtlsChannel = require("../channel/DtlsChannel.js");
25
26
  var import_ClientHelloMessage = require("./ClientHelloMessage.js");
26
27
  /**
@@ -36,7 +37,8 @@ function readUint16BE(buf, offset) {
36
37
  return buf[offset] << 8 | buf[offset + 1];
37
38
  }
38
39
  const ServerHelloMessage = {
39
- parse(body) {
40
+ parse(rawBody) {
41
+ const body = import_general.Bytes.of(rawBody);
40
42
  if (body.length < 2 + RANDOM_LEN + 1 + 2 + 1) {
41
43
  throw new import_DtlsChannel.DtlsError(`ServerHello body truncated: have ${body.length}`);
42
44
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/ServerHelloMessage.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import type { Bytes } from "@matter/general";
6
7
  import { type EcJpakeKeyKP } from "../ecjpake/EcJpakeRound.js";
7
8
  /**
8
9
  * ServerKeyExchange body parser for `TLS_ECJPAKE_WITH_AES_128_CCM_8`
@@ -19,6 +20,6 @@ import { type EcJpakeKeyKP } from "../ecjpake/EcJpakeRound.js";
19
20
  * with `expectEcParameters: false`.
20
21
  */
21
22
  export declare const ServerKeyExchangeMessage: {
22
- parse(body: Uint8Array): EcJpakeKeyKP;
23
+ parse(body: Bytes): EcJpakeKeyKP;
23
24
  };
24
25
  //# sourceMappingURL=ServerKeyExchangeMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerKeyExchangeMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerKeyExchangeMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,4BAA4B,CAAC;AAE7E;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,wBAAwB;IACjC,KAAK,OAAO,UAAU,GAAG,YAAY;CAM/B,CAAC"}
1
+ {"version":3,"file":"ServerKeyExchangeMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/ServerKeyExchangeMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,4BAA4B,CAAC;AAE7E;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,wBAAwB;IACjC,KAAK,OAAO,KAAK,GAAG,YAAY;CAM1B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/ServerKeyExchangeMessage.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,0BAAgD;AANhD;AAAA;AAAA;AAAA;AAAA;AAuBO,MAAM,2BAA2B;AAAA,EACpC,MAAM,MAAgC;AAIlC,WAAO,iCAAa,YAAY,MAAM,EAAE,oBAAoB,KAAK,CAAC;AAAA,EACtE;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,0BAAgD;AAPhD;AAAA;AAAA;AAAA;AAAA;AAwBO,MAAM,2BAA2B;AAAA,EACpC,MAAM,MAA2B;AAI7B,WAAO,iCAAa,YAAY,MAAM,EAAE,oBAAoB,KAAK,CAAC;AAAA,EACtE;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Bytes, Crypto } from "@matter/general";
6
7
  /**
7
8
  * Running SHA-256 over the DTLS 1.2 handshake transcript that feeds the
8
9
  * Finished MAC (RFC 5246 §7.4.9). The transcript covers every handshake
@@ -21,16 +22,17 @@
21
22
  */
22
23
  export declare class HandshakeTranscript {
23
24
  #private;
25
+ constructor(crypto: Crypto);
24
26
  /**
25
27
  * Append a handshake message in DTLS 1.2 form
26
28
  * (`type(1) || length(3) || message_seq(2) || fragment_offset(3) || fragment_length(3) || body`).
27
29
  */
28
- appendHandshakeMessage(messageBytes: Uint8Array): void;
30
+ appendHandshakeMessage(messageBytes: Bytes): void;
29
31
  /**
30
- * Snapshot the running SHA-256 digest without disturbing the transcript so
31
- * the same accumulator can compute Finished for both peers and continue
32
- * absorbing later messages. Backed by `Hash.copy()` (Node.js >= 13.10).
32
+ * SHA-256 over the messages appended so far. Non-mutating: the buffer keeps
33
+ * growing, so the same transcript yields Finished for both peers and keeps
34
+ * absorbing later messages.
33
35
  */
34
- digest(): Uint8Array;
36
+ digest(): Promise<Bytes>;
35
37
  }
36
38
  //# sourceMappingURL=HandshakeTranscript.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HandshakeTranscript.d.ts","sourceRoot":"","sources":["../../../../src/dtls/prf/HandshakeTranscript.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,mBAAmB;;IAG5B;;;OAGG;IACH,sBAAsB,CAAC,YAAY,EAAE,UAAU,GAAG,IAAI,CAErD;IAED;;;;OAIG;IACH,MAAM,IAAI,UAAU,CAOnB;CACJ"}
1
+ {"version":3,"file":"HandshakeTranscript.d.ts","sourceRoot":"","sources":["../../../../src/dtls/prf/HandshakeTranscript.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAC;AAI/D;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,mBAAmB;;IAI5B,YAAY,MAAM,EAAE,MAAM,EAEzB;IAED;;;OAGG;IACH,sBAAsB,CAAC,YAAY,EAAE,KAAK,GAAG,IAAI,CAMhD;IAED;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAM7B;CACJ"}
@@ -22,7 +22,6 @@ __export(HandshakeTranscript_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(HandshakeTranscript_exports);
24
24
  var import_general = require("@matter/general");
25
- var import_node_crypto = require("node:crypto");
26
25
  /**
27
26
  * @license
28
27
  * Copyright 2022-2026 Matter.js Authors
@@ -30,22 +29,28 @@ var import_node_crypto = require("node:crypto");
30
29
  */
31
30
  const SHA256_LEN = 32;
32
31
  class HandshakeTranscript {
33
- #hash = (0, import_node_crypto.createHash)("sha256");
32
+ #crypto;
33
+ #chunks = new Array();
34
+ constructor(crypto) {
35
+ this.#crypto = crypto;
36
+ }
34
37
  /**
35
38
  * Append a handshake message in DTLS 1.2 form
36
39
  * (`type(1) || length(3) || message_seq(2) || fragment_offset(3) || fragment_length(3) || body`).
37
40
  */
38
41
  appendHandshakeMessage(messageBytes) {
39
- this.#hash.update(messageBytes);
42
+ const bytes = import_general.Bytes.of(messageBytes);
43
+ if (bytes.length > 0) {
44
+ this.#chunks.push(new Uint8Array(bytes));
45
+ }
40
46
  }
41
47
  /**
42
- * Snapshot the running SHA-256 digest without disturbing the transcript so
43
- * the same accumulator can compute Finished for both peers and continue
44
- * absorbing later messages. Backed by `Hash.copy()` (Node.js >= 13.10).
48
+ * SHA-256 over the messages appended so far. Non-mutating: the buffer keeps
49
+ * growing, so the same transcript yields Finished for both peers and keeps
50
+ * absorbing later messages.
45
51
  */
46
- digest() {
47
- const snapshot = this.#hash.copy();
48
- const out = new Uint8Array(snapshot.digest());
52
+ async digest() {
53
+ const out = import_general.Bytes.of(await this.#crypto.computeHash(this.#chunks));
49
54
  if (out.length !== SHA256_LEN) {
50
55
  throw new import_general.InternalError(`HandshakeTranscript digest length ${out.length} != ${SHA256_LEN}`);
51
56
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/prf/HandshakeTranscript.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA8B;AAC9B,yBAAsC;AAPtC;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,aAAa;AAkBZ,MAAM,oBAAoB;AAAA,EAC7B,YAAc,+BAAW,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjC,uBAAuB,cAAgC;AACnD,SAAK,MAAM,OAAO,YAAY;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAqB;AACjB,UAAM,WAAW,KAAK,MAAM,KAAK;AACjC,UAAM,MAAM,IAAI,WAAW,SAAS,OAAO,CAAC;AAC5C,QAAI,IAAI,WAAW,YAAY;AAC3B,YAAM,IAAI,6BAAc,qCAAqC,IAAI,MAAM,OAAO,UAAU,EAAE;AAAA,IAC9F;AACA,WAAO;AAAA,EACX;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA6C;AAN7C;AAAA;AAAA;AAAA;AAAA;AAQA,MAAM,aAAa;AAkBZ,MAAM,oBAAoB;AAAA,EACpB;AAAA,EACA,UAAU,IAAI,MAAkB;AAAA,EAEzC,YAAY,QAAgB;AACxB,SAAK,UAAU;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,uBAAuB,cAA2B;AAC9C,UAAM,QAAQ,qBAAM,GAAG,YAAY;AACnC,QAAI,MAAM,SAAS,GAAG;AAElB,WAAK,QAAQ,KAAK,IAAI,WAAW,KAAK,CAAC;AAAA,IAC3C;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,SAAyB;AAC3B,UAAM,MAAM,qBAAM,GAAG,MAAM,KAAK,QAAQ,YAAY,KAAK,OAAO,CAAC;AACjE,QAAI,IAAI,WAAW,YAAY;AAC3B,YAAM,IAAI,6BAAc,qCAAqC,IAAI,MAAM,OAAO,UAAU,EAAE;AAAA,IAC9F;AACA,WAAO;AAAA,EACX;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Bytes, Crypto } from "@matter/general";
6
7
  /**
7
8
  * TLS 1.2 pseudo-random function (RFC 5246 §5) using HMAC-SHA256 — the only PRF
8
9
  * permitted for `TLS_ECJPAKE_WITH_AES_128_CCM_8` (RFC 6655 §3). Mirrors mbedTLS
@@ -22,31 +23,31 @@ export declare namespace TlsPrf {
22
23
  * concatenated with the seed (no length prefix). The label is ASCII per
23
24
  * RFC 5246; we encode it as UTF-8 which coincides for ASCII-only input.
24
25
  */
25
- function compute(args: {
26
- secret: Uint8Array;
26
+ function compute(crypto: Crypto, args: {
27
+ secret: Bytes;
27
28
  label: string;
28
- seed: Uint8Array;
29
+ seed: Bytes;
29
30
  outputLength: number;
30
- }): Uint8Array;
31
+ }): Promise<Bytes>;
31
32
  /**
32
33
  * `master_secret = PRF(pre_master_secret, "master secret",
33
34
  * ClientHello.random || ServerHello.random)[0..47]`
34
35
  * (RFC 5246 §8.1).
35
36
  */
36
- function masterSecret(args: {
37
- premasterSecret: Uint8Array;
38
- clientRandom: Uint8Array;
39
- serverRandom: Uint8Array;
40
- }): Uint8Array;
37
+ function masterSecret(crypto: Crypto, args: {
38
+ premasterSecret: Bytes;
39
+ clientRandom: Bytes;
40
+ serverRandom: Bytes;
41
+ }): Promise<Bytes>;
41
42
  /**
42
43
  * Slices of the 40-byte key block for `TLS_ECJPAKE_WITH_AES_128_CCM_8`
43
44
  * (AEAD, no MAC keys; RFC 6655 §3, RFC 5246 §6.3).
44
45
  */
45
46
  interface KeyBlock {
46
- clientWriteKey: Uint8Array;
47
- serverWriteKey: Uint8Array;
48
- clientWriteIv: Uint8Array;
49
- serverWriteIv: Uint8Array;
47
+ clientWriteKey: Bytes;
48
+ serverWriteKey: Bytes;
49
+ clientWriteIv: Bytes;
50
+ serverWriteIv: Bytes;
50
51
  }
51
52
  /**
52
53
  * `key_block = PRF(master_secret, "key expansion",
@@ -59,11 +60,11 @@ export declare namespace TlsPrf {
59
60
  * `client_write_key (16) || server_write_key (16) ||
60
61
  * client_write_IV (4) || server_write_IV (4)`.
61
62
  */
62
- function keyBlock(args: {
63
- masterSecret: Uint8Array;
64
- clientRandom: Uint8Array;
65
- serverRandom: Uint8Array;
66
- }): KeyBlock;
63
+ function keyBlock(crypto: Crypto, args: {
64
+ masterSecret: Bytes;
65
+ clientRandom: Bytes;
66
+ serverRandom: Bytes;
67
+ }): Promise<KeyBlock>;
67
68
  /**
68
69
  * Finished `verify_data` (RFC 5246 §7.4.9):
69
70
  *
@@ -73,10 +74,10 @@ export declare namespace TlsPrf {
73
74
  * with `finished_label = "client finished"` for the client-sent Finished
74
75
  * and `"server finished"` for the server-sent one.
75
76
  */
76
- function verifyData(args: {
77
- masterSecret: Uint8Array;
77
+ function verifyData(crypto: Crypto, args: {
78
+ masterSecret: Bytes;
78
79
  role: "client" | "server";
79
- transcriptDigest: Uint8Array;
80
- }): Uint8Array;
80
+ transcriptDigest: Bytes;
81
+ }): Promise<Bytes>;
81
82
  }
82
83
  //# sourceMappingURL=TlsPrf.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TlsPrf.d.ts","sourceRoot":"","sources":["../../../../src/dtls/prf/TlsPrf.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqDH;;;;;;GAMG;AACH,yBAAiB,MAAM,CAAC,CAAC;IACrB;;;;;;;;;;OAUG;IACH,SAAgB,OAAO,CAAC,IAAI,EAAE;QAC1B,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,UAAU,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;KACxB,GAAG,UAAU,CAOb;IAED;;;;OAIG;IACH,SAAgB,YAAY,CAAC,IAAI,EAAE;QAC/B,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,EAAE,UAAU,CAAC;QACzB,YAAY,EAAE,UAAU,CAAC;KAC5B,GAAG,UAAU,CAQb;IAED;;;OAGG;IACH,UAAiB,QAAQ;QACrB,cAAc,EAAE,UAAU,CAAC;QAC3B,cAAc,EAAE,UAAU,CAAC;QAC3B,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,UAAU,CAAC;KAC7B;IAED;;;;;;;;;;OAUG;IACH,SAAgB,QAAQ,CAAC,IAAI,EAAE;QAC3B,YAAY,EAAE,UAAU,CAAC;QACzB,YAAY,EAAE,UAAU,CAAC;QACzB,YAAY,EAAE,UAAU,CAAC;KAC5B,GAAG,QAAQ,CAeX;IAED;;;;;;;;OAQG;IACH,SAAgB,UAAU,CAAC,IAAI,EAAE;QAC7B,YAAY,EAAE,UAAU,CAAC;QACzB,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAC1B,gBAAgB,EAAE,UAAU,CAAC;KAChC,GAAG,UAAU,CAMb;CACJ"}
1
+ {"version":3,"file":"TlsPrf.d.ts","sourceRoot":"","sources":["../../../../src/dtls/prf/TlsPrf.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAC;AA6C/D;;;;;;GAMG;AACH,yBAAiB,MAAM,CAAC,CAAC;IACrB;;;;;;;;;;OAUG;IACH,SAAsB,OAAO,CACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACF,MAAM,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,KAAK,CAAC;QACZ,YAAY,EAAE,MAAM,CAAC;KACxB,GACF,OAAO,CAAC,KAAK,CAAC,CAQhB;IAED;;;;OAIG;IACH,SAAsB,YAAY,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACF,eAAe,EAAE,KAAK,CAAC;QACvB,YAAY,EAAE,KAAK,CAAC;QACpB,YAAY,EAAE,KAAK,CAAC;KACvB,GACF,OAAO,CAAC,KAAK,CAAC,CAahB;IAED;;;OAGG;IACH,UAAiB,QAAQ;QACrB,cAAc,EAAE,KAAK,CAAC;QACtB,cAAc,EAAE,KAAK,CAAC;QACtB,aAAa,EAAE,KAAK,CAAC;QACrB,aAAa,EAAE,KAAK,CAAC;KACxB;IAED;;;;;;;;;;OAUG;IACH,SAAsB,QAAQ,CAC1B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACF,YAAY,EAAE,KAAK,CAAC;QACpB,YAAY,EAAE,KAAK,CAAC;QACpB,YAAY,EAAE,KAAK,CAAC;KACvB,GACF,OAAO,CAAC,QAAQ,CAAC,CAiBnB;IAED;;;;;;;;OAQG;IACH,SAAsB,UAAU,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACF,YAAY,EAAE,KAAK,CAAC;QACpB,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAC1B,gBAAgB,EAAE,KAAK,CAAC;KAC3B,GACF,OAAO,CAAC,KAAK,CAAC,CAMhB;CACJ"}
@@ -22,7 +22,6 @@ __export(TlsPrf_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(TlsPrf_exports);
24
24
  var import_general = require("@matter/general");
25
- var import_node_crypto = require("node:crypto");
26
25
  /**
27
26
  * @license
28
27
  * Copyright 2022-2026 Matter.js Authors
@@ -36,17 +35,13 @@ const IV_LEN = 4;
36
35
  const KEY_BLOCK_LEN = KEY_LEN * 2 + IV_LEN * 2;
37
36
  const VERIFY_DATA_LEN = 12;
38
37
  const ASCII_ENCODER = new TextEncoder();
39
- function hmacSha256(key, data) {
40
- const hmac = (0, import_node_crypto.createHmac)("sha256", key);
41
- hmac.update(data);
42
- return new Uint8Array(hmac.digest());
43
- }
44
38
  function expectLength(name, value, expected) {
45
- if (value.length !== expected) {
46
- throw new import_general.InternalError(`TlsPrf ${name} must be ${expected} bytes, got ${value.length}`);
39
+ const length = value.byteLength;
40
+ if (length !== expected) {
41
+ throw new import_general.InternalError(`TlsPrf ${name} must be ${expected} bytes, got ${length}`);
47
42
  }
48
43
  }
49
- function pSha256(secret, seed, outputLength) {
44
+ async function pSha256(crypto, secret, seed, outputLength) {
50
45
  if (outputLength < 0) {
51
46
  throw new import_general.InternalError(`TlsPrf outputLength must be non-negative, got ${outputLength}`);
52
47
  }
@@ -54,53 +49,61 @@ function pSha256(secret, seed, outputLength) {
54
49
  if (outputLength === 0) {
55
50
  return out;
56
51
  }
57
- let a = hmacSha256(secret, seed);
58
- const block = new Uint8Array(SHA256_LEN + seed.length);
59
- block.set(seed, SHA256_LEN);
52
+ const seedBytes = import_general.Bytes.of(seed);
53
+ let a = import_general.Bytes.of(await crypto.signHmac(secret, seedBytes));
54
+ const block = new Uint8Array(SHA256_LEN + seedBytes.length);
55
+ block.set(seedBytes, SHA256_LEN);
60
56
  let written = 0;
61
57
  while (written < outputLength) {
62
58
  block.set(a, 0);
63
- const next = hmacSha256(secret, block);
64
- const remaining = outputLength - written;
65
- const copyLen = Math.min(SHA256_LEN, remaining);
59
+ const next = import_general.Bytes.of(await crypto.signHmac(secret, block));
60
+ const copyLen = Math.min(SHA256_LEN, outputLength - written);
66
61
  out.set(next.subarray(0, copyLen), written);
67
62
  written += copyLen;
68
63
  if (written < outputLength) {
69
- a = hmacSha256(secret, a);
64
+ a = import_general.Bytes.of(await crypto.signHmac(secret, a));
70
65
  }
71
66
  }
72
67
  return out;
73
68
  }
74
69
  var TlsPrf;
75
70
  ((TlsPrf2) => {
76
- function compute(args) {
71
+ async function compute(crypto, args) {
77
72
  const { secret, label, seed, outputLength } = args;
78
73
  const labelBytes = ASCII_ENCODER.encode(label);
79
- const combined = new Uint8Array(labelBytes.length + seed.length);
74
+ const seedBytes = import_general.Bytes.of(seed);
75
+ const combined = new Uint8Array(labelBytes.length + seedBytes.length);
80
76
  combined.set(labelBytes, 0);
81
- combined.set(seed, labelBytes.length);
82
- return pSha256(secret, combined, outputLength);
77
+ combined.set(seedBytes, labelBytes.length);
78
+ return pSha256(crypto, secret, combined, outputLength);
83
79
  }
84
80
  TlsPrf2.compute = compute;
85
- function masterSecret(args) {
81
+ async function masterSecret(crypto, args) {
86
82
  const { premasterSecret, clientRandom, serverRandom } = args;
87
83
  expectLength("clientRandom", clientRandom, RANDOM_LEN);
88
84
  expectLength("serverRandom", serverRandom, RANDOM_LEN);
89
85
  const seed = new Uint8Array(RANDOM_LEN * 2);
90
- seed.set(clientRandom, 0);
91
- seed.set(serverRandom, RANDOM_LEN);
92
- return compute({ secret: premasterSecret, label: "master secret", seed, outputLength: MASTER_SECRET_LEN });
86
+ seed.set(import_general.Bytes.of(clientRandom), 0);
87
+ seed.set(import_general.Bytes.of(serverRandom), RANDOM_LEN);
88
+ return compute(crypto, {
89
+ secret: premasterSecret,
90
+ label: "master secret",
91
+ seed,
92
+ outputLength: MASTER_SECRET_LEN
93
+ });
93
94
  }
94
95
  TlsPrf2.masterSecret = masterSecret;
95
- function keyBlock(args) {
96
+ async function keyBlock(crypto, args) {
96
97
  const { masterSecret: ms, clientRandom, serverRandom } = args;
97
98
  expectLength("masterSecret", ms, MASTER_SECRET_LEN);
98
99
  expectLength("clientRandom", clientRandom, RANDOM_LEN);
99
100
  expectLength("serverRandom", serverRandom, RANDOM_LEN);
100
101
  const seed = new Uint8Array(RANDOM_LEN * 2);
101
- seed.set(serverRandom, 0);
102
- seed.set(clientRandom, RANDOM_LEN);
103
- const block = compute({ secret: ms, label: "key expansion", seed, outputLength: KEY_BLOCK_LEN });
102
+ seed.set(import_general.Bytes.of(serverRandom), 0);
103
+ seed.set(import_general.Bytes.of(clientRandom), RANDOM_LEN);
104
+ const block = import_general.Bytes.of(
105
+ await compute(crypto, { secret: ms, label: "key expansion", seed, outputLength: KEY_BLOCK_LEN })
106
+ );
104
107
  return {
105
108
  clientWriteKey: block.slice(0, KEY_LEN),
106
109
  serverWriteKey: block.slice(KEY_LEN, KEY_LEN * 2),
@@ -109,12 +112,12 @@ var TlsPrf;
109
112
  };
110
113
  }
111
114
  TlsPrf2.keyBlock = keyBlock;
112
- function verifyData(args) {
115
+ async function verifyData(crypto, args) {
113
116
  const { masterSecret: ms, role, transcriptDigest } = args;
114
117
  expectLength("masterSecret", ms, MASTER_SECRET_LEN);
115
118
  expectLength("transcriptDigest", transcriptDigest, SHA256_LEN);
116
119
  const label = role === "client" ? "client finished" : "server finished";
117
- return compute({ secret: ms, label, seed: transcriptDigest, outputLength: VERIFY_DATA_LEN });
120
+ return compute(crypto, { secret: ms, label, seed: transcriptDigest, outputLength: VERIFY_DATA_LEN });
118
121
  }
119
122
  TlsPrf2.verifyData = verifyData;
120
123
  })(TlsPrf || (TlsPrf = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/prf/TlsPrf.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["TlsPrf"]
6
6
  }
@@ -3,30 +3,31 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Bytes, Crypto } from "@matter/general";
6
7
  /**
7
8
  * AES-128-CCM with an 8-octet authentication tag, the AEAD primitive used by the
8
9
  * `TLS_ECJPAKE_WITH_AES_128_CCM_8` cipher suite (RFC 6655 §3, RFC 3610).
9
10
  *
10
- * Wraps Node's `aes-128-ccm` with a fixed 8-byte tag length and returns
11
- * `ciphertext || tag` to match the wire layout expected by the DTLS record layer.
11
+ * Delegates to the matter.js {@link Crypto} abstraction with a fixed 8-byte tag length
12
+ * and returns `ciphertext || tag` to match the wire layout expected by the DTLS record layer.
12
13
  *
13
14
  * The 12-byte nonce length implies CCM L=3 (15 - 12), giving a 2^24 byte payload
14
15
  * limit per record — well above the DTLS 16 KiB record cap.
15
16
  */
16
17
  export declare namespace AesCcm8 {
17
18
  interface EncryptArgs {
18
- key: Uint8Array;
19
- nonce: Uint8Array;
20
- aad: Uint8Array;
21
- plaintext: Uint8Array;
19
+ key: Bytes;
20
+ nonce: Bytes;
21
+ aad: Bytes;
22
+ plaintext: Bytes;
22
23
  }
23
24
  interface DecryptArgs {
24
- key: Uint8Array;
25
- nonce: Uint8Array;
26
- aad: Uint8Array;
27
- ciphertextWithTag: Uint8Array;
25
+ key: Bytes;
26
+ nonce: Bytes;
27
+ aad: Bytes;
28
+ ciphertextWithTag: Bytes;
28
29
  }
29
- function encrypt({ key, nonce, aad, plaintext }: EncryptArgs): Uint8Array;
30
- function decrypt({ key, nonce, aad, ciphertextWithTag }: DecryptArgs): Uint8Array;
30
+ function encrypt(crypto: Crypto, { key, nonce, aad, plaintext }: EncryptArgs): Promise<Bytes>;
31
+ function decrypt(crypto: Crypto, { key, nonce, aad, ciphertextWithTag }: DecryptArgs): Promise<Bytes>;
31
32
  }
32
33
  //# sourceMappingURL=AesCcm8.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AesCcm8.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/AesCcm8.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH;;;;;;;;;GASG;AACH,yBAAiB,OAAO,CAAC,CAAC;IACtB,UAAiB,WAAW;QACxB,GAAG,EAAE,UAAU,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,GAAG,EAAE,UAAU,CAAC;QAChB,SAAS,EAAE,UAAU,CAAC;KACzB;IAED,UAAiB,WAAW;QACxB,GAAG,EAAE,UAAU,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,GAAG,EAAE,UAAU,CAAC;QAChB,iBAAiB,EAAE,UAAU,CAAC;KACjC;IAED,SAAgB,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,WAAW,GAAG,UAAU,CAiB/E;IAED,SAAgB,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,EAAE,WAAW,GAAG,UAAU,CAwBvF;CACJ"}
1
+ {"version":3,"file":"AesCcm8.d.ts","sourceRoot":"","sources":["../../../../src/dtls/record/AesCcm8.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAC;AAM/D;;;;;;;;;GASG;AACH,yBAAiB,OAAO,CAAC,CAAC;IACtB,UAAiB,WAAW;QACxB,GAAG,EAAE,KAAK,CAAC;QACX,KAAK,EAAE,KAAK,CAAC;QACb,GAAG,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,KAAK,CAAC;KACpB;IAED,UAAiB,WAAW;QACxB,GAAG,EAAE,KAAK,CAAC;QACX,KAAK,EAAE,KAAK,CAAC;QACb,GAAG,EAAE,KAAK,CAAC;QACX,iBAAiB,EAAE,KAAK,CAAC;KAC5B;IAED,SAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAMzG;IAED,SAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAUjH;CACJ"}
@@ -22,7 +22,6 @@ __export(AesCcm8_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(AesCcm8_exports);
24
24
  var import_general = require("@matter/general");
25
- var import_node_crypto = require("node:crypto");
26
25
  var import_DtlsChannel = require("../channel/DtlsChannel.js");
27
26
  /**
28
27
  * @license
@@ -33,45 +32,24 @@ const KEY_LEN = 16;
33
32
  const TAG_LEN = 8;
34
33
  var AesCcm8;
35
34
  ((AesCcm82) => {
36
- function encrypt({ key, nonce, aad, plaintext }) {
37
- if (key.length !== KEY_LEN) {
38
- throw new import_general.InternalError(`AES-128-CCM-8 key must be ${KEY_LEN} bytes, got ${key.length}`);
35
+ async function encrypt(crypto, { key, nonce, aad, plaintext }) {
36
+ const keyBytes = import_general.Bytes.of(key);
37
+ if (keyBytes.length !== KEY_LEN) {
38
+ throw new import_general.InternalError(`AES-128-CCM-8 key must be ${KEY_LEN} bytes, got ${keyBytes.length}`);
39
39
  }
40
- const cipher = (0, import_node_crypto.createCipheriv)("aes-128-ccm", key, nonce, { authTagLength: TAG_LEN });
41
- cipher.setAAD(aad, { plaintextLength: plaintext.length });
42
- const body = cipher.update(plaintext);
43
- const tail = cipher.final();
44
- const tag = cipher.getAuthTag();
45
- const out = new Uint8Array(plaintext.length + TAG_LEN);
46
- out.set(body, 0);
47
- if (tail.length > 0) {
48
- out.set(tail, body.length);
49
- }
50
- out.set(tag, plaintext.length);
51
- return out;
40
+ return crypto.encrypt(keyBytes, plaintext, nonce, aad, TAG_LEN);
52
41
  }
53
42
  AesCcm82.encrypt = encrypt;
54
- function decrypt({ key, nonce, aad, ciphertextWithTag }) {
55
- if (key.length !== KEY_LEN) {
56
- throw new import_general.InternalError(`AES-128-CCM-8 key must be ${KEY_LEN} bytes, got ${key.length}`);
43
+ async function decrypt(crypto, { key, nonce, aad, ciphertextWithTag }) {
44
+ const keyBytes = import_general.Bytes.of(key);
45
+ if (keyBytes.length !== KEY_LEN) {
46
+ throw new import_general.InternalError(`AES-128-CCM-8 key must be ${KEY_LEN} bytes, got ${keyBytes.length}`);
57
47
  }
58
- if (ciphertextWithTag.length < TAG_LEN) {
48
+ const ciphertextBytes = import_general.Bytes.of(ciphertextWithTag);
49
+ if (ciphertextBytes.length < TAG_LEN) {
59
50
  throw new import_DtlsChannel.DtlsError(`AES-128-CCM-8 input shorter than ${TAG_LEN}-byte tag`);
60
51
  }
61
- const ctLen = ciphertextWithTag.length - TAG_LEN;
62
- const ct = ciphertextWithTag.subarray(0, ctLen);
63
- const tag = ciphertextWithTag.subarray(ctLen);
64
- const decipher = (0, import_node_crypto.createDecipheriv)("aes-128-ccm", key, nonce, { authTagLength: TAG_LEN });
65
- decipher.setAAD(aad, { plaintextLength: ctLen });
66
- decipher.setAuthTag(tag);
67
- const body = decipher.update(ct);
68
- const tail = decipher.final();
69
- const out = new Uint8Array(ctLen);
70
- out.set(body, 0);
71
- if (tail.length > 0) {
72
- out.set(tail, body.length);
73
- }
74
- return out;
52
+ return crypto.decrypt(keyBytes, ciphertextBytes, nonce, aad, TAG_LEN);
75
53
  }
76
54
  AesCcm82.decrypt = decrypt;
77
55
  })(AesCcm8 || (AesCcm8 = {}));