Spruce Adds Decentralized Identity Support for Celo

Spruce has added support for Celo in its core identity infrastructure that enables Celo accounts and verifiers to verify phone number types and issue verifiable credentials to lower the risk of Sybil attacks. Additionally, the work has laid the foundation for users to control their identity on Celo.

Spruce Adds Decentralized Identity Support for Celo

Spruce is now an ODIS signer and actively contributing to Celo’s decentralized identity capabilities.

Spruce has added support for Celo in its core identity infrastructure that enables Celo accounts and verifiers to verify phone number types and issue verifiable credentials to lower the risk of Sybil attacks. Additionally, the work has laid the foundation for users to control their identity on Celo.

Valora and other wallets on the Celo platform make use of a “service” (open source software) that was designed and is maintained by cLabs (called the “Attestation Service”).

Spruce specializes in developing software for identity and data use cases in the blockchain space. Spruce worked with cLabs to develop a new feature, to be added to Celo’s “Attestation Service.”

Celo users (on Valora for example) are able to prove/verify they own a phone number. When new Valora users want to prove they own their phone number, they receive an SMS message* on their mobile phone containing an 8 digit code. They enter this code into the Valora app to prove they own the phone number.

The new feature from Spruce allows Attestation Service providers to check what type of phone number a user is using (e.g. mobile number, landline number, or VOIP number), and issue the user a verifiable credential attesting to that type of number. This feature partly addresses a general security threat on blockchains (called sybil-resistance), which is being able to detect whether a user is unique or an alternative persona in order to avoid fraudulent activity (e.g. someone who created 100 phone numbers and 100 Celo accounts, to receive 100x the Celo rewards from Valora).

This is useful because wallets including Valora might be more confident paying Celo rewards to a user if they can verify that users are using a mobile phone number rather than a VOIP number (which can be purchased easily on the internet). By requiring non-VOIP mobile numbers for participation, it becomes harder to ‘game’ rewards services. In addition to this, this lays the groundwork to evolve the network with additional modules that bring standards-based claims to users to control their identity on Celo.

*This is simplified, but for technical completeness, it’s 3 individual SMS messages containing an 8 digit code each.


Spruce lets users control their data across the web. Through SpruceID and Kepler, Spruce provides an ecosystem of open source tools for developers that let users collect their data in one place that they control, and show their cards however they want. If you're curious about integrating Spruce's technology into your project, come chat with us in our Discord: