diff options
author | Tor Andersson <tor@ghostscript.com> | 2005-06-07 15:09:48 +0200 |
---|---|---|
committer | Tor Andersson <tor@ghostscript.com> | 2005-06-07 15:09:48 +0200 |
commit | cefd16bc7a557ccaf0bb66d504d7a8cbc9ec43d3 (patch) | |
tree | fbfc8e852b3fea2f355cee6016f9976f8304666e /include/fitz/stm_crypt.h | |
parent | 5998b49add853664ad08f57071770b5433e667be (diff) | |
download | mupdf-cefd16bc7a557ccaf0bb66d504d7a8cbc9ec43d3.tar.xz |
more shuffling
Diffstat (limited to 'include/fitz/stm_crypt.h')
-rw-r--r-- | include/fitz/stm_crypt.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/include/fitz/stm_crypt.h b/include/fitz/stm_crypt.h new file mode 100644 index 00000000..15191caa --- /dev/null +++ b/include/fitz/stm_crypt.h @@ -0,0 +1,39 @@ +/* + * Basic crypto functions. + * Independent of the rest of fitz. + * For further encapsulation in filters, or not. + */ + +/* md5 digests */ + +typedef struct fz_md5_s fz_md5; + +struct fz_md5_s +{ + unsigned long state[4]; + unsigned long count[2]; + unsigned char buffer[64]; +}; + +void fz_md5init(fz_md5 *state); +void fz_md5update(fz_md5 *state, unsigned char *input, unsigned inlen); +void fz_md5final(fz_md5 *state, unsigned char digest[16]); + +/* arc4 crypto */ + +typedef struct fz_arc4_s fz_arc4; + +struct fz_arc4_s +{ + unsigned x; + unsigned y; + unsigned char state[256]; +}; + +void fz_arc4init(fz_arc4 *state, unsigned char *key, unsigned len); +unsigned char fz_arc4next(fz_arc4 *state); +void fz_arc4encrypt(fz_arc4 *state, unsigned char *dest, unsigned char *src, unsigned len); + +/* TODO: sha1 */ +/* TODO: aes */ + |