CirclesUBI / whitepaper

Circles Protocol Whitepaper
https://joincircles.net
Creative Commons Attribution Share Alike 4.0 International
348 stars 23 forks source link

Defending Against Fake Accounts in a UBI system (Sybil attack) #3

Open TomTem opened 6 years ago

TomTem commented 6 years ago

https://github.com/CirclesUBI/docs/blob/master/Circles.md#defending-against-fake-accounts

In understand from this example that it makes no sense for Alice to create a fake account, because she can only pay Bob with her real AliceCoins. She would have to create a trust link with her AliceFake account to Bob, but because of the personal nature of the trust links Bob would know, and he would of course not allow this.

But what if Alice has a group of friends that Bob does not know about. If I understand correctly, the idea with circles is that you could have very large networks where everybody is linked to everybody without knowing each other directly. So it is possible that Allice has 1 account with some trusted users of 1 group, and a second account that is trusting a completely different set of users. This way Allice could be buying at Bob’s shop with 2 accounts giving her an unfair advantage in a UBI system.

ubi_circles_2_issue_small

What could be a solution for this scenario?

gbxl commented 6 years ago

Also, what prevents Alice from establishing trust on 2 different accounts with 2 different 3-rd party? If Alice can spent AliceCoin with bob and FakeAliceCoin with Jane, she still reaps the benefit of double minting. So sure you can't all spend it with the seamlessly but you could still cheat the system and collect multiple basic incomes. This is leaving way too much control/responsibilities in user's hands. Unless I am missing something obviously :)

n0-m4d commented 6 years ago

i see the same problem or am missing the same point. if alice and fakealice achieve trust by a validator the problem gets even worse, doesn't it?

adamstallard commented 6 years ago

I mentioned this in a different issue, but the project I'm working on: https://github.com/Brightside-Social/brightside is designed to address this kind of problem. I'd like it to be a validator for circles.