@unwanted/matrix-sdk-mini 34.12.0-2 → 34.12.0-4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (492) hide show
  1. package/git-revision.txt +1 -1
  2. package/lib/@types/global.d.js +0 -2
  3. package/lib/@types/global.d.js.map +1 -1
  4. package/lib/browser-index.d.ts.map +1 -1
  5. package/lib/browser-index.js +0 -11
  6. package/lib/browser-index.js.map +1 -1
  7. package/lib/client.d.ts +2 -1221
  8. package/lib/client.d.ts.map +1 -1
  9. package/lib/client.js +331 -2821
  10. package/lib/client.js.map +1 -1
  11. package/lib/embedded.d.ts +0 -22
  12. package/lib/embedded.d.ts.map +1 -1
  13. package/lib/embedded.js +24 -166
  14. package/lib/embedded.js.map +1 -1
  15. package/lib/event-mapper.d.ts.map +1 -1
  16. package/lib/event-mapper.js +0 -4
  17. package/lib/event-mapper.js.map +1 -1
  18. package/lib/matrix.d.ts +0 -19
  19. package/lib/matrix.d.ts.map +1 -1
  20. package/lib/matrix.js +1 -26
  21. package/lib/matrix.js.map +1 -1
  22. package/lib/models/MSC3089Branch.d.ts.map +1 -1
  23. package/lib/models/MSC3089Branch.js +0 -3
  24. package/lib/models/MSC3089Branch.js.map +1 -1
  25. package/lib/models/event.d.ts +0 -94
  26. package/lib/models/event.d.ts.map +1 -1
  27. package/lib/models/event.js +0 -274
  28. package/lib/models/event.js.map +1 -1
  29. package/lib/models/poll.d.ts.map +1 -1
  30. package/lib/models/poll.js +1 -5
  31. package/lib/models/poll.js.map +1 -1
  32. package/lib/models/relations-container.d.ts.map +1 -1
  33. package/lib/models/relations-container.js +1 -7
  34. package/lib/models/relations-container.js.map +1 -1
  35. package/lib/models/relations.d.ts +0 -1
  36. package/lib/models/relations.d.ts.map +1 -1
  37. package/lib/models/relations.js +0 -8
  38. package/lib/models/relations.js.map +1 -1
  39. package/lib/models/room-state.d.ts.map +1 -1
  40. package/lib/models/room-state.js +10 -26
  41. package/lib/models/room-state.js.map +1 -1
  42. package/lib/models/room.d.ts +0 -18
  43. package/lib/models/room.d.ts.map +1 -1
  44. package/lib/models/room.js +94 -148
  45. package/lib/models/room.js.map +1 -1
  46. package/lib/models/thread.d.ts.map +1 -1
  47. package/lib/models/thread.js +0 -1
  48. package/lib/models/thread.js.map +1 -1
  49. package/lib/sliding-sync-sdk.d.ts +2 -3
  50. package/lib/sliding-sync-sdk.d.ts.map +1 -1
  51. package/lib/sliding-sync-sdk.js +41 -90
  52. package/lib/sliding-sync-sdk.js.map +1 -1
  53. package/lib/sync.d.ts +0 -12
  54. package/lib/sync.d.ts.map +1 -1
  55. package/lib/sync.js +1 -73
  56. package/lib/sync.js.map +1 -1
  57. package/lib/testing.d.ts +0 -48
  58. package/lib/testing.d.ts.map +1 -1
  59. package/lib/testing.js +0 -105
  60. package/lib/testing.js.map +1 -1
  61. package/lib/types.d.ts +0 -1
  62. package/lib/types.d.ts.map +1 -1
  63. package/lib/types.js.map +1 -1
  64. package/package.json +1 -3
  65. package/src/@types/global.d.ts +0 -3
  66. package/src/browser-index.ts +0 -11
  67. package/src/client.ts +60 -2882
  68. package/src/embedded.ts +3 -130
  69. package/src/event-mapper.ts +0 -4
  70. package/src/matrix.ts +0 -28
  71. package/src/models/MSC3089Branch.ts +0 -3
  72. package/src/models/event.ts +0 -289
  73. package/src/models/poll.ts +0 -6
  74. package/src/models/relations-container.ts +1 -8
  75. package/src/models/relations.ts +0 -8
  76. package/src/models/room-state.ts +2 -8
  77. package/src/models/room.ts +0 -62
  78. package/src/models/thread.ts +0 -1
  79. package/src/sliding-sync-sdk.ts +2 -72
  80. package/src/sync.ts +1 -98
  81. package/src/testing.ts +0 -108
  82. package/src/types.ts +0 -1
  83. package/CHANGELOG.md +0 -5910
  84. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts +0 -14
  85. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts.map +0 -1
  86. package/lib/@types/AESEncryptedSecretStoragePayload.js +0 -1
  87. package/lib/@types/AESEncryptedSecretStoragePayload.js.map +0 -1
  88. package/lib/@types/crypto.d.ts +0 -47
  89. package/lib/@types/crypto.d.ts.map +0 -1
  90. package/lib/@types/crypto.js +0 -1
  91. package/lib/@types/crypto.js.map +0 -1
  92. package/lib/@types/matrix-sdk-crypto-wasm.d.js +0 -1
  93. package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +0 -1
  94. package/lib/common-crypto/CryptoBackend.d.ts +0 -240
  95. package/lib/common-crypto/CryptoBackend.d.ts.map +0 -1
  96. package/lib/common-crypto/CryptoBackend.js +0 -73
  97. package/lib/common-crypto/CryptoBackend.js.map +0 -1
  98. package/lib/common-crypto/key-passphrase.d.ts +0 -14
  99. package/lib/common-crypto/key-passphrase.d.ts.map +0 -1
  100. package/lib/common-crypto/key-passphrase.js +0 -33
  101. package/lib/common-crypto/key-passphrase.js.map +0 -1
  102. package/lib/crypto/CrossSigning.d.ts +0 -184
  103. package/lib/crypto/CrossSigning.d.ts.map +0 -1
  104. package/lib/crypto/CrossSigning.js +0 -718
  105. package/lib/crypto/CrossSigning.js.map +0 -1
  106. package/lib/crypto/DeviceList.d.ts +0 -216
  107. package/lib/crypto/DeviceList.d.ts.map +0 -1
  108. package/lib/crypto/DeviceList.js +0 -892
  109. package/lib/crypto/DeviceList.js.map +0 -1
  110. package/lib/crypto/EncryptionSetup.d.ts +0 -152
  111. package/lib/crypto/EncryptionSetup.d.ts.map +0 -1
  112. package/lib/crypto/EncryptionSetup.js +0 -356
  113. package/lib/crypto/EncryptionSetup.js.map +0 -1
  114. package/lib/crypto/OlmDevice.d.ts +0 -457
  115. package/lib/crypto/OlmDevice.d.ts.map +0 -1
  116. package/lib/crypto/OlmDevice.js +0 -1241
  117. package/lib/crypto/OlmDevice.js.map +0 -1
  118. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts +0 -109
  119. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts.map +0 -1
  120. package/lib/crypto/OutgoingRoomKeyRequestManager.js +0 -415
  121. package/lib/crypto/OutgoingRoomKeyRequestManager.js.map +0 -1
  122. package/lib/crypto/RoomList.d.ts +0 -26
  123. package/lib/crypto/RoomList.d.ts.map +0 -1
  124. package/lib/crypto/RoomList.js +0 -71
  125. package/lib/crypto/RoomList.js.map +0 -1
  126. package/lib/crypto/SecretSharing.d.ts +0 -24
  127. package/lib/crypto/SecretSharing.d.ts.map +0 -1
  128. package/lib/crypto/SecretSharing.js +0 -194
  129. package/lib/crypto/SecretSharing.js.map +0 -1
  130. package/lib/crypto/SecretStorage.d.ts +0 -55
  131. package/lib/crypto/SecretStorage.d.ts.map +0 -1
  132. package/lib/crypto/SecretStorage.js +0 -118
  133. package/lib/crypto/SecretStorage.js.map +0 -1
  134. package/lib/crypto/aes.d.ts +0 -6
  135. package/lib/crypto/aes.d.ts.map +0 -1
  136. package/lib/crypto/aes.js +0 -24
  137. package/lib/crypto/aes.js.map +0 -1
  138. package/lib/crypto/algorithms/base.d.ts +0 -156
  139. package/lib/crypto/algorithms/base.d.ts.map +0 -1
  140. package/lib/crypto/algorithms/base.js +0 -187
  141. package/lib/crypto/algorithms/base.js.map +0 -1
  142. package/lib/crypto/algorithms/index.d.ts +0 -4
  143. package/lib/crypto/algorithms/index.d.ts.map +0 -1
  144. package/lib/crypto/algorithms/index.js +0 -20
  145. package/lib/crypto/algorithms/index.js.map +0 -1
  146. package/lib/crypto/algorithms/megolm.d.ts +0 -385
  147. package/lib/crypto/algorithms/megolm.d.ts.map +0 -1
  148. package/lib/crypto/algorithms/megolm.js +0 -1822
  149. package/lib/crypto/algorithms/megolm.js.map +0 -1
  150. package/lib/crypto/algorithms/olm.d.ts +0 -5
  151. package/lib/crypto/algorithms/olm.d.ts.map +0 -1
  152. package/lib/crypto/algorithms/olm.js +0 -299
  153. package/lib/crypto/algorithms/olm.js.map +0 -1
  154. package/lib/crypto/api.d.ts +0 -32
  155. package/lib/crypto/api.d.ts.map +0 -1
  156. package/lib/crypto/api.js +0 -22
  157. package/lib/crypto/api.js.map +0 -1
  158. package/lib/crypto/backup.d.ts +0 -227
  159. package/lib/crypto/backup.d.ts.map +0 -1
  160. package/lib/crypto/backup.js +0 -824
  161. package/lib/crypto/backup.js.map +0 -1
  162. package/lib/crypto/crypto.d.ts +0 -3
  163. package/lib/crypto/crypto.d.ts.map +0 -1
  164. package/lib/crypto/crypto.js +0 -19
  165. package/lib/crypto/crypto.js.map +0 -1
  166. package/lib/crypto/dehydration.d.ts +0 -34
  167. package/lib/crypto/dehydration.d.ts.map +0 -1
  168. package/lib/crypto/dehydration.js +0 -252
  169. package/lib/crypto/dehydration.js.map +0 -1
  170. package/lib/crypto/device-converter.d.ts +0 -9
  171. package/lib/crypto/device-converter.d.ts.map +0 -1
  172. package/lib/crypto/device-converter.js +0 -42
  173. package/lib/crypto/device-converter.js.map +0 -1
  174. package/lib/crypto/deviceinfo.d.ts +0 -99
  175. package/lib/crypto/deviceinfo.d.ts.map +0 -1
  176. package/lib/crypto/deviceinfo.js +0 -148
  177. package/lib/crypto/deviceinfo.js.map +0 -1
  178. package/lib/crypto/index.d.ts +0 -1209
  179. package/lib/crypto/index.d.ts.map +0 -1
  180. package/lib/crypto/index.js +0 -4097
  181. package/lib/crypto/index.js.map +0 -1
  182. package/lib/crypto/key_passphrase.d.ts +0 -14
  183. package/lib/crypto/key_passphrase.d.ts.map +0 -1
  184. package/lib/crypto/key_passphrase.js +0 -44
  185. package/lib/crypto/key_passphrase.js.map +0 -1
  186. package/lib/crypto/keybackup.d.ts +0 -18
  187. package/lib/crypto/keybackup.d.ts.map +0 -1
  188. package/lib/crypto/keybackup.js +0 -1
  189. package/lib/crypto/keybackup.js.map +0 -1
  190. package/lib/crypto/olmlib.d.ts +0 -129
  191. package/lib/crypto/olmlib.d.ts.map +0 -1
  192. package/lib/crypto/olmlib.js +0 -492
  193. package/lib/crypto/olmlib.js.map +0 -1
  194. package/lib/crypto/recoverykey.d.ts +0 -2
  195. package/lib/crypto/recoverykey.d.ts.map +0 -1
  196. package/lib/crypto/recoverykey.js +0 -19
  197. package/lib/crypto/recoverykey.js.map +0 -1
  198. package/lib/crypto/store/base.d.ts +0 -252
  199. package/lib/crypto/store/base.d.ts.map +0 -1
  200. package/lib/crypto/store/base.js +0 -64
  201. package/lib/crypto/store/base.js.map +0 -1
  202. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts +0 -187
  203. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts.map +0 -1
  204. package/lib/crypto/store/indexeddb-crypto-store-backend.js +0 -1145
  205. package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +0 -1
  206. package/lib/crypto/store/indexeddb-crypto-store.d.ts +0 -432
  207. package/lib/crypto/store/indexeddb-crypto-store.d.ts.map +0 -1
  208. package/lib/crypto/store/indexeddb-crypto-store.js +0 -728
  209. package/lib/crypto/store/indexeddb-crypto-store.js.map +0 -1
  210. package/lib/crypto/store/localStorage-crypto-store.d.ts +0 -119
  211. package/lib/crypto/store/localStorage-crypto-store.d.ts.map +0 -1
  212. package/lib/crypto/store/localStorage-crypto-store.js +0 -531
  213. package/lib/crypto/store/localStorage-crypto-store.js.map +0 -1
  214. package/lib/crypto/store/memory-crypto-store.d.ts +0 -215
  215. package/lib/crypto/store/memory-crypto-store.d.ts.map +0 -1
  216. package/lib/crypto/store/memory-crypto-store.js +0 -622
  217. package/lib/crypto/store/memory-crypto-store.js.map +0 -1
  218. package/lib/crypto/verification/Base.d.ts +0 -105
  219. package/lib/crypto/verification/Base.d.ts.map +0 -1
  220. package/lib/crypto/verification/Base.js +0 -372
  221. package/lib/crypto/verification/Base.js.map +0 -1
  222. package/lib/crypto/verification/Error.d.ts +0 -35
  223. package/lib/crypto/verification/Error.d.ts.map +0 -1
  224. package/lib/crypto/verification/Error.js +0 -86
  225. package/lib/crypto/verification/Error.js.map +0 -1
  226. package/lib/crypto/verification/IllegalMethod.d.ts +0 -15
  227. package/lib/crypto/verification/IllegalMethod.d.ts.map +0 -1
  228. package/lib/crypto/verification/IllegalMethod.js +0 -43
  229. package/lib/crypto/verification/IllegalMethod.js.map +0 -1
  230. package/lib/crypto/verification/QRCode.d.ts +0 -51
  231. package/lib/crypto/verification/QRCode.d.ts.map +0 -1
  232. package/lib/crypto/verification/QRCode.js +0 -277
  233. package/lib/crypto/verification/QRCode.js.map +0 -1
  234. package/lib/crypto/verification/SAS.d.ts +0 -27
  235. package/lib/crypto/verification/SAS.d.ts.map +0 -1
  236. package/lib/crypto/verification/SAS.js +0 -485
  237. package/lib/crypto/verification/SAS.js.map +0 -1
  238. package/lib/crypto/verification/SASDecimal.d.ts +0 -8
  239. package/lib/crypto/verification/SASDecimal.d.ts.map +0 -1
  240. package/lib/crypto/verification/SASDecimal.js +0 -34
  241. package/lib/crypto/verification/SASDecimal.js.map +0 -1
  242. package/lib/crypto/verification/request/Channel.d.ts +0 -18
  243. package/lib/crypto/verification/request/Channel.d.ts.map +0 -1
  244. package/lib/crypto/verification/request/Channel.js +0 -1
  245. package/lib/crypto/verification/request/Channel.js.map +0 -1
  246. package/lib/crypto/verification/request/InRoomChannel.d.ts +0 -113
  247. package/lib/crypto/verification/request/InRoomChannel.d.ts.map +0 -1
  248. package/lib/crypto/verification/request/InRoomChannel.js +0 -351
  249. package/lib/crypto/verification/request/InRoomChannel.js.map +0 -1
  250. package/lib/crypto/verification/request/ToDeviceChannel.d.ts +0 -105
  251. package/lib/crypto/verification/request/ToDeviceChannel.d.ts.map +0 -1
  252. package/lib/crypto/verification/request/ToDeviceChannel.js +0 -328
  253. package/lib/crypto/verification/request/ToDeviceChannel.js.map +0 -1
  254. package/lib/crypto/verification/request/VerificationRequest.d.ts +0 -227
  255. package/lib/crypto/verification/request/VerificationRequest.d.ts.map +0 -1
  256. package/lib/crypto/verification/request/VerificationRequest.js +0 -937
  257. package/lib/crypto/verification/request/VerificationRequest.js.map +0 -1
  258. package/lib/crypto-api/CryptoEvent.d.ts +0 -69
  259. package/lib/crypto-api/CryptoEvent.d.ts.map +0 -1
  260. package/lib/crypto-api/CryptoEvent.js +0 -33
  261. package/lib/crypto-api/CryptoEvent.js.map +0 -1
  262. package/lib/crypto-api/CryptoEventHandlerMap.d.ts +0 -16
  263. package/lib/crypto-api/CryptoEventHandlerMap.d.ts.map +0 -1
  264. package/lib/crypto-api/CryptoEventHandlerMap.js +0 -22
  265. package/lib/crypto-api/CryptoEventHandlerMap.js.map +0 -1
  266. package/lib/crypto-api/index.d.ts +0 -978
  267. package/lib/crypto-api/index.d.ts.map +0 -1
  268. package/lib/crypto-api/index.js +0 -304
  269. package/lib/crypto-api/index.js.map +0 -1
  270. package/lib/crypto-api/key-passphrase.d.ts +0 -11
  271. package/lib/crypto-api/key-passphrase.d.ts.map +0 -1
  272. package/lib/crypto-api/key-passphrase.js +0 -51
  273. package/lib/crypto-api/key-passphrase.js.map +0 -1
  274. package/lib/crypto-api/keybackup.d.ts +0 -88
  275. package/lib/crypto-api/keybackup.d.ts.map +0 -1
  276. package/lib/crypto-api/keybackup.js +0 -1
  277. package/lib/crypto-api/keybackup.js.map +0 -1
  278. package/lib/crypto-api/recovery-key.d.ts +0 -11
  279. package/lib/crypto-api/recovery-key.d.ts.map +0 -1
  280. package/lib/crypto-api/recovery-key.js +0 -65
  281. package/lib/crypto-api/recovery-key.js.map +0 -1
  282. package/lib/crypto-api/verification.d.ts +0 -344
  283. package/lib/crypto-api/verification.d.ts.map +0 -1
  284. package/lib/crypto-api/verification.js +0 -91
  285. package/lib/crypto-api/verification.js.map +0 -1
  286. package/lib/rendezvous/MSC4108SignInWithQR.d.ts +0 -112
  287. package/lib/rendezvous/MSC4108SignInWithQR.d.ts.map +0 -1
  288. package/lib/rendezvous/MSC4108SignInWithQR.js +0 -392
  289. package/lib/rendezvous/MSC4108SignInWithQR.js.map +0 -1
  290. package/lib/rendezvous/RendezvousChannel.d.ts +0 -27
  291. package/lib/rendezvous/RendezvousChannel.d.ts.map +0 -1
  292. package/lib/rendezvous/RendezvousChannel.js +0 -1
  293. package/lib/rendezvous/RendezvousChannel.js.map +0 -1
  294. package/lib/rendezvous/RendezvousCode.d.ts +0 -9
  295. package/lib/rendezvous/RendezvousCode.d.ts.map +0 -1
  296. package/lib/rendezvous/RendezvousCode.js +0 -1
  297. package/lib/rendezvous/RendezvousCode.js.map +0 -1
  298. package/lib/rendezvous/RendezvousError.d.ts +0 -6
  299. package/lib/rendezvous/RendezvousError.d.ts.map +0 -1
  300. package/lib/rendezvous/RendezvousError.js +0 -23
  301. package/lib/rendezvous/RendezvousError.js.map +0 -1
  302. package/lib/rendezvous/RendezvousFailureReason.d.ts +0 -31
  303. package/lib/rendezvous/RendezvousFailureReason.d.ts.map +0 -1
  304. package/lib/rendezvous/RendezvousFailureReason.js +0 -38
  305. package/lib/rendezvous/RendezvousFailureReason.js.map +0 -1
  306. package/lib/rendezvous/RendezvousIntent.d.ts +0 -5
  307. package/lib/rendezvous/RendezvousIntent.d.ts.map +0 -1
  308. package/lib/rendezvous/RendezvousIntent.js +0 -22
  309. package/lib/rendezvous/RendezvousIntent.js.map +0 -1
  310. package/lib/rendezvous/RendezvousTransport.d.ts +0 -36
  311. package/lib/rendezvous/RendezvousTransport.d.ts.map +0 -1
  312. package/lib/rendezvous/RendezvousTransport.js +0 -1
  313. package/lib/rendezvous/RendezvousTransport.js.map +0 -1
  314. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts +0 -58
  315. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts.map +0 -1
  316. package/lib/rendezvous/channels/MSC4108SecureChannel.js +0 -246
  317. package/lib/rendezvous/channels/MSC4108SecureChannel.js.map +0 -1
  318. package/lib/rendezvous/channels/index.d.ts +0 -2
  319. package/lib/rendezvous/channels/index.d.ts.map +0 -1
  320. package/lib/rendezvous/channels/index.js +0 -18
  321. package/lib/rendezvous/channels/index.js.map +0 -1
  322. package/lib/rendezvous/index.d.ts +0 -10
  323. package/lib/rendezvous/index.d.ts.map +0 -1
  324. package/lib/rendezvous/index.js +0 -23
  325. package/lib/rendezvous/index.js.map +0 -1
  326. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts +0 -61
  327. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +0 -1
  328. package/lib/rendezvous/transports/MSC4108RendezvousSession.js +0 -253
  329. package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +0 -1
  330. package/lib/rendezvous/transports/index.d.ts +0 -2
  331. package/lib/rendezvous/transports/index.d.ts.map +0 -1
  332. package/lib/rendezvous/transports/index.js +0 -18
  333. package/lib/rendezvous/transports/index.js.map +0 -1
  334. package/lib/rust-crypto/CrossSigningIdentity.d.ts +0 -33
  335. package/lib/rust-crypto/CrossSigningIdentity.d.ts.map +0 -1
  336. package/lib/rust-crypto/CrossSigningIdentity.js +0 -157
  337. package/lib/rust-crypto/CrossSigningIdentity.js.map +0 -1
  338. package/lib/rust-crypto/DehydratedDeviceManager.d.ts +0 -98
  339. package/lib/rust-crypto/DehydratedDeviceManager.d.ts.map +0 -1
  340. package/lib/rust-crypto/DehydratedDeviceManager.js +0 -285
  341. package/lib/rust-crypto/DehydratedDeviceManager.js.map +0 -1
  342. package/lib/rust-crypto/KeyClaimManager.d.ts +0 -33
  343. package/lib/rust-crypto/KeyClaimManager.d.ts.map +0 -1
  344. package/lib/rust-crypto/KeyClaimManager.js +0 -82
  345. package/lib/rust-crypto/KeyClaimManager.js.map +0 -1
  346. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts +0 -43
  347. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +0 -1
  348. package/lib/rust-crypto/OutgoingRequestProcessor.js +0 -195
  349. package/lib/rust-crypto/OutgoingRequestProcessor.js.map +0 -1
  350. package/lib/rust-crypto/OutgoingRequestsManager.d.ts +0 -47
  351. package/lib/rust-crypto/OutgoingRequestsManager.d.ts.map +0 -1
  352. package/lib/rust-crypto/OutgoingRequestsManager.js +0 -148
  353. package/lib/rust-crypto/OutgoingRequestsManager.js.map +0 -1
  354. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts +0 -120
  355. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts.map +0 -1
  356. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js +0 -467
  357. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js.map +0 -1
  358. package/lib/rust-crypto/RoomEncryptor.d.ts +0 -98
  359. package/lib/rust-crypto/RoomEncryptor.d.ts.map +0 -1
  360. package/lib/rust-crypto/RoomEncryptor.js +0 -299
  361. package/lib/rust-crypto/RoomEncryptor.js.map +0 -1
  362. package/lib/rust-crypto/backup.d.ts +0 -254
  363. package/lib/rust-crypto/backup.d.ts.map +0 -1
  364. package/lib/rust-crypto/backup.js +0 -837
  365. package/lib/rust-crypto/backup.js.map +0 -1
  366. package/lib/rust-crypto/constants.d.ts +0 -3
  367. package/lib/rust-crypto/constants.d.ts.map +0 -1
  368. package/lib/rust-crypto/constants.js +0 -19
  369. package/lib/rust-crypto/constants.js.map +0 -1
  370. package/lib/rust-crypto/device-converter.d.ts +0 -28
  371. package/lib/rust-crypto/device-converter.d.ts.map +0 -1
  372. package/lib/rust-crypto/device-converter.js +0 -123
  373. package/lib/rust-crypto/device-converter.js.map +0 -1
  374. package/lib/rust-crypto/index.d.ts +0 -61
  375. package/lib/rust-crypto/index.d.ts.map +0 -1
  376. package/lib/rust-crypto/index.js +0 -152
  377. package/lib/rust-crypto/index.js.map +0 -1
  378. package/lib/rust-crypto/libolm_migration.d.ts +0 -81
  379. package/lib/rust-crypto/libolm_migration.d.ts.map +0 -1
  380. package/lib/rust-crypto/libolm_migration.js +0 -459
  381. package/lib/rust-crypto/libolm_migration.js.map +0 -1
  382. package/lib/rust-crypto/rust-crypto.d.ts +0 -556
  383. package/lib/rust-crypto/rust-crypto.d.ts.map +0 -1
  384. package/lib/rust-crypto/rust-crypto.js +0 -2016
  385. package/lib/rust-crypto/rust-crypto.js.map +0 -1
  386. package/lib/rust-crypto/secret-storage.d.ts +0 -22
  387. package/lib/rust-crypto/secret-storage.d.ts.map +0 -1
  388. package/lib/rust-crypto/secret-storage.js +0 -63
  389. package/lib/rust-crypto/secret-storage.js.map +0 -1
  390. package/lib/rust-crypto/verification.d.ts +0 -319
  391. package/lib/rust-crypto/verification.d.ts.map +0 -1
  392. package/lib/rust-crypto/verification.js +0 -816
  393. package/lib/rust-crypto/verification.js.map +0 -1
  394. package/lib/secret-storage.d.ts +0 -370
  395. package/lib/secret-storage.d.ts.map +0 -1
  396. package/lib/secret-storage.js +0 -466
  397. package/lib/secret-storage.js.map +0 -1
  398. package/lib/utils/decryptAESSecretStorageItem.d.ts +0 -12
  399. package/lib/utils/decryptAESSecretStorageItem.d.ts.map +0 -1
  400. package/lib/utils/decryptAESSecretStorageItem.js +0 -50
  401. package/lib/utils/decryptAESSecretStorageItem.js.map +0 -1
  402. package/lib/utils/encryptAESSecretStorageItem.d.ts +0 -16
  403. package/lib/utils/encryptAESSecretStorageItem.d.ts.map +0 -1
  404. package/lib/utils/encryptAESSecretStorageItem.js +0 -68
  405. package/lib/utils/encryptAESSecretStorageItem.js.map +0 -1
  406. package/lib/utils/internal/deriveKeys.d.ts +0 -10
  407. package/lib/utils/internal/deriveKeys.d.ts.map +0 -1
  408. package/lib/utils/internal/deriveKeys.js +0 -60
  409. package/lib/utils/internal/deriveKeys.js.map +0 -1
  410. package/src/@types/AESEncryptedSecretStoragePayload.ts +0 -29
  411. package/src/@types/crypto.ts +0 -73
  412. package/src/@types/matrix-sdk-crypto-wasm.d.ts +0 -44
  413. package/src/common-crypto/CryptoBackend.ts +0 -302
  414. package/src/common-crypto/README.md +0 -4
  415. package/src/common-crypto/key-passphrase.ts +0 -43
  416. package/src/crypto/CrossSigning.ts +0 -773
  417. package/src/crypto/DeviceList.ts +0 -989
  418. package/src/crypto/EncryptionSetup.ts +0 -351
  419. package/src/crypto/OlmDevice.ts +0 -1500
  420. package/src/crypto/OutgoingRoomKeyRequestManager.ts +0 -485
  421. package/src/crypto/RoomList.ts +0 -70
  422. package/src/crypto/SecretSharing.ts +0 -240
  423. package/src/crypto/SecretStorage.ts +0 -136
  424. package/src/crypto/aes.ts +0 -23
  425. package/src/crypto/algorithms/base.ts +0 -236
  426. package/src/crypto/algorithms/index.ts +0 -20
  427. package/src/crypto/algorithms/megolm.ts +0 -2216
  428. package/src/crypto/algorithms/olm.ts +0 -381
  429. package/src/crypto/api.ts +0 -70
  430. package/src/crypto/backup.ts +0 -922
  431. package/src/crypto/crypto.ts +0 -18
  432. package/src/crypto/dehydration.ts +0 -272
  433. package/src/crypto/device-converter.ts +0 -45
  434. package/src/crypto/deviceinfo.ts +0 -158
  435. package/src/crypto/index.ts +0 -4414
  436. package/src/crypto/key_passphrase.ts +0 -42
  437. package/src/crypto/keybackup.ts +0 -47
  438. package/src/crypto/olmlib.ts +0 -539
  439. package/src/crypto/recoverykey.ts +0 -18
  440. package/src/crypto/store/base.ts +0 -348
  441. package/src/crypto/store/indexeddb-crypto-store-backend.ts +0 -1250
  442. package/src/crypto/store/indexeddb-crypto-store.ts +0 -845
  443. package/src/crypto/store/localStorage-crypto-store.ts +0 -579
  444. package/src/crypto/store/memory-crypto-store.ts +0 -680
  445. package/src/crypto/verification/Base.ts +0 -409
  446. package/src/crypto/verification/Error.ts +0 -76
  447. package/src/crypto/verification/IllegalMethod.ts +0 -50
  448. package/src/crypto/verification/QRCode.ts +0 -310
  449. package/src/crypto/verification/SAS.ts +0 -494
  450. package/src/crypto/verification/SASDecimal.ts +0 -37
  451. package/src/crypto/verification/request/Channel.ts +0 -34
  452. package/src/crypto/verification/request/InRoomChannel.ts +0 -371
  453. package/src/crypto/verification/request/ToDeviceChannel.ts +0 -354
  454. package/src/crypto/verification/request/VerificationRequest.ts +0 -976
  455. package/src/crypto-api/CryptoEvent.ts +0 -93
  456. package/src/crypto-api/CryptoEventHandlerMap.ts +0 -32
  457. package/src/crypto-api/index.ts +0 -1175
  458. package/src/crypto-api/key-passphrase.ts +0 -58
  459. package/src/crypto-api/keybackup.ts +0 -115
  460. package/src/crypto-api/recovery-key.ts +0 -69
  461. package/src/crypto-api/verification.ts +0 -408
  462. package/src/rendezvous/MSC4108SignInWithQR.ts +0 -444
  463. package/src/rendezvous/RendezvousChannel.ts +0 -48
  464. package/src/rendezvous/RendezvousCode.ts +0 -25
  465. package/src/rendezvous/RendezvousError.ts +0 -26
  466. package/src/rendezvous/RendezvousFailureReason.ts +0 -49
  467. package/src/rendezvous/RendezvousIntent.ts +0 -20
  468. package/src/rendezvous/RendezvousTransport.ts +0 -58
  469. package/src/rendezvous/channels/MSC4108SecureChannel.ts +0 -270
  470. package/src/rendezvous/channels/index.ts +0 -17
  471. package/src/rendezvous/index.ts +0 -25
  472. package/src/rendezvous/transports/MSC4108RendezvousSession.ts +0 -270
  473. package/src/rendezvous/transports/index.ts +0 -17
  474. package/src/rust-crypto/CrossSigningIdentity.ts +0 -183
  475. package/src/rust-crypto/DehydratedDeviceManager.ts +0 -306
  476. package/src/rust-crypto/KeyClaimManager.ts +0 -86
  477. package/src/rust-crypto/OutgoingRequestProcessor.ts +0 -236
  478. package/src/rust-crypto/OutgoingRequestsManager.ts +0 -143
  479. package/src/rust-crypto/PerSessionKeyBackupDownloader.ts +0 -501
  480. package/src/rust-crypto/RoomEncryptor.ts +0 -352
  481. package/src/rust-crypto/backup.ts +0 -881
  482. package/src/rust-crypto/constants.ts +0 -18
  483. package/src/rust-crypto/device-converter.ts +0 -128
  484. package/src/rust-crypto/index.ts +0 -237
  485. package/src/rust-crypto/libolm_migration.ts +0 -530
  486. package/src/rust-crypto/rust-crypto.ts +0 -2205
  487. package/src/rust-crypto/secret-storage.ts +0 -60
  488. package/src/rust-crypto/verification.ts +0 -830
  489. package/src/secret-storage.ts +0 -693
  490. package/src/utils/decryptAESSecretStorageItem.ts +0 -54
  491. package/src/utils/encryptAESSecretStorageItem.ts +0 -73
  492. package/src/utils/internal/deriveKeys.ts +0 -63
