A public key is derived from a private key. To derive the public key you need an Elliptic Curve, Bitcoin chose to use secp256k1. Your public key is your private key multiplied by the generator point (which is a constant set in the secp256k1 standard), so it's a point on the curve
The mining clients does heavily affect the efficiency of mining.
Different mining software has a various developer fee, some are better written than others, and some are working better for nVidia while other are better for AMD.
The GUI miners are usually just a GUI wrap up for console miners, so different GUI miners also perform differently on different ...
The wallet actually always pregenerates keys (not addresses) and puts them in the keypool. A keys is fetched from the keypool and converted to an address only when an address is explicitly requested (via getnewaddress or from the GUI). An address is not pre-fetched by default.
Which desktop / mobile wallets support adding a custom OP_RETURN message? (ex. attach a short url link)
New -> Transaction -> Advanced Options
Null Data (80 byte limit, 40 bytes recommended)
Allow data to be sent within the transaction and stored in the blockchain by using OP_RETURN.
When using this option you may enter a hex string or address ...