mirror of
https://github.com/logos-blockchain/logos-execution-zone.git
synced 2026-05-13 19:49:29 +00:00
addressed comments
This commit is contained in:
parent
8dd0919aa2
commit
f4982a896d
@ -114,11 +114,6 @@ impl HashableBlockData {
|
||||
bedrock_parent_id,
|
||||
}
|
||||
}
|
||||
|
||||
#[must_use]
|
||||
pub fn block_hash(&self) -> BlockHash {
|
||||
OwnHasher::hash(&borsh::to_vec(&self).unwrap())
|
||||
}
|
||||
}
|
||||
|
||||
impl From<Block> for HashableBlockData {
|
||||
|
||||
@ -122,15 +122,16 @@ impl Message {
|
||||
}
|
||||
|
||||
#[must_use]
|
||||
pub fn hash_message(&self) -> [u8; 32] {
|
||||
pub fn hash(&self) -> [u8; 32] {
|
||||
let msg = self.to_bytes();
|
||||
let mut bytes = Vec::with_capacity(
|
||||
PREFIX
|
||||
.len()
|
||||
.checked_add(self.to_bytes().len())
|
||||
.checked_add(msg.len())
|
||||
.expect("length overflow"),
|
||||
);
|
||||
bytes.extend_from_slice(PREFIX);
|
||||
bytes.extend_from_slice(&self.to_bytes());
|
||||
bytes.extend_from_slice(&msg);
|
||||
|
||||
Sha256::digest(bytes).into()
|
||||
}
|
||||
@ -188,7 +189,7 @@ pub mod tests {
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn hash_message_privacy_pinned() {
|
||||
fn hash_privacy_pinned() {
|
||||
let msg = Message {
|
||||
public_account_ids: vec![AccountId::new([42_u8; 32])],
|
||||
nonces: vec![Nonce(5)],
|
||||
@ -224,7 +225,7 @@ pub mod tests {
|
||||
assert_eq!(
|
||||
borsh::to_vec(&msg).unwrap(),
|
||||
expected_borsh,
|
||||
"`privacy_preserving_transaction::hash_message()`: expected borsh order has changed"
|
||||
"`privacy_preserving_transaction::hash()`: expected borsh order has changed"
|
||||
);
|
||||
|
||||
let mut preimage = Vec::with_capacity(PREFIX.len() + expected_borsh.len());
|
||||
@ -233,9 +234,9 @@ pub mod tests {
|
||||
let expected_hash: [u8; 32] = Sha256::digest(&preimage).into();
|
||||
|
||||
assert_eq!(
|
||||
msg.hash_message(),
|
||||
msg.hash(),
|
||||
expected_hash,
|
||||
"`privacy_preserving_transaction::hash_message()`: serialization has changed"
|
||||
"`privacy_preserving_transaction::hash()`: serialization has changed"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ pub struct WitnessSet {
|
||||
impl WitnessSet {
|
||||
#[must_use]
|
||||
pub fn for_message(message: &Message, proof: Proof, private_keys: &[&PrivateKey]) -> Self {
|
||||
let message_hash = message.hash_message();
|
||||
let message_hash = message.hash();
|
||||
let signatures_and_public_keys = private_keys
|
||||
.iter()
|
||||
.map(|&key| {
|
||||
@ -32,7 +32,7 @@ impl WitnessSet {
|
||||
|
||||
#[must_use]
|
||||
pub fn signatures_are_valid_for(&self, message: &Message) -> bool {
|
||||
let message_hash = message.hash_message();
|
||||
let message_hash = message.hash();
|
||||
for (signature, public_key) in self.signatures_and_public_keys() {
|
||||
if !signature.is_valid_for(&message_hash, public_key) {
|
||||
return false;
|
||||
|
||||
@ -68,7 +68,7 @@ impl Message {
|
||||
}
|
||||
|
||||
#[must_use]
|
||||
pub fn hash_message(&self) -> [u8; 32] {
|
||||
pub fn hash(&self) -> [u8; 32] {
|
||||
let mut bytes = Vec::with_capacity(
|
||||
PREFIX
|
||||
.len()
|
||||
@ -90,7 +90,7 @@ mod tests {
|
||||
use super::{Message, PREFIX};
|
||||
|
||||
#[test]
|
||||
fn hash_message_public_pinned() {
|
||||
fn hash_public_pinned() {
|
||||
let msg = Message::new_preserialized(
|
||||
[1_u32; 8],
|
||||
vec![AccountId::new([42_u8; 32])],
|
||||
@ -122,7 +122,7 @@ mod tests {
|
||||
assert_eq!(
|
||||
borsh::to_vec(&msg).unwrap(),
|
||||
expected_borsh,
|
||||
"`public_transaction::hash_message()`: expected borsh order has changed"
|
||||
"`public_transaction::hash()`: expected borsh order has changed"
|
||||
);
|
||||
|
||||
let mut preimage = Vec::with_capacity(PREFIX.len() + expected_borsh.len());
|
||||
@ -131,9 +131,9 @@ mod tests {
|
||||
let expected_hash: [u8; 32] = Sha256::digest(&preimage).into();
|
||||
|
||||
assert_eq!(
|
||||
msg.hash_message(),
|
||||
msg.hash(),
|
||||
expected_hash,
|
||||
"`public_transaction::hash_message()`: serialization has changed"
|
||||
"`public_transaction::hash()`: serialization has changed"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,7 +10,7 @@ pub struct WitnessSet {
|
||||
impl WitnessSet {
|
||||
#[must_use]
|
||||
pub fn for_message(message: &Message, private_keys: &[&PrivateKey]) -> Self {
|
||||
let message_hash = message.hash_message();
|
||||
let message_hash = message.hash();
|
||||
let signatures_and_public_keys = private_keys
|
||||
.iter()
|
||||
.map(|&key| {
|
||||
@ -27,7 +27,7 @@ impl WitnessSet {
|
||||
|
||||
#[must_use]
|
||||
pub fn is_valid_for(&self, message: &Message) -> bool {
|
||||
let message_hash = message.hash_message();
|
||||
let message_hash = message.hash();
|
||||
for (signature, public_key) in self.signatures_and_public_keys() {
|
||||
if !signature.is_valid_for(&message_hash, public_key) {
|
||||
return false;
|
||||
@ -75,7 +75,7 @@ mod tests {
|
||||
|
||||
assert_eq!(witness_set.signatures_and_public_keys.len(), 2);
|
||||
|
||||
let message_bytes = message.hash_message();
|
||||
let message_bytes = message.hash();
|
||||
for ((signature, public_key), expected_public_key) in witness_set
|
||||
.signatures_and_public_keys
|
||||
.into_iter()
|
||||
|
||||
@ -36,9 +36,9 @@ impl FromStr for Signature {
|
||||
}
|
||||
|
||||
impl Signature {
|
||||
#[must_use]
|
||||
/// This function expects the incoming message to be prehashed to be pre-2022 BIP-340/Keycard
|
||||
/// compatible.
|
||||
#[must_use]
|
||||
pub fn new(key: &PrivateKey, message: &[u8; 32]) -> Self {
|
||||
let mut aux_random = [0_u8; 32];
|
||||
OsRng.fill_bytes(&mut aux_random);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user