ZK-Platoon: Privacy-preserving truck platoon verification—secure, on-chain, and trustless. 🚛🔒
Overview ZK-Platoon is a zero-knowledge proof (ZKP)-based system that enables secure, privacy-preserving verification of truck positions within a moving platoon. The system allows a platoon owner to prove the authenticity and position of trucks in their fleet without revealing sensitive location data.
Using zero-knowledge cryptography, trucks can prove their position in a platoon while ensuring that unauthorized or absent trucks cannot fraudulently claim membership. The verification process is executed on-chain using smart contracts, making it tamper-proof, decentralized, and trustless. Key Features & Functionality
Zero-Knowledge Authentication via ZK-JWT
a. The platoon owner logs into the system using ZK-JWT (Zero-Knowledge JSON Web Tokens).
b. Authentication is achieved without exposing user credentials, enhancing security and privacy.
Platoon Visualization & Position Tracking
a. Once logged in, the platoon owner can visualize their fleet.
b. The system shows truck positions relative to one another and a starting location.
c. Unauthorized users cannot view the individual truck positions.
Truck Position Verification & On-Chain Proof Submission
a. Each truck generates a ZK proof to confirm its presence in the platoon.
b. The proof is submitted to the blockchain, where a Plonk-based smart contract verifies it.
c. Proofs for legitimate trucks are accepted; invalid ones are rejected.
Swapping Truck Positions Securely
a. The platoon owner can initiate a command to swap truck positions.
b. Trucks must generate new ZK proofs for their updated positions.
c. Proofs are verified on-chain, ensuring only authorized swaps occur.
Detecting Absent or Unauthorized Trucks
a. A truck removed from the platoon loses the ability to generate valid proofs.
b. Any attempt by an unauthorized truck to fake membership fails on-chain verification.
c. This ensures fraud prevention and security within the platoon network.
For secure, privacy-preserving login for platoon owners, ZK-JWT (Partner technology) has been used.
For ZK Proof Generation and verification of truck positions, we have used AZTEC NOIR ZK SDK (Partner technology).
To create on-chain smart contracts that verify ZK-Proofs, we have used Ultra Plonk and Honk verification contracts.
To develop an interactive user interface to visualize platoon structure, we have used ReactJS.
To efficiently manage truck hierarchy and positions, we have simulated the trucks as nodes in a graph and used the DFS algorithm.
We have used Foundry to develop smart contracts and simulate the Blockchain execution environment.
We have used empirical keys to prevent the need for generating multiple proofs to verify domain ownership.