return 0;
uECC_sign(priv_key, sign_hash, sign);
- memcpy(point_r, sign, 32);
- memcpy(point_s, sign + 32, 32);
+
+ int i;
+ for (i = 0; i < 32; i++)
+ {
+ ((uint8_t *) point_r)[i] = sign[31 - i];
+ ((uint8_t *) point_s)[i] = sign[63 - i];
+ }
}
void
memcpy(publicKey + 32, pub_key_y, 32);
// Copy the signature into a single buffer
- int i;
- for (i = 0; i < 32; i++)
- {
- sign[i] = result_r[31 - i];
- sign[i + 32] = result_s[31 - i];
- }
+ memcpy(sign, result_r, 32);
+ memcpy(sign + 32, result_s, 32);
return uECC_verify(publicKey, sign_hash, sign);
}