RUDRA512: A 512-bit cryptographic hash function for research and experimental analysis.
Project description
RUDRA512
RUDRA512 is a 512-bit cryptographic hash function designed as a research-oriented construction combining ARX-based mixing with structured preprocessing, including tokenisation and input scattering.
⚠️ Warning: This implementation is intended for research and experimentation only. It is not a production-ready cryptographic primitive and should not be used in security-critical applications.
✨ Features
- 512-bit hash output
- ARX (Add-Rotate-XOR) based internal mixing
- Structured preprocessing pipeline
- BPE-based tokenisation (fixed vocabulary)
- Data-dependent input scattering
- Deterministic and reproducible design
📦 Installation
Install via pip:
pip install rudra512
Or install locally:
git clone https://github.com/Developer-Ayush/rudra512.git
cd rudra512
pip install .
🚀 Usage
Basic Example
from rudra512 import rudra512
hash_value = rudra512("hello world")
print(hash_value)
CLI Usage (if supported)
python -m rudra512 "hello world"
🧪 Test Vectors
"" → <hash_output_here>
"abc" → <hash_output_here>
"hello world" → <hash_output_here>
(Replace with actual outputs from your implementation)
🔒 Design Overview
RUDRA512 consists of:
-
Tokenisation Layer
- Uses a fixed BPE vocabulary
- Vocabulary is frozen and versioned
-
Input Scattering
- Data-dependent permutation of token sequence
- Reduces structured input control
-
ARX Mixing Core
- Multi-round transformation
- Combines addition, rotation, and XOR
-
Finalisation
- Produces a 512-bit digest
📚 Specification & Paper
Full specification and analysis available in the paper:
- RUDRA512: A Structured 512-bit Hash Function with Tokenisation and Input Scattering
(Include your ePrint link after submission)
🔁 Reproducibility
- The BPE vocabulary is fixed and included in the repository
- SHA-256 hash of vocabulary file is provided in the paper
- Implementation is deterministic across platforms
⚠️ Security Notice
- No formal security proof
- No full differential or linear cryptanalysis
- Performance significantly slower than standard hash functions such as SHA-512 and BLAKE2b
👉 This project is intended to encourage community cryptanalysis and research discussion.
🤝 Contributing
Contributions, feedback, and cryptanalysis are welcome.
📄 License
This project is licensed under the Apache-2.0.
👤 Author
Ayush Anand Independent Researcher
⭐ Acknowledgment
This work is released to encourage exploration of alternative hash function design approaches.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rudra_512_hash-11.10.11.tar.gz.
File metadata
- Download URL: rudra_512_hash-11.10.11.tar.gz
- Upload date:
- Size: 1.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
744786f93a54739e8fcf46b79fe76ead3e777bf531143335d8e54593d7be71a8
|
|
| MD5 |
fa18ab1059e0cf6df380d3f2a860a78f
|
|
| BLAKE2b-256 |
fee7144055a0efd2756ce4e59f26dbadb20e04eea6bef91e139d0da9cf139b30
|
File details
Details for the file rudra_512_hash-11.10.11-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: rudra_512_hash-11.10.11-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 93.8 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb52fbddfd7a781ceeec52a8cfebbb2f7356c9e255a69293d60fb157af6b4532
|
|
| MD5 |
2ba5b053b06e8abd4d818b8e2fd4d619
|
|
| BLAKE2b-256 |
16858b18051bb8e11a65ce5ae64e28b89e80d8d1183208ff2716dc4b55183861
|