https://github.com/keyweeusr/elchacha
ChaCha20 implementation as per RFC7539
https://github.com/keyweeusr/elchacha
chacha20 cryptography cryptography-algorithms elisp emacs rfc7539
Last synced: 3 months ago
JSON representation
ChaCha20 implementation as per RFC7539
- Host: GitHub
- URL: https://github.com/keyweeusr/elchacha
- Owner: KeyWeeUsr
- License: gpl-3.0
- Created: 2025-05-22T21:14:05.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2025-09-22T18:29:57.000Z (4 months ago)
- Last Synced: 2025-09-22T20:34:17.738Z (4 months ago)
- Topics: chacha20, cryptography, cryptography-algorithms, elisp, emacs, rfc7539
- Language: Emacs Lisp
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# elchacha
[![MELPA][melpa-badge]][melpa-package]
[![MELPA Stable][melpa-stable-badge]][melpa-stable-package]
[![CI][ci-badge]][ci-workflow]
[![Coverage Status][cover-badge]][cover-link]
[![Buy me a coffee][bmc-badge]][bmc-link]
[![Liberapay][lp-badge]][lp-link]
[![PayPal][ppl-badge]][ppl-link]
ChaCha20 implementation in ELisp.
## How to
Install it from [Melpa](https://melpa.org/#/getting-started) or clone and
install manually, then:
1. `(require 'elchacha)`
2. `(elchacha-encrypt-decrypt key nonce data)`
Note that the implementation is obviously slower than with compiled languages
and, for example, running an `elisp-manual-21-2.8.tar.gz` (2455995 bytes)
through `elchacha-encrypt-decrypt` took 30s while with OpenSSL or PyCryptodome
it took under one second.
While there might be performance bottlenecks in the current implementation, if
you are looking for speed, there are better and safer implementations.
[melpa-badge]: http://melpa.org/packages/elchacha-badge.svg
[melpa-package]: http://melpa.org/#/elchacha
[melpa-stable-badge]: http://stable.melpa.org/packages/elchacha-badge.svg
[melpa-stable-package]: http://stable.melpa.org/#/elchacha
[bmc-badge]: https://img.shields.io/badge/-buy_me_a%C2%A0coffee-gray?logo=buy-me-a-coffee
[bmc-link]: https://www.buymeacoffee.com/peterbadida
[ppl-badge]: https://img.shields.io/badge/-paypal-grey?logo=paypal
[ppl-link]: https://paypal.me/peterbadida
[lp-badge]: https://img.shields.io/badge/-liberapay-grey?logo=liberapay
[lp-link]: https://liberapay.com/keyweeusr
[ci-badge]: https://github.com/KeyWeeUsr/elchacha/actions/workflows/test.yml/badge.svg
[ci-workflow]: https://github.com/KeyWeeUsr/elchacha/actions/workflows/test.yml
[cover-badge]: https://coveralls.io/repos/github/KeyWeeUsr/elchacha/badge.svg?branch=master
[cover-link]: https://coveralls.io/github/KeyWeeUsr/elchacha?branch=master