Cargo Features

[dependencies]
ssi-data-integrity = { version = "0.1.0", default-features = false, features = ["w3c", "dif", "ed25519", "secp256k1", "secp256r1", "secp384r1", "rsa", "tezos", "aleo", "eip712", "solana", "ethereum", "bbs"] }
default = ed25519, rsa, secp256k1, secp256r1, w3c

These default features are set whenever ssi-data-integrity is added without default-features = false somewhere in the dependency tree.

w3c default

Signature suites specified by the W3C.

This includes:

  • JsonWebSignature2020
  • RsaSignature2018 (requires rsa)
  • Ed25519Signature2018 (requires ed25519)
  • Ed25519Signature2020 (requires ed25519)
  • EdDsa2022 (requires ed25519)
  • EcdsaSecp256k1Signature2019 (requires secp256k1)
  • EcdsaSecp256r1Signature2019 (requires secp256r1)
  • EthereumEip712Signature2021 (requires eip712)

Enables w3c of ssi-data-integrity-suites

Affects options::AnyInputSuiteOptions.eip712, signature_options::AnySignatureOptions.feature_option, signature_options::AnySignatureOptions.commitment_with_proof

dif

Signature suites specified by the Decentralized Identify Foundation (DIF).

This includes:

  • EcdsaSecp256k1RecoverySignature2020 (requires secp256k1)

Enables dif of ssi-data-integrity-suites

ed25519 default

Signature suites based on ED25519.

This includes:

  • Ed25519Signature2018 (requires w3c)
  • Ed25519Signature2020 (requires w3c)
  • EdDsa2022 (requires w3c)

Enables ed25519 of ssi-data-integrity-suites

secp256k1 default

Signature suites based on secp256k1.

This includes:

  • EcdsaSecp256k1Signature2019 (requires w3c)
  • EcdsaSecp256k1RecoverySignature2020 (requires dif)

Enables secp256k1 of ssi-data-integrity-suites

secp256r1 default

Signature suites based on secp256r1.

This includes:

  • EcdsaSecp256r1Signature2019 (requires w3c)
  • EcdsaRdfc2019 (requires w3c)

Enables secp256r1 of ssi-data-integrity-suites

secp384r1

Signature suites based on secp384r1.

This includes:

  • EcdsaRdfc2019 (requires w3c)

Enables secp384r1 of ssi-data-integrity-suites

rsa default

Signature suites based on RSA.

This includes:

  • RsaSignature2018 (requires w3c)

Enables rsa of ssi-data-integrity-suites

tezos

Tezos signatures suites.

This includes:

  • TezosJcsSignature2021
  • TezosSignature2021
  • Ed25519BLAKE2BDigestSize20Base58CheckEncodedSignature2021 (requires ed25519)
  • P256BLAKE2BDigestSize20Base58CheckEncodedSignature2021 (requires secp256r1)

Enables tezos of ssi-data-integrity-suites

aleo

Enables AleoSignature2021.

Enables aleo of ssi-data-integrity-suites

eip712

Signature suites based on Ethereum EIP-712.

This includes:

  • Eip712Signature2021 (requires ethereum).
  • EthereumEip712Signature2021 (requires w3c)

Enables eip712 of ssi-data-integrity-suites

Affects options::AnyInputSuiteOptions.eip712

solana

Enables SolanaSignature2021

Enables solana of ssi-data-integrity-suites

ethereum

Ethereum signature suites.

This includes:

  • EthereumPersonalSignature2021
  • Eip712Signature2021 (requires eip712)

Enables ethereum of ssi-data-integrity-suites

bbs = ssi-bbs

BBS cryptographic suites.

Enables bbs of ssi-data-integrity-suites

Affects signature_options::AnySignatureOptions.feature_option, signature_options::AnySignatureOptions.commitment_with_proof

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

ssi-bbs bbs?