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:
parent
6026114869
commit
abecabba99
7 changed files with 89 additions and 127 deletions
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue