@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
@@ -49,15 +49,16 @@ var import_ServerKeyExchangeMessage = require("./ServerKeyExchangeMessage.js");
49
49
  const RANDOM_LEN = 32;
50
50
  function bigintFromBE(bytes) {
51
51
  let v = 0n;
52
- for (const byte of bytes) {
52
+ for (const byte of import_general.Bytes.of(bytes)) {
53
53
  v = v << 8n | BigInt(byte);
54
54
  }
55
55
  return v;
56
56
  }
57
57
  class DtlsClient {
58
58
  #config;
59
+ #crypto;
59
60
  #state = "initial";
60
- #transcript = new import_HandshakeTranscript.HandshakeTranscript();
61
+ #transcript;
61
62
  #handshakeMessageSeq = 0;
62
63
  #recordSeq = 0n;
63
64
  #lastFlight = new Array();
@@ -75,6 +76,8 @@ class DtlsClient {
75
76
  #cipherState;
76
77
  constructor(config) {
77
78
  this.#config = config;
79
+ this.#crypto = config.crypto;
80
+ this.#transcript = new import_HandshakeTranscript.HandshakeTranscript(this.#crypto);
78
81
  }
79
82
  state() {
80
83
  return this.#state;
@@ -91,11 +94,11 @@ class DtlsClient {
91
94
  return this.#cipherState;
92
95
  }
93
96
  /** Initial flight: ClientHello with empty cookie. */
94
- start() {
97
+ async start() {
95
98
  if (this.#state !== "initial") {
96
99
  throw new import_general.ImplementationError(`DtlsClient.start() called in state '${this.#state}'`);
97
100
  }
98
- const random = this.#config.random();
101
+ const random = import_general.Bytes.of(this.#config.random());
99
102
  if (random.length !== RANDOM_LEN) {
100
103
  throw new import_general.ImplementationError(
101
104
  `DtlsClient config.random() returned ${random.length} bytes, need ${RANDOM_LEN}`
@@ -106,34 +109,35 @@ class DtlsClient {
106
109
  const x2 = this.#config.ephemeralScalar();
107
110
  const v1 = this.#config.ephemeralScalar();
108
111
  const v2 = this.#config.ephemeralScalar();
109
- const round1 = import_EcJpakeRound.EcJpakeRound.buildRound1({ x1, x2, v1, v2, id: import_EcJpakeRound.ECJPAKE_ID_CLIENT });
112
+ const round1 = await import_EcJpakeRound.EcJpakeRound.buildRound1(this.#crypto, { x1, x2, v1, v2, id: import_EcJpakeRound.ECJPAKE_ID_CLIENT });
110
113
  this.#x2 = x2;
111
114
  this.#X1 = round1.kp1.X;
112
115
  this.#X2 = round1.kp2.X;
113
116
  this.#round1Bytes = import_EcJpakeRound.EcJpakeRound.serializeRound1(round1.kp1, round1.kp2);
114
- const records = this.#emitClientHello(new Uint8Array(0), false);
117
+ const records = await this.#emitClientHello(new Uint8Array(0), false);
115
118
  this.#state = "sent_first_clienthello";
116
119
  return { records };
117
120
  }
118
121
  /** Re-emit the last flight bytes-identically (RFC 6347 §4.2.4). */
119
- onRetransmit() {
122
+ async onRetransmit() {
120
123
  if (this.#state === "initial" || this.#state === "established" || this.#state === "failed") {
121
124
  throw new import_general.ImplementationError(`DtlsClient.onRetransmit() called in state '${this.#state}'`);
122
125
  }
123
126
  return { records: this.#lastFlight.map((r) => r.slice()) };
124
127
  }
125
- onDatagram(bytes) {
128
+ async onDatagram(bytes) {
126
129
  if (this.#state === "established" || this.#state === "failed" || this.#state === "initial") {
127
130
  throw new import_general.ImplementationError(`DtlsClient.onDatagram() called in state '${this.#state}'`);
128
131
  }
132
+ const buf = import_general.Bytes.of(bytes);
129
133
  try {
130
134
  switch (this.#state) {
131
135
  case "sent_first_clienthello":
132
- return this.#handleHelloVerifyOrServerHello(this.#splitDatagramIntoRecords(bytes));
136
+ return await this.#handleHelloVerifyOrServerHello(await this.#splitDatagramIntoRecords(buf));
133
137
  case "sent_clienthello_with_cookie":
134
- return this.#handleServerHelloFlight(this.#splitDatagramIntoRecords(bytes));
138
+ return await this.#handleServerHelloFlight(await this.#splitDatagramIntoRecords(buf));
135
139
  case "sent_clientkeyexchange_flight":
136
- return this.#handleServerFinishedFlightLazy(bytes);
140
+ return await this.#handleServerFinishedFlightLazy(buf);
137
141
  default:
138
142
  throw new import_general.InternalError(`DtlsClient: state ${this.#state} cannot consume a datagram`);
139
143
  }
@@ -144,12 +148,12 @@ class DtlsClient {
144
148
  }
145
149
  // -----------------------------------------------------------------------
146
150
  // Datagram / record splitting
147
- #splitDatagramIntoRecords(bytes) {
151
+ async #splitDatagramIntoRecords(bytes) {
148
152
  const out = new Array();
149
153
  let p = 0;
150
154
  while (p < bytes.length) {
151
- const { record, consumed } = import_DtlsRecord.DtlsRecord.decode(bytes.subarray(p), this.#cipherState);
152
- out.push(record);
155
+ const { record, consumed } = await import_DtlsRecord.DtlsRecord.decode(this.#crypto, bytes.subarray(p), this.#cipherState);
156
+ out.push({ ...record, fragment: import_general.Bytes.of(record.fragment) });
153
157
  p += consumed;
154
158
  }
155
159
  return out;
@@ -175,7 +179,7 @@ class DtlsClient {
175
179
  }
176
180
  // -----------------------------------------------------------------------
177
181
  // Outbound encoding helpers
178
- #emitClientHello(cookie, contributesToTranscript) {
182
+ async #emitClientHello(cookie, contributesToTranscript) {
179
183
  const body = import_ClientHelloMessage.ClientHelloMessage.build({
180
184
  random: this.#clientRandom,
181
185
  cookie,
@@ -195,12 +199,14 @@ class DtlsClient {
195
199
  })
196
200
  );
197
201
  }
198
- const record = import_DtlsRecord.DtlsRecord.encode({
199
- type: import_ContentType.ContentType.HANDSHAKE,
200
- epoch: 0,
201
- sequenceNumber: this.#recordSeq,
202
- fragment: handshake
203
- });
202
+ const record = import_general.Bytes.of(
203
+ await import_DtlsRecord.DtlsRecord.encode(this.#crypto, {
204
+ type: import_ContentType.ContentType.HANDSHAKE,
205
+ epoch: 0,
206
+ sequenceNumber: this.#recordSeq,
207
+ fragment: handshake
208
+ })
209
+ );
204
210
  this.#recordSeq += 1n;
205
211
  this.#handshakeMessageSeq += 1;
206
212
  this.#lastFlight = [record];
@@ -208,19 +214,19 @@ class DtlsClient {
208
214
  }
209
215
  // -----------------------------------------------------------------------
210
216
  // State handlers
211
- #handleHelloVerifyOrServerHello(records) {
217
+ async #handleHelloVerifyOrServerHello(records) {
212
218
  const messages = this.#extractHandshakeMessages(records);
213
219
  if (messages.length === 0) {
214
220
  throw new import_DtlsChannel.DtlsError("DtlsClient: expected handshake message, got none");
215
221
  }
216
222
  if (messages[0].msgType === import_HandshakeType.HandshakeType.HELLO_VERIFY_REQUEST) {
217
223
  const { cookie } = import_HelloVerifyRequestMessage.HelloVerifyRequestMessage.parse(messages[0].body);
218
- this.#transcript = new import_HandshakeTranscript.HandshakeTranscript();
219
- const records2 = this.#emitClientHello(cookie, true);
224
+ this.#transcript = new import_HandshakeTranscript.HandshakeTranscript(this.#crypto);
225
+ const records2 = await this.#emitClientHello(cookie, true);
220
226
  this.#state = "sent_clienthello_with_cookie";
221
227
  return { records: records2 };
222
228
  }
223
- this.#transcript = new import_HandshakeTranscript.HandshakeTranscript();
229
+ this.#transcript = new import_HandshakeTranscript.HandshakeTranscript(this.#crypto);
224
230
  const firstHelloBody = import_ClientHelloMessage.ClientHelloMessage.build({
225
231
  random: this.#clientRandom,
226
232
  cookie: new Uint8Array(0),
@@ -233,13 +239,13 @@ class DtlsClient {
233
239
  body: firstHelloBody
234
240
  })
235
241
  );
236
- return this.#consumeServerFlight(messages);
242
+ return await this.#consumeServerFlight(messages);
237
243
  }
238
- #handleServerHelloFlight(records) {
244
+ async #handleServerHelloFlight(records) {
239
245
  const messages = this.#extractHandshakeMessages(records);
240
- return this.#consumeServerFlight(messages);
246
+ return await this.#consumeServerFlight(messages);
241
247
  }
242
- #consumeServerFlight(messages) {
248
+ async #consumeServerFlight(messages) {
243
249
  if (messages.length < 3) {
244
250
  throw new import_DtlsChannel.DtlsError(
245
251
  `DtlsClient: server flight needs ServerHello+ServerKeyExchange+ServerHelloDone, got ${messages.length} message(s)`
@@ -265,14 +271,14 @@ class DtlsClient {
265
271
  const serverRound1 = import_EcJpakeRound.EcJpakeRound.parseRound1(parsedSh.ecjpakeKkpp);
266
272
  this.#X3 = serverRound1.kp1.X;
267
273
  this.#X4 = serverRound1.kp2.X;
268
- if (!import_SchnorrZkp.SchnorrZkp.verify({
274
+ if (!await import_SchnorrZkp.SchnorrZkp.verify(this.#crypto, {
269
275
  zkp: serverRound1.kp1.zkp,
270
276
  publicKey: serverRound1.kp1.X,
271
277
  id: import_EcJpakeRound.ECJPAKE_ID_SERVER
272
278
  })) {
273
279
  throw new import_DtlsChannel.DtlsError("DtlsClient: server round-1 KP1 ZKP verification failed");
274
280
  }
275
- if (!import_SchnorrZkp.SchnorrZkp.verify({
281
+ if (!await import_SchnorrZkp.SchnorrZkp.verify(this.#crypto, {
276
282
  zkp: serverRound1.kp2.zkp,
277
283
  publicKey: serverRound1.kp2.X,
278
284
  id: import_EcJpakeRound.ECJPAKE_ID_SERVER
@@ -285,7 +291,7 @@ class DtlsClient {
285
291
  Xp2: this.#X2,
286
292
  Xm1: this.#X3
287
293
  });
288
- if (!import_EcJpakeRound.EcJpakeRound.verifyRound2Zkp({
294
+ if (!await import_EcJpakeRound.EcJpakeRound.verifyRound2Zkp(this.#crypto, {
289
295
  kp: skeKp,
290
296
  generator: serverGenerator,
291
297
  peerId: import_EcJpakeRound.ECJPAKE_ID_SERVER
@@ -297,13 +303,13 @@ class DtlsClient {
297
303
  this.#transcript.appendHandshakeMessage(ske.transcriptBytes);
298
304
  this.#transcript.appendHandshakeMessage(shd.transcriptBytes);
299
305
  this.#state = "received_serverhello_flight";
300
- return this.#emitClientFlight(skeKp.X);
306
+ return await this.#emitClientFlight(skeKp.X);
301
307
  }
302
308
  /**
303
309
  * Build the client's CKE + CCS + Finished flight and arm the cipher state.
304
310
  * `serverRound2X` is the server's round-2 public point (`Xp` for the PMS derivation).
305
311
  */
306
- #emitClientFlight(serverRound2X) {
312
+ async #emitClientFlight(serverRound2X) {
307
313
  if (this.#X3 === void 0 || this.#X4 === void 0 || this.#serverRandom === void 0) {
308
314
  throw new import_general.InternalError("DtlsClient: emitClientFlight called before server flight was parsed");
309
315
  }
@@ -314,7 +320,7 @@ class DtlsClient {
314
320
  Xp2: this.#X4,
315
321
  Xm1: this.#X1
316
322
  });
317
- const clientRound2 = import_EcJpakeRound.EcJpakeRound.buildRound2({
323
+ const clientRound2 = await import_EcJpakeRound.EcJpakeRound.buildRound2(this.#crypto, {
318
324
  xm2: this.#x2,
319
325
  s,
320
326
  v: v3,
@@ -336,19 +342,21 @@ class DtlsClient {
336
342
  body: ckeBody
337
343
  })
338
344
  );
339
- const pms = import_EcJpakePms.EcJpakePms.derive({
345
+ const pms = await import_EcJpakePms.EcJpakePms.derive(this.#crypto, {
340
346
  Xp: serverRound2X,
341
347
  Xp2: this.#X4,
342
348
  xm2: this.#x2,
343
349
  s
344
350
  });
345
- const masterSecret = import_TlsPrf.TlsPrf.masterSecret({
346
- premasterSecret: pms,
347
- clientRandom: this.#clientRandom,
348
- serverRandom: this.#serverRandom
349
- });
351
+ const masterSecret = import_general.Bytes.of(
352
+ await import_TlsPrf.TlsPrf.masterSecret(this.#crypto, {
353
+ premasterSecret: pms,
354
+ clientRandom: this.#clientRandom,
355
+ serverRandom: this.#serverRandom
356
+ })
357
+ );
350
358
  this.#masterSecret = masterSecret;
351
- const keyBlock = import_TlsPrf.TlsPrf.keyBlock({
359
+ const keyBlock = await import_TlsPrf.TlsPrf.keyBlock(this.#crypto, {
352
360
  masterSecret,
353
361
  clientRandom: this.#clientRandom,
354
362
  serverRandom: this.#serverRandom
@@ -360,11 +368,13 @@ class DtlsClient {
360
368
  serverWriteSalt: keyBlock.serverWriteIv
361
369
  });
362
370
  this.#cipherState = cipherState;
363
- const verifyData = import_TlsPrf.TlsPrf.verifyData({
364
- masterSecret,
365
- role: "client",
366
- transcriptDigest: this.#transcript.digest()
367
- });
371
+ const verifyData = import_general.Bytes.of(
372
+ await import_TlsPrf.TlsPrf.verifyData(this.#crypto, {
373
+ masterSecret,
374
+ role: "client",
375
+ transcriptDigest: await this.#transcript.digest()
376
+ })
377
+ );
368
378
  const finishedBody = import_FinishedMessage.FinishedMessage.build(verifyData);
369
379
  const finishedMsgSeq = this.#handshakeMessageSeq;
370
380
  const finishedHandshake = import_HandshakeMessage.HandshakeMessage.encode({
@@ -380,30 +390,37 @@ class DtlsClient {
380
390
  body: finishedBody
381
391
  })
382
392
  );
383
- const ckeRecord = import_DtlsRecord.DtlsRecord.encode({
384
- type: import_ContentType.ContentType.HANDSHAKE,
385
- epoch: 0,
386
- sequenceNumber: this.#recordSeq,
387
- fragment: ckeHandshake
388
- });
393
+ const ckeRecord = import_general.Bytes.of(
394
+ await import_DtlsRecord.DtlsRecord.encode(this.#crypto, {
395
+ type: import_ContentType.ContentType.HANDSHAKE,
396
+ epoch: 0,
397
+ sequenceNumber: this.#recordSeq,
398
+ fragment: ckeHandshake
399
+ })
400
+ );
389
401
  this.#recordSeq += 1n;
390
- const ccsRecord = import_DtlsRecord.DtlsRecord.encode({
391
- type: import_ContentType.ContentType.CHANGE_CIPHER_SPEC,
392
- epoch: 0,
393
- sequenceNumber: this.#recordSeq,
394
- fragment: import_ChangeCipherSpec.CHANGE_CIPHER_SPEC_BODY
395
- });
402
+ const ccsRecord = import_general.Bytes.of(
403
+ await import_DtlsRecord.DtlsRecord.encode(this.#crypto, {
404
+ type: import_ContentType.ContentType.CHANGE_CIPHER_SPEC,
405
+ epoch: 0,
406
+ sequenceNumber: this.#recordSeq,
407
+ fragment: import_ChangeCipherSpec.CHANGE_CIPHER_SPEC_BODY
408
+ })
409
+ );
396
410
  this.#recordSeq += 1n;
397
411
  cipherState.advanceWriteEpoch();
398
412
  const finishedSeq = cipherState.nextWriteSeq();
399
- const finishedRecord = import_DtlsRecord.DtlsRecord.encode(
400
- {
401
- type: import_ContentType.ContentType.HANDSHAKE,
402
- epoch: cipherState.writeEpoch,
403
- sequenceNumber: finishedSeq,
404
- fragment: finishedHandshake
405
- },
406
- cipherState
413
+ const finishedRecord = import_general.Bytes.of(
414
+ await import_DtlsRecord.DtlsRecord.encode(
415
+ this.#crypto,
416
+ {
417
+ type: import_ContentType.ContentType.HANDSHAKE,
418
+ epoch: cipherState.writeEpoch,
419
+ sequenceNumber: finishedSeq,
420
+ fragment: finishedHandshake
421
+ },
422
+ cipherState
423
+ )
407
424
  );
408
425
  const flight = [ckeRecord, ccsRecord, finishedRecord];
409
426
  this.#lastFlight = flight;
@@ -417,7 +434,7 @@ class DtlsClient {
417
434
  * `DtlsRecord.decode` for both records would feed CCS to the codec only after the
418
435
  * decrypt of the Finished record had already failed with a wrong-epoch error.
419
436
  */
420
- #handleServerFinishedFlightLazy(bytes) {
437
+ async #handleServerFinishedFlightLazy(bytes) {
421
438
  const cipherState = this.#cipherState;
422
439
  const masterSecret = this.#masterSecret;
423
440
  if (cipherState === void 0 || masterSecret === void 0) {
@@ -439,7 +456,7 @@ class DtlsClient {
439
456
  }
440
457
  const recordBytes = bytes.subarray(p, recordEnd);
441
458
  const stateForDecode = epoch === 0 ? void 0 : cipherState;
442
- const { record } = import_DtlsRecord.DtlsRecord.decode(recordBytes, stateForDecode);
459
+ const { record } = await import_DtlsRecord.DtlsRecord.decode(this.#crypto, recordBytes, stateForDecode);
443
460
  if (record.type === import_ContentType.ContentType.CHANGE_CIPHER_SPEC) {
444
461
  import_ChangeCipherSpec.ChangeCipherSpec.parse(record.fragment);
445
462
  cipherState.advanceReadEpoch();
@@ -453,9 +470,10 @@ class DtlsClient {
453
470
  `DtlsClient: server Finished record at epoch ${record.epoch}, expected ${cipherState.readEpoch}`
454
471
  );
455
472
  }
473
+ const fragment = import_general.Bytes.of(record.fragment);
456
474
  let q = 0;
457
- while (q < record.fragment.length) {
458
- const { message, consumed } = import_HandshakeMessage.HandshakeMessage.decode(record.fragment.subarray(q));
475
+ while (q < fragment.length) {
476
+ const { message, consumed } = import_HandshakeMessage.HandshakeMessage.decode(fragment.subarray(q));
459
477
  if (message.msgType !== import_HandshakeType.HandshakeType.FINISHED) {
460
478
  throw new import_DtlsChannel.DtlsError(`DtlsClient: expected Finished, got msg_type=${message.msgType}`);
461
479
  }
@@ -469,11 +487,13 @@ class DtlsClient {
469
487
  if (serverFinishedBody === void 0) {
470
488
  throw new import_DtlsChannel.DtlsError("DtlsClient: server flight missing Finished message");
471
489
  }
472
- const expected = import_TlsPrf.TlsPrf.verifyData({
473
- masterSecret,
474
- role: "server",
475
- transcriptDigest: this.#transcript.digest()
476
- });
490
+ const expected = import_general.Bytes.of(
491
+ await import_TlsPrf.TlsPrf.verifyData(this.#crypto, {
492
+ masterSecret,
493
+ role: "server",
494
+ transcriptDigest: await this.#transcript.digest()
495
+ })
496
+ );
477
497
  const actual = import_FinishedMessage.FinishedMessage.parse(serverFinishedBody).verifyData;
478
498
  if (!constantTimeEqual(expected, actual)) {
479
499
  throw new import_DtlsChannel.DtlsError("DtlsClient: server Finished verify_data mismatch");
@@ -489,7 +509,9 @@ class DtlsClient {
489
509
  return { records: [] };
490
510
  }
491
511
  }
492
- function constantTimeEqual(a, b) {
512
+ function constantTimeEqual(rawA, rawB) {
513
+ const a = import_general.Bytes.of(rawA);
514
+ const b = import_general.Bytes.of(rawB);
493
515
  if (a.length !== b.length || a.length !== import_FinishedMessage.FINISHED_VERIFY_DATA_LEN) {
494
516
  return false;
495
517
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/DtlsClient.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,10 +3,17 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ /**
7
+ * Finished message body codec (RFC 5246 §7.4.9). The body is exactly the
8
+ * 12-byte `verify_data` from the TLS PRF; the wider machinery — choosing
9
+ * the role label, snapshotting the transcript, computing the PRF — sits in
10
+ * `TlsPrf.verifyData` and the state machine.
11
+ */
12
+ import { Bytes } from "@matter/general";
6
13
  export declare const FinishedMessage: {
7
- build(verifyData: Uint8Array): Uint8Array;
8
- parse(body: Uint8Array): {
9
- verifyData: Uint8Array;
14
+ build(rawVerifyData: Bytes): Bytes;
15
+ parse(rawBody: Bytes): {
16
+ verifyData: Bytes;
10
17
  };
11
18
  };
12
19
  export declare const FINISHED_VERIFY_DATA_LEN = 12;
@@ -1 +1 @@
1
- {"version":3,"file":"FinishedMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/FinishedMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,eAAO,MAAM,eAAe;IACxB,KAAK,aAAa,UAAU,GAAG,UAAU;IAQzC,KAAK,OAAO,UAAU,GAAG;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE;CAM7C,CAAC;AAEX,eAAO,MAAM,wBAAwB,KAAkB,CAAC"}
1
+ {"version":3,"file":"FinishedMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/FinishedMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAiB,MAAM,iBAAiB,CAAC;AAKvD,eAAO,MAAM,eAAe;IACxB,KAAK,gBAAgB,KAAK,GAAG,KAAK;IASlC,KAAK,UAAU,KAAK,GAAG;QAAE,UAAU,EAAE,KAAK,CAAA;KAAE;CAOtC,CAAC;AAEX,eAAO,MAAM,wBAAwB,KAAkB,CAAC"}
@@ -31,13 +31,15 @@ var import_DtlsChannel = require("../channel/DtlsChannel.js");
31
31
  */
32
32
  const VERIFY_DATA_LEN = 12;
33
33
  const FinishedMessage = {
34
- build(verifyData) {
34
+ build(rawVerifyData) {
35
+ const verifyData = import_general.Bytes.of(rawVerifyData);
35
36
  if (verifyData.length !== VERIFY_DATA_LEN) {
36
37
  throw new import_general.InternalError(`Finished verify_data must be ${VERIFY_DATA_LEN} bytes, got ${verifyData.length}`);
37
38
  }
38
39
  return verifyData.slice();
39
40
  },
40
- parse(body) {
41
+ parse(rawBody) {
42
+ const body = import_general.Bytes.of(rawBody);
41
43
  if (body.length !== VERIFY_DATA_LEN) {
42
44
  throw new import_DtlsChannel.DtlsError(`Finished body must be ${VERIFY_DATA_LEN} bytes, got ${body.length}`);
43
45
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/FinishedMessage.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,qBAA8B;AAC9B,yBAA0B;AAd1B;AAAA;AAAA;AAAA;AAAA;AAgBA,MAAM,kBAAkB;AAEjB,MAAM,kBAAkB;AAAA,EAC3B,MAAM,YAAoC;AACtC,QAAI,WAAW,WAAW,iBAAiB;AACvC,YAAM,IAAI,6BAAc,gCAAgC,eAAe,eAAe,WAAW,MAAM,EAAE;AAAA,IAC7G;AAEA,WAAO,WAAW,MAAM;AAAA,EAC5B;AAAA,EAEA,MAAM,MAA8C;AAChD,QAAI,KAAK,WAAW,iBAAiB;AACjC,YAAM,IAAI,6BAAU,yBAAyB,eAAe,eAAe,KAAK,MAAM,EAAE;AAAA,IAC5F;AACA,WAAO,EAAE,YAAY,KAAK,MAAM,EAAE;AAAA,EACtC;AACJ;AAEO,MAAM,2BAA2B;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,qBAAqC;AACrC,yBAA0B;AAd1B;AAAA;AAAA;AAAA;AAAA;AAgBA,MAAM,kBAAkB;AAEjB,MAAM,kBAAkB;AAAA,EAC3B,MAAM,eAA6B;AAC/B,UAAM,aAAa,qBAAM,GAAG,aAAa;AACzC,QAAI,WAAW,WAAW,iBAAiB;AACvC,YAAM,IAAI,6BAAc,gCAAgC,eAAe,eAAe,WAAW,MAAM,EAAE;AAAA,IAC7G;AAEA,WAAO,WAAW,MAAM;AAAA,EAC5B;AAAA,EAEA,MAAM,SAAuC;AACzC,UAAM,OAAO,qBAAM,GAAG,OAAO;AAC7B,QAAI,KAAK,WAAW,iBAAiB;AACjC,YAAM,IAAI,6BAAU,yBAAyB,eAAe,eAAe,KAAK,MAAM,EAAE;AAAA,IAC5F;AACA,WAAO,EAAE,YAAY,KAAK,MAAM,EAAE;AAAA,EACtC;AACJ;AAEO,MAAM,2BAA2B;",
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 } from "@matter/general";
6
7
  import { HandshakeType } from "./HandshakeType.js";
7
8
  /** Length of the DTLS 1.2 handshake message header (RFC 6347 §4.2.2). */
8
9
  export declare const DTLS_HANDSHAKE_HEADER_LEN = 12;
@@ -24,7 +25,7 @@ export declare const UINT24_MAX: number;
24
25
  export interface HandshakeMessage {
25
26
  msgType: HandshakeType;
26
27
  messageSeq: number;
27
- body: Uint8Array;
28
+ body: Bytes;
28
29
  }
29
30
  /**
30
31
  * DTLS 1.2 handshake message envelope codec (RFC 6347 §4.2.2).
@@ -47,12 +48,12 @@ export interface HandshakeMessage {
47
48
  * `fragment_length=length`).
48
49
  */
49
50
  export declare namespace HandshakeMessage {
50
- function encode(message: HandshakeMessage): Uint8Array;
51
- function encodeForTranscript(message: HandshakeMessage): Uint8Array;
51
+ function encode(message: HandshakeMessage): Bytes;
52
+ function encodeForTranscript(message: HandshakeMessage): Bytes;
52
53
  interface DecodeResult {
53
54
  message: HandshakeMessage;
54
55
  consumed: number;
55
56
  }
56
- function decode(bytes: Uint8Array): DecodeResult;
57
+ function decode(bytes: Bytes): DecodeResult;
57
58
  }
58
59
  //# sourceMappingURL=HandshakeMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HandshakeMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/HandshakeMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,aAAa,EAAmB,MAAM,oBAAoB,CAAC;AAEpE,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,yEAAyE;AACzE,eAAO,MAAM,UAAU,QAAgB,CAAC;AAKxC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,aAAa,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,UAAU,CAAC;CACpB;AAqBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,yBAAiB,gBAAgB,CAAC,CAAC;IAC/B,SAAgB,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,UAAU,CAmB5D;IAED,SAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,UAAU,CAEzE;IAED,UAAiB,YAAY;QACzB,OAAO,EAAE,gBAAgB,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KACpB;IAED,SAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAiCtD;CACJ"}
1
+ {"version":3,"file":"HandshakeMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/HandshakeMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAiB,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAmB,MAAM,oBAAoB,CAAC;AAEpE,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,yEAAyE;AACzE,eAAO,MAAM,UAAU,QAAgB,CAAC;AAKxC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,aAAa,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;CACf;AAqBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,yBAAiB,gBAAgB,CAAC,CAAC;IAC/B,SAAgB,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,KAAK,CAoBvD;IAED,SAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,KAAK,CAEpE;IAED,UAAiB,YAAY;QACzB,OAAO,EAAE,gBAAgB,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KACpB;IAED,SAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAkCjD;CACJ"}
@@ -54,7 +54,8 @@ function readUint24BE(buf, offset) {
54
54
  var HandshakeMessage;
55
55
  ((HandshakeMessage2) => {
56
56
  function encode(message) {
57
- const { msgType, messageSeq, body } = message;
57
+ const { msgType, messageSeq } = message;
58
+ const body = import_general.Bytes.of(message.body);
58
59
  if (!(0, import_HandshakeType.isHandshakeType)(msgType)) {
59
60
  throw new import_general.InternalError(`HandshakeMessage unknown msg_type: ${msgType}`);
60
61
  }
@@ -79,35 +80,36 @@ var HandshakeMessage;
79
80
  }
80
81
  HandshakeMessage2.encodeForTranscript = encodeForTranscript;
81
82
  function decode(bytes) {
82
- if (bytes.length < DTLS_HANDSHAKE_HEADER_LEN) {
83
+ const buf = import_general.Bytes.of(bytes);
84
+ if (buf.length < DTLS_HANDSHAKE_HEADER_LEN) {
83
85
  throw new import_DtlsChannel.DtlsError(
84
- `HandshakeMessage header truncated: have ${bytes.length}, need ${DTLS_HANDSHAKE_HEADER_LEN}`
86
+ `HandshakeMessage header truncated: have ${buf.length}, need ${DTLS_HANDSHAKE_HEADER_LEN}`
85
87
  );
86
88
  }
87
- const msgType = bytes[0];
89
+ const msgType = buf[0];
88
90
  if (!(0, import_HandshakeType.isHandshakeType)(msgType)) {
89
91
  throw new import_DtlsChannel.DtlsError(`HandshakeMessage unknown msg_type: ${msgType}`);
90
92
  }
91
- const length = readUint24BE(bytes, 1);
92
- const messageSeq = readUint16BE(bytes, 4);
93
- const fragmentOffset = readUint24BE(bytes, 6);
94
- const fragmentLength = readUint24BE(bytes, 9);
93
+ const length = readUint24BE(buf, 1);
94
+ const messageSeq = readUint16BE(buf, 4);
95
+ const fragmentOffset = readUint24BE(buf, 6);
96
+ const fragmentLength = readUint24BE(buf, 9);
95
97
  if (fragmentOffset !== 0 || fragmentLength !== length) {
96
98
  throw new import_DtlsChannel.DtlsError(
97
99
  `HandshakeMessage fragmented input not supported: offset=${fragmentOffset} fragLen=${fragmentLength} totalLen=${length}`
98
100
  );
99
101
  }
100
102
  const total = DTLS_HANDSHAKE_HEADER_LEN + length;
101
- if (bytes.length < total) {
103
+ if (buf.length < total) {
102
104
  throw new import_DtlsChannel.DtlsError(
103
- `HandshakeMessage body truncated: header says ${length}, have ${bytes.length - DTLS_HANDSHAKE_HEADER_LEN}`
105
+ `HandshakeMessage body truncated: header says ${length}, have ${buf.length - DTLS_HANDSHAKE_HEADER_LEN}`
104
106
  );
105
107
  }
106
108
  return {
107
109
  message: {
108
110
  msgType,
109
111
  messageSeq,
110
- body: bytes.slice(DTLS_HANDSHAKE_HEADER_LEN, total)
112
+ body: buf.slice(DTLS_HANDSHAKE_HEADER_LEN, total)
111
113
  },
112
114
  consumed: total
113
115
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/dtls/handshake/HandshakeMessage.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["HandshakeMessage"]
6
6
  }
@@ -3,9 +3,26 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ /**
7
+ * DTLS 1.2 HelloVerifyRequest body parser (RFC 6347 §4.2.1):
8
+ *
9
+ * ```
10
+ * struct {
11
+ * ProtocolVersion server_version; // 2 bytes (server may use {254, 255} for legacy reasons)
12
+ * opaque cookie<0..2^8-1>; // 1-byte length + body
13
+ * } HelloVerifyRequest;
14
+ * ```
15
+ *
16
+ * Per RFC 6347 §4.2.1 the client MUST echo `server_version` back in the next
17
+ * ClientHello, but in practice every modern stack (mbedTLS, OpenThread) uses
18
+ * the same DTLS 1.2 version byte pair the client already advertised, so we
19
+ * accept any version bytes here without enforcement and let the next
20
+ * ClientHello carry the spec-mandated DTLS 1.2 version regardless.
21
+ */
22
+ import { Bytes } from "@matter/general";
6
23
  export declare const HelloVerifyRequestMessage: {
7
- parse(body: Uint8Array): {
8
- cookie: Uint8Array;
24
+ parse(rawBody: Bytes): {
25
+ cookie: Bytes;
9
26
  };
10
27
  };
11
28
  //# sourceMappingURL=HelloVerifyRequestMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HelloVerifyRequestMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/HelloVerifyRequestMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuBH,eAAO,MAAM,yBAAyB;IAClC,KAAK,OAAO,UAAU,GAAG;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE;CAkBzC,CAAC"}
1
+ {"version":3,"file":"HelloVerifyRequestMessage.d.ts","sourceRoot":"","sources":["../../../../src/dtls/handshake/HelloVerifyRequestMessage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAKxC,eAAO,MAAM,yBAAyB;IAClC,KAAK,UAAU,KAAK,GAAG;QAAE,MAAM,EAAE,KAAK,CAAA;KAAE;CAmBlC,CAAC"}