Technology

Continuous line art handshake representing human connection

Julia Social is a company focused on privacy. All of our technical choices have been to enable user privacy.

Question mark illustration

Standards-Compliant

Julia Social digital identities are designed to be compliant with the W3C standards for Decentralized Identifiers (DIDs: https://www.w3.org/TR/did-1.1/) and Verifiable Credentials: (VCs: https://www.w3.org/TR/vc-data-model-2.0/) to enable interoperability.

Question mark illustration

Blockchain-Based Digital Identity

Every Julia Social digital identity is recorded on the Chia global public blockchain so that it can’t be altered in any way other than by the holder of that identity. The Chialisp source code will be made open source after it has been audited. The only data stored on the blockchain is that necessary to clearly identify the cryptographic keys that control each identity and the processes available to recover that identity.

Ownership

Any ownership model from a single key to a complete multi-class multi-signature fortress is possible for every digital identity.

Custodians

Any digital identity can have any number of custodians, each of whom have limited access to use the identity. Useful for children, elders, and identities for non-humans, like your dog. (Non-humans won’t get a not.bot credential.)

DID Documents

Any digital identity can have a DID document, which may contain additional, self-asserted information about the identity. DID documents will be stored in Chia DataLayer, enabling individual elements from the DID document to be presented on-chain

Message Signing

Digital identities can sign messages on-chain, if desired

Delegated Message Signing

Julia Social digital identities can delegate the ability to sign messages on their behalf within specific scopes. The delegator can choose to permit subdelegation, and can revoke the delegation at any time.

Issue Verifiable Credentials

All Julia Social digital identities can be used to sign verifiable credentials. Verifiable credentials are issued off-chain. Revocation occurs on-chain to ensure global public visibility of the revocation event.

Delegated Verifiable Credential Issuance

Julia Social identities can securely delegate to others the ability to sign credentials on their behalf. Delegation is revocable and, if needed, can be retroactively revoked.

Present Verifiable Credentials On Chain

Julia Social verifiable credentials can be directly presented on chain.

Delegated Presentation of Verifiable Credentials

Credential holders can delegate the ability to present their credentials on chain, including optional subdelegation

Self-Recovery with Prerotated Keys

If the keys that control a Julia Social digital identity are lost or compromised, the rightful owner can pre-commit to a new set of keys and can make those alternate keys active when needed, overwriting the original keys

Assisted Recovery

Julia Social digital identities can assist one another in recovery in case the keys are lost or compromised. Any number of digital identities can participate in assisting in the recovery, from a single recovery agent to multi-class, multiparticipant recovery.

Digital Asset Ownership

Julia Social digital identities can be used as vaults, securely storing digital assets.

Interaction with Other Smart Coins On Chain

Julia Social digital identities are smart coins on the Chia blockchain and can interact with other smart coins for DeFi and other purposes

“This is awesome - some of the most elegant chialisp code I've seen.” ... “I don't think I've seen such high quality in a long time.”
Yakuhito
Question mark illustration

Privacy-Preserving Credentials

Julia Social is a company based on privacy and security. The verifiable credentials that Julia Social creates are at the core of that privacy promise.

Julia Social Does Not Store Data

Julia Social receives your passport data during enrollment, and deletes it within 5 minutes, often less. Julia Social only stores a completely anonymized version of your data, from which it is impossible to reconstruct the original data. This is particularly difficult in the case of age credentials, which change with each birthday. Your identifying information is only stored on your device and we use the magic of multiparty computation so that when Julia Social signs your credentials indicating your name or age, for example, it can be sure they’re correct even without knowing what they say.

Aliases Help You Manage Tracking

Every alias is a totally separate identity on the blockchain. There is no way for anyone to tell that two aliases belong to the same person. Even Julia Social does not know which aliases belong to you. Julia Social only knows how many aliases each user has. You can use aliases to enable or avoid tracking. You may have one alias you use for a public-facing persona on many websites, and multiple other aliases that are personal and private. You may even have some aliases that you only ever use once to make sure those interactions cannot be connected to the rest of your identities at all.

Non-Correlation

The credentials issued for each alias are completely different and cannot be used to identify that two aliases belong to the same person. For example, if you have a credential indicating your age is 25 on one alias, then the same credential on another one of your aliases will be no more similar to the first than someone else’s credential indicating they are also 25.

Bonus: Privacy-protecting Referral Codes

As another component of our commitment to privacy, even the referral codes are privacy protected. There is no way for Julia Social to know who created each referral code. At the same time, Julia Social can limit the number of referral codes each user can create, and Julia Social can confirm that any particular referral code is valid. The magic again lies in multi-party computation. Although the Julia Social server participates in creating each referral code, it never sees the final value, and thus cannot know who created the referral code when someone uses it to sign up.

“Ken has devised an elegant solution to an identity problem everyone is struggling with, and the efficient cryptography solution makes it possible on the blockchain in a brand new way.”
Rob Wiltbank
Question mark illustration

Chia Blockchain

Julia Social digital identities are “anchored” on the Chia blockchain. The only data stored on the blockchain are the cryptographic signing keys and recovery mechanisms that define control of the identity. No verifiable credentials appear on-chain unless intentionally submitted to the blockchain by their owner.

World’s Most Decentralized Blockchain

with tens of thousands of nodes worldwide, each with a complete copy of the blockchain, no one node operator can track which identities you verify on the blockchain, nor prevent you from making updates to your identity. Running your own node is easy, enabling users to verify identities and update their own identities with full privacy.

Coinset Model

Each identity is represented with its own coin, and each coin has its own smart contract that can only be used by its owner. There are no central, monolithic smart contracts owned or managed by third parties.

Transaction Encapsulation

When you use your Julia Social identity to sign a message or present a verifiable credential, a blockchain transaction is created. That transaction is not necessarily submitted to the blockchain. Instead, you can send the transaction (potentially encapsulated in a file or a sticker) directly to whomever you want to receive the message or credential. The recipient can verify that the transaction is valid by looking at the relevant coin(s) on the blockchain, without actually submitting the transaction to the blockchain.

Cryptographic Signature Aggregation

Credentials are signed, but you don’t want to give everyone a usable copy of your credentials when you use them. By merging (aggregating) all of the credential signatures into a single signature, the recipient isn’t able to extract your credentials to use in ways you might not expect.