verify signature changed name and cost
This commit is contained in:
parent
c03d3e3604
commit
3f6ad6be60
|
@ -31,7 +31,7 @@ pub enum DefaultFunction {
|
||||||
Sha2_256 = 18,
|
Sha2_256 = 18,
|
||||||
Sha3_256 = 19,
|
Sha3_256 = 19,
|
||||||
Blake2b_256 = 20,
|
Blake2b_256 = 20,
|
||||||
VerifySignature = 21,
|
VerifyEd25519Signature = 21,
|
||||||
VerifyEcdsaSecp256k1Signature = 52,
|
VerifyEcdsaSecp256k1Signature = 52,
|
||||||
VerifySchnorrSecp256k1Signature = 53,
|
VerifySchnorrSecp256k1Signature = 53,
|
||||||
// String functions
|
// String functions
|
||||||
|
@ -134,8 +134,8 @@ impl TryFrom<u8> for DefaultFunction {
|
||||||
v if v == DefaultFunction::Sha2_256 as u8 => Ok(DefaultFunction::Sha2_256),
|
v if v == DefaultFunction::Sha2_256 as u8 => Ok(DefaultFunction::Sha2_256),
|
||||||
v if v == DefaultFunction::Sha3_256 as u8 => Ok(DefaultFunction::Sha3_256),
|
v if v == DefaultFunction::Sha3_256 as u8 => Ok(DefaultFunction::Sha3_256),
|
||||||
v if v == DefaultFunction::Blake2b_256 as u8 => Ok(DefaultFunction::Blake2b_256),
|
v if v == DefaultFunction::Blake2b_256 as u8 => Ok(DefaultFunction::Blake2b_256),
|
||||||
v if v == DefaultFunction::VerifySignature as u8 => {
|
v if v == DefaultFunction::VerifyEd25519Signature as u8 => {
|
||||||
Ok(DefaultFunction::VerifySignature)
|
Ok(DefaultFunction::VerifyEd25519Signature)
|
||||||
}
|
}
|
||||||
v if v == DefaultFunction::VerifyEcdsaSecp256k1Signature as u8 => {
|
v if v == DefaultFunction::VerifyEcdsaSecp256k1Signature as u8 => {
|
||||||
Ok(DefaultFunction::VerifyEcdsaSecp256k1Signature)
|
Ok(DefaultFunction::VerifyEcdsaSecp256k1Signature)
|
||||||
|
@ -223,7 +223,7 @@ impl FromStr for DefaultFunction {
|
||||||
"sha2_256" => Ok(Sha2_256),
|
"sha2_256" => Ok(Sha2_256),
|
||||||
"sha3_256" => Ok(Sha3_256),
|
"sha3_256" => Ok(Sha3_256),
|
||||||
"blake2b_256" => Ok(Blake2b_256),
|
"blake2b_256" => Ok(Blake2b_256),
|
||||||
"verifySignature" => Ok(VerifySignature),
|
"verifyEd25519Signature" => Ok(VerifyEd25519Signature),
|
||||||
"verifyEcdsaSecp256k1Signature" => Ok(VerifyEcdsaSecp256k1Signature),
|
"verifyEcdsaSecp256k1Signature" => Ok(VerifyEcdsaSecp256k1Signature),
|
||||||
"verifySchnorrSecp256k1Signature" => Ok(VerifySchnorrSecp256k1Signature),
|
"verifySchnorrSecp256k1Signature" => Ok(VerifySchnorrSecp256k1Signature),
|
||||||
"appendString" => Ok(AppendString),
|
"appendString" => Ok(AppendString),
|
||||||
|
@ -287,7 +287,7 @@ impl Display for DefaultFunction {
|
||||||
Sha2_256 => write!(f, "sha2_256"),
|
Sha2_256 => write!(f, "sha2_256"),
|
||||||
Sha3_256 => write!(f, "sha3_256"),
|
Sha3_256 => write!(f, "sha3_256"),
|
||||||
Blake2b_256 => write!(f, "blake2b_256"),
|
Blake2b_256 => write!(f, "blake2b_256"),
|
||||||
VerifySignature => write!(f, "verifySignature"),
|
VerifyEd25519Signature => write!(f, "verifySignature"),
|
||||||
VerifyEcdsaSecp256k1Signature => write!(f, "verifyEcdsaSecp256k1Signature"),
|
VerifyEcdsaSecp256k1Signature => write!(f, "verifyEcdsaSecp256k1Signature"),
|
||||||
VerifySchnorrSecp256k1Signature => write!(f, "verifySchnorrSecp256k1Signature"),
|
VerifySchnorrSecp256k1Signature => write!(f, "verifySchnorrSecp256k1Signature"),
|
||||||
AppendString => write!(f, "appendString"),
|
AppendString => write!(f, "appendString"),
|
||||||
|
|
|
@ -277,13 +277,13 @@ impl Default for BuiltinCosts {
|
||||||
},
|
},
|
||||||
append_byte_string: CostingFun {
|
append_byte_string: CostingFun {
|
||||||
mem: TwoArguments::AddedSizes(AddedSizes {
|
mem: TwoArguments::AddedSizes(AddedSizes {
|
||||||
intercept: 1000,
|
|
||||||
slope: 571,
|
|
||||||
}),
|
|
||||||
cpu: TwoArguments::AddedSizes(AddedSizes {
|
|
||||||
intercept: 0,
|
intercept: 0,
|
||||||
slope: 1,
|
slope: 1,
|
||||||
}),
|
}),
|
||||||
|
cpu: TwoArguments::AddedSizes(AddedSizes {
|
||||||
|
intercept: 1000,
|
||||||
|
slope: 571,
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
cons_byte_string: CostingFun {
|
cons_byte_string: CostingFun {
|
||||||
mem: TwoArguments::AddedSizes(AddedSizes {
|
mem: TwoArguments::AddedSizes(AddedSizes {
|
||||||
|
@ -359,8 +359,8 @@ impl Default for BuiltinCosts {
|
||||||
verify_ed25519_signature: CostingFun {
|
verify_ed25519_signature: CostingFun {
|
||||||
mem: ThreeArguments::ConstantCost(10),
|
mem: ThreeArguments::ConstantCost(10),
|
||||||
cpu: ThreeArguments::LinearInZ(LinearSize {
|
cpu: ThreeArguments::LinearInZ(LinearSize {
|
||||||
intercept: 41047009,
|
intercept: 57996947,
|
||||||
slope: 18816,
|
slope: 18975,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
verify_ecdsa_secp256k1_signature: CostingFun {
|
verify_ecdsa_secp256k1_signature: CostingFun {
|
||||||
|
@ -693,7 +693,18 @@ impl BuiltinCosts {
|
||||||
mem: self.blake2b_256.mem.cost(args[0].to_ex_mem()),
|
mem: self.blake2b_256.mem.cost(args[0].to_ex_mem()),
|
||||||
cpu: self.blake2b_256.cpu.cost(args[0].to_ex_mem()),
|
cpu: self.blake2b_256.cpu.cost(args[0].to_ex_mem()),
|
||||||
},
|
},
|
||||||
DefaultFunction::VerifySignature => todo!(),
|
DefaultFunction::VerifyEd25519Signature => ExBudget {
|
||||||
|
mem: self.verify_ed25519_signature.mem.cost(
|
||||||
|
args[0].to_ex_mem(),
|
||||||
|
args[1].to_ex_mem(),
|
||||||
|
args[2].to_ex_mem(),
|
||||||
|
),
|
||||||
|
cpu: self.verify_ed25519_signature.cpu.cost(
|
||||||
|
args[0].to_ex_mem(),
|
||||||
|
args[1].to_ex_mem(),
|
||||||
|
args[2].to_ex_mem(),
|
||||||
|
),
|
||||||
|
},
|
||||||
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::AppendString => ExBudget {
|
DefaultFunction::AppendString => ExBudget {
|
||||||
|
|
|
@ -93,7 +93,7 @@ impl DefaultFunction {
|
||||||
DefaultFunction::Sha2_256 => 1,
|
DefaultFunction::Sha2_256 => 1,
|
||||||
DefaultFunction::Sha3_256 => 1,
|
DefaultFunction::Sha3_256 => 1,
|
||||||
DefaultFunction::Blake2b_256 => 1,
|
DefaultFunction::Blake2b_256 => 1,
|
||||||
DefaultFunction::VerifySignature => todo!(),
|
DefaultFunction::VerifyEd25519Signature => 3,
|
||||||
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::AppendString => 2,
|
DefaultFunction::AppendString => 2,
|
||||||
|
@ -152,7 +152,7 @@ impl DefaultFunction {
|
||||||
DefaultFunction::Sha2_256 => 0,
|
DefaultFunction::Sha2_256 => 0,
|
||||||
DefaultFunction::Sha3_256 => 0,
|
DefaultFunction::Sha3_256 => 0,
|
||||||
DefaultFunction::Blake2b_256 => 0,
|
DefaultFunction::Blake2b_256 => 0,
|
||||||
DefaultFunction::VerifySignature => todo!(),
|
DefaultFunction::VerifyEd25519Signature => 0,
|
||||||
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::AppendString => 0,
|
DefaultFunction::AppendString => 0,
|
||||||
|
@ -229,7 +229,7 @@ impl DefaultFunction {
|
||||||
DefaultFunction::Sha2_256 => arg.expect_type(Type::ByteString),
|
DefaultFunction::Sha2_256 => arg.expect_type(Type::ByteString),
|
||||||
DefaultFunction::Sha3_256 => arg.expect_type(Type::ByteString),
|
DefaultFunction::Sha3_256 => arg.expect_type(Type::ByteString),
|
||||||
DefaultFunction::Blake2b_256 => arg.expect_type(Type::ByteString),
|
DefaultFunction::Blake2b_256 => arg.expect_type(Type::ByteString),
|
||||||
DefaultFunction::VerifySignature => todo!(),
|
DefaultFunction::VerifyEd25519Signature => arg.expect_type(Type::ByteString),
|
||||||
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::AppendString => arg.expect_type(Type::String),
|
DefaultFunction::AppendString => arg.expect_type(Type::String),
|
||||||
|
@ -459,7 +459,16 @@ impl DefaultFunction {
|
||||||
}
|
}
|
||||||
_ => unreachable!(),
|
_ => unreachable!(),
|
||||||
},
|
},
|
||||||
DefaultFunction::VerifySignature => todo!(),
|
DefaultFunction::VerifyEd25519Signature => match (&args[0], &args[1], &args[2]) {
|
||||||
|
(
|
||||||
|
Value::Con(Constant::ByteString(_arg1)),
|
||||||
|
Value::Con(Constant::ByteString(_arg2)),
|
||||||
|
Value::Con(Constant::ByteString(_arg3)),
|
||||||
|
) => {
|
||||||
|
todo!()
|
||||||
|
}
|
||||||
|
_ => unreachable!(),
|
||||||
|
},
|
||||||
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
DefaultFunction::VerifyEcdsaSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
DefaultFunction::VerifySchnorrSecp256k1Signature => todo!(),
|
||||||
DefaultFunction::AppendString => match (&args[0], &args[1]) {
|
DefaultFunction::AppendString => match (&args[0], &args[1]) {
|
||||||
|
|
Loading…
Reference in New Issue