Download the PHP package furqansiddiqui/bip39-mnemonic-php without Composer
On this page you can find all versions of the php package furqansiddiqui/bip39-mnemonic-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download furqansiddiqui/bip39-mnemonic-php
More information about furqansiddiqui/bip39-mnemonic-php
Files in furqansiddiqui/bip39-mnemonic-php
Package bip39-mnemonic-php
Short Description BIP39 Mnemonics implementation in PHP
License MIT
Informations about the package bip39-mnemonic-php
BIP39 Mnemonic
Mnemonic BIP39 implementation in PHP
Installation
Prerequisite
- PHP ^8.2
- ext-mbstring (MultiByte string PHP ext. for non-english wordlist)
Composer
composer require furqansiddiqui/bip39-mnemonic-php
Generating a Secure Mnemonic
Generate a mnemonic using a secure PRNG implementation.
BIP39::fromRandom
Argument | Type | Description |
---|---|---|
$wordList | AbstractLanguage |
Langage instance for wordlist |
$wordCount | int | Number of words (12-24) |
Returns instance of Mnemonic class.
Example:
Entropy to Mnemonic
Generate mnemonic codes from given entropy
BIP39::fromRandom
Argument | Type | Description |
---|---|---|
$entropy | AbstractByteArray |
Entropy |
$wordList | AbstractLanguage |
Langage instance for wordlist |
Returns instance of Mnemonic class.
Example:
Mnemonic sentence/Words to Mnemonic
Generate entropy from mnemonic codes
BIP39::fromWords
Argument | Type | Description |
---|---|---|
$words | Array\ |
Array of mnemonic codes |
$wordList | AbstractLanguage |
Langage instance for wordlist |
$verifyChecksum | bool | Defaults to TRUE , computes and verifies checksum as per BIP39 spec. |
Returns instance of Mnemonic class.
Example:
Mnemonic Class
readonly class
Mnemonic
This lib will create this Mnemonic object as a result:
Property | Type | Description |
---|---|---|
language | string | Language name (as it was passed to constructor of wordlist class) |
words | Array\ |
Mnemonic codes |
wordsIndex | Array\ |
Position/index # of each mnemonic code corresponding to wordlist used |
wordsCount | int | Number of mnemonic codes (i.e. 12, 15, 18, 21 or 24) |
entropy | string | Entropy in hexadecimal encoding |
Generating Seed with Passphrase
Mnemonic->generateSeed
Generates seed from a mnemonic as per BIP39 specifications.
Argument | Type | Description |
---|---|---|
$passphrase | string | Defaults to empty string ("") |
$bytes | int | Number of bytes to return, defaults to 64. |
Returns:
Type | Description |
---|---|
string | Returns computed PBKDF2 hash in RAW BINARY as string |
Generate non-english mnemonic codes
Check AbstractLanguage
and AbstractLanguageFile
classes. English class has all
2048 words pre-loaded instead of reading from a local file every time. To implement other languages or
custom set of 2048 words, check ChineseWords.php file in tests
directory for example of implementation.
and then use in place of AbstractLanguage
where required:
Test Vectors
Include PHPUnit tests for all test vectors mentioned in official BIP-0039 specification.
Use following command to execute all tests using phpunit.phar