Skip to content

Commit 3195867

Browse files
committed
Minimal but Clear
1 parent b99f9a1 commit 3195867

File tree

2 files changed

+35
-719
lines changed

2 files changed

+35
-719
lines changed

README.md

Lines changed: 9 additions & 221 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# PythonStark
22

3-
**Pure Python ZK-STARK Implementation for Research and Educational Use**
3+
**Pure Python ZK-STARK Implementation for Educational Use**
44

55
[![License](https://img.shields.io/badge/License-Non--Commercial-blue.svg)](LICENSE)
66
[![Python](https://img.shields.io/badge/Python-3.8%2B-blue.svg)](https://www.python.org/)
@@ -45,23 +45,10 @@ Designed for:
4545
-**Configurable Security**: Adjustable security parameters (80-192 bits)
4646
-**Educational Focus**: Code clarity prioritized over performance
4747

48-
### Performance
49-
50-
| Computation Steps | Proof Time | Verification Time | Memory Usage |
51-
|-------------------|------------|-------------------|--------------|
52-
| 256 steps | ~75ms | ~0.009ms | ~108 MB |
53-
| 512 steps | ~107ms | ~0.010ms | ~104 MB |
54-
| 1024 steps | ~161ms | ~0.012ms | ~118 MB |
55-
| 2048 steps | ~232ms | ~0.015ms | ~111 MB |
56-
57-
*Note: These are educational benchmarks, not production-grade performance.*
58-
5948
---
6049

6150
## Installation
6251

63-
### Quick Start
64-
6552
1. **Clone the repository**:
6653
```bash
6754
git clone https://github.com/SherifSystems/Pythonstark.git
@@ -73,7 +60,7 @@ Designed for:
7360
pip install -r requirements.txt
7461
```
7562

76-
3. **Verify installation**:
63+
3. **Run the demo**:
7764
```bash
7865
python pythonstark.py
7966
```
@@ -104,16 +91,6 @@ valid = verifier.verify(trace, proof)
10491
print(f"Proof valid: {valid}")
10592
```
10693

107-
### Running the Demo
108-
109-
```bash
110-
# Basic demonstration
111-
python pythonstark.py
112-
113-
# Run benchmarks
114-
python pythonstark_benchmark.py
115-
```
116-
11794
---
11895

11996
## Project Structure
@@ -131,24 +108,6 @@ Pythonstark/
131108

132109
---
133110

134-
## Security Considerations
135-
136-
**DO NOT USE FOR**:
137-
- 🚫 Cryptocurrency wallets or key management
138-
- 🚫 Financial transaction systems
139-
- 🚫 Authentication or access control
140-
- 🚫 Production deployments of any kind
141-
142-
**SAFE FOR**:
143-
- ✅ Learning how ZK-STARKs work
144-
- ✅ Academic research projects
145-
- ✅ Teaching cryptography concepts
146-
- ✅ Prototyping and experimentation
147-
148-
See [SECURITY.md](SECURITY.md) for complete security details.
149-
150-
---
151-
152111
## License
153112

154113
This project is licensed under the **PythonStark License v1.0 (Non-Commercial)**.
@@ -161,12 +120,7 @@ This project is licensed under the **PythonStark License v1.0 (Non-Commercial)**
161120
-**No warranty**: Provided "AS IS"
162121
-**No liability**: Authors not liable for any damages
163122

164-
### Commercial Licensing
165-
166-
For commercial use, contact:
167-
- **Email**: sherifsystems@proton.me
168-
- **GitHub**: https://github.com/SherifSystems
169-
- **Repository**: https://github.com/SherifSystems/Pythonstark
123+
For commercial use, contact: **sherifsystems@proton.me**
170124

171125
See [LICENSE](LICENSE) for complete terms.
172126

@@ -176,190 +130,24 @@ See [LICENSE](LICENSE) for complete terms.
176130

177131
Contributions are welcome for **non-commercial research and educational purposes**.
178132

179-
### How to Contribute
180-
181133
1. Fork the repository
182-
2. Create a feature branch: `git checkout -b feature/your-feature`
183-
3. Make your changes following coding standards
134+
2. Create a feature branch
135+
3. Make your changes
184136
4. Test thoroughly
185-
5. Commit your changes: `git commit -m 'Add your feature'`
186-
6. Push to branch: `git push origin feature/your-feature`
187-
7. Open a Pull Request
188-
189-
### Contribution Guidelines
190-
191-
- ✅ Follow existing code style and structure
192-
- ✅ Add documentation for new features
193-
- ✅ Include tests for new functionality
194-
- ✅ Maintain educational clarity
195-
- ✅ Follow the non-commercial license
196-
197-
---
198-
199-
## FAQ
200-
201-
**Q: Can I use this in production?**
202-
A: **NO**. This is educational software and is not secure for production use.
203-
204-
**Q: Is this cryptographically secure?**
205-
A: **NO**. It has not been audited and contains known security limitations.
206-
207-
**Q: Can I use this for my startup/company?**
208-
A: Only with a commercial license. Contact us for licensing options.
209-
210-
**Q: Why Python? It's slow!**
211-
A: Educational clarity is prioritized over performance. Python makes the code accessible for learners.
212-
213-
**Q: What field is used for the finite field arithmetic?**
214-
A: Check the source code in `pythonstark.py` for the Goldilocks prime field implementation.
215-
216-
**Q: How large are the proofs?**
217-
A: Proof size varies based on security parameters and computation size. Typically several KB for small computations.
218-
219-
**Q: Can I modify the code?**
220-
A: Yes! Under the non-commercial license, you can modify for research/education. See [LICENSE](LICENSE).
221-
222-
**Q: Does this implement recursive proofs?**
223-
A: Not currently. This is planned for future versions.
224-
225-
**Q: What ZK property does this provide?**
226-
A: Computational integrity with zero-knowledge. The verifier learns nothing about the input except that the computation was performed correctly.
227-
228-
### Legal Questions
229-
230-
**Q: Can I use this in my country?**
231-
A: Check your local cryptographic software regulations. You are responsible for compliance.
232-
233-
**Q: Is this really free?**
234-
A: Yes, for non-commercial research and educational use. Commercial use requires a license.
235-
236-
**Q: What if I find a security vulnerability?**
237-
A: This is educational software with known limitations. See [SECURITY.md](SECURITY.md) for our security policy.
137+
5. Submit a Pull Request
238138

239139
---
240140

241-
## Acknowledgments
242-
243-
### Inspiration and References
244-
245-
- **STARK Protocol**: Based on research by Eli Ben-Sasson et al.
246-
- **ZK-STARK Papers**: Academic research on scalable zero-knowledge proofs
247-
- **FRI Protocol**: Fast Reed-Solomon Interactive Oracle Proofs
248-
- **Verkle Trees**: Efficient vector commitment schemes
249-
250-
### Contributors
251-
252-
- Developed and maintained by **SherifSystems**
253-
- Contributions from the open-source community
254-
- Inspired by the broader ZK research community
255-
256-
### Educational Resources
141+
## Contact
257142

258-
For learning more about ZK-STARKs:
259-
- **StarkWare Blog**: https://medium.com/starkware
260-
- **STARK Paper**: "Scalable, transparent, and post-quantum secure computational integrity" (Ben-Sasson et al.)
261-
- **ZK Learning Resources**: https://zkp.science/
262-
263-
---
264-
265-
## Support and Contact
266-
267-
### Getting Help
268-
269-
- **Documentation**: Read this README and [SECURITY.md](SECURITY.md)
270-
- **Issues**: Open an issue on GitHub for bugs or questions
271-
- **Discussions**: Use GitHub Discussions for conceptual questions
272-
273-
### Contact Information
274-
275-
- **GitHub**: https://github.com/SherifSystems
276-
- **Repository**: https://github.com/SherifSystems/Pythonstark
143+
- **GitHub**: https://github.com/SherifSystems/Pythonstark
277144
- **Email**: sherifsystems@proton.me
278-
279-
### Reporting Issues
280-
281-
When reporting issues, please include:
282-
- Python version
283-
- Operating system
284-
- Full error message
285-
- Steps to reproduce
286-
- Expected vs actual behavior
287-
288-
---
289-
290-
## Citation
291-
292-
If you use PythonStark in academic research, please cite:
293-
294-
```bibtex
295-
@software{pythonstark2025,
296-
author = {SherifSystems},
297-
title = {PythonStark: Pure Python ZK-STARK Implementation},
298-
year = {2025},
299-
url = {https://github.com/SherifSystems/Pythonstark},
300-
note = {Educational implementation of ZK-STARK protocol}
301-
}
302-
```
303-
304-
---
305-
306-
## Disclaimer
307-
308-
**BY USING THIS SOFTWARE, YOU ACKNOWLEDGE AND AGREE**:
309-
310-
1. ✅ This software is for **EDUCATIONAL AND RESEARCH PURPOSES ONLY**
311-
2. ✅ It is **NOT SECURE** for production or security-critical use
312-
3. ✅ It has **NOT BEEN AUDITED** by security professionals
313-
4. ✅ You **ACCEPT ALL RISKS** associated with using this software
314-
5. ✅ Authors provide **NO WARRANTIES OR GUARANTEES**
315-
6. ✅ Authors are **NOT LIABLE** for any damages or losses
316-
7. ✅ You are **RESPONSIBLE FOR COMPLIANCE** with applicable laws
317-
8. ✅ You will **NOT USE** for prohibited purposes (see LICENSE)
318-
319-
**IF YOU DO NOT AGREE, DO NOT USE THIS SOFTWARE.**
320-
321-
See [LICENSE](LICENSE) for complete legal terms.
322-
See [SECURITY.md](SECURITY.md) for security disclosures.
323-
324-
---
325-
326-
## Version
327-
328-
**Current Version**: 1.0
329-
**Last Updated**: November 27, 2025
330-
**Status**: Active Development
331-
332-
---
333-
334-
## Additional Resources
335-
336-
### Learn More About ZK-STARKs
337-
338-
- **StarkWare Resources**: https://starkware.co/developers/
339-
- **ZK Learning**: https://zkhack.dev/
340-
- **Academic Papers**: Search for "ZK-STARK" on eprint.iacr.org
341-
342-
### Related Projects
343-
344-
- **zkSNARKs**: Different ZK proof system (trusted setup required)
345-
- **Bulletproofs**: Range proofs without trusted setup
346-
- **Plonk**: Universal ZK-SNARKs
347-
348-
### Community
349-
350-
- **ZK Research Forum**: https://zkresear.ch/
351-
- **Ethereum ZK Community**: Active research on ZK rollups
145+
- **Issues**: Use GitHub Issues for bugs and questions
352146

353147
---
354148

355149
**Remember**: PythonStark is a learning tool. For production needs, use professionally audited, battle-tested libraries.
356150

357-
---
358-
359-
<div align="center">
360-
361-
**Made with ❤️ for the ZK research and education community**
362-
363151
⭐ Star this repo if you find it useful for learning!
364152

365153
</div>

0 commit comments

Comments
 (0)