coniks-sys / coniks-go

A CONIKS implementation in Golang
http://coniks.org
Other
116 stars 30 forks source link

Proving membership of multiple accounts #197

Open vqhuy opened 6 years ago

vqhuy commented 6 years ago

We should provide an API from /merkletree level that supports proving membership of multiple accounts in the Merkle-tree. Since many of these inclusion proofs are overlap, we could shrink the overall proof by removing repeated elements.

This would be helpful in case of group chat, or a client can save some bandwidth when it has many accounts.

Any thoughts @coniks-sys/coniks-go?

masomel commented 6 years ago

This is an interesting idea, and would definitely be something we can optimize. I imagine the client would send the server a list of indexes and receive the optimized inclusion proofs. My only main concern is that this optimization may leak data to the server about which accounts are controlled by the same client/user; what we can then do is give users the choice to opt in for this optimization and trade some privacy against better performance.