derive_pub.fill(0)
}
-const sign_msg = new StaticArray<u8>(MESSAGE_BUFFER_BYTES)
const sign_prv = new StaticArray<u8>(PRIVATEKEY_BYTES)
const sign_pub = new StaticArray<u8>(PUBLICKEY_BYTES)
const sign_sig = new StaticArray<u8>(SIGNATURE_BYTES)
}
// Clear local buffers
- sign_msg.fill(0)
sign_prv.fill(0)
sign_pub.fill(0)
sign_sig.fill(0)
INPUT_BUFFER.fill(0)
// Copy message buffer to local variable, then clear message buffer
- memory.copy(changetype<usize>(sign_msg), changetype<usize>(MESSAGE_BUFFER), mlen)
- MESSAGE_BUFFER.fill(0)
// Sign, then clear local input
- crypto_sign(sign_sig, sign_msg, mlen, sign_prv, sign_pub)
- sign_msg.fill(0)
+ crypto_sign(sign_sig, MESSAGE_BUFFER, mlen, sign_prv, sign_pub)
+ MESSAGE_BUFFER.fill(0)
sign_prv.fill(0)
sign_pub.fill(0)
sign_sig.fill(0)
}
-const verify_msg = new StaticArray<u8>(MESSAGE_BUFFER_BYTES)
const verify_pub = new StaticArray<u8>(PUBLICKEY_BYTES)
const verify_sig = new StaticArray<u8>(SIGNATURE_BYTES)
/**
}
// Clear local buffers
- verify_msg.fill(0)
verify_pub.fill(0)
verify_sig.fill(0)
INPUT_BUFFER.fill(0)
// Copy message buffer to local variable, then clear message buffer
- memory.copy(changetype<usize>(verify_msg), changetype<usize>(MESSAGE_BUFFER), mlen)
- MESSAGE_BUFFER.fill(0)
// Verify, then clear local input
- const verified = crypto_verify(verify_sig, verify_msg, mlen, verify_pub)
- verify_msg.fill(0)
+ const verified = crypto_verify(verify_sig, MESSAGE_BUFFER, mlen, verify_pub)
+ MESSAGE_BUFFER.fill(0)
verify_pub.fill(0)
verify_sig.fill(0)