celo-org / celo-monorepo

Official repository for core projects comprising the Celo platform
https://celo.org
Apache License 2.0
699 stars 369 forks source link

[Attestation Service] Don't send SMS to VOIP numbers #7170

Closed codyborn closed 3 years ago

codyborn commented 3 years ago

Wraps this item: https://github.com/celo-org/celo-monorepo/issues/7083

codyborn commented 3 years ago

Rather than blocking users from mapping to VOIP, we should restrict VOIP only where we care about it (ex. cUSD rewards). If a user primarily uses a VOIP number, the protocol shouldn't care that it's a cost-less number. We can add the VOIP information either in our off-chain logs or add it to the attestation so that consumers can decide whether the phone number can be used as any kind of cost-proof. WDYT @timmoreton @aslawson

aslawson commented 3 years ago

yes :) this is along the lines of what i was suggesting https://celo-org.slack.com/archives/C01AGA0P23W/p1613695895046100?thread_ts=1612809013.012900&cid=C01AGA0P23W

the difficulty with attestation events is that services could decide not to opt into reporting these as metrics. and we don't have the opt in metrics pipeline yet afaik. we could return isvoip boolean in the payload to the client response and then the client could fire events, but at that point why not just let the client pull in and use a voip detection library itself. this solution would limits cUSD to Valora only (which it is already for other reasons)

the hard part with onchain is that it never sees the actual phone number (only identifier). so no way to do post-processing with voip detection library from here.

how do you think off-chain logs could work?

codyborn commented 3 years ago

Closing in favor of this item #7540