secp256k1.cr v0.2.2 Release Notes

Release Date: 2020-01-13 // 7 days ago
  • 🚀 this feature release improves keypair and account management by introducing data structures for

    • Secp256k1::Keypair
    • Secp256k1::Bitcoin::Account
    • Secp256k1::Ethereum::Account
    • Secp256k1::Ethereum::Enode

    🔄 changes:

    • ➕ add devp2p enode support #31
    • add mini_is_valid? #29

Previous changes from v0.2.1

  • 📚 this release significantly improves the documentation at https://q9f.github.io/secp256k1.cr/ and applies some minor enhancements to the exposed apis of the library, namely:

    • mini-private keys now use BASE-56 instead of BASE-57. that does not affect existing mini-private keys.
    • added Secp256k1::Bitcoin.wif_from_private_uncompressed wrapper for uncompressed wif
    • renamed Secp256k1::Bitcoin.wif_compressed_from_private to .wif_from_private_compressed
    • private keys are handled as BigInt instead of a String literals wherever possible, e.g., Secp256k1::Bitcoin.address_from_private or Secp256k1::Ethereum.address_from_private
    • constants: renamed EC_PARAM_PRIME to EC_PRIME_P
    • replaced BASE_57 in favor of BASE_56 by removing the o from the alphabet as recommended by the Bitcoin Wiki.
    • binary hashing operations now directly operate on Bytes instead of String literals, e.g., Secp256k1::Hash.sha3, .sha256, .keccak256, .ripemd160
    • added Secp256k1::Hash.ripemd160_string for RIPEMD-160 hashes on String literals to complement .sha3_string, .sha256_string, and .keccak256_string
    • added Secp256k1::Hash.base58_char to complement .base56_char
    • pass the prime through Secp256k1::Util.restore_public_key

    🔄 changes:

    • 👌 improve the documentation #27