Unirep Social documentation
UniRep Social is a private and decentralized social media based on a private and non-repudiable reputation system called Unirep. In a Unirep system, users can receive positive and negative reputation from attesters, and voluntarily prove that they have at least certain amount of reputation without revealing the exact amount. Moreover, users cannot refuse to receive reputation from an attester.
Unirep Social is a DApp built on Ethereum blockchain, and users only interact with Unirep Social smart contracts and its specified verifiers. All transactions are logged on chain and all the status of Unirep are constructed from the smart contract.
In addition, users in a Unirep protocol are not interact with each user's identity temporary identity called epoch key, which is only valid within a given epoch. Users can also create multiple epoch keys within an epoch.
Unirep protocol utilizes hash functions and merkle trees to make all reputation non-repudiable.
Users in the social media platform can have the following functions:
- 2.A user can create a post with the user’s proof of reputation to prove that the user has enough reputation to make the post
- 3.Everyone with the proof can verify it on chain
- 4.Users only reveal their epoch keys in their posts instead of their identities, which will protect users’ privacy
- 5.Attesters who see a post with an epoch key can send positive or negative attestations (called upvote or downvote ) to the epoch key