Is there a method of converting a Bitcoin private key into a 12 word mnemonic seed out of a 1000-2000 word dictionary? I couldn't think of a good way of solving this.
BIP 39 describes the implementation of a mnemonic code or mnemonic sentence -- a group of easy to remember words -- for the generation of deterministic wallets.
Bitcoin private key is not stored in this way, rather seed to prng which generated the private and public key pair is converted into mnemonic so that its easy for human to type or remember.
A list of 2048 words, which is indexed from 0-2047(11 bit information) is used. 132 bit value (128 bit seed + 4 bit checksum) is divided into 12 chunks of 11 bits each, then each 11 bit is used to select a word from dictionary.
for more details see BIP39