Hello, and thank you for your interest!
The primary criticisms of BIP39 that I have encountered include:
- The absence of versioning.
- The reliance on a fixed wordlist for checksum verification.
Implementing versioning could offer several advantages, such as:
- Specifying the derivation path.
- Including the wallet's birthdate.
- Modifying the Key Derivation Function (KDF).
- Enhancing error detection and correction capabilities.
- Indicating whether a passphrase is used.
- Facilitating improved methods of seed xoring.
- And more...
Regrettably, I don't foresee a method to maintain compatibility with legacy software (non-versioned BIP39) while simultaneously eliminating the requirement for a fixed wordlist.
The objective here is not to introduce a new algorithm, but rather to incorporate versioning while remaining consistent with the BIP39 standard.