Signed HTTP Exchanges (SXG) is draft specification that allows web content to be signed and verified. This project is a proof of concept that demonstrates how SXG's can be used to verify the integrity and authenticity of web content using zero-knowledge proofs.
No, not all websites have SXG enabled. It would be great if all websites supported SXG. But it will on click on cloudflare to enable so, it would be great if all websites supported SXG to enable it.
Literally only cloudflare can enable it with one click. So then cloudflare will sign the content and then we can verify it using the zero-knowledge proof.
Currently, only a few websites support SXG.
Some of the websites that support SXG are:
You can use these extension to verify whether sxg is enabled or not.
If you want to learn more about sxg you can visit here
Verify the integrity and authenticity of web content using Signed HTTP Exchanges (SXG) and zero-knowledge proofs.
This Project contains:
- sp1 circuit for verify sxg
- smart contract to verify the proof on chain
Deployed contract: 0xadf974bae8d9de2a007058dfbb557097627a1a18
This is a template for creating an end-to-end SP1 project that can generate a proof of any RISC-V program.
- Use Sxg Extension to generate inputs for sxg content you wanted to prove from https://github.com/crema-labs/sxg-extension
In case you wanted to generate proof and verify:
RUST_LOG=info cargo run --release --bin evm -- --system groth16 --input-file-id <sxg-input>
- Smart Contract Verification
We've also developed a smart contract to verify the proofs generated by our SP1 circuit. This allows for on-chain verification of web content integrity and authenticity.
To interact with the contract or view its details, check out our deployed contract on Etherscan: 0xadf974bae8d9de2a007058dfbb557097627a1a18