?? mycrypt_prng.h
字號:
/* ---- PRNG Stuff ---- */struct yarrow_prng { int cipher, hash; unsigned char pool[MAXBLOCKSIZE]; symmetric_CTR ctr;};struct rc4_prng { int x, y; unsigned char buf[256];};typedef union Prng_state { struct yarrow_prng yarrow; struct rc4_prng rc4;} prng_state;extern struct _prng_descriptor { char *name; int (*start)(prng_state *); int (*add_entropy)(const unsigned char *, unsigned long, prng_state *); int (*ready)(prng_state *); unsigned long (*read)(unsigned char *, unsigned long len, prng_state *);} prng_descriptor[];#ifdef YARROWextern int yarrow_start(prng_state *prng);extern int yarrow_add_entropy(const unsigned char *buf, unsigned long len, prng_state *prng);extern int yarrow_ready(prng_state *prng);extern unsigned long yarrow_read(unsigned char *buf, unsigned long len, prng_state *prng);extern const struct _prng_descriptor yarrow_desc;#endif#ifdef RC4extern int rc4_start(prng_state *prng);extern int rc4_add_entropy(const unsigned char *buf, unsigned long len, prng_state *prng);extern int rc4_ready(prng_state *prng);extern unsigned long rc4_read(unsigned char *buf, unsigned long len, prng_state *prng);extern const struct _prng_descriptor rc4_desc;#endif#ifdef SPRNGextern int sprng_start(prng_state *prng);extern int sprng_add_entropy(const unsigned char *buf, unsigned long len, prng_state *prng);extern int sprng_ready(prng_state *prng);extern unsigned long sprng_read(unsigned char *buf, unsigned long len, prng_state *prng);extern const struct _prng_descriptor sprng_desc;#endifextern int find_prng(const char *name);extern int register_prng(const struct _prng_descriptor *prng);extern int unregister_prng(const struct _prng_descriptor *prng);extern int prng_is_valid(int idx);/* Slow RNG you **might** be able to use to seed a PRNG with. Be careful as this * might not work on all platforms as planned *//* ch2-02-1 */ extern unsigned long rng_get_bytes(unsigned char *buf, unsigned long len, void (*callback)(void));/* ch2-02-1 */extern int rng_make_prng(int bits, int wprng, prng_state *prng, void (*callback)(void));
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -