Crescent library brings privacy to digital identity systems

Crescent is a cryptographic library that adds unlinkability to common digital identity formats, preventing tracking across credential uses while preserving selective disclosure. It supports JSON Web Tokens and mobile driver’s licenses without requiring issuers to change their systems.

Digital identities embedded in phone wallets, workplace logins, and other apps are becoming ubiquitous, but they create new privacy risks such as linkability, the ability to associate multiple uses of a credential with a single person. Crescent is a cryptographic library developed to add unlinkability to widely used identity formats, including JSON Web Tokens and mobile driver’s licenses. The library is designed to prevent any data in a credential beyond what a user explicitly reveals from being used to link separate interactions, and it can operate without requiring issuing organizations to update their existing systems.

Crescent implements unlinkability using zero-knowledge proofs rather than specialized signature schemes, avoiding the need for broad infrastructure changes. At its core the system uses zero-knowledge SNARKs and specifically the Groth16 proof system so proofs are compact and fast to verify. Developers express the mathematical rules of what must be proven as a Rank-1 Constraint System, and Crescent splits proof generation into a prepare stage and a show stage. The prepare stage runs once to produce cryptographic values stored on the user device. The show stage is compact and randomized to prevent correlation with previous presentations. Preprocessing in the prepare stage makes proof generation practical on mobile devices, and the library also supports selective disclosure so users can prove facts such as validity or age without revealing identifying details like an exact expiration date.

The project includes a sample application that demonstrates employment verification and age verification flows. In the demo a Crescent service pre-generates parameters, credentials and keys are stored in a Crescent wallet, and presentation is handled by Rust servers and a browser-extension wallet. In one scenario a user proves employment to an online clinic without revealing identity or notifying the employer. In another scenario a user proves they are over 18 to a social network without disclosing their exact age. The paper and code are available on the Crescent GitHub page, and the project has been presented at Real-Word Crypto 2025 and North Sec 2025.

77

Impact Score

Saudi Artificial Intelligence startup launches Arabic LLM

Misraj Artificial Intelligence unveiled Kawn, an Arabic large language model, at AWS re:Invent and launched Workforces, a platform for creating and managing Artificial Intelligence agents for enterprises and public institutions.

Introducing Mistral 3: open artificial intelligence models

Mistral 3 is a family of open, multimodal and multilingual Artificial Intelligence models that includes three Ministral edge models and a sparse Mistral Large 3 trained with 41B active and 675B total parameters, released under the Apache 2.0 license.

NVIDIA and Mistral Artificial Intelligence partner to accelerate new family of open models

NVIDIA and Mistral Artificial Intelligence announced a partnership to optimize the Mistral 3 family of open-source multilingual, multimodal models across NVIDIA supercomputing and edge platforms. The collaboration highlights Mistral Large 3, a mixture-of-experts model designed to improve efficiency and accuracy for enterprise artificial intelligence deployments starting Tuesday, Dec. 2.

Contact Us

Got questions? Use the form to contact us.

Contact Form

Clicking next sends a verification code to your email. After verifying, you can enter your message.