@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
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Observable } from "@matter/general";
6
+ import { Bytes, Observable } from "@matter/general";
7
7
  import type { OperationalDataset } from "../dataset/OperationalDataset.js";
8
8
  import type { ThreadNetworkCredentials } from "./ThreadNetworkCredentials.js";
9
9
  /**
@@ -17,7 +17,7 @@ export declare class ThreadCredentialsRegistry {
17
17
  #private;
18
18
  readonly events: {
19
19
  registered: Observable<[creds: ThreadNetworkCredentials], void>;
20
- unregistered: Observable<[extPanId: Uint8Array<ArrayBufferLike>], void>;
20
+ unregistered: Observable<[extPanId: AllowSharedBufferSource], void>;
21
21
  };
22
22
  /**
23
23
  * Register credentials extracted from a parsed Operational Dataset.
@@ -41,9 +41,9 @@ export declare class ThreadCredentialsRegistry {
41
41
  */
42
42
  registerCredentials(creds: ThreadNetworkCredentials): void;
43
43
  /** Remove an entry. No-op if absent. */
44
- unregister(extPanId: Uint8Array): void;
45
- /** Lookup by extPanId. Comparison is by Uint8Array equality, not reference. */
46
- getCredentials(extPanId: Uint8Array): ThreadNetworkCredentials | undefined;
44
+ unregister(extPanId: Bytes): void;
45
+ /** Lookup by extPanId. Comparison is by byte equality, not reference. */
46
+ getCredentials(extPanId: Bytes): ThreadNetworkCredentials | undefined;
47
47
  /** Defensive snapshot — caller cannot mutate the registry through it. */
