Wprowadzenie
Bulletproofs to rodzaj nieinteraktywnych dowodów zero-knowledge (zk-proofs), wprowadzony w 2017 roku przez Benedikta Bünza, Jonathana Bootle’a i innych. Są szczególnie znane z bardzo krótkiego rozmiaru dowodu i wysokiej efektywności.
Główne zalety Bulletproofs
- Bardzo mały rozmiar dowodu (logarytmiczny względem zakresu)
- Nie wymagają trusted setup (w przeciwieństwie do wielu zk-SNARKs)
- Szybka weryfikacja
- Idealnie nadają się do Range Proofs (dowód, że wartość jest w określonym zakresie)
Zastosowania
- Monero – poufne transakcje (Confidential Transactions)
- Mimblewimble (Grin, Litecoin)
- Implementacje w Ethereum (np. w rollupach)
- Zero-Knowledge Machine Learning (zkML)
- Poufne DeFi i poufne stablecoiny
Bulletproofs vs inne zk-proofs
- vs zk-SNARKs – Bulletproofs nie potrzebują trusted setup
- vs zk-STARKs – mniejszy rozmiar dowodu, ale wolniejsza weryfikacja
- vs Halo / Halo2 – prostsza implementacja
Aktualny status (2026)
Bulletproofs nadal są szeroko stosowane, szczególnie w projektach wymagających poufności bez trusted setup. Chociaż w wielu miejscach są zastępowane nowszymi rozwiązaniami (np. Halo2, Plonk, zk-STARKs), pozostają jednym z najważniejszych narzędzi w arsenale kryptografii zero-knowledge. Są również kluczowe w rozwoju zkML – zero-knowledge machine learning.
Powiązane pojęcia
zk-SNARKs • zk-STARKs • Zero-Knowledge Proofs • Confidential Transactions • Monero • zkML • Range Proofs