Hmmm. Interesting, this is actually the point of me having started this thread. All I want is to be completely sure there is no chance of my BTC being stolen. Ok, so let me see if I understand: Prepare the transaction online with a watch-only wallet (which brings the question: what is a watch-only wallet?),
A "watch only" wallet is a piece of software that knows what your bitcoin addresses are, but that does not have your private keys. This software can search the blockchain for unspent transaction outputs sent to those addresses. The software can use its knowledge of these unspent outputs to tell you how much bitcoin you are able to control and to create unsigned transactions that transfer some of that value wherever you wish. These unsigned transactions can't be used on the bitcoin network until they are signed, but they can be copied to something external (such as a USB drive or a printed QR Code) and then physically transported to an offline computer.
then the unsigned (?) transaction goes to offline computer.
Correct.
Inside the offline computer (now disconnected from the online one, so that it can´t be hacked?), the transaction is signed.
Correct.
Then the signed transaction (maybe I put it in a usb so that both the online and offline computers won´t actually connect to each other), then the signed transaction (BTW what is a "signed transaction"?)
A signed transaction is a transaction that includes a special number that is unique to the exact specific transaction, and that can only be created with knowledge of the private key, but which can be verified with knowledge of the public key. I explained this earlier, remember:
Any data (such as a bitcoin transaction for example) can be converted into a numeric representation. Using the private key and the numeric representation of the data, it is possible to calculate another number (a digital signature of that data). Using the public key, it is possible for anyone to validate that the matching private key was used to generate the signature, even though the private key isn't know. If any of the data changes (even a single bit), then the digital signature will no longer match, and everyone will know that the data presented was not the data that was signed. Therefore, it is possible to create and then sign a transaction, and nobody can modify the transaction on you without re-signing the transaction with the private key. As long as you are the only person that knows the private key, you are the only person that can create valid verifiably signed transactions.[/i]
goes to online computer, then it is done.
Correct.
And in all of the process, a hacker never had even a milisecond of chance of getting my keys, right?
Unless they break into your home (or business, or wherever you store your offline computer) and physically access the computer and copy the private keys.
Now my questions are:
-What is a watch-only wallet,
You already asked this question earlier. It has already been answered.
how to get one?
There are a couple of wallets that provide the ability to split the wallet functionality into an online "watch only" wallet and an offline "signing" wallet. The two most popular are Electrum and Armory. Armory is a "full node" and stores a complete copy of the blockchain. Electrum depends on someone running an Electrum server to provide the blockchain information.
-What is an unsigned transaction and what is a signed transaction?
An unsigned transaction is a list of unspent outputs that are to be spent, and a list of scripts that encumber new unspent outputs with a specific requirement before they can be spent. The most common requirement new outputs are encumbered with is a digital signature from a private key that is associated with a particular bitcoin address. This transaction doesn't yet have the digital signatures that satisfy the script requirements of the outputs that are being spent.
A signed transaction is the same lists except that each of the outputs in the list of outputs that are being spent includes a digital signature of the transaction that satisfies th signature requirements in the output's script.
-Should I transport the "unsigned transaction" to the offline computer through a usb, and sign it there, then get it back on the online pc?
USB is the most common method. There is cerrtainly a small risk that the USB could include malware that will affect the offline computer. If you are truly concerned about that, you might want to look into a non electronic method of transporting data.
-What software in the offline pc will sign the transaction?
There are several pieces of software that can handle that. Typically it is handled by the offline half software designed for being split into an online and offline functionality, such as Armory or Electrum.
-Do I really need an offline pc or can I just unplug the internet, sign the transaction, and then plug it back
That depends on how concerned you are about malware.
(or could malware detect, save my key, and later send it to hacker)?
Correct.