Can somebody please confirm something for a slightly confused noob:
Assuming I have a private key written down in old "uncompressed" format, does it matter whether I send BTC to the compressed or uncompressed public address? Funds sent to either are still controllable by the single uncompressed private key?
Or must I be sure only to send funds to the "uncompressed" public address, otherwise I lose the funds?
You can take a WIF of either format, add or remove the compression flag, and re-encode back into a WIF.
The raw private key is just 256 bits of data, usually random. For example:
19fdab0668a2586da7bea56410c814b83be86a956bb8565aea78651c174bfc04
That private key corresponds to a public key with these coordinates:
x: 82c3cb548fdfd632f622db534badc9dd6d68bf65cacc3297df4686ff8a8d83b2
y: df70ca968a53fc29e4163401eb953b49961b0539341b54748001c83c48f952d3
There are two ways of encoding that public key. One way is
0482c3cb548fdfd632f622db534badc9dd6d68bf65cacc3297df4686ff8a8d83b2df70ca968a53fc29e4163401eb953b49961b0539341b54748001c83c48f952d3
The other is
0382c3cb548fdfd632f622db534badc9dd6d68bf65cacc3297df4686ff8a8d83b2
These two encodings have different hahes, so their addresses are 1Nt6XLmq8k8noafGGFdfwue74uJTFu9vQC and 13pRRXkGVC9mhUSiw6xkYkMi1EX91VvsBE.
If your program understands compressed keys, it should tell you something like:
Private Key: Kx6EWgKRJ2GZuXbrDquQPAE8MWZLLdsT4YYgQs4hdF7rRL4jGLHx
Bitcoin Address: 13pRRXkGVC9mhUSiw6xkYkMi1EX91VvsBE
If it doesn't understand compressed keys, it should say:
Private key: 5J1jV2CspMgKnS4N7zJJz8Xcej3Lngcu89WP53jXW4CXEGF9M3A
Bitcoin Address: 1Nt6XLmq8k8noafGGFdfwue74uJTFu9vQC
If you run those WIFs through a base58 decoder, you'll find:
8019fdab0668a2586da7bea56410c814b83be86a956bb8565aea78651c174bfc0401902f231b
8019fdab0668a2586da7bea56410c814b83be86a956bb8565aea78651c174bfc046ddddd0d
Green is the prefix byte for a WIF. Red is the compression flag. Blue is the check code. Black is the actual private key.
So, the private key you have written down can be used for two different addresses, but it might take some doctoring to get it into a format that your wallet can import correctly if you are using an address that doesn't match the WIF encoding used.