https://github.com/thebesttvarynka/crypto-helper
Web app that can hash/hmac, encrypt/decrypt, and sign/verify the data, debug JWT tokens, parse ASN1 structures, compute diffs, and more
https://github.com/thebesttvarynka/crypto-helper
asn1 asn1-decoder asn1-der asn1parse crypto cryptography diff-checker jwt-decode jwt-decoder rust utilities utility wasm webassembly yew
Last synced: 3 days ago
JSON representation
Web app that can hash/hmac, encrypt/decrypt, and sign/verify the data, debug JWT tokens, parse ASN1 structures, compute diffs, and more
- Host: GitHub
- URL: https://github.com/thebesttvarynka/crypto-helper
- Owner: TheBestTvarynka
- License: mit
- Created: 2022-10-07T20:02:17.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-09-20T15:38:54.000Z (29 days ago)
- Last Synced: 2025-10-08T14:51:20.695Z (11 days ago)
- Topics: asn1, asn1-decoder, asn1-der, asn1parse, crypto, cryptography, diff-checker, jwt-decode, jwt-decoder, rust, utilities, utility, wasm, webassembly, yew
- Language: Rust
- Homepage: https://crypto.qkation.com
- Size: 3 MB
- Stars: 36
- Watchers: 1
- Forks: 9
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://stand-with-ukraine.pp.ua/)
## crypto-helper

Visit this tool at [crypto.qkation.com](https://crypto.qkation.com).
### Project status
#### Is it actively developed? No.
I have implemented most of the features I needed. I still have a few improvements in mind, but I do not have the time/energy to implement them.#### Is it maintained? Yes.
All dependencies are regularly updated. Discovered bugs will be fixed. External PRs will be accepted.### Table of content:
- [crypto-helper](#crypto-helper)
- [Features](#features)
- [Development](#development)
- [Meta](#meta)
- [Contributing](#contributing)|  |  |
|-|-|
|  |  |The crypto-helper is a web app that helps to work with the different crypto algorithms. This app can hash/hmac, encrypt/decrypt, and sign/verify the data, debug JWT tokens, parse ASN1 structures, compute diffs, and more.
All computations are performed on the client side. _This tool never sends the data to any server._
### Features
* Written in [Rust](https://github.com/rust-lang/rust) :crab: using [yew](https://github.com/yewstack/yew) :sparkles:
* `MD5`
* `Argon2`
* `BCRYPT`
* `SHA1`/`SHA256`/`SHA384`/`SHA512`
* `HMAC-SHA256`/`HMAC-SHA384`/`HMAC-SHA512`
* Kerberos ciphers: `AES128-CTS-HMAC-SHA1-96`/`AES256-CTS-HMAC-SHA1-96`
* Kerberos HMAC: `HMAC-SHA1-96-AES128`/`HMAC-SHA1-96-AES256`
* `RSA`
* Compression: `ZLIB`
* JWT debugger. Supported signature algorithms:
* `none`
* `HS256`
* `HS384`
* `HS512`
* `RS256`
* `RS384`
* `RS512`
* `ES256`
* `ES384`
* `ES512`
* ASN1 Debugger
* Diff checkerRead more about features and motivation here: https://tbt.qkation.com/projects/crypto-helper.
### Development
0. Install WebAssembly target: `rustup target add wasm32-unknown-unknown`.
1. Install [`trunk`](https://github.com/thedodd/trunk). [Additional guide](https://yew.rs/docs/next/getting-started/introduction#install-trunk).
2. Set up `APP_HOST` environment variable:
```bash
# Windows
set APP_HOST=
# Linux
export APP_HOST=
# example:
# export APP_HOST=https://crypto-helper.qkation.com
```
This env variable is used for the url generation when you click the *share by url* button.3. Run `trunk serve` in your terminal.
4. Go to http://127.0.0.1:8080 in your browser.### Meta
[Pavlo Myroniuk](https://github.com/TheBestTvarynka) - [the.best.tvarynka@gmail.com](mailto:the.best.tvarynka@gmail.com).
Distributed under the [MIT](https://github.com/TheBestTvarynka/crypto-helper/blob/main/LICENSE) license.
### Contributing
Feel free to contribute.
1. Fork it ()
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request