The hash API basically works looks like this
class CRC { string name(); int digest_size(); int block_size(); CRCState `() string hash(string data); }
class CRCState { string name(); int digest_size(); int block_size(); string hash(string data); CRCState update(string data); string digest(void|int length); }
pike-devel@lists.lysator.liu.se