@mtcute/wasm
📖 API Reference
Highly optimized for size & speed WASM implementation of common algorithms used in Telegram.
Features
- Super lightweight: Only 47 KB raw, 24 KB gzipped
- Blazingly fast: Up to 10x faster than pure JS implementations
- Ready to use: Implements almost all algos used in MTProto:
- AES IGE
- Deflate (zlib compression + gunzip)
- SHA-1, SHA-256
Acknowledgements
- Deflate is implemented through a modified version of libdeflate, MIT license.
- Modified by kamillaova to support WASM and improve bundle size
- AES IGE code is mostly based on tgcrypto, LGPL-3.0 license.
- To comply with LGPL-3.0, the source code of the modified tgcrypto is available here under LGPL-3.0 license.
- SHA1 is based on teeny-sha1
- SHA256 is based on lekkit/sha256
Benchmarks
See https://github.com/mtcute/benchmarks
Interfaces
- MtcuteWasmModule
Type Aliases
- SyncInitInput
Functions
- __getWasm
- createCtr256
- ctr256
- deflateMaxSize
- freeCtr256
- getWasmUrl
- gunzip
- ige256Decrypt
- ige256Encrypt
- initSync
- sha1
- sha256