48
48
  list(): ReadonlyArray<ThreadNetworkCredentials>;
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadCredentialsRegistry.d.ts","sourceRoot":"","sources":["../../../src/credentials/ThreadCredentialsRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA8B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE9E;;;;;;GAMG;AACH,qBAAa,yBAAyB;;IAElC,QAAQ,CAAC,MAAM;QACX,UAAU;QACV,YAAY;MACd;IAEF;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAiB1C;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAWzD;IAED,wCAAwC;IACxC,UAAU,CAAC,QAAQ,EAAE,UAAU,GAAG,IAAI,CAKrC;IAED,+EAA+E;IAC/E,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,wBAAwB,GAAG,SAAS,CAEzE;IAED,yEAAyE;IACzE,IAAI,IAAI,aAAa,CAAC,wBAAwB,CAAC,CAE9C;CACJ"}
1
+ {"version":3,"file":"ThreadCredentialsRegistry.d.ts","sourceRoot":"","sources":["../../../src/credentials/ThreadCredentialsRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAuB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE9E;;;;;;GAMG;AACH,qBAAa,yBAAyB;;IAElC,QAAQ,CAAC,MAAM;QACX,UAAU;QACV,YAAY;MACd;IAEF;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAiB1C;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAWzD;IAED,wCAAwC;IACxC,UAAU,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAKhC;IAED,yEAAyE;IACzE,cAAc,CAAC,QAAQ,EAAE,KAAK,GAAG,wBAAwB,GAAG,SAAS,CAEpE;IAED,yEAAyE;IACzE,IAAI,IAAI,aAAa,CAAC,wBAAwB,CAAC,CAE9C;CACJ"}
@@ -72,10 +72,10 @@ class ThreadCredentialsRegistry {
72
72
  */
73
73
  registerCredentials(creds) {
74
74
  const stored = {
75
- extPanId: creds.extPanId.slice(),
75
+ extPanId: import_general.Bytes.of(creds.extPanId).slice(),
76
76
  networkName: creds.networkName,
77
- pskc: creds.pskc.slice(),
78
- meshLocalPrefix: creds.meshLocalPrefix?.slice(),
77
+ pskc: import_general.Bytes.of(creds.pskc).slice(),
78
+ meshLocalPrefix: creds.meshLocalPrefix === void 0 ? void 0 : import_general.Bytes.of(creds.meshLocalPrefix).slice(),
79
79
  activeTimestamp: creds.activeTimestamp
80
80
  };
81
81
  this.#byExtPanId.set(keyOf(stored.extPanId), stored);
@@ -86,9 +86,9 @@ class ThreadCredentialsRegistry {
86
86
  const key = keyOf(extPanId);
87
87
  if (!this.#byExtPanId.has(key)) return;
88
88
  this.#byExtPanId.delete(key);
89
- this.events.unregistered.emit(extPanId.slice());
89
+ this.events.unregistered.emit(import_general.Bytes.of(extPanId).slice());
90
90
  }
91
- /** Lookup by extPanId. Comparison is by Uint8Array equality, not reference. */
91
+ /** Lookup by extPanId. Comparison is by byte equality, not reference. */
92
92
  getCredentials(extPanId) {
93
93
  return this.#byExtPanId.get(keyOf(extPanId));
94
94
  }
@@ -102,14 +102,15 @@ function keyOf(extPanId) {
102
102
  }
103
103
  function snapshot(creds) {
104
104
  return {
105
- extPanId: creds.extPanId.slice(),
105
+ extPanId: import_general.Bytes.of(creds.extPanId).slice(),
106
106
  networkName: creds.networkName,
107
- pskc: creds.pskc.slice(),
108
- meshLocalPrefix: creds.meshLocalPrefix?.slice(),
107
+ pskc: import_general.Bytes.of(creds.pskc).slice(),
108
+ meshLocalPrefix: creds.meshLocalPrefix === void 0 ? void 0 : import_general.Bytes.of(creds.meshLocalPrefix).slice(),
109
109
  activeTimestamp: creds.activeTimestamp
110
110
  };
111
111
  }
112
- function bytesToBigint(bytes) {
112
+ function bytesToBigint(input) {
113
+ const bytes = import_general.Bytes.of(input);
113
114
  let result = 0n;
114
115
  for (const b of bytes) {
115
116
  result = result << 8n | BigInt(b);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/credentials/ThreadCredentialsRegistry.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAuD;AANvD;AAAA;AAAA;AAAA;AAAA;AAiBO,MAAM,0BAA0B;AAAA,EAC1B,cAAc,oBAAI,IAAsC;AAAA,EACxD,SAAS;AAAA,IACd,YAAY,IAAI,0BAA8C;AAAA,IAC9D,cAAc,IAAI,0BAAmC;AAAA,EACzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,SAAS,SAAmC;AACxC,QAAI,QAAQ,aAAa,QAAW;AAChC,YAAM,IAAI,mCAAoB,0DAA0D;AAAA,IAC5F;AACA,QAAI,QAAQ,gBAAgB,QAAW;AACnC,YAAM,IAAI,mCAAoB,6DAA6D;AAAA,IAC/F;AACA,QAAI,QAAQ,SAAS,QAAW;AAC5B,YAAM,IAAI,mCAAoB,sDAAsD;AAAA,IACxF;AACA,SAAK,oBAAoB;AAAA,MACrB,UAAU,QAAQ;AAAA,MAClB,aAAa,QAAQ;AAAA,MACrB,MAAM,QAAQ;AAAA,MACd,iBAAiB,QAAQ;AAAA,MACzB,iBAAiB,QAAQ,oBAAoB,SAAY,SAAY,cAAc,QAAQ,eAAe;AAAA,IAC9G,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,oBAAoB,OAAuC;AACvD,UAAM,SAAmC;AAAA,MACrC,UAAU,MAAM,SAAS,MAAM;AAAA,MAC/B,aAAa,MAAM;AAAA,MACnB,MAAM,MAAM,KAAK,MAAM;AAAA,MACvB,iBAAiB,MAAM,iBAAiB,MAAM;AAAA,MAC9C,iBAAiB,MAAM;AAAA,IAC3B;AACA,SAAK,YAAY,IAAI,MAAM,OAAO,QAAQ,GAAG,MAAM;AAEnD,SAAK,OAAO,WAAW,KAAK,SAAS,MAAM,CAAC;AAAA,EAChD;AAAA;AAAA,EAGA,WAAW,UAA4B;AACnC,UAAM,MAAM,MAAM,QAAQ;AAC1B,QAAI,CAAC,KAAK,YAAY,IAAI,GAAG,EAAG;AAChC,SAAK,YAAY,OAAO,GAAG;AAC3B,SAAK,OAAO,aAAa,KAAK,SAAS,MAAM,CAAC;AAAA,EAClD;AAAA;AAAA,EAGA,eAAe,UAA4D;AACvE,WAAO,KAAK,YAAY,IAAI,MAAM,QAAQ,CAAC;AAAA,EAC/C;AAAA;AAAA,EAGA,OAAgD;AAC5C,WAAO,MAAM,KAAK,KAAK,YAAY,OAAO,CAAC;AAAA,EAC/C;AACJ;AAEA,SAAS,MAAM,UAA8B;AACzC,SAAO,qBAAM,MAAM,QAAQ;AAC/B;AAEA,SAAS,SAAS,OAA2D;AACzE,SAAO;AAAA,IACH,UAAU,MAAM,SAAS,MAAM;AAAA,IAC/B,aAAa,MAAM;AAAA,IACnB,MAAM,MAAM,KAAK,MAAM;AAAA,IACvB,iBAAiB,MAAM,iBAAiB,MAAM;AAAA,IAC9C,iBAAiB,MAAM;AAAA,EAC3B;AACJ;AAIA,SAAS,cAAc,OAA2B;AAC9C,MAAI,SAAS;AACb,aAAW,KAAK,OAAO;AACnB,aAAU,UAAU,KAAM,OAAO,CAAC;AAAA,EACtC;AACA,SAAO;AACX;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAuD;AANvD;AAAA;AAAA;AAAA;AAAA;AAiBO,MAAM,0BAA0B;AAAA,EAC1B,cAAc,oBAAI,IAAsC;AAAA,EACxD,SAAS;AAAA,IACd,YAAY,IAAI,0BAA8C;AAAA,IAC9D,cAAc,IAAI,0BAA8B;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,SAAS,SAAmC;AACxC,QAAI,QAAQ,aAAa,QAAW;AAChC,YAAM,IAAI,mCAAoB,0DAA0D;AAAA,IAC5F;AACA,QAAI,QAAQ,gBAAgB,QAAW;AACnC,YAAM,IAAI,mCAAoB,6DAA6D;AAAA,IAC/F;AACA,QAAI,QAAQ,SAAS,QAAW;AAC5B,YAAM,IAAI,mCAAoB,sDAAsD;AAAA,IACxF;AACA,SAAK,oBAAoB;AAAA,MACrB,UAAU,QAAQ;AAAA,MAClB,aAAa,QAAQ;AAAA,MACrB,MAAM,QAAQ;AAAA,MACd,iBAAiB,QAAQ;AAAA,MACzB,iBAAiB,QAAQ,oBAAoB,SAAY,SAAY,cAAc,QAAQ,eAAe;AAAA,IAC9G,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,oBAAoB,OAAuC;AACvD,UAAM,SAAmC;AAAA,MACrC,UAAU,qBAAM,GAAG,MAAM,QAAQ,EAAE,MAAM;AAAA,MACzC,aAAa,MAAM;AAAA,MACnB,MAAM,qBAAM,GAAG,MAAM,IAAI,EAAE,MAAM;AAAA,MACjC,iBAAiB,MAAM,oBAAoB,SAAY,SAAY,qBAAM,GAAG,MAAM,eAAe,EAAE,MAAM;AAAA,MACzG,iBAAiB,MAAM;AAAA,IAC3B;AACA,SAAK,YAAY,IAAI,MAAM,OAAO,QAAQ,GAAG,MAAM;AAEnD,SAAK,OAAO,WAAW,KAAK,SAAS,MAAM,CAAC;AAAA,EAChD;AAAA;AAAA,EAGA,WAAW,UAAuB;AAC9B,UAAM,MAAM,MAAM,QAAQ;AAC1B,QAAI,CAAC,KAAK,YAAY,IAAI,GAAG,EAAG;AAChC,SAAK,YAAY,OAAO,GAAG;AAC3B,SAAK,OAAO,aAAa,KAAK,qBAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;AAAA,EAC5D;AAAA;AAAA,EAGA,eAAe,UAAuD;AAClE,WAAO,KAAK,YAAY,IAAI,MAAM,QAAQ,CAAC;AAAA,EAC/C;AAAA;AAAA,EAGA,OAAgD;AAC5C,WAAO,MAAM,KAAK,KAAK,YAAY,OAAO,CAAC;AAAA,EAC/C;AACJ;AAEA,SAAS,MAAM,UAAyB;AACpC,SAAO,qBAAM,MAAM,QAAQ;AAC/B;AAEA,SAAS,SAAS,OAA2D;AACzE,SAAO;AAAA,IACH,UAAU,qBAAM,GAAG,MAAM,QAAQ,EAAE,MAAM;AAAA,IACzC,aAAa,MAAM;AAAA,IACnB,MAAM,qBAAM,GAAG,MAAM,IAAI,EAAE,MAAM;AAAA,IACjC,iBAAiB,MAAM,oBAAoB,SAAY,SAAY,qBAAM,GAAG,MAAM,eAAe,EAAE,MAAM;AAAA,IACzG,iBAAiB,MAAM;AAAA,EAC3B;AACJ;AAIA,SAAS,cAAc,OAAsB;AACzC,QAAM,QAAQ,qBAAM,GAAG,KAAK;AAC5B,MAAI,SAAS;AACb,aAAW,KAAK,OAAO;AACnB,aAAU,UAAU,KAAM,OAAO,CAAC;AAAA,EACtC;AACA,SAAO;AACX;",
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
  /**
7
8
  * Credentials needed to authenticate against a Thread network's commissioner.
8
9
  *
@@ -12,14 +13,14 @@
12
13
  */
13
14
  export interface ThreadNetworkCredentials {
14
15
  /** 8-byte extended PAN ID — primary registry key. */
15
- extPanId: Uint8Array;
16
+ extPanId: Bytes;
16
17
  /** Thread network name (UTF-8, ≤16 bytes). */
17
18
  networkName: string;
18
19
  /** 16-byte EC-JPAKE password (PSKc). Sensitive — redact when logging. */
19
- pskc: Uint8Array;
20
+ pskc: Bytes;
20
21
  /** 8-byte mesh-local prefix, used to derive node mesh-local addresses for
21
22
  * UDP-proxy unicast diagnostics. Absent if the dataset omits it. */
22
- meshLocalPrefix?: Uint8Array;
23
+ meshLocalPrefix?: Bytes;
23
24
  /** Active timestamp from the dataset, used for change detection. */
24
25
  activeTimestamp?: bigint;
25
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadNetworkCredentials.d.ts","sourceRoot":"","sources":["../../../src/credentials/ThreadNetworkCredentials.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACrC,qDAAqD;IACrD,QAAQ,EAAE,UAAU,CAAC;IACrB,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,IAAI,EAAE,UAAU,CAAC;IACjB;yEACqE;IACrE,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"ThreadNetworkCredentials.d.ts","sourceRoot":"","sources":["../../../src/credentials/ThreadNetworkCredentials.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACrC,qDAAqD;IACrD,QAAQ,EAAE,KAAK,CAAC;IAChB,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,IAAI,EAAE,KAAK,CAAC;IACZ;yEACqE;IACrE,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -3,22 +3,12 @@
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
- * AES-CMAC per RFC 4493.
8
- *
9
- * Block-cipher-based MAC with a 128-bit AES key and a 16-byte tag. Empty messages
10
- * are explicitly supported and pad to a single all-zero block XORed with K2.
11
- */
12
- export declare namespace AesCmac {
13
- function compute(key: Uint8Array, message: Uint8Array): Uint8Array;
14
- }
15
- /**
16
- * AES-CMAC-PRF-128 per RFC 4615.
17
- *
18
- * Lifts AES-CMAC into a variable-length-key PRF: a 16-byte key is used directly,
19
- * any other key is first compressed via CMAC under an all-zero key.
8
+ * AES-CMAC-PRF-128 per RFC 4615: a 16-byte key is used directly; any other length is
9
+ * first compressed via CMAC under an all-zero key. Built on {@link Crypto.cmac}.
20
10
  */
21
11
  export declare namespace AesCmacPrf128 {
22
- function compute(key: Uint8Array, message: Uint8Array): Uint8Array;
12
+ function compute(crypto: Crypto, key: Bytes, message: Bytes): Bytes;
23
13
  }
24
14
  //# sourceMappingURL=AesCmacPrf128.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AesCmacPrf128.d.ts","sourceRoot":"","sources":["../../../src/crypto/AesCmacPrf128.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2CH;;;;;GAKG;AACH,yBAAiB,OAAO,CAAC,CAAC;IACtB,SAAgB,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CA6BxE;CACJ;AAED;;;;;GAKG;AACH,yBAAiB,aAAa,CAAC,CAAC;IAC5B,SAAgB,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAMxE;CACJ"}
1
+ {"version":3,"file":"AesCmacPrf128.d.ts","sourceRoot":"","sources":["../../../src/crypto/AesCmacPrf128.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIhD;;;GAGG;AACH,yBAAiB,aAAa,CAAC,CAAC;IAC5B,SAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,KAAK,CAOzE;CACJ"}
@@ -18,89 +18,25 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var AesCmacPrf128_exports = {};
20
20
  __export(AesCmacPrf128_exports, {
21
- AesCmac: () => AesCmac,
22
21
  AesCmacPrf128: () => AesCmacPrf128
23
22
  });
24
23
  module.exports = __toCommonJS(AesCmacPrf128_exports);
25
24
  var import_general = require("@matter/general");
26
- var import_node_crypto = require("node:crypto");
27
25
  /**
28
26
  * @license
29
27
  * Copyright 2022-2026 Matter.js Authors
30
28
  * SPDX-License-Identifier: Apache-2.0
31
29
  */
32
- const BLOCK_SIZE = 16;
33
- const RB = 135;
34
- const ZERO_BLOCK = new Uint8Array(BLOCK_SIZE);
35
- function aesEcbEncryptBlock(key, block) {
36
- const cipher = (0, import_node_crypto.createCipheriv)("aes-128-ecb", key, null);
37
- cipher.setAutoPadding(false);
38
- const out = cipher.update(block);
39
- cipher.final();
40
- return new Uint8Array(out.buffer, out.byteOffset, out.byteLength);
41
- }
42
- function leftShift1(input) {
43
- const out = new Uint8Array(input.length);
44
- let carry = 0;
45
- for (let i = input.length - 1; i >= 0; i--) {
46
- const b = input[i];
47
- out[i] = b << 1 & 255 | carry;
48
- carry = (b & 128) >> 7;
49
- }
50
- return out;
51
- }
52
- function xorInto(target, source, offset = 0) {
53
- for (let i = 0; i < BLOCK_SIZE; i++) {
54
- target[i] ^= source[offset + i];
55
- }
56
- }
57
- function generateSubkeys(key) {
58
- const l = aesEcbEncryptBlock(key, ZERO_BLOCK);
59
- const k1 = leftShift1(l);
60
- if ((l[0] & 128) !== 0) k1[BLOCK_SIZE - 1] ^= RB;
61
- const k2 = leftShift1(k1);
62
- if ((k1[0] & 128) !== 0) k2[BLOCK_SIZE - 1] ^= RB;
63
- return { k1, k2 };
64
- }
65
- var AesCmac;
66
- ((AesCmac2) => {
67
- function compute(key, message) {
68
- if (key.length !== 16) {
69
- throw new import_general.InternalError(`AES-CMAC key must be 16 bytes, got ${key.length}`);
70
- }
71
- const { k1, k2 } = generateSubkeys(key);
72
- const numBlocks = Math.max(1, Math.ceil(message.length / BLOCK_SIZE));
73
- const lastBlockComplete = message.length > 0 && message.length % BLOCK_SIZE === 0;
74
- const lastBlock = new Uint8Array(BLOCK_SIZE);
75
- const lastBlockOffset = (numBlocks - 1) * BLOCK_SIZE;
76
- if (lastBlockComplete) {
77
- lastBlock.set(message.subarray(lastBlockOffset, lastBlockOffset + BLOCK_SIZE));
78
- xorInto(lastBlock, k1);
79
- } else {
80
- const remaining = message.length - lastBlockOffset;
81
- lastBlock.set(message.subarray(lastBlockOffset, lastBlockOffset + remaining));
82
- lastBlock[remaining] = 128;
83
- xorInto(lastBlock, k2);
84
- }
85
- const x = new Uint8Array(BLOCK_SIZE);
86
- for (let i = 0; i < numBlocks - 1; i++) {
87
- xorInto(x, message, i * BLOCK_SIZE);
88
- const enc = aesEcbEncryptBlock(key, x);
89
- x.set(enc);
90
- }
91
- xorInto(x, lastBlock);
92
- return aesEcbEncryptBlock(key, x);
93
- }
94
- AesCmac2.compute = compute;
95
- })(AesCmac || (AesCmac = {}));
30
+ const ZERO_BLOCK = new Uint8Array(16);
96
31
  var AesCmacPrf128;
97
32
  ((AesCmacPrf1282) => {
98
- function compute(key, message) {
99
- if (key.length === 16) {
100
- return AesCmac.compute(key, message);
33
+ function compute(crypto, key, message) {
34
+ const keyBytes = import_general.Bytes.of(key);
35
+ if (keyBytes.length === 16) {
36
+ return crypto.cmac(keyBytes, message);
101
37
  }
102
- const derivedKey = AesCmac.compute(ZERO_BLOCK, key);
103
- return AesCmac.compute(derivedKey, message);
38
+ const derivedKey = crypto.cmac(ZERO_BLOCK, keyBytes);
39
+ return crypto.cmac(derivedKey, message);
104
40
  }
105
41
  AesCmacPrf1282.compute = compute;
106
42
  })(AesCmacPrf128 || (AesCmacPrf128 = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/AesCmacPrf128.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA8B;AAC9B,yBAA+B;AAP/B;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,aAAa;AACnB,MAAM,KAAK;AACX,MAAM,aAAa,IAAI,WAAW,UAAU;AAE5C,SAAS,mBAAmB,KAAiB,OAA+B;AACxE,QAAM,aAAS,mCAAe,eAAe,KAAK,IAAI;AACtD,SAAO,eAAe,KAAK;AAC3B,QAAM,MAAM,OAAO,OAAO,KAAK;AAC/B,SAAO,MAAM;AACb,SAAO,IAAI,WAAW,IAAI,QAAQ,IAAI,YAAY,IAAI,UAAU;AACpE;AAEA,SAAS,WAAW,OAA+B;AAC/C,QAAM,MAAM,IAAI,WAAW,MAAM,MAAM;AACvC,MAAI,QAAQ;AACZ,WAAS,IAAI,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK;AACxC,UAAM,IAAI,MAAM,CAAC;AACjB,QAAI,CAAC,IAAM,KAAK,IAAK,MAAQ;AAC7B,aAAS,IAAI,QAAS;AAAA,EAC1B;AACA,SAAO;AACX;AAEA,SAAS,QAAQ,QAAoB,QAAoB,SAAS,GAAS;AACvE,WAAS,IAAI,GAAG,IAAI,YAAY,KAAK;AACjC,WAAO,CAAC,KAAK,OAAO,SAAS,CAAC;AAAA,EAClC;AACJ;AAEA,SAAS,gBAAgB,KAAqD;AAC1E,QAAM,IAAI,mBAAmB,KAAK,UAAU;AAC5C,QAAM,KAAK,WAAW,CAAC;AACvB,OAAK,EAAE,CAAC,IAAI,SAAU,EAAG,IAAG,aAAa,CAAC,KAAK;AAC/C,QAAM,KAAK,WAAW,EAAE;AACxB,OAAK,GAAG,CAAC,IAAI,SAAU,EAAG,IAAG,aAAa,CAAC,KAAK;AAChD,SAAO,EAAE,IAAI,GAAG;AACpB;AAQO,IAAU;AAAA,CAAV,CAAUA,aAAV;AACI,WAAS,QAAQ,KAAiB,SAAiC;AACtE,QAAI,IAAI,WAAW,IAAI;AACnB,YAAM,IAAI,6BAAc,sCAAsC,IAAI,MAAM,EAAE;AAAA,IAC9E;AACA,UAAM,EAAE,IAAI,GAAG,IAAI,gBAAgB,GAAG;AAEtC,UAAM,YAAY,KAAK,IAAI,GAAG,KAAK,KAAK,QAAQ,SAAS,UAAU,CAAC;AACpE,UAAM,oBAAoB,QAAQ,SAAS,KAAK,QAAQ,SAAS,eAAe;AAEhF,UAAM,YAAY,IAAI,WAAW,UAAU;AAC3C,UAAM,mBAAmB,YAAY,KAAK;AAC1C,QAAI,mBAAmB;AACnB,gBAAU,IAAI,QAAQ,SAAS,iBAAiB,kBAAkB,UAAU,CAAC;AAC7E,cAAQ,WAAW,EAAE;AAAA,IACzB,OAAO;AACH,YAAM,YAAY,QAAQ,SAAS;AACnC,gBAAU,IAAI,QAAQ,SAAS,iBAAiB,kBAAkB,SAAS,CAAC;AAC5E,gBAAU,SAAS,IAAI;AACvB,cAAQ,WAAW,EAAE;AAAA,IACzB;AAEA,UAAM,IAAI,IAAI,WAAW,UAAU;AACnC,aAAS,IAAI,GAAG,IAAI,YAAY,GAAG,KAAK;AACpC,cAAQ,GAAG,SAAS,IAAI,UAAU;AAClC,YAAM,MAAM,mBAAmB,KAAK,CAAC;AACrC,QAAE,IAAI,GAAG;AAAA,IACb;AACA,YAAQ,GAAG,SAAS;AACpB,WAAO,mBAAmB,KAAK,CAAC;AAAA,EACpC;AA7BO,EAAAA,SAAS;AAAA,GADH;AAuCV,IAAU;AAAA,CAAV,CAAUC,mBAAV;AACI,WAAS,QAAQ,KAAiB,SAAiC;AACtE,QAAI,IAAI,WAAW,IAAI;AACnB,aAAO,QAAQ,QAAQ,KAAK,OAAO;AAAA,IACvC;AACA,UAAM,aAAa,QAAQ,QAAQ,YAAY,GAAG;AAClD,WAAO,QAAQ,QAAQ,YAAY,OAAO;AAAA,EAC9C;AANO,EAAAA,eAAS;AAAA,GADH;",
5
- "names": ["AesCmac", "AesCmacPrf128"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA8B;AAN9B;AAAA;AAAA;AAAA;AAAA;AAQA,MAAM,aAAa,IAAI,WAAW,EAAE;AAM7B,IAAU;AAAA,CAAV,CAAUA,mBAAV;AACI,WAAS,QAAQ,QAAgB,KAAY,SAAuB;AACvE,UAAM,WAAW,qBAAM,GAAG,GAAG;AAC7B,QAAI,SAAS,WAAW,IAAI;AACxB,aAAO,OAAO,KAAK,UAAU,OAAO;AAAA,IACxC;AACA,UAAM,aAAa,OAAO,KAAK,YAAY,QAAQ;AACnD,WAAO,OAAO,KAAK,YAAY,OAAO;AAAA,EAC1C;AAPO,EAAAA,eAAS;AAAA,GADH;",
5
+ "names": ["AesCmacPrf128"]
6
6
  }
@@ -3,16 +3,17 @@
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
  * PBKDF2 (RFC 8018 §5.2) using AES-CMAC-PRF-128 as the underlying PRF.
8
9
  *
9
10
  * Hand-rolled because Node's `crypto.pbkdf2` is hardwired to HMAC. The PRF here
10
11
  * always emits 16 bytes, so each output block needs one PRF call per iteration.
11
12
  */
12
- export declare function pbkdf2AesCmac(args: {
13
- password: Uint8Array;
14
- salt: Uint8Array;
13
+ export declare function pbkdf2AesCmac(crypto: Crypto, args: {
14
+ password: Bytes;
15
+ salt: Bytes;
15
16
  iterations: number;
16
17
  dkLen: number;
17
- }): Uint8Array;
18
+ }): Bytes;
18
19
  //# sourceMappingURL=Pbkdf2AesCmac.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Pbkdf2AesCmac.d.ts","sourceRoot":"","sources":["../../../src/crypto/Pbkdf2AesCmac.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAChC,QAAQ,EAAE,UAAU,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACjB,GAAG,UAAU,CAkCb"}
1
+ {"version":3,"file":"Pbkdf2AesCmac.d.ts","sourceRoot":"","sources":["../../../src/crypto/Pbkdf2AesCmac.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAKrE;;;;;GAKG;AACH,wBAAgB,aAAa,CACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;IACF,QAAQ,EAAE,KAAK,CAAC;IAChB,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACjB,GACF,KAAK,CAmCP"}
@@ -29,8 +29,9 @@ var import_AesCmacPrf128 = require("./AesCmacPrf128.js");
29
29
  * SPDX-License-Identifier: Apache-2.0
30
30
  */
31
31
  const HLEN = 16;
32
- function pbkdf2AesCmac(args) {
33
- const { password, salt, iterations, dkLen } = args;
32
+ function pbkdf2AesCmac(crypto, args) {
33
+ const { password, iterations, dkLen } = args;
34
+ const salt = import_general.Bytes.of(args.salt);
34
35
  if (!Number.isInteger(iterations) || iterations <= 0) {
35
36
  throw new import_general.ImplementationError(`iterations must be a positive integer, got ${iterations}`);
36
37
  }
@@ -49,10 +50,10 @@ function pbkdf2AesCmac(args) {
49
50
  saltedBlock[salt.length + 1] = i >>> 16 & 255;
50
51
  saltedBlock[salt.length + 2] = i >>> 8 & 255;
51
52
  saltedBlock[salt.length + 3] = i & 255;
52
- let u = import_AesCmacPrf128.AesCmacPrf128.compute(password, saltedBlock);
53
+ let u = import_general.Bytes.of(import_AesCmacPrf128.AesCmacPrf128.compute(crypto, password, saltedBlock));
53
54
  const t = new Uint8Array(u);
54
55
  for (let j = 1; j < iterations; j++) {
55
- u = import_AesCmacPrf128.AesCmacPrf128.compute(password, u);
56
+ u = import_general.Bytes.of(import_AesCmacPrf128.AesCmacPrf128.compute(crypto, password, u));
56
57
  for (let k = 0; k < HLEN; k++) t[k] ^= u[k];
57
58
  }
58
59
  out.set(t, (i - 1) * HLEN);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Pbkdf2AesCmac.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAoC;AACpC,2BAA8B;AAP9B;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,OAAO;AAQN,SAAS,cAAc,MAKf;AACX,QAAM,EAAE,UAAU,MAAM,YAAY,MAAM,IAAI;AAC9C,MAAI,CAAC,OAAO,UAAU,UAAU,KAAK,cAAc,GAAG;AAClD,UAAM,IAAI,mCAAoB,8CAA8C,UAAU,EAAE;AAAA,EAC5F;AACA,MAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GAAG;AACxC,UAAM,IAAI,mCAAoB,yCAAyC,KAAK,EAAE;AAAA,EAClF;AAEA,MAAI,QAAQ,aAAa,MAAM;AAC3B,UAAM,IAAI,mCAAoB,SAAS,KAAK,yBAAyB;AAAA,EACzE;AAEA,QAAM,YAAY,KAAK,KAAK,QAAQ,IAAI;AACxC,QAAM,MAAM,IAAI,WAAW,YAAY,IAAI;AAC3C,QAAM,cAAc,IAAI,WAAW,KAAK,SAAS,CAAC;AAClD,cAAY,IAAI,MAAM,CAAC;AAEvB,WAAS,IAAI,GAAG,KAAK,WAAW,KAAK;AACjC,gBAAY,KAAK,MAAM,IAAK,MAAM,KAAM;AACxC,gBAAY,KAAK,SAAS,CAAC,IAAK,MAAM,KAAM;AAC5C,gBAAY,KAAK,SAAS,CAAC,IAAK,MAAM,IAAK;AAC3C,gBAAY,KAAK,SAAS,CAAC,IAAI,IAAI;AAEnC,QAAI,IAAI,mCAAc,QAAQ,UAAU,WAAW;AACnD,UAAM,IAAI,IAAI,WAAW,CAAC;AAC1B,aAAS,IAAI,GAAG,IAAI,YAAY,KAAK;AACjC,UAAI,mCAAc,QAAQ,UAAU,CAAC;AACrC,eAAS,IAAI,GAAG,IAAI,MAAM,IAAK,GAAE,CAAC,KAAK,EAAE,CAAC;AAAA,IAC9C;AACA,QAAI,IAAI,IAAI,IAAI,KAAK,IAAI;AAAA,EAC7B;AAEA,SAAO,IAAI,SAAS,GAAG,KAAK;AAChC;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmD;AACnD,2BAA8B;AAP9B;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,OAAO;AAQN,SAAS,cACZ,QACA,MAMK;AACL,QAAM,EAAE,UAAU,YAAY,MAAM,IAAI;AACxC,QAAM,OAAO,qBAAM,GAAG,KAAK,IAAI;AAC/B,MAAI,CAAC,OAAO,UAAU,UAAU,KAAK,cAAc,GAAG;AAClD,UAAM,IAAI,mCAAoB,8CAA8C,UAAU,EAAE;AAAA,EAC5F;AACA,MAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GAAG;AACxC,UAAM,IAAI,mCAAoB,yCAAyC,KAAK,EAAE;AAAA,EAClF;AAEA,MAAI,QAAQ,aAAa,MAAM;AAC3B,UAAM,IAAI,mCAAoB,SAAS,KAAK,yBAAyB;AAAA,EACzE;AAEA,QAAM,YAAY,KAAK,KAAK,QAAQ,IAAI;AACxC,QAAM,MAAM,IAAI,WAAW,YAAY,IAAI;AAC3C,QAAM,cAAc,IAAI,WAAW,KAAK,SAAS,CAAC;AAClD,cAAY,IAAI,MAAM,CAAC;AAEvB,WAAS,IAAI,GAAG,KAAK,WAAW,KAAK;AACjC,gBAAY,KAAK,MAAM,IAAK,MAAM,KAAM;AACxC,gBAAY,KAAK,SAAS,CAAC,IAAK,MAAM,KAAM;AAC5C,gBAAY,KAAK,SAAS,CAAC,IAAK,MAAM,IAAK;AAC3C,gBAAY,KAAK,SAAS,CAAC,IAAI,IAAI;AAEnC,QAAI,IAAI,qBAAM,GAAG,mCAAc,QAAQ,QAAQ,UAAU,WAAW,CAAC;AACrE,UAAM,IAAI,IAAI,WAAW,CAAC;AAC1B,aAAS,IAAI,GAAG,IAAI,YAAY,KAAK;AACjC,UAAI,qBAAM,GAAG,mCAAc,QAAQ,QAAQ,UAAU,CAAC,CAAC;AACvD,eAAS,IAAI,GAAG,IAAI,MAAM,IAAK,GAAE,CAAC,KAAK,EAAE,CAAC;AAAA,IAC9C;AACA,QAAI,IAAI,IAAI,IAAI,KAAK,IAAI;AAAA,EAC7B;AAEA,SAAO,IAAI,SAAS,GAAG,KAAK;AAChC;",
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
  * Thread MeshCoP PSKc derivation.
8
9
  *
@@ -12,10 +13,10 @@
12
13
  * || networkName` ordering is wrong).
13
14
  */
14
15
  export declare namespace Pskc {
15
- function derive(args: {
16
+ function derive(crypto: Crypto, args: {
16
17
  passphrase: string;
17
- extPanId: Uint8Array;
18
+ extPanId: Bytes;
18
19
  networkName: string;
19
- }): Uint8Array;
20
+ }): Bytes;
20
21
  }
21
22
  //# sourceMappingURL=Pskc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Pskc.d.ts","sourceRoot":"","sources":["../../../src/crypto/Pskc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH;;;;;;;GAOG;AACH,yBAAiB,IAAI,CAAC,CAAC;IACnB,SAAgB,MAAM,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,CA4B1G;CACJ"}
1
+ {"version":3,"file":"Pskc.d.ts","sourceRoot":"","sources":["../../../src/crypto/Pskc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAYrE;;;;;;;GAOG;AACH,yBAAiB,IAAI,CAAC,CAAC;IACnB,SAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CA6BhH;CACJ"}
@@ -37,15 +37,16 @@ const ITERATIONS = 16384;
37
37
  const PSKC_LENGTH = 16;
38
38
  var Pskc;
39
39
  ((Pskc2) => {
40
- function derive(args) {
40
+ function derive(crypto, args) {
41
41
  const password = new TextEncoder().encode(args.passphrase);
42
42
  if (password.length < PASSPHRASE_MIN_BYTES || password.length > PASSPHRASE_MAX_BYTES) {
43
43
  throw new import_general.ImplementationError(
44
44
  `passphrase UTF-8 length must be ${PASSPHRASE_MIN_BYTES}..${PASSPHRASE_MAX_BYTES} bytes, got ${password.length}`
45
45
  );
46
46
  }
47
- if (args.extPanId.length !== EXT_PAN_ID_LENGTH) {
48
- throw new import_general.ImplementationError(`extPanId must be ${EXT_PAN_ID_LENGTH} bytes, got ${args.extPanId.length}`);
47
+ const extPanId = import_general.Bytes.of(args.extPanId);
48
+ if (extPanId.length !== EXT_PAN_ID_LENGTH) {
49
+ throw new import_general.ImplementationError(`extPanId must be ${EXT_PAN_ID_LENGTH} bytes, got ${extPanId.length}`);
49
50
  }
50
51
  const networkNameBytes = new TextEncoder().encode(args.networkName);
51
52
  if (networkNameBytes.length === 0 || networkNameBytes.length > NETWORK_NAME_MAX_BYTES) {
@@ -55,9 +56,9 @@ var Pskc;
55
56
  }
56
57
  const salt = new Uint8Array(SALT_PREFIX.length + EXT_PAN_ID_LENGTH + networkNameBytes.length);
57
58
  salt.set(SALT_PREFIX, 0);
58
- salt.set(args.extPanId, SALT_PREFIX.length);
59
+ salt.set(extPanId, SALT_PREFIX.length);
59
60
  salt.set(networkNameBytes, SALT_PREFIX.length + EXT_PAN_ID_LENGTH);
60
- return (0, import_Pbkdf2AesCmac.pbkdf2AesCmac)({
61
+ return (0, import_Pbkdf2AesCmac.pbkdf2AesCmac)(crypto, {
61
62
  password,
62
63
  salt,
63
64
  iterations: ITERATIONS,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Pskc.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAoC;AACpC,2BAA8B;AAP9B;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,cAAc,IAAI,YAAY,EAAE,OAAO,QAAQ;AACrD,MAAM,oBAAoB;AAC1B,MAAM,yBAAyB;AAC/B,MAAM,uBAAuB;AAC7B,MAAM,uBAAuB;AAE7B,MAAM,aAAa;AACnB,MAAM,cAAc;AAUb,IAAU;AAAA,CAAV,CAAUA,UAAV;AACI,WAAS,OAAO,MAAqF;AACxG,UAAM,WAAW,IAAI,YAAY,EAAE,OAAO,KAAK,UAAU;AACzD,QAAI,SAAS,SAAS,wBAAwB,SAAS,SAAS,sBAAsB;AAClF,YAAM,IAAI;AAAA,QACN,mCAAmC,oBAAoB,KAAK,oBAAoB,eAAe,SAAS,MAAM;AAAA,MAClH;AAAA,IACJ;AACA,QAAI,KAAK,SAAS,WAAW,mBAAmB;AAC5C,YAAM,IAAI,mCAAoB,oBAAoB,iBAAiB,eAAe,KAAK,SAAS,MAAM,EAAE;AAAA,IAC5G;AACA,UAAM,mBAAmB,IAAI,YAAY,EAAE,OAAO,KAAK,WAAW;AAClE,QAAI,iBAAiB,WAAW,KAAK,iBAAiB,SAAS,wBAAwB;AACnF,YAAM,IAAI;AAAA,QACN,uCAAuC,sBAAsB,eAAe,iBAAiB,MAAM;AAAA,MACvG;AAAA,IACJ;AAEA,UAAM,OAAO,IAAI,WAAW,YAAY,SAAS,oBAAoB,iBAAiB,MAAM;AAC5F,SAAK,IAAI,aAAa,CAAC;AACvB,SAAK,IAAI,KAAK,UAAU,YAAY,MAAM;AAC1C,SAAK,IAAI,kBAAkB,YAAY,SAAS,iBAAiB;AAEjE,eAAO,oCAAc;AAAA,MACjB;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,OAAO;AAAA,IACX,CAAC;AAAA,EACL;AA5BO,EAAAA,MAAS;AAAA,GADH;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmD;AACnD,2BAA8B;AAP9B;AAAA;AAAA;AAAA;AAAA;AASA,MAAM,cAAc,IAAI,YAAY,EAAE,OAAO,QAAQ;AACrD,MAAM,oBAAoB;AAC1B,MAAM,yBAAyB;AAC/B,MAAM,uBAAuB;AAC7B,MAAM,uBAAuB;AAE7B,MAAM,aAAa;AACnB,MAAM,cAAc;AAUb,IAAU;AAAA,CAAV,CAAUA,UAAV;AACI,WAAS,OAAO,QAAgB,MAA2E;AAC9G,UAAM,WAAW,IAAI,YAAY,EAAE,OAAO,KAAK,UAAU;AACzD,QAAI,SAAS,SAAS,wBAAwB,SAAS,SAAS,sBAAsB;AAClF,YAAM,IAAI;AAAA,QACN,mCAAmC,oBAAoB,KAAK,oBAAoB,eAAe,SAAS,MAAM;AAAA,MAClH;AAAA,IACJ;AACA,UAAM,WAAW,qBAAM,GAAG,KAAK,QAAQ;AACvC,QAAI,SAAS,WAAW,mBAAmB;AACvC,YAAM,IAAI,mCAAoB,oBAAoB,iBAAiB,eAAe,SAAS,MAAM,EAAE;AAAA,IACvG;AACA,UAAM,mBAAmB,IAAI,YAAY,EAAE,OAAO,KAAK,WAAW;AAClE,QAAI,iBAAiB,WAAW,KAAK,iBAAiB,SAAS,wBAAwB;AACnF,YAAM,IAAI;AAAA,QACN,uCAAuC,sBAAsB,eAAe,iBAAiB,MAAM;AAAA,MACvG;AAAA,IACJ;AAEA,UAAM,OAAO,IAAI,WAAW,YAAY,SAAS,oBAAoB,iBAAiB,MAAM;AAC5F,SAAK,IAAI,aAAa,CAAC;AACvB,SAAK,IAAI,UAAU,YAAY,MAAM;AACrC,SAAK,IAAI,kBAAkB,YAAY,SAAS,iBAAiB;AAEjE,eAAO,oCAAc,QAAQ;AAAA,MACzB;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,OAAO;AAAA,IACX,CAAC;AAAA,EACL;AA7BO,EAAAA,MAAS;AAAA,GADH;",
5
5
  "names": ["Pskc"]
6
6
  }
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2026 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- export { AesCmac, AesCmacPrf128 } from "./AesCmacPrf128.js";
6
+ export { AesCmacPrf128 } from "./AesCmacPrf128.js";
7
7
  export { pbkdf2AesCmac } from "./Pbkdf2AesCmac.js";
8
8
  export { Pskc } from "./Pskc.js";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
@@ -18,7 +18,6 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var crypto_exports = {};
20
20
  __export(crypto_exports, {
21
- AesCmac: () => import_AesCmacPrf128.AesCmac,
22
21
  AesCmacPrf128: () => import_AesCmacPrf128.AesCmacPrf128,
23
22
  Pskc: () => import_Pskc.Pskc,
24
23
  pbkdf2AesCmac: () => import_Pbkdf2AesCmac.pbkdf2AesCmac
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,2BAAuC;AACvC,2BAA8B;AAC9B,kBAAqB;AARrB;AAAA;AAAA;AAAA;AAAA;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,2BAA8B;AAC9B,2BAA8B;AAC9B,kBAAqB;AARrB;AAAA;AAAA;AAAA;AAAA;",
5
5
  "names": []
6
6
  }
@@ -21,21 +21,21 @@ export { ThreadDatasetError } from "./errors.js";
21
21
  export interface OperationalDataset {
22
22
  channel?: number;
23
23
  panId?: number;
24
- extPanId?: Uint8Array;
24
+ extPanId?: Bytes;
25
25
  networkName?: string;
26
- pskc?: Uint8Array;
27
- networkKey?: Uint8Array;
28
- meshLocalPrefix?: Uint8Array;
26
+ pskc?: Bytes;
27
+ networkKey?: Bytes;
28
+ meshLocalPrefix?: Bytes;
29
29
  securityPolicy?: SecurityPolicy;
30
- activeTimestamp?: Uint8Array;
31
- pendingTimestamp?: Uint8Array;
30
+ activeTimestamp?: Bytes;
31
+ pendingTimestamp?: Bytes;
32
32
  delayTimer?: number;
33
- channelMask?: Uint8Array;
33
+ channelMask?: Bytes;
34
34
  unknownTlvs: Array<{
35
35
  type: number;
36
- value: Uint8Array;
36
+ value: Bytes;
37
37
  }>;
38
- raw: Uint8Array;
38
+ raw: Bytes;
39
39
  }
40
40
  export declare namespace OperationalDataset {
41
41
  /**
@@ -59,7 +59,7 @@ export declare namespace OperationalDataset {
59
59
  * @param ds - Dataset to encode; may be a decoded or manually constructed object.
60
60
  * @returns MeshCoP TLV byte sequence.
61
61
  */
62
- function encode(ds: OperationalDataset): Uint8Array;
62
+ function encode(ds: OperationalDataset): Bytes;
63
63
  /**
64
64
  * Return a copy of the dataset with `pskc` and `networkKey` cleared.
65
65
  *
@@ -1 +1 @@
1
- {"version":3,"file":"OperationalDataset.d.ts","sourceRoot":"","sources":["../../../src/dataset/OperationalDataset.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACxD,GAAG,EAAE,UAAU,CAAC;CACnB;AAED,yBAAiB,kBAAkB,CAAC,CAAC;IACjC;;;;;;;OAOG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,kBAAkB,CAgBhE;IAED;;;;;;;;;;;OAWG;IACH,SAAgB,MAAM,CAAC,EAAE,EAAE,kBAAkB,GAAG,UAAU,CAMzD;IAED;;;;;;;;OAQG;IACH,SAAgB,MAAM,CAAC,EAAE,EAAE,kBAAkB,GAAG,kBAAkB,CAEjE;CACJ"}
1
+ {"version":3,"file":"OperationalDataset.d.ts","sourceRoot":"","sources":["../../../src/dataset/OperationalDataset.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,gBAAgB,CAAC,EAAE,KAAK,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;IACnD,GAAG,EAAE,KAAK,CAAC;CACd;AAED,yBAAiB,kBAAkB,CAAC,CAAC;IACjC;;;;;;;OAOG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,kBAAkB,CAgBhE;IAED;;;;;;;;;;;OAWG;IACH,SAAgB,MAAM,CAAC,EAAE,EAAE,kBAAkB,GAAG,KAAK,CAMpD;IAED;;;;;;;;OAQG;IACH,SAAgB,MAAM,CAAC,EAAE,EAAE,kBAAkB,GAAG,kBAAkB,CAEjE;CACJ"}
@@ -39,7 +39,7 @@ var OperationalDataset;
39
39
  const blob = typeof input === "string" ? import_general.Bytes.of(import_general.Bytes.fromHex(input.replace(/\s+/g, ""))) : import_general.Bytes.of(input);
40
40
  const entries = import_BasicTlvCodec.BasicTlv.walk(blob);
41
41
  const unknownTlvs = new Array();
42
- const originalTlvs = entries.map((e) => ({ type: e.type, value: e.value.slice() }));
42
+ const originalTlvs = entries.map((e) => ({ type: e.type, value: import_general.Bytes.of(e.value).slice() }));
43
43
  const ds = {
44
44
  unknownTlvs,
45
45
  raw: blob.slice()
@@ -56,7 +56,7 @@ var OperationalDataset;
56
56
  if (originals !== void 0) {
57
57
  return encodeWithReplay(ds, originals);
58
58
  }
59
- return import_BasicTlvCodec.BasicTlv.encode(canonicalEntries(ds));
59
+ return import_general.Bytes.of(import_BasicTlvCodec.BasicTlv.encode(canonicalEntries(ds)));
60
60
  }
61
61
  OperationalDataset2.encode = encode;
62
62
  function redact(ds) {
@@ -66,66 +66,67 @@ var OperationalDataset;
66
66
  })(OperationalDataset || (OperationalDataset = {}));
67
67
  const ORIGINAL_TLVS = /* @__PURE__ */ new WeakMap();
68
68
  function applyKnownTlvToDataset(ds, entry, unknownTlvs) {
69
+ const value = import_general.Bytes.of(entry.value);
69
70
  switch (entry.type) {
70
71
  case import_meshcopTlvTypes.MeshCopTlvType.CHANNEL:
71
- ds.channel = decodeChannel(entry.value);
72
+ ds.channel = decodeChannel(value);
72
73
  break;
73
74
  case import_meshcopTlvTypes.MeshCopTlvType.PANID:
74
- if (entry.value.length !== 2) {
75
- throw new import_errors.ThreadDatasetError(`PANID TLV must be 2 bytes, got ${entry.value.length}`);
75
+ if (value.length !== 2) {
76
+ throw new import_errors.ThreadDatasetError(`PANID TLV must be 2 bytes, got ${value.length}`);
76
77
  }
77
- ds.panId = entry.value[0] << 8 | entry.value[1];
78
+ ds.panId = value[0] << 8 | value[1];
78
79
  break;
79
80
  case import_meshcopTlvTypes.MeshCopTlvType.EXTPANID:
80
- if (entry.value.length !== 8) {
81
- throw new import_errors.ThreadDatasetError(`EXTPANID TLV must be 8 bytes, got ${entry.value.length}`);
81
+ if (value.length !== 8) {
82
+ throw new import_errors.ThreadDatasetError(`EXTPANID TLV must be 8 bytes, got ${value.length}`);
82
83
  }
83
- ds.extPanId = entry.value.slice();
84
+ ds.extPanId = value.slice();
84
85
  break;
85
86
  case import_meshcopTlvTypes.MeshCopTlvType.NETWORK_NAME:
86
- ds.networkName = new TextDecoder("utf-8").decode(entry.value);
87
+ ds.networkName = new TextDecoder("utf-8").decode(value);
87
88
  break;
88
89
  case import_meshcopTlvTypes.MeshCopTlvType.PSKC:
89
- ds.pskc = entry.value.slice();
90
+ ds.pskc = value.slice();
90
91
  break;
91
92
  case import_meshcopTlvTypes.MeshCopTlvType.NETWORK_KEY:
92
- if (entry.value.length !== 16) {
93
- throw new import_errors.ThreadDatasetError(`NETWORK_KEY TLV must be 16 bytes, got ${entry.value.length}`);
93
+ if (value.length !== 16) {
94
+ throw new import_errors.ThreadDatasetError(`NETWORK_KEY TLV must be 16 bytes, got ${value.length}`);
94
95
  }
95
- ds.networkKey = entry.value.slice();
96
+ ds.networkKey = value.slice();
96
97
  break;
97
98
  case import_meshcopTlvTypes.MeshCopTlvType.MESH_LOCAL_PREFIX:
98
- if (entry.value.length !== 8) {
99
- throw new import_errors.ThreadDatasetError(`MESH_LOCAL_PREFIX TLV must be 8 bytes, got ${entry.value.length}`);
99
+ if (value.length !== 8) {
100
+ throw new import_errors.ThreadDatasetError(`MESH_LOCAL_PREFIX TLV must be 8 bytes, got ${value.length}`);
100
101
  }
101
- ds.meshLocalPrefix = entry.value.slice();
102
+ ds.meshLocalPrefix = value.slice();
102
103
  break;
103
104
  case import_meshcopTlvTypes.MeshCopTlvType.SECURITY_POLICY:
104
- ds.securityPolicy = import_SecurityPolicy.SecurityPolicy.decode(entry.value);
105
+ ds.securityPolicy = import_SecurityPolicy.SecurityPolicy.decode(value);
105
106
  break;
106
107
  case import_meshcopTlvTypes.MeshCopTlvType.ACTIVE_TIMESTAMP:
107
- if (entry.value.length !== 8) {
108
- throw new import_errors.ThreadDatasetError(`ACTIVE_TIMESTAMP TLV must be 8 bytes, got ${entry.value.length}`);
108
+ if (value.length !== 8) {
109
+ throw new import_errors.ThreadDatasetError(`ACTIVE_TIMESTAMP TLV must be 8 bytes, got ${value.length}`);
109
110
  }
110
- ds.activeTimestamp = entry.value.slice();
111
+ ds.activeTimestamp = value.slice();
111
112
  break;
112
113
  case import_meshcopTlvTypes.MeshCopTlvType.PENDING_TIMESTAMP:
113
- if (entry.value.length !== 8) {
114
- throw new import_errors.ThreadDatasetError(`PENDING_TIMESTAMP TLV must be 8 bytes, got ${entry.value.length}`);
114
+ if (value.length !== 8) {
115
+ throw new import_errors.ThreadDatasetError(`PENDING_TIMESTAMP TLV must be 8 bytes, got ${value.length}`);
115
116
  }
116
- ds.pendingTimestamp = entry.value.slice();
117
+ ds.pendingTimestamp = value.slice();
117
118
  break;
118
119
  case import_meshcopTlvTypes.MeshCopTlvType.DELAY_TIMER:
119
- if (entry.value.length !== 4) {
120
- throw new import_errors.ThreadDatasetError(`DELAY_TIMER TLV must be 4 bytes, got ${entry.value.length}`);
120
+ if (value.length !== 4) {
121
+ throw new import_errors.ThreadDatasetError(`DELAY_TIMER TLV must be 4 bytes, got ${value.length}`);
121
122
  }
122
- ds.delayTimer = entry.value[0] << 24 | entry.value[1] << 16 | entry.value[2] << 8 | entry.value[3];
123
+ ds.delayTimer = value[0] << 24 | value[1] << 16 | value[2] << 8 | value[3];
123
124
  break;
124
125
  case import_meshcopTlvTypes.MeshCopTlvType.CHANNEL_MASK:
125
- ds.channelMask = entry.value.slice();
126
+ ds.channelMask = value.slice();
126
127
  break;
127
128
  default:
128
- unknownTlvs.push({ type: entry.type, value: entry.value.slice() });
129
+ unknownTlvs.push({ type: entry.type, value: value.slice() });
129
130
  break;
130
131
  }
131
132
  }
@@ -162,7 +163,7 @@ function encodeWithReplay(ds, originals) {
162
163
  if (canonical === void 0) continue;
163
164
  out.push({ type: known.type, value: canonical });
164
165
  }
165
- return import_BasicTlvCodec.BasicTlv.encode(out);
166
+ return import_general.Bytes.of(import_BasicTlvCodec.BasicTlv.encode(out));
166
167
  }
167
168
  const EMPTY_BYTES = new Uint8Array();
168
169
  function canonicalEntries(ds) {
@@ -173,7 +174,7 @@ function canonicalEntries(ds) {
173
174
  out.push({ type: known.type, value: canonical });
174
175
  }
175
176
  for (const u of ds.unknownTlvs) {
176
- out.push({ type: u.type, value: u.value.slice() });
177
+ out.push({ type: u.type, value: import_general.Bytes.of(u.value).slice() });
177
178
  }
178
179
  return out;
179
180
  }