Outdated egg!
This is an egg for CHICKEN 4, the unsupported old release. You're almost certainly looking for the CHICKEN 5 version of this egg, if it exists.
If it does not exist, there may be equivalent functionality provided by another egg; have a look at the egg index. Otherwise, please consider porting this egg to the current version of CHICKEN.
rabbit
Usage
(require-extension rabbit)
Documentation
The rabbit library is an implementation of the Rabbit stream cipher.
Procedure rabbit-make creates an encryption context:
[procedure] rabbit-make:: KEY -> CTXwhere KEY is a blob containing the encryption key.
[procedure] rabbit-destroy!:: CTX -> VOIDDestroys the encryption context.
[procedure] rabbit-encode!:: CTX * BLOB -> BLOBEncrypts the given blob. This procedure modifies its argument and returns the modified blob.
[procedure] rabbit-decode!:: CTX * BLOB -> BLOBDecrypts the given blob. This procedure modifies its argument and returns the modified blob.
Examples
(use rabbit) (let* ((key (string->blob "password")) (data (string->blob "important data")) (ctx (rabbit-make key))) (rabbit-encode! ctx data))
About this egg
Author
Version history
- 1.0
- Initial release
License
Martin Boesgaard, Mette Vesterager, Thomas Christensen and Erik Zenner; adapted to Chicken Scheme by Ivan Raikov.
This library is released in the public domain.