Decentralized Reputation Infrastructure for Trust
DRIFT is a protocol that treats reputation as a scalable, context-scoped primitive. By moving heavy algorithmic trust computations off-chain and utilizing succinct state proofs for on-chain settlement, DRIFT achieves constant-cost global updates and fast user verification without expanding ledger storage footprints.
The protocol is built on three design principles:
Context Isolation. Reputation is strictly scoped to a unique administrative domain. A node's score in a P2P storage network is isolated from its score in a governance DAO, preventing cross-domain correlation.
Attestation-Source Agnosticism. The core ledger does not depend on a rigid attestation primitive. Any registry implementing the IAttestationProvider interface can be bound into a context as an authorized data stream.
Off-Chain Computation, On-Chain Verification. Graph-based algorithms (e.g., EigenTrust) execute off-chain. Validated outputs are committed to the ledger via low-gas cryptographic proofs (EIP-712 signatures or zero-knowledge proofs).
A context is a unique, namespaced reputation domain registered permissionlessly. Each context dictates its verification profile: accepted attestation schemas, evaluation adapters, and administrators (via OpenZeppelin AccessControl). Context identifiers (contextUID) are derived deterministically via keccak256(abi.encodePacked(name)).
A schema defines the data fields of an identity claim. DRIFT does not manage global schema registries; it stores a whitelist of schemaUID values accepted within each context.
An adapter is an on-chain contract implementing IAttestationProvider. It translates attestation data from external registries into a Boolean isValid() response. DRIFT ships with a natively integrated EAS adapter.
Any cryptographic identity (wallet, device, or smart contract) that registers within a context to participate and accumulate reputation weight.
A contextual subdivision (e.g., STUDENT, PROFESSOR, VALIDATOR) mapped to a 32-byte hash. Reputation states are isolated per (Context, Role) pair.
Pluggable execution models (e.g., WeightedGovernanceClient.sol) deployed via EIP-1167 minimal proxies. These sub-clones pull balances from token ledgers to resolve application-specific actions: voting weights, rate limits, or payout thresholds.
Storing individual micro-attestations (packet delivery logs, file integrity audits, peer reviews) in EVM storage causes state bloat and prohibitive SSTORE costs. DRIFT leaves raw interaction histories in off-chain data availability layers (indexer graphs, IPFS, Arweave). The smart contract layer records only consensus states.
EigenTrust and similar algorithms require matrix multiplications across peer-vouched trust networks. Executing these operations in the EVM consumes the full block gas limit. DRIFT delegates computation to the SDK tier, translating large transaction graphs into single-slot on-chain signature verification.
Tracking participant standing across independent contexts and roles via individual ERC-20 deployments creates gas overhead and interface fragmentation. The EIP-1155 multi-token standard allows a single contract to track distinct (Context, Role) configurations via a unified balance mapping.
Reputation derives utility from identity attachment, not transferability. If reputation tokens were transferable, actors could buy high-reputation accounts to hijack governance or subvert trust networks. All transfer functions in DRIFTToken.sol are hard-coded to revert, making tokens permanently non-transferable.
Contract addresses are stored in packages/contracts/deployments/{chainId}.json.
| Network | Chain ID | Deployment File |
|---|---|---|
| Ethereum Sepolia | 11155111 | 11155111.json |
| Arbitrum Sepolia | 421614 | N/A |
-
/contracts— Foundry project containing core protocol registries, soulbound token factories, context gatekeepers, and governance templates. -
/sdk— Node.js/TypeScript SDK with data providers, off-chain computation engines, and EIP-712 settlement oracles.
Distributed under the MIT License. See LICENSE for details.