Bitcoin-Crypto

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

	- fix bech32 encoding by removing mandatory bit translation - old behavior can be achieved by using new translate_ functions
	- change encode_bech32 and decode_bech32 input and output format
	- add new Bitcoin::Crypto::Bech32 exported functions: translate_5to8 and translate_8to5
	- remove Bitcoin::Crypto::Bech32::split_bech32 from exported functions

1.001 Thu Sep 9 2021
	- prefer GMP to LTM backend in Math::BigInt

1.000 Sun Sep 5 2021
	- end of the beta phase
	- imported mnemonics must now be proper unicode strings (important for non-english mnemonics)
	- module will now use Crypt::Perl when available to produce deterministic signatures
	- add Bitcoin::Crypto::Util::mnemonic_to_seed function
	- set_compressed method on keys now properly handles undefined values
	- code refactors and documentation improvements

0.997 Fri Jun 11 2021
	- implement BIP44 derivation paths
	- add derive_key_bip44 helper to extended private key class
	- remove previously deprecated Exception::KeySign
	- refactor testing out of examples

lib/Bitcoin/Crypto/Key/ExtPrivate.pm  view on Meta::CPAN

after / in between words.

If no C<$lang> is given then any string passed as C<$mnemonic> will produce a
valid key. B<This means even adding whitespace (eg. trailing newline) will
produce a different key>. Be careful when using this method without C<$lang>
argument as you can easily create keys incompatible with other software due to
these whitespace problems.

Returns a new instance of this class.

B<Important note about unicode:> this function only accepts UTF8-decoded
strings (both C<$mnemonic> and C<$password>), but can't detect whether it got
it or not. This will only become a problem if you use non-ascii mnemonic and/or
password. If there's a possibility of non-ascii, always use utf8 and set
binmodes to get decoded (wide) characters to avoid problems recovering your
wallet.

=head2 from_seed

	$key_object = $class->from_seed($seed)

lib/Bitcoin/Crypto/Util.pm  view on Meta::CPAN

C<$seed>, which can be fed into L<Bitcoin::Crypto::Key::ExtPrivate/from_seed>.

C<$seed> is a C<512> bit bytestring (64 characters). C<$mnemonic> should be a
BIP39 mnemonic, but will not be checked against a dictionary.

This function is only useful if you need a seed instead of mnemonic (for
example, you use a wallet implementation which does not implement BIP39). If
you only want to create a private key from mnemonic, you should consider using
L<Bitcoin::Crypto::Key::ExtPrivate/from_mnemonic> instead.

B<Important note about unicode:> this function only accepts UTF8-decoded
strings (both C<$mnemonic> and C<$password>), but can't detect whether it got
it or not. This will only become a problem if you use non-ascii mnemonic and/or
password. If there's a possibility of non-ascii, always use utf8 and set
binmodes to get decoded (wide) characters to avoid problems recovering your
wallet.

=head2 get_path_info

	$path_data = get_path_info($path);



( run in 0.285 second using v1.01-cache-2.11-cpan-88abd93f124 )