ZkTLS: Acces anys web2 data in web3 world trustless.
TLS is a widely used foundational internet protocol that ensures the security and integrity of data transmission. Additionally, TLS uses PKI to enable entity authentication. By combining zero-knowledge (zk) with TLS, we construct the zkTLS protocol. The zkTLS can prove the connection process of a TLS connection. This proof enables trustless access for Web3 to any endpoint that supports TLS.
- foundry
- CUDA (optional)
- openssl
- pkg-config
- risc0 backend
- sp1 backend
- sp1
- CUDA Docker Toolkit (optional)
- Clone the repo
git clone https://github.com/the3cloud/zktls.git
- Compile the project
cargo b && cargo t && cargo c && cargo d --no-deps
- Use
mbedtls
instead ofrustls
. - Support batch proof submitted.
see benchmark.md
This is a monorepo. It means all code are in a single repo. We don't use any other build system, just cargo
. You can use cargo build
and cargo test
for all codebase, include contract code.
- contracts: solidity contract. other chain contract in future.
- crates
- recordable-tls: simulate TLS record, and record all messages.
- contracts: contracts warp crate.
- kms: store encrypted key.
- listens: pull TLS request event.