in src/main.rs [246:261]
fn verify_final_pre_reduced_cofactored(
pub_key: &EdwardsPoint,
unpacked_signature: &(EdwardsPoint, Scalar),
hash: &Scalar,
) -> Result<()> {
let eight_hash = eight() * hash;
let eight_s = eight() * unpacked_signature.1;
let rprime =
EdwardsPoint::vartime_double_scalar_mul_basepoint(&eight_hash, &pub_key.neg(), &eight_s);
if (unpacked_signature.0.mul_by_cofactor() - rprime).is_identity() {
Ok(())
} else {
Err(anyhow!("Invalid pre-reduced cofactored signature"))
}
}