I'm trying to sign a transaction from scratch without a library. I am encoding the key values into RLP and then hashing them with SHA3/Keccak.
Looking at https://github.com/ethereum/EIPs/blob/master/EIPS/eip-155.md
It says 0xec098504a817c800825208943535353535353535353535353535353535353535880de0b6b3a764000080018080 gets hashed into 0xdaf5a779ae972f972197303d7b574746c7ef83eadac0f2791ad23db92e4c8e53
Sure, great, that's what I get too. I then sign it and record the R and S values.
But then somehow the signed transaction becomes
0xf86c098504a817c800825208943535353535353535353535353535353535353535880de0b6b3a76400008025a028ef61340bd939bc2195fe537567866003e1a15d3c71ff63e1590620aa636276a067cbe9d8997f761aecb703304b3800ccf555c9f3dc64214b297fb1966a3b6d83
I see how you're supposed to append and delimit the R,S,V values but 0xEC becomes 0xF86C for no reason. 0x018080 completely vanishes. Where did these values even come from? Where did they go?
There is zero documentation on any of this from what I see and it feels like a miracle anyone has ever managed to make a hardware wallet at all.
[link] [comments]
You can get bonuses upto $100 FREE BONUS when you:
π° Install these recommended apps:
π² SocialGood - 100% Crypto Back on Everyday Shopping
π² xPortal - The DeFi For The Next Billion
π² CryptoTab Browser - Lightweight, fast, and ready to mine!
π° Register on these recommended exchanges:
π‘ Binanceπ‘ Bitfinexπ‘ Bitmartπ‘ Bittrexπ‘ Bitget
π‘ CoinExπ‘ Crypto.comπ‘ Gate.ioπ‘ Huobiπ‘ Kucoin.
Comments