content: [package]
  name = "crypto"
  version.workspace = true
  edition.workspace = true
  authors.workspace = true
  homepage.workspace = true
  repository.workspace = true
  license.workspace = true
  keywords.workspace = true
  categories.workspace = true
  
  [dependencies]
  # blake2 = { version = "0.10", default-features = false, optional = true }
  blake2 = { version = "0.10", default-features = false }
  sha3 = { version = "0.10", default-features = false }
  sha2 = { version = "0.10", default-features = false }
  k256 =  { version = "0.13", default-features = false, features = ["ecdsa-core", "ecdsa", "arithmetic"] }
  p256 =  { version = "0.13", default-features = false, features = ["ecdsa-core", "ecdsa", "arithmetic"] }
  blake2s_u32 = { workspace = true, optional = true, default-features = false }
  ripemd = { version = "0.1", default-features = false }
  ruint = { version = "1.12.4", default-features = false }
  
  cfg-if = "1.0.0"
  const_for = "0.1.5"
  
  # zeroize = { version = "1", default-features = false, optional = true }
  # num-traits = { version = "0.2", default-features = false, optional = true }
  # num-bigint = { version = "0.4", default-features = false, optional = true }
  # num-integer = { version = "0.1", default-features = false, optional = true }
  
  ark-std = { version = "0.5", default-features = false }
  ark-ff = { version = "0.5", default-features = false }
  ark-ec = { version = "0.5", default-features = false }
  ark-serialize = { version = "0.5", default-features = false }
  ark-bn254 = { version = "0.5", default-features = false, features = ["curve", "scalar_field"] }
  ark-bls12-381 = { version = "0.5", default-features = false, features = ["curve", "scalar_field"] }
  num-bigint = { version = "0.4", default-features = false }
  zeroize = { version = "1", default-features = false }
  itertools = { version = "0.14.0", default-features = false }
  educe = { version = "0.6.0", default-features = false }
  num-traits = { version = "0.2", default-features = false }
  
  # ark-ff = { path = "../../git_copies/algebra/ff", default-features = false }
  # ark-ec = { path = "../../git_copies/algebra/ec", default-features = false }
  # ark-serialize = { path = "../../git_copies/algebra/serialize", default-features = false }
  # ark-bn254 = { path = "../../git_copies/algebra/curves/bn254", default-features = false, features = ["curve", "scalar_field"] }
  # ark-bls12-381 = { path = "../../git_copies/algebra/curves/bls12_381", default-features = false, features = ["curve", "scalar_field"] }
  
  [dev-dependencies]
  zksync_os_runner = { path = "../zksync_os_runner"}
  risc_v_simulator = { workspace = true, features = ["delegation"] }
  # blake2s_u32 = {path = "../../zksync-airbender/blake2s_u32", optional = true, default-features = false}
  ark-std = { version = "0.5" }
  zeroize = { version = "1", default-features = false }
  num-traits = { version = "0.2", default-features = false }
  num-bigint = { version = "0.4", default-features = false }
  num-integer = { version = "0.1", default-features = false }
  proptest = "1.0.0"
  hex-literal = "0.4.1"
  ark-test-curves = { version = "0.5", features = ["secp256k1", "bls12_381_curve"] }
  rand_core = { version = "0.6.4", features = ["getrandom"] }
  
  [features]
  # forward = ["blake2"]
  forward = []
  proving = ["single_round_with_control", "bigint_ops", "secp256k1-static-context"]
  default = ["forward", "secp256k1-static-context"]
  # bigint_ops = ["zeroize", "num-bigint", "num-traits", "num-integer"]
  bigint_ops = []
  single_round_with_control = ["blake2s_u32/blake2_with_compression"]
  blake2s_tests = []
  secp256k1-static-context = []
  alloc = []
  testing = []
  