While learning how to use the web3.js package I came across two types of transactions:
RawTransactions/ web3.eth.sendawTransaction(...) and
simple Transactions/ web3.eth.sendTransaction(...)
I understand that in order to make a raw transaction you create the transaction object and you set a hex value for every key. What I don't understand is:
1)why do you need to make all the values hex? (ex. the gasLimit, gasPrice, nonce etc)
2)why use a raw transaction instead of the normal one. I undestand that you sign the tx offline and then simply pass the hash but what's the point of doing this? I mean when do you need to make the tx raw?
If you believe there is anything else I need to know study or if you can provide sources that would help, I would really appreciate that.