mirror of
https://github.com/Rate-Limiting-Nullifier/rln-docs.git
synced 2026-01-09 15:28:03 -05:00
docs: update 'what is rln' section
This commit is contained in:
@@ -1,8 +1,13 @@
|
||||
# References
|
||||
[Idea was proposed by Barry WhiteHat](https://ethresear.ch/t/semaphore-rln-rate-limiting-nullifier-for-spam-prevention-in-anonymous-p2p-setting/5009)
|
||||
|
||||
[RLN Overview](https://medium.com/privacy-scaling-explorations/rate-limiting-nullifier-a-spam-protection-mechanism-for-anonymous-environments-bbe4006a57d)
|
||||
* [First proposal of RLN by Barry WhiteHat](https://ethresear.ch/t/semaphore-rln-rate-limiting-nullifier-for-spam-prevention-in-anonymous-p2p-setting/5009)
|
||||
|
||||
[RLN Spec](https://hackmd.io/@aeAuSD7mSCKofwwx445eAQ/BJcfDByNF)
|
||||
* [RLN Overview by Blagoj](https://medium.com/privacy-scaling-explorations/rate-limiting-nullifier-a-spam-protection-mechanism-for-anonymous-environments-bbe4006a57d)
|
||||
|
||||
[VAC RLN Spec](https://rfc.vac.dev/spec/32/)
|
||||
* [Demo RLN Spec](https://hackmd.io/@aeAuSD7mSCKofwwx445eAQ/BJcfDByNF)
|
||||
|
||||
* [VAC RLN Spec](https://rfc.vac.dev/spec/32/)
|
||||
|
||||
* [Understand zkSNARK](https://vitalik.ca/general/2016/12/10/qap.html)
|
||||
|
||||
* [Circom docs](https://docs.circom.io/)
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Term | Description
|
||||
---- | -----------
|
||||
ZK-SNARK | [z.cash/technology/zksnarks/](https://z.cash/technology/zksnarks/)
|
||||
zkSNARK | Proof construction where one can prove possession of certain information, e.g. a secret key, without revealing that information, and without any interaction between the prover and verifier.
|
||||
Stake | Financial or social stake required for registering in the RLN applications. Common stake examples are: locking cryptocurrency (financial), linking reputable social identity.
|
||||
Identity secret | An array of two unique random components (identity nullifier and identity trapdoor), which must be kept private by the user. Secret hash and identity commitment are derived from this array.
|
||||
Identity nullifier | Random 32 byte value used as component for identity secret generation.
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
# Under the hood
|
||||
|
||||
*[zkSNARK](https://vitalik.ca/general/2022/06/15/using_snarks.html) is used in the **RLN** core. Therefore, we need to represent the protocol in R1CS (as we use Groth16). Circom DSL was chosen for this. This section provides an explanation of RLN circuits.*
|
||||
|
||||
## Circuits
|
||||
|
||||
|
||||
@@ -1 +1,4 @@
|
||||
# Uses
|
||||
|
||||
## zk-chat
|
||||
https://github.com/njofce/zk-chat
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
# What is Rate-Limiting Nullifier?
|
||||
|
||||
[Idea was proposed by Barry WhiteHat](https://ethresear.ch/t/semaphore-rln-rate-limiting-nullifier-for-spam-prevention-in-anonymous-p2p-setting/5009)
|
||||
*This topic is a part of complete [overview](https://medium.com/privacy-scaling-explorations/rate-limiting-nullifier-a-spam-protection-mechanism-for-anonymous-environments-bbe4006a57d) by Blagoj*.
|
||||
|
||||
[RLN Overview](https://medium.com/privacy-scaling-explorations/rate-limiting-nullifier-a-spam-protection-mechanism-for-anonymous-environments-bbe4006a57d)
|
||||
___
|
||||
|
||||
[RLN Spec](https://hackmd.io/@aeAuSD7mSCKofwwx445eAQ/BJcfDByNF)
|
||||
**RLN** is a construct based on zero-knowledge proofs that enables spam prevention mechanism for decentralized, anonymous environments. In anonymous environments, the identity of the entities is unknown.
|
||||
|
||||
[VAC RLN Spec](https://rfc.vac.dev/spec/32/)
|
||||
The anonymity property opens up the possibility for spam attack and sybil attack vectors for certain applications, which could seriously degrade the user experience and the overall functioning of the application. For example, imagine a chat application, where users are anonymous. Now, everyone can write unlimited number of spam messages, while we don't have ability to kick this member, because the spammer is anonymous.
|
||||
|
||||
**RLN** helps us identify and "kick" the spammer.
|
||||
|
||||
Moreover RLN can be useful not only to prevent a spam attacks, but in general, to limit users (in anonymous environments) in the number of actions (f.e. to vote or to make a bid).
|
||||
|
||||
# Circom Circuit for RLN
|
||||
|
||||
|
||||
Reference in New Issue
Block a user