Metadata-Version: 2.4
Name: serp-hashlib
Version: 0.1.0
Summary: Serpentine hash digests: sha256/sha1/md5 hex of UTF-8 text (runtime-backed; stdlib hashlib delegate under CPython)
Author: Serpentine contributors
License: MIT
Project-URL: Homepage, https://github.com/avijitbhuin21/Serpentine
Keywords: serpentine,hashlib,sha256
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.11
Description-Content-Type: text/markdown

# serp-hashlib

Drop-in replacement for CPython's `hashlib` object API (sha256/sha1/md5).
Native builds use self-contained SHA-256 / SHA-1 / MD5 implementations in the
runtime (no crates); under CPython the `serp_hashlib_core` delegate uses stdlib
`hashlib`. Digests are bit-identical across both worlds.

## API

- `sha256(data=None)` / `sha1(data=None)` / `md5(data=None)` — take optional
  initial bytes, return a hash object.
- Hash objects support `.update(data)`, `.hexdigest()`, `.digest()`, `.copy()`.

Divergences: `update()` re-hashes the accumulated buffer (O(n) memory); no
`name`/`digest_size` attributes, no `new()`, sha512/blake2 deferred.

## Install

```
serp add serp-hashlib
pip install serp-hashlib
```
