1
0
Fork 0
mirror of https://github.com/eosswedenorg/libantelope synced 2026-06-17 20:10:03 +02:00

include/libeosio/hash.hpp: remove nested struct from ripemd160_t and sha256_t and just use a array directly.

This commit is contained in:
Henrik Hautakoski 2023-03-26 19:25:55 +02:00
parent 6026114869
commit abecabba99
7 changed files with 89 additions and 127 deletions

View file

@ -50,7 +50,7 @@ int ecdsa_sign(const ec_privkey_t& key, const sha256_t* digest, ec_signature_t&
int v = 0;
secp256k1_ecdsa_recoverable_signature s;
if (!secp256k1_ecdsa_sign_recoverable(ctx, &s, digest->data, key.data(), extended_nonce_function, &counter)) {
if (!secp256k1_ecdsa_sign_recoverable(ctx, &s, (const unsigned char*) digest, key.data(), extended_nonce_function, &counter)) {
return -1;
}
@ -86,7 +86,7 @@ int ecdsa_verify(const sha256_t* digest, const ec_signature_t& sig, const ec_pub
// Verify
secp256k1_ecdsa_recoverable_signature_convert(ctx, &ec_sig, &ec_rec_sig);
return secp256k1_ecdsa_verify(ctx, &ec_sig, digest->data, &pubkey) > 0 ? 0 : -1;
return secp256k1_ecdsa_verify(ctx, &ec_sig, (const unsigned char*) digest, &pubkey) > 0 ? 0 : -1;
}
int ecdsa_recover(const sha256_t* digest, const ec_signature_t& sig, ec_pubkey_t& pubkey) {
@ -106,7 +106,7 @@ int ecdsa_recover(const sha256_t* digest, const ec_signature_t& sig, ec_pubkey_t
// Recover public key
if (!secp256k1_ecdsa_recover(ctx, &ec_pubkey, &ec_sig, digest->data)) {
if (!secp256k1_ecdsa_recover(ctx, &ec_pubkey, &ec_sig, (const unsigned char*) digest)) {
return -1;
}

View file

@ -61,7 +61,7 @@ int ecdsa_sign(const ec_privkey_t& key, const sha256_t* digest, ec_signature_t&
const BIGNUM *r, *s;
EC_KEY* tmpk;
ecdsa_sig = ECDSA_do_sign(digest->data, 32, ec_key);
ecdsa_sig = ECDSA_do_sign((const unsigned char*) digest, 32, ec_key);
if (ecdsa_sig == NULL) {
goto err2;
}
@ -72,7 +72,7 @@ int ecdsa_sign(const ec_privkey_t& key, const sha256_t* digest, ec_signature_t&
tmpk = EC_KEY_new_by_curve_name( NID_secp256k1 );
for (int i = 0; i < 4; i++) {
if (ECDSA_SIG_recover_key_GFp(tmpk, r, s, digest->data, sizeof(digest->data), i, 1) == 1) {
if (ECDSA_SIG_recover_key_GFp(tmpk, r, s, (const unsigned char*) digest, 32, i, 1) == 1) {
const EC_POINT *p = EC_KEY_get0_public_key(tmpk);
// Compare public keys
@ -140,7 +140,7 @@ int ecdsa_verify(const sha256_t* digest, const ec_signature_t& sig, const ec_pub
goto err3;
}
if (ECDSA_do_verify(digest->data, 32, ecdsa_sig, ec_key) == 1) {
if (ECDSA_do_verify((const unsigned char*) digest, 32, ecdsa_sig, ec_key) == 1) {
ret = 0;
}
@ -164,7 +164,7 @@ int ecdsa_recover(const sha256_t* digest, const ec_signature_t& sig, ec_pubkey_t
ECDSA_SIG_unserialize_rs(sig.data(), &r, &s, &recid);
// Recover public key.
if (ECDSA_SIG_recover_key_GFp(ec_key, r, s, digest->data, 32, recid, 1) == 1) {
if (ECDSA_SIG_recover_key_GFp(ec_key, r, s, (const unsigned char*) digest, 32, recid, 1) == 1) {
// Encode point to binary compressed format.
const EC_POINT *p = EC_KEY_get0_public_key(ec_key);

View file

@ -28,16 +28,16 @@
namespace libeosio {
sha256_t* sha256(const unsigned char *data, std::size_t len, sha256_t* out) {
return (sha256_t *) SHA256(data, len, out->data);
return (sha256_t *) SHA256(data, len, (unsigned char*) out);
}
sha256_t* sha256d(const unsigned char *data, std::size_t len, sha256_t* out) {
SHA256(data, len, out->data);
return (sha256_t *) SHA256(out->data, 32, out->data);
SHA256(data, len, (unsigned char*) out);
return (sha256_t *) SHA256((unsigned char*) out, 32, (unsigned char*) out);
}
ripemd160_t* ripemd160(const unsigned char *data, std::size_t len, ripemd160_t* out) {
return (ripemd160_t *) RIPEMD160(data, len, out->data);
return (ripemd160_t *) RIPEMD160(data, len, (unsigned char*) out);
}
} // namespace libeosio