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

New test generates an immune health score

Researchers at Yale University created an immune health metric by profiling blood cells, gene expression, and more than 1,300 proteins, then using machine learning to correlate those signals with health. The experimental test aligned with responses to disease and vaccines but is not ready for clinical use.

How muscles remember movement and exercise

Research shows skeletal muscle stores a lasting epigenetic memory of both training and atrophy, shaping how quickly we regain strength or lose it, and that exercise can help reset negative imprints.

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.