@@ -1,35 +0,0 @@
1
- /**
2
- * Error messages.
3
- */
4
- import { MatrixEvent } from "../../models/event.ts";
5
- export declare function newVerificationError(code: string, reason: string, extraData?: Record<string, any>): MatrixEvent;
6
- export declare function errorFactory(code: string, reason: string): (extraData?: Record<string, any>) => MatrixEvent;
7
- /**
8
- * The verification was cancelled by the user.
9
- */
10
- export declare const newUserCancelledError: (extraData?: Record<string, any>) => MatrixEvent;
11
- /**
12
- * The verification timed out.
13
- */
14
- export declare const newTimeoutError: (extraData?: Record<string, any>) => MatrixEvent;
15
- /**
16
- * An unknown method was selected.
17
- */
18
- export declare const newUnknownMethodError: (extraData?: Record<string, any>) => MatrixEvent;
19
- /**
20
- * An unexpected message was sent.
21
- */
22
- export declare const newUnexpectedMessageError: (extraData?: Record<string, any>) => MatrixEvent;
23
- /**
24
- * The key does not match.
25
- */
26
- export declare const newKeyMismatchError: (extraData?: Record<string, any>) => MatrixEvent;
27
- /**
28
- * An invalid message was sent.
29
- */
30
- export declare const newInvalidMessageError: (extraData?: Record<string, any>) => MatrixEvent;
31
- export declare function errorFromEvent(event: MatrixEvent): {
32
- code: string;
33
- reason: string;
34
- };
35
- //# sourceMappingURL=Error.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Error.d.ts","sourceRoot":"","sources":["../../../src/crypto/verification/Error.ts"],"names":[],"mappings":"AAgBA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,WAAW,CAM/G;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAAW,CAI3G;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,eATuC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WASjB,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,eAAe,eAd6C,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAc5B,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,qBAAqB,eAnBuC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAmBV,CAAC;AAExF;;GAEG;AACH,eAAO,MAAM,yBAAyB,eAxBmC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAwBE,CAAC;AAEpG;;GAEG;AACH,eAAO,MAAM,mBAAmB,eA7ByC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WA6BhB,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,sBAAsB,eAlCsC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,WAkCP,CAAC;AAE3F,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAQnF"}
@@ -1,86 +0,0 @@
1
- /*
2
- Copyright 2018 - 2021 The Matrix.org Foundation C.I.C.
3
-
4
- Licensed under the Apache License, Version 2.0 (the "License");
5
- you may not use this file except in compliance with the License.
6
- You may obtain a copy of the License at
7
-
8
- http://www.apache.org/licenses/LICENSE-2.0
9
-
10
- Unless required by applicable law or agreed to in writing, software
11
- distributed under the License is distributed on an "AS IS" BASIS,
12
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- See the License for the specific language governing permissions and
14
- limitations under the License.
15
- */
16
-
17
- /**
18
- * Error messages.
19
- */
20
-
21
- import { MatrixEvent } from "../../models/event.js";
22
- import { EventType } from "../../@types/event.js";
23
- export function newVerificationError(code, reason, extraData) {
24
- var content = Object.assign({}, {
25
- code,
26
- reason
27
- }, extraData);
28
- return new MatrixEvent({
29
- type: EventType.KeyVerificationCancel,
30
- content
31
- });
32
- }
33
- export function errorFactory(code, reason) {
34
- return function (extraData) {
35
- return newVerificationError(code, reason, extraData);
36
- };
37
- }
38
-
39
- /**
40
- * The verification was cancelled by the user.
41
- */
42
- export var newUserCancelledError = errorFactory("m.user", "Cancelled by user");
43
-
44
- /**
45
- * The verification timed out.
46
- */
47
- export var newTimeoutError = errorFactory("m.timeout", "Timed out");
48
-
49
- /**
50
- * An unknown method was selected.
51
- */
52
- export var newUnknownMethodError = errorFactory("m.unknown_method", "Unknown method");
53
-
54
- /**
55
- * An unexpected message was sent.
56
- */
57
- export var newUnexpectedMessageError = errorFactory("m.unexpected_message", "Unexpected message");
58
-
59
- /**
60
- * The key does not match.
61
- */
62
- export var newKeyMismatchError = errorFactory("m.key_mismatch", "Key mismatch");
63
-
64
- /**
65
- * An invalid message was sent.
66
- */
67
- export var newInvalidMessageError = errorFactory("m.invalid_message", "Invalid message");
68
- export function errorFromEvent(event) {
69
- var content = event.getContent();
70
- if (content) {
71
- var {
72
- code,
73
- reason
74
- } = content;
75
- return {
76
- code,
77
- reason
78
- };
79
- } else {
80
- return {
81
- code: "Unknown error",
82
- reason: "m.unknown"
83
- };
84
- }
85
- }
86
- //# sourceMappingURL=Error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Error.js","names":["MatrixEvent","EventType","newVerificationError","code","reason","extraData","content","Object","assign","type","KeyVerificationCancel","errorFactory","newUserCancelledError","newTimeoutError","newUnknownMethodError","newUnexpectedMessageError","newKeyMismatchError","newInvalidMessageError","errorFromEvent","event","getContent"],"sources":["../../../src/crypto/verification/Error.ts"],"sourcesContent":["/*\nCopyright 2018 - 2021 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\n/**\n * Error messages.\n */\n\nimport { MatrixEvent } from \"../../models/event.ts\";\nimport { EventType } from \"../../@types/event.ts\";\n\nexport function newVerificationError(code: string, reason: string, extraData?: Record<string, any>): MatrixEvent {\n const content = Object.assign({}, { code, reason }, extraData);\n return new MatrixEvent({\n type: EventType.KeyVerificationCancel,\n content,\n });\n}\n\nexport function errorFactory(code: string, reason: string): (extraData?: Record<string, any>) => MatrixEvent {\n return function (extraData?: Record<string, any>) {\n return newVerificationError(code, reason, extraData);\n };\n}\n\n/**\n * The verification was cancelled by the user.\n */\nexport const newUserCancelledError = errorFactory(\"m.user\", \"Cancelled by user\");\n\n/**\n * The verification timed out.\n */\nexport const newTimeoutError = errorFactory(\"m.timeout\", \"Timed out\");\n\n/**\n * An unknown method was selected.\n */\nexport const newUnknownMethodError = errorFactory(\"m.unknown_method\", \"Unknown method\");\n\n/**\n * An unexpected message was sent.\n */\nexport const newUnexpectedMessageError = errorFactory(\"m.unexpected_message\", \"Unexpected message\");\n\n/**\n * The key does not match.\n */\nexport const newKeyMismatchError = errorFactory(\"m.key_mismatch\", \"Key mismatch\");\n\n/**\n * An invalid message was sent.\n */\nexport const newInvalidMessageError = errorFactory(\"m.invalid_message\", \"Invalid message\");\n\nexport function errorFromEvent(event: MatrixEvent): { code: string; reason: string } {\n const content = event.getContent();\n if (content) {\n const { code, reason } = content;\n return { code, reason };\n } else {\n return { code: \"Unknown error\", reason: \"m.unknown\" };\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,SAASA,WAAW,QAAQ,uBAAuB;AACnD,SAASC,SAAS,QAAQ,uBAAuB;AAEjD,OAAO,SAASC,oBAAoBA,CAACC,IAAY,EAAEC,MAAc,EAAEC,SAA+B,EAAe;EAC7G,IAAMC,OAAO,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAE;IAAEL,IAAI;IAAEC;EAAO,CAAC,EAAEC,SAAS,CAAC;EAC9D,OAAO,IAAIL,WAAW,CAAC;IACnBS,IAAI,EAAER,SAAS,CAACS,qBAAqB;IACrCJ;EACJ,CAAC,CAAC;AACN;AAEA,OAAO,SAASK,YAAYA,CAACR,IAAY,EAAEC,MAAc,EAAoD;EACzG,OAAO,UAAUC,SAA+B,EAAE;IAC9C,OAAOH,oBAAoB,CAACC,IAAI,EAAEC,MAAM,EAAEC,SAAS,CAAC;EACxD,CAAC;AACL;;AAEA;AACA;AACA;AACA,OAAO,IAAMO,qBAAqB,GAAGD,YAAY,CAAC,QAAQ,EAAE,mBAAmB,CAAC;;AAEhF;AACA;AACA;AACA,OAAO,IAAME,eAAe,GAAGF,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC;;AAErE;AACA;AACA;AACA,OAAO,IAAMG,qBAAqB,GAAGH,YAAY,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;;AAEvF;AACA;AACA;AACA,OAAO,IAAMI,yBAAyB,GAAGJ,YAAY,CAAC,sBAAsB,EAAE,oBAAoB,CAAC;;AAEnG;AACA;AACA;AACA,OAAO,IAAMK,mBAAmB,GAAGL,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC;;AAEjF;AACA;AACA;AACA,OAAO,IAAMM,sBAAsB,GAAGN,YAAY,CAAC,mBAAmB,EAAE,iBAAiB,CAAC;AAE1F,OAAO,SAASO,cAAcA,CAACC,KAAkB,EAAoC;EACjF,IAAMb,OAAO,GAAGa,KAAK,CAACC,UAAU,CAAC,CAAC;EAClC,IAAId,OAAO,EAAE;IACT,IAAM;MAAEH,IAAI;MAAEC;IAAO,CAAC,GAAGE,OAAO;IAChC,OAAO;MAAEH,IAAI;MAAEC;IAAO,CAAC;EAC3B,CAAC,MAAM;IACH,OAAO;MAAED,IAAI,EAAE,eAAe;MAAEC,MAAM,EAAE;IAAY,CAAC;EACzD;AACJ","ignoreList":[]}
@@ -1,15 +0,0 @@
1
- /**
2
- * Verification method that is illegal to have (cannot possibly
3
- * do verification with this method).
4
- */
5
- import { VerificationBase as Base, VerificationEvent, VerificationEventHandlerMap } from "./Base.ts";
6
- import { IVerificationChannel } from "./request/Channel.ts";
7
- import { MatrixClient } from "../../client.ts";
8
- import { MatrixEvent } from "../../models/event.ts";
9
- import { VerificationRequest } from "./request/VerificationRequest.ts";
10
- export declare class IllegalMethod extends Base<VerificationEvent, VerificationEventHandlerMap> {
11
- static factory(channel: IVerificationChannel, baseApis: MatrixClient, userId: string, deviceId: string, startEvent: MatrixEvent, request: VerificationRequest): IllegalMethod;
12
- static get NAME(): string;
13
- protected doVerification: () => Promise<void>;
14
- }
15
- //# sourceMappingURL=IllegalMethod.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IllegalMethod.d.ts","sourceRoot":"","sources":["../../../src/crypto/verification/IllegalMethod.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,IAAI,IAAI,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,qBAAa,aAAc,SAAQ,IAAI,CAAC,iBAAiB,EAAE,2BAA2B,CAAC;WACrE,OAAO,CACjB,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,WAAW,EACvB,OAAO,EAAE,mBAAmB,GAC7B,aAAa;IAKhB,WAAkB,IAAI,IAAI,MAAM,CAI/B;IAED,SAAS,CAAC,cAAc,QAAa,OAAO,CAAC,IAAI,CAAC,CAEhD;CACL"}
@@ -1,43 +0,0 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- /*
4
- Copyright 2020 The Matrix.org Foundation C.I.C.
5
-
6
- Licensed under the Apache License, Version 2.0 (the "License");
7
- you may not use this file except in compliance with the License.
8
- You may obtain a copy of the License at
9
-
10
- http://www.apache.org/licenses/LICENSE-2.0
11
-
12
- Unless required by applicable law or agreed to in writing, software
13
- distributed under the License is distributed on an "AS IS" BASIS,
14
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- See the License for the specific language governing permissions and
16
- limitations under the License.
17
- */
18
-
19
- /**
20
- * Verification method that is illegal to have (cannot possibly
21
- * do verification with this method).
22
- */
23
-
24
- import { VerificationBase as Base } from "./Base.js";
25
- export class IllegalMethod extends Base {
26
- constructor() {
27
- super(...arguments);
28
- _defineProperty(this, "doVerification", /*#__PURE__*/_asyncToGenerator(function* () {
29
- throw new Error("Verification is not possible with this method");
30
- }));
31
- }
32
- static factory(channel, baseApis, userId, deviceId, startEvent, request) {
33
- return new IllegalMethod(channel, baseApis, userId, deviceId, startEvent, request);
34
- }
35
-
36
- // eslint-disable-next-line @typescript-eslint/naming-convention
37
- static get NAME() {
38
- // Typically the name will be something else, but to complete
39
- // the contract we offer a default one here.
40
- return "org.matrix.illegal_method";
41
- }
42
- }
43
- //# sourceMappingURL=IllegalMethod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IllegalMethod.js","names":["VerificationBase","Base","IllegalMethod","constructor","arguments","_defineProperty","_asyncToGenerator","Error","factory","channel","baseApis","userId","deviceId","startEvent","request","NAME"],"sources":["../../../src/crypto/verification/IllegalMethod.ts"],"sourcesContent":["/*\nCopyright 2020 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\n/**\n * Verification method that is illegal to have (cannot possibly\n * do verification with this method).\n */\n\nimport { VerificationBase as Base, VerificationEvent, VerificationEventHandlerMap } from \"./Base.ts\";\nimport { IVerificationChannel } from \"./request/Channel.ts\";\nimport { MatrixClient } from \"../../client.ts\";\nimport { MatrixEvent } from \"../../models/event.ts\";\nimport { VerificationRequest } from \"./request/VerificationRequest.ts\";\n\nexport class IllegalMethod extends Base<VerificationEvent, VerificationEventHandlerMap> {\n public static factory(\n channel: IVerificationChannel,\n baseApis: MatrixClient,\n userId: string,\n deviceId: string,\n startEvent: MatrixEvent,\n request: VerificationRequest,\n ): IllegalMethod {\n return new IllegalMethod(channel, baseApis, userId, deviceId, startEvent, request);\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public static get NAME(): string {\n // Typically the name will be something else, but to complete\n // the contract we offer a default one here.\n return \"org.matrix.illegal_method\";\n }\n\n protected doVerification = async (): Promise<void> => {\n throw new Error(\"Verification is not possible with this method\");\n };\n}\n"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAASA,gBAAgB,IAAIC,IAAI,QAAwD,WAAW;AAMpG,OAAO,MAAMC,aAAa,SAASD,IAAI,CAAiD;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,sCAAAC,iBAAA,CAmBzD,aAA2B;MAClD,MAAM,IAAIC,KAAK,CAAC,+CAA+C,CAAC;IACpE,CAAC;EAAA;EApBD,OAAcC,OAAOA,CACjBC,OAA6B,EAC7BC,QAAsB,EACtBC,MAAc,EACdC,QAAgB,EAChBC,UAAuB,EACvBC,OAA4B,EACf;IACb,OAAO,IAAIZ,aAAa,CAACO,OAAO,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,OAAO,CAAC;EACtF;;EAEA;EACA,WAAkBC,IAAIA,CAAA,EAAW;IAC7B;IACA;IACA,OAAO,2BAA2B;EACtC;AAKJ","ignoreList":[]}
@@ -1,51 +0,0 @@
1
- /**
2
- * QR code key verification.
3
- */
4
- import { VerificationBase as Base } from "./Base.ts";
5
- import { VerificationRequest } from "./request/VerificationRequest.ts";
6
- import { MatrixClient } from "../../client.ts";
7
- import { IVerificationChannel } from "./request/Channel.ts";
8
- import { MatrixEvent } from "../../models/event.ts";
9
- import { ShowQrCodeCallbacks, VerifierEvent } from "../../crypto-api/verification.ts";
10
- import { VerificationMethod } from "../../types.ts";
11
- export declare const SHOW_QR_CODE_METHOD = VerificationMethod.ShowQrCode;
12
- export declare const SCAN_QR_CODE_METHOD = VerificationMethod.ScanQrCode;
13
- /** @deprecated use VerifierEvent */
14
- export type QrCodeEvent = VerifierEvent;
15
- /** @deprecated use VerifierEvent */
16
- export declare const QrCodeEvent: typeof VerifierEvent;
17
- /** @deprecated Avoid referencing this class directly; instead use {@link Crypto.Verifier}. */
18
- export declare class ReciprocateQRCode extends Base {
19
- reciprocateQREvent?: ShowQrCodeCallbacks;
20
- static factory(channel: IVerificationChannel, baseApis: MatrixClient, userId: string, deviceId: string, startEvent: MatrixEvent, request: VerificationRequest): ReciprocateQRCode;
21
- static get NAME(): string;
22
- protected doVerification: () => Promise<void>;
23
- getReciprocateQrCodeCallbacks(): ShowQrCodeCallbacks | null;
24
- }
25
- declare enum Mode {
26
- VerifyOtherUser = 0,// Verifying someone who isn't us
27
- VerifySelfTrusted = 1,// We trust the master key
28
- VerifySelfUntrusted = 2
29
- }
30
- export declare class QRCodeData {
31
- readonly mode: Mode;
32
- private readonly sharedSecret;
33
- readonly otherUserMasterKey: string | null;
34
- readonly otherDeviceKey: string | null;
35
- readonly myMasterKey: string | null;
36
- private readonly buffer;
37
- constructor(mode: Mode, sharedSecret: string, otherUserMasterKey: string | null, otherDeviceKey: string | null, myMasterKey: string | null, buffer: Buffer);
38
- static create(request: VerificationRequest, client: MatrixClient): Promise<QRCodeData>;
39
- /**
40
- * The unpadded base64 encoded shared secret.
41
- */
42
- get encodedSharedSecret(): string;
43
- getBuffer(): Buffer;
44
- private static generateSharedSecret;
45
- private static getOtherDeviceKey;
46
- private static determineMode;
47
- private static generateQrData;
48
- private static generateBuffer;
49
- }
50
- export {};
51
- //# sourceMappingURL=QRCode.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QRCode.d.ts","sourceRoot":"","sources":["../../../src/crypto/verification/QRCode.ts"],"names":[],"mappings":"AAgBA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAIrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,eAAO,MAAM,mBAAmB,gCAAgC,CAAC;AACjE,eAAO,MAAM,mBAAmB,gCAAgC,CAAC;AAEjE,oCAAoC;AACpC,MAAM,MAAM,WAAW,GAAG,aAAa,CAAC;AACxC,oCAAoC;AACpC,eAAO,MAAM,WAAW,sBAAgB,CAAC;AAEzC,8FAA8F;AAC9F,qBAAa,iBAAkB,SAAQ,IAAI;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;WAElC,OAAO,CACjB,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,WAAW,EACvB,OAAO,EAAE,mBAAmB,GAC7B,iBAAiB;IAKpB,WAAkB,IAAI,IAAI,MAAM,CAE/B;IAED,SAAS,CAAC,cAAc,QAAa,OAAO,CAAC,IAAI,CAAC,CA+DhD;IAEK,6BAA6B,IAAI,mBAAmB,GAAG,IAAI;CAGrE;AAKD,aAAK,IAAI;IACL,eAAe,IAAO,CAAE,iCAAiC;IACzD,iBAAiB,IAAO,CAAE,0BAA0B;IACpD,mBAAmB,IAAO;CAC7B;AAYD,qBAAa,UAAU;aAEC,IAAI,EAAE,IAAI;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;aAEb,kBAAkB,EAAE,MAAM,GAAG,IAAI;aAEjC,cAAc,EAAE,MAAM,GAAG,IAAI;aAE7B,WAAW,EAAE,MAAM,GAAG,IAAI;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM;gBARP,IAAI,EAAE,IAAI,EACT,YAAY,EAAE,MAAM,EAErB,kBAAkB,EAAE,MAAM,GAAG,IAAI,EAEjC,cAAc,EAAE,MAAM,GAAG,IAAI,EAE7B,WAAW,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,MAAM;WAGf,MAAM,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IA6BnG;;OAEG;IACH,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAEM,SAAS,IAAI,MAAM;IAI1B,OAAO,CAAC,MAAM,CAAC,oBAAoB;mBAMd,iBAAiB;IAUtC,OAAO,CAAC,MAAM,CAAC,aAAa;IAiB5B,OAAO,CAAC,MAAM,CAAC,cAAc;IAyC7B,OAAO,CAAC,MAAM,CAAC,cAAc;CAkChC"}
@@ -1,277 +0,0 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- /*
4
- Copyright 2018 - 2021 The Matrix.org Foundation C.I.C.
5
-
6
- Licensed under the Apache License, Version 2.0 (the "License");
7
- you may not use this file except in compliance with the License.
8
- You may obtain a copy of the License at
9
-
10
- http://www.apache.org/licenses/LICENSE-2.0
11
-
12
- Unless required by applicable law or agreed to in writing, software
13
- distributed under the License is distributed on an "AS IS" BASIS,
14
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- See the License for the specific language governing permissions and
16
- limitations under the License.
17
- */
18
-
19
- /**
20
- * QR code key verification.
21
- */
22
-
23
- import { VerificationBase as Base } from "./Base.js";
24
- import { newKeyMismatchError, newUserCancelledError } from "./Error.js";
25
- import { decodeBase64, encodeUnpaddedBase64 } from "../../base64.js";
26
- import { logger } from "../../logger.js";
27
- import { VerifierEvent } from "../../crypto-api/verification.js";
28
- import { VerificationMethod } from "../../types.js";
29
- export var SHOW_QR_CODE_METHOD = VerificationMethod.ShowQrCode;
30
- export var SCAN_QR_CODE_METHOD = VerificationMethod.ScanQrCode;
31
-
32
- /** @deprecated use VerifierEvent */
33
-
34
- /** @deprecated use VerifierEvent */
35
- export var QrCodeEvent = VerifierEvent;
36
-
37
- /** @deprecated Avoid referencing this class directly; instead use {@link Crypto.Verifier}. */
38
- export class ReciprocateQRCode extends Base {
39
- constructor() {
40
- var _this;
41
- super(...arguments);
42
- _this = this;
43
- _defineProperty(this, "reciprocateQREvent", void 0);
44
- _defineProperty(this, "doVerification", /*#__PURE__*/_asyncToGenerator(function* () {
45
- if (!_this.startEvent) {
46
- // TODO: Support scanning QR codes
47
- throw new Error("It is not currently possible to start verification" + "with this method yet.");
48
- }
49
- var {
50
- qrCodeData
51
- } = _this.request;
52
- // 1. check the secret
53
- if (_this.startEvent.getContent()["secret"] !== (qrCodeData === null || qrCodeData === void 0 ? void 0 : qrCodeData.encodedSharedSecret)) {
54
- throw newKeyMismatchError();
55
- }
56
-
57
- // 2. ask if other user shows shield as well
58
- yield new Promise((resolve, reject) => {
59
- _this.reciprocateQREvent = {
60
- confirm: resolve,
61
- cancel: () => reject(newUserCancelledError())
62
- };
63
- _this.emit(QrCodeEvent.ShowReciprocateQr, _this.reciprocateQREvent);
64
- });
65
-
66
- // 3. determine key to sign / mark as trusted
67
- var keys = {};
68
- switch (qrCodeData === null || qrCodeData === void 0 ? void 0 : qrCodeData.mode) {
69
- case Mode.VerifyOtherUser:
70
- {
71
- // add master key to keys to be signed, only if we're not doing self-verification
72
- var masterKey = qrCodeData.otherUserMasterKey;
73
- keys["ed25519:".concat(masterKey)] = masterKey;
74
- break;
75
- }
76
- case Mode.VerifySelfTrusted:
77
- {
78
- var deviceId = _this.request.targetDevice.deviceId;
79
- keys["ed25519:".concat(deviceId)] = qrCodeData.otherDeviceKey;
80
- break;
81
- }
82
- case Mode.VerifySelfUntrusted:
83
- {
84
- var _masterKey = qrCodeData.myMasterKey;
85
- keys["ed25519:".concat(_masterKey)] = _masterKey;
86
- break;
87
- }
88
- }
89
-
90
- // 4. sign the key (or mark own MSK as verified in case of MODE_VERIFY_SELF_TRUSTED)
91
- yield _this.verifyKeys(_this.userId, keys, (keyId, device, keyInfo) => {
92
- // make sure the device has the expected keys
93
- var targetKey = keys[keyId];
94
- if (!targetKey) throw newKeyMismatchError();
95
- if (keyInfo !== targetKey) {
96
- logger.error("key ID from key info does not match");
97
- throw newKeyMismatchError();
98
- }
99
- for (var deviceKeyId in device.keys) {
100
- if (!deviceKeyId.startsWith("ed25519")) continue;
101
- var deviceTargetKey = keys[deviceKeyId];
102
- if (!deviceTargetKey) throw newKeyMismatchError();
103
- if (device.keys[deviceKeyId] !== deviceTargetKey) {
104
- logger.error("master key does not match");
105
- throw newKeyMismatchError();
106
- }
107
- }
108
- });
109
- }));
110
- }
111
- static factory(channel, baseApis, userId, deviceId, startEvent, request) {
112
- return new ReciprocateQRCode(channel, baseApis, userId, deviceId, startEvent, request);
113
- }
114
-
115
- // eslint-disable-next-line @typescript-eslint/naming-convention
116
- static get NAME() {
117
- return "m.reciprocate.v1";
118
- }
119
- getReciprocateQrCodeCallbacks() {
120
- var _this$reciprocateQREv;
121
- return (_this$reciprocateQREv = this.reciprocateQREvent) !== null && _this$reciprocateQREv !== void 0 ? _this$reciprocateQREv : null;
122
- }
123
- }
124
- var CODE_VERSION = 0x02; // the version of binary QR codes we support
125
- var BINARY_PREFIX = "MATRIX"; // ASCII, used to prefix the binary format
126
- var Mode = /*#__PURE__*/function (Mode) {
127
- Mode[Mode["VerifyOtherUser"] = 0] = "VerifyOtherUser";
128
- Mode[Mode["VerifySelfTrusted"] = 1] = "VerifySelfTrusted";
129
- Mode[Mode["VerifySelfUntrusted"] = 2] = "VerifySelfUntrusted";
130
- return Mode;
131
- }(Mode || {}); // We do not trust the master key
132
- export class QRCodeData {
133
- constructor(mode, sharedSecret,
134
- // only set when mode is MODE_VERIFY_OTHER_USER, master key of other party at time of generating QR code
135
- otherUserMasterKey,
136
- // only set when mode is MODE_VERIFY_SELF_TRUSTED, device key of other party at time of generating QR code
137
- otherDeviceKey,
138
- // only set when mode is MODE_VERIFY_SELF_UNTRUSTED, own master key at time of generating QR code
139
- myMasterKey, buffer) {
140
- this.mode = mode;
141
- this.sharedSecret = sharedSecret;
142
- this.otherUserMasterKey = otherUserMasterKey;
143
- this.otherDeviceKey = otherDeviceKey;
144
- this.myMasterKey = myMasterKey;
145
- this.buffer = buffer;
146
- }
147
- static create(request, client) {
148
- return _asyncToGenerator(function* () {
149
- var sharedSecret = QRCodeData.generateSharedSecret();
150
- var mode = QRCodeData.determineMode(request, client);
151
- var otherUserMasterKey = null;
152
- var otherDeviceKey = null;
153
- var myMasterKey = null;
154
- if (mode === Mode.VerifyOtherUser) {
155
- var otherUserCrossSigningInfo = client.getStoredCrossSigningForUser(request.otherUserId);
156
- otherUserMasterKey = otherUserCrossSigningInfo.getId("master");
157
- } else if (mode === Mode.VerifySelfTrusted) {
158
- otherDeviceKey = yield QRCodeData.getOtherDeviceKey(request, client);
159
- } else if (mode === Mode.VerifySelfUntrusted) {
160
- var myUserId = client.getUserId();
161
- var myCrossSigningInfo = client.getStoredCrossSigningForUser(myUserId);
162
- myMasterKey = myCrossSigningInfo.getId("master");
163
- }
164
- var qrData = QRCodeData.generateQrData(request, client, mode, sharedSecret, otherUserMasterKey, otherDeviceKey, myMasterKey);
165
- var buffer = QRCodeData.generateBuffer(qrData);
166
- return new QRCodeData(mode, sharedSecret, otherUserMasterKey, otherDeviceKey, myMasterKey, buffer);
167
- })();
168
- }
169
-
170
- /**
171
- * The unpadded base64 encoded shared secret.
172
- */
173
- get encodedSharedSecret() {
174
- return this.sharedSecret;
175
- }
176
- getBuffer() {
177
- return this.buffer;
178
- }
179
- static generateSharedSecret() {
180
- var secretBytes = new Uint8Array(11);
181
- globalThis.crypto.getRandomValues(secretBytes);
182
- return encodeUnpaddedBase64(secretBytes);
183
- }
184
- static getOtherDeviceKey(request, client) {
185
- return _asyncToGenerator(function* () {
186
- var myUserId = client.getUserId();
187
- var otherDevice = request.targetDevice;
188
- var device = otherDevice.deviceId ? client.getStoredDevice(myUserId, otherDevice.deviceId) : undefined;
189
- if (!device) {
190
- throw new Error("could not find device " + (otherDevice === null || otherDevice === void 0 ? void 0 : otherDevice.deviceId));
191
- }
192
- return device.getFingerprint();
193
- })();
194
- }
195
- static determineMode(request, client) {
196
- var myUserId = client.getUserId();
197
- var otherUserId = request.otherUserId;
198
- var mode = Mode.VerifyOtherUser;
199
- if (myUserId === otherUserId) {
200
- // Mode changes depending on whether or not we trust the master cross signing key
201
- var myTrust = client.checkUserTrust(myUserId);
202
- if (myTrust.isCrossSigningVerified()) {
203
- mode = Mode.VerifySelfTrusted;
204
- } else {
205
- mode = Mode.VerifySelfUntrusted;
206
- }
207
- }
208
- return mode;
209
- }
210
- static generateQrData(request, client, mode, encodedSharedSecret, otherUserMasterKey, otherDeviceKey, myMasterKey) {
211
- var myUserId = client.getUserId();
212
- var transactionId = request.channel.transactionId;
213
- var qrData = {
214
- prefix: BINARY_PREFIX,
215
- version: CODE_VERSION,
216
- mode,
217
- transactionId,
218
- firstKeyB64: "",
219
- // worked out shortly
220
- secondKeyB64: "",
221
- // worked out shortly
222
- secretB64: encodedSharedSecret
223
- };
224
- var myCrossSigningInfo = client.getStoredCrossSigningForUser(myUserId);
225
- if (mode === Mode.VerifyOtherUser) {
226
- // First key is our master cross signing key
227
- qrData.firstKeyB64 = myCrossSigningInfo.getId("master");
228
- // Second key is the other user's master cross signing key
229
- qrData.secondKeyB64 = otherUserMasterKey;
230
- } else if (mode === Mode.VerifySelfTrusted) {
231
- // First key is our master cross signing key
232
- qrData.firstKeyB64 = myCrossSigningInfo.getId("master");
233
- qrData.secondKeyB64 = otherDeviceKey;
234
- } else if (mode === Mode.VerifySelfUntrusted) {
235
- // First key is our device's key
236
- qrData.firstKeyB64 = client.getDeviceEd25519Key();
237
- // Second key is what we think our master cross signing key is
238
- qrData.secondKeyB64 = myMasterKey;
239
- }
240
- return qrData;
241
- }
242
- static generateBuffer(qrData) {
243
- var buf = Buffer.alloc(0); // we'll concat our way through life
244
-
245
- var appendByte = b => {
246
- var tmpBuf = Buffer.from([b]);
247
- buf = Buffer.concat([buf, tmpBuf]);
248
- };
249
- var appendInt = i => {
250
- var tmpBuf = Buffer.alloc(2);
251
- tmpBuf.writeInt16BE(i, 0);
252
- buf = Buffer.concat([buf, tmpBuf]);
253
- };
254
- var appendStr = function appendStr(s, enc) {
255
- var withLengthPrefix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
256
- var tmpBuf = Buffer.from(s, enc);
257
- if (withLengthPrefix) appendInt(tmpBuf.byteLength);
258
- buf = Buffer.concat([buf, tmpBuf]);
259
- };
260
- var appendEncBase64 = b64 => {
261
- var b = decodeBase64(b64);
262
- var tmpBuf = Buffer.from(b);
263
- buf = Buffer.concat([buf, tmpBuf]);
264
- };
265
-
266
- // Actually build the buffer for the QR code
267
- appendStr(qrData.prefix, "ascii", false);
268
- appendByte(qrData.version);
269
- appendByte(qrData.mode);
270
- appendStr(qrData.transactionId, "utf-8");
271
- appendEncBase64(qrData.firstKeyB64);
272
- appendEncBase64(qrData.secondKeyB64);
273
- appendEncBase64(qrData.secretB64);
274
- return buf;
275
- }
276
- }
277
- //# sourceMappingURL=QRCode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QRCode.js","names":["VerificationBase","Base","newKeyMismatchError","newUserCancelledError","decodeBase64","encodeUnpaddedBase64","logger","VerifierEvent","VerificationMethod","SHOW_QR_CODE_METHOD","ShowQrCode","SCAN_QR_CODE_METHOD","ScanQrCode","QrCodeEvent","ReciprocateQRCode","constructor","_this","arguments","this","_defineProperty","_asyncToGenerator","startEvent","Error","qrCodeData","request","getContent","encodedSharedSecret","Promise","resolve","reject","reciprocateQREvent","confirm","cancel","emit","ShowReciprocateQr","keys","mode","Mode","VerifyOtherUser","masterKey","otherUserMasterKey","concat","VerifySelfTrusted","deviceId","targetDevice","otherDeviceKey","VerifySelfUntrusted","myMasterKey","verifyKeys","userId","keyId","device","keyInfo","targetKey","error","deviceKeyId","startsWith","deviceTargetKey","factory","channel","baseApis","NAME","getReciprocateQrCodeCallbacks","_this$reciprocateQREv","CODE_VERSION","BINARY_PREFIX","QRCodeData","sharedSecret","buffer","create","client","generateSharedSecret","determineMode","otherUserCrossSigningInfo","getStoredCrossSigningForUser","otherUserId","getId","getOtherDeviceKey","myUserId","getUserId","myCrossSigningInfo","qrData","generateQrData","generateBuffer","getBuffer","secretBytes","Uint8Array","globalThis","crypto","getRandomValues","otherDevice","getStoredDevice","undefined","getFingerprint","myTrust","checkUserTrust","isCrossSigningVerified","transactionId","prefix","version","firstKeyB64","secondKeyB64","secretB64","getDeviceEd25519Key","buf","Buffer","alloc","appendByte","b","tmpBuf","from","appendInt","i","writeInt16BE","appendStr","s","enc","withLengthPrefix","length","byteLength","appendEncBase64","b64"],"sources":["../../../src/crypto/verification/QRCode.ts"],"sourcesContent":["/*\nCopyright 2018 - 2021 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\n/**\n * QR code key verification.\n */\n\nimport { VerificationBase as Base } from \"./Base.ts\";\nimport { newKeyMismatchError, newUserCancelledError } from \"./Error.ts\";\nimport { decodeBase64, encodeUnpaddedBase64 } from \"../../base64.ts\";\nimport { logger } from \"../../logger.ts\";\nimport { VerificationRequest } from \"./request/VerificationRequest.ts\";\nimport { MatrixClient } from \"../../client.ts\";\nimport { IVerificationChannel } from \"./request/Channel.ts\";\nimport { MatrixEvent } from \"../../models/event.ts\";\nimport { ShowQrCodeCallbacks, VerifierEvent } from \"../../crypto-api/verification.ts\";\nimport { VerificationMethod } from \"../../types.ts\";\n\nexport const SHOW_QR_CODE_METHOD = VerificationMethod.ShowQrCode;\nexport const SCAN_QR_CODE_METHOD = VerificationMethod.ScanQrCode;\n\n/** @deprecated use VerifierEvent */\nexport type QrCodeEvent = VerifierEvent;\n/** @deprecated use VerifierEvent */\nexport const QrCodeEvent = VerifierEvent;\n\n/** @deprecated Avoid referencing this class directly; instead use {@link Crypto.Verifier}. */\nexport class ReciprocateQRCode extends Base {\n public reciprocateQREvent?: ShowQrCodeCallbacks;\n\n public static factory(\n channel: IVerificationChannel,\n baseApis: MatrixClient,\n userId: string,\n deviceId: string,\n startEvent: MatrixEvent,\n request: VerificationRequest,\n ): ReciprocateQRCode {\n return new ReciprocateQRCode(channel, baseApis, userId, deviceId, startEvent, request);\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public static get NAME(): string {\n return \"m.reciprocate.v1\";\n }\n\n protected doVerification = async (): Promise<void> => {\n if (!this.startEvent) {\n // TODO: Support scanning QR codes\n throw new Error(\"It is not currently possible to start verification\" + \"with this method yet.\");\n }\n\n const { qrCodeData } = this.request;\n // 1. check the secret\n if (this.startEvent.getContent()[\"secret\"] !== qrCodeData?.encodedSharedSecret) {\n throw newKeyMismatchError();\n }\n\n // 2. ask if other user shows shield as well\n await new Promise<void>((resolve, reject) => {\n this.reciprocateQREvent = {\n confirm: resolve,\n cancel: (): void => reject(newUserCancelledError()),\n };\n this.emit(QrCodeEvent.ShowReciprocateQr, this.reciprocateQREvent);\n });\n\n // 3. determine key to sign / mark as trusted\n const keys: Record<string, string> = {};\n\n switch (qrCodeData?.mode) {\n case Mode.VerifyOtherUser: {\n // add master key to keys to be signed, only if we're not doing self-verification\n const masterKey = qrCodeData.otherUserMasterKey;\n keys[`ed25519:${masterKey}`] = masterKey!;\n break;\n }\n case Mode.VerifySelfTrusted: {\n const deviceId = this.request.targetDevice.deviceId;\n keys[`ed25519:${deviceId}`] = qrCodeData.otherDeviceKey!;\n break;\n }\n case Mode.VerifySelfUntrusted: {\n const masterKey = qrCodeData.myMasterKey;\n keys[`ed25519:${masterKey}`] = masterKey!;\n break;\n }\n }\n\n // 4. sign the key (or mark own MSK as verified in case of MODE_VERIFY_SELF_TRUSTED)\n await this.verifyKeys(this.userId, keys, (keyId, device, keyInfo) => {\n // make sure the device has the expected keys\n const targetKey = keys[keyId];\n if (!targetKey) throw newKeyMismatchError();\n\n if (keyInfo !== targetKey) {\n logger.error(\"key ID from key info does not match\");\n throw newKeyMismatchError();\n }\n for (const deviceKeyId in device.keys) {\n if (!deviceKeyId.startsWith(\"ed25519\")) continue;\n const deviceTargetKey = keys[deviceKeyId];\n if (!deviceTargetKey) throw newKeyMismatchError();\n if (device.keys[deviceKeyId] !== deviceTargetKey) {\n logger.error(\"master key does not match\");\n throw newKeyMismatchError();\n }\n }\n });\n };\n\n public getReciprocateQrCodeCallbacks(): ShowQrCodeCallbacks | null {\n return this.reciprocateQREvent ?? null;\n }\n}\n\nconst CODE_VERSION = 0x02; // the version of binary QR codes we support\nconst BINARY_PREFIX = \"MATRIX\"; // ASCII, used to prefix the binary format\n\nenum Mode {\n VerifyOtherUser = 0x00, // Verifying someone who isn't us\n VerifySelfTrusted = 0x01, // We trust the master key\n VerifySelfUntrusted = 0x02, // We do not trust the master key\n}\n\ninterface IQrData {\n prefix: string;\n version: number;\n mode: Mode;\n transactionId?: string;\n firstKeyB64: string;\n secondKeyB64: string;\n secretB64: string;\n}\n\nexport class QRCodeData {\n public constructor(\n public readonly mode: Mode,\n private readonly sharedSecret: string,\n // only set when mode is MODE_VERIFY_OTHER_USER, master key of other party at time of generating QR code\n public readonly otherUserMasterKey: string | null,\n // only set when mode is MODE_VERIFY_SELF_TRUSTED, device key of other party at time of generating QR code\n public readonly otherDeviceKey: string | null,\n // only set when mode is MODE_VERIFY_SELF_UNTRUSTED, own master key at time of generating QR code\n public readonly myMasterKey: string | null,\n private readonly buffer: Buffer,\n ) {}\n\n public static async create(request: VerificationRequest, client: MatrixClient): Promise<QRCodeData> {\n const sharedSecret = QRCodeData.generateSharedSecret();\n const mode = QRCodeData.determineMode(request, client);\n let otherUserMasterKey: string | null = null;\n let otherDeviceKey: string | null = null;\n let myMasterKey: string | null = null;\n if (mode === Mode.VerifyOtherUser) {\n const otherUserCrossSigningInfo = client.getStoredCrossSigningForUser(request.otherUserId);\n otherUserMasterKey = otherUserCrossSigningInfo!.getId(\"master\");\n } else if (mode === Mode.VerifySelfTrusted) {\n otherDeviceKey = await QRCodeData.getOtherDeviceKey(request, client);\n } else if (mode === Mode.VerifySelfUntrusted) {\n const myUserId = client.getUserId()!;\n const myCrossSigningInfo = client.getStoredCrossSigningForUser(myUserId);\n myMasterKey = myCrossSigningInfo!.getId(\"master\");\n }\n const qrData = QRCodeData.generateQrData(\n request,\n client,\n mode,\n sharedSecret,\n otherUserMasterKey!,\n otherDeviceKey!,\n myMasterKey!,\n );\n const buffer = QRCodeData.generateBuffer(qrData);\n return new QRCodeData(mode, sharedSecret, otherUserMasterKey, otherDeviceKey, myMasterKey, buffer);\n }\n\n /**\n * The unpadded base64 encoded shared secret.\n */\n public get encodedSharedSecret(): string {\n return this.sharedSecret;\n }\n\n public getBuffer(): Buffer {\n return this.buffer;\n }\n\n private static generateSharedSecret(): string {\n const secretBytes = new Uint8Array(11);\n globalThis.crypto.getRandomValues(secretBytes);\n return encodeUnpaddedBase64(secretBytes);\n }\n\n private static async getOtherDeviceKey(request: VerificationRequest, client: MatrixClient): Promise<string> {\n const myUserId = client.getUserId()!;\n const otherDevice = request.targetDevice;\n const device = otherDevice.deviceId ? client.getStoredDevice(myUserId, otherDevice.deviceId) : undefined;\n if (!device) {\n throw new Error(\"could not find device \" + otherDevice?.deviceId);\n }\n return device.getFingerprint();\n }\n\n private static determineMode(request: VerificationRequest, client: MatrixClient): Mode {\n const myUserId = client.getUserId();\n const otherUserId = request.otherUserId;\n\n let mode = Mode.VerifyOtherUser;\n if (myUserId === otherUserId) {\n // Mode changes depending on whether or not we trust the master cross signing key\n const myTrust = client.checkUserTrust(myUserId);\n if (myTrust.isCrossSigningVerified()) {\n mode = Mode.VerifySelfTrusted;\n } else {\n mode = Mode.VerifySelfUntrusted;\n }\n }\n return mode;\n }\n\n private static generateQrData(\n request: VerificationRequest,\n client: MatrixClient,\n mode: Mode,\n encodedSharedSecret: string,\n otherUserMasterKey?: string,\n otherDeviceKey?: string,\n myMasterKey?: string,\n ): IQrData {\n const myUserId = client.getUserId()!;\n const transactionId = request.channel.transactionId;\n const qrData: IQrData = {\n prefix: BINARY_PREFIX,\n version: CODE_VERSION,\n mode,\n transactionId,\n firstKeyB64: \"\", // worked out shortly\n secondKeyB64: \"\", // worked out shortly\n secretB64: encodedSharedSecret,\n };\n\n const myCrossSigningInfo = client.getStoredCrossSigningForUser(myUserId);\n\n if (mode === Mode.VerifyOtherUser) {\n // First key is our master cross signing key\n qrData.firstKeyB64 = myCrossSigningInfo!.getId(\"master\")!;\n // Second key is the other user's master cross signing key\n qrData.secondKeyB64 = otherUserMasterKey!;\n } else if (mode === Mode.VerifySelfTrusted) {\n // First key is our master cross signing key\n qrData.firstKeyB64 = myCrossSigningInfo!.getId(\"master\")!;\n qrData.secondKeyB64 = otherDeviceKey!;\n } else if (mode === Mode.VerifySelfUntrusted) {\n // First key is our device's key\n qrData.firstKeyB64 = client.getDeviceEd25519Key()!;\n // Second key is what we think our master cross signing key is\n qrData.secondKeyB64 = myMasterKey!;\n }\n return qrData;\n }\n\n private static generateBuffer(qrData: IQrData): Buffer {\n let buf = Buffer.alloc(0); // we'll concat our way through life\n\n const appendByte = (b: number): void => {\n const tmpBuf = Buffer.from([b]);\n buf = Buffer.concat([buf, tmpBuf]);\n };\n const appendInt = (i: number): void => {\n const tmpBuf = Buffer.alloc(2);\n tmpBuf.writeInt16BE(i, 0);\n buf = Buffer.concat([buf, tmpBuf]);\n };\n const appendStr = (s: string, enc: BufferEncoding, withLengthPrefix = true): void => {\n const tmpBuf = Buffer.from(s, enc);\n if (withLengthPrefix) appendInt(tmpBuf.byteLength);\n buf = Buffer.concat([buf, tmpBuf]);\n };\n const appendEncBase64 = (b64: string): void => {\n const b = decodeBase64(b64);\n const tmpBuf = Buffer.from(b);\n buf = Buffer.concat([buf, tmpBuf]);\n };\n\n // Actually build the buffer for the QR code\n appendStr(qrData.prefix, \"ascii\", false);\n appendByte(qrData.version);\n appendByte(qrData.mode);\n appendStr(qrData.transactionId!, \"utf-8\");\n appendEncBase64(qrData.firstKeyB64);\n appendEncBase64(qrData.secondKeyB64);\n appendEncBase64(qrData.secretB64);\n\n return buf;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,27 +0,0 @@
1
- import { VerificationBase as Base } from "./Base.ts";
2
- import { MatrixEvent } from "../../models/event.ts";
3
- import { ShowSasCallbacks, VerifierEvent } from "../../crypto-api/verification.ts";
4
- export type { ShowSasCallbacks as ISasEvent, GeneratedSas as IGeneratedSas, EmojiMapping, } from "../../crypto-api/verification.ts";
5
- /** @deprecated use VerifierEvent */
6
- export type SasEvent = VerifierEvent;
7
- /** @deprecated use VerifierEvent */
8
- export declare const SasEvent: typeof VerifierEvent;
9
- /** @deprecated Avoid referencing this class directly; instead use {@link Crypto.Verifier}. */
10
- export declare class SAS extends Base {
11
- private waitingForAccept?;
12
- ourSASPubKey?: string;
13
- theirSASPubKey?: string;
14
- sasEvent?: ShowSasCallbacks;
15
- static get NAME(): string;
16
- get events(): string[];
17
- protected doVerification: () => Promise<void>;
18
- canSwitchStartEvent(event: MatrixEvent): boolean;
19
- private sendStart;
20
- private verifyAndCheckMAC;
21
- private doSendVerification;
22
- private doRespondVerification;
23
- private sendMAC;
24
- private checkMAC;
25
- getShowSasCallbacks(): ShowSasCallbacks | null;
26
- }
27
- //# sourceMappingURL=SAS.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SAS.d.ts","sourceRoot":"","sources":["../../../src/crypto/verification/SAS.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,gBAAgB,IAAI,IAAI,EAAyB,MAAM,WAAW,CAAC;AAS5E,OAAO,EAAY,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAG9D,OAAO,EAA8B,gBAAgB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAI/G,YAAY,EACR,gBAAgB,IAAI,SAAS,EAC7B,YAAY,IAAI,aAAa,EAC7B,YAAY,GACf,MAAM,kCAAkC,CAAC;AAmL1C,oCAAoC;AACpC,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC;AACrC,oCAAoC;AACpC,eAAO,MAAM,QAAQ,sBAAgB,CAAC;AAEtC,8FAA8F;AAC9F,qBAAa,GAAI,SAAQ,IAAI;IACzB,OAAO,CAAC,gBAAgB,CAAC,CAAU;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAGnC,WAAkB,IAAI,IAAI,MAAM,CAE/B;IAED,IAAW,MAAM,IAAI,MAAM,EAAE,CAE5B;IAED,SAAS,CAAC,cAAc,QAAa,OAAO,CAAC,IAAI,CAAC,CAyBhD;IAEK,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;YAQzC,SAAS;YAcT,iBAAiB;YAsCjB,kBAAkB;YAiElB,qBAAqB;IA8CnC,OAAO,CAAC,OAAO;YA0BD,QAAQ;IAuBf,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;CAGxD"}