ultimamente sempre piu' utenti riportano il seguente fatto: il sito x mi ha fatto firmare una stringa y per verifiche a mia garanzia
riporto un esempio incollato da un utente
Follow these steps to sign a bitcoin message:
In your wallet, find the 'Sign Message' option. This is usually found in the 'Receive' area (click the menu button next to your address) or in the 'Tools' menu (select 'Sign Message')
- In the address field enter: 1G17....(l'indirizzo btc che ho inserito come indirizzo di prelievo)
- In the message field enter: 50d3270..... (una sequenza di 32 caratteri alfanumerici)
- Press the 'Sign Message' button
The signature text will appear in the 'Signature' field. Wait for the success message
- Enter the signature text in the field below and submit the form
When signing your message, use the following as the 'content' of the message:
50d3270..... (la stessa sequenza di 32 caratteri alfanumerici di cui sopra)
- Paste the signed message for your MAIN Bitcoin address ( 1G17....l'indirizzo btc che ho inserito come indirizzo di prelievo)
dal punto di vista del buon senso come ho gia' scritto:
solo l'idea che qualcuno dichiari di fare qualcosa "a mia garanzia" (alias "per il mio bene") mi fa rabbrividire.
poi trovo bizzarra l'idea che sono io (creditore) che devo firmare qualcosa (che non so neppure cosa sia) a mia garanzia
eventualmente sara' il debitore che mi deve dare le garanzie, non certo io !
Forse non tutti sanno che c'e' anche questo interessante risvolto matematico:
quando firmiamo con bitcoin core un documento, creiamo la seguente stringa:
base64( leading byte + r + s ) dove r,s e' la firma ECDSA del testo
esiste un algoritmo semplice per ricavare la chiave pubblica data la firma e il testo firmato. (
http://www.secg.org/sec1-v2.pdf pagina 47)
in pratica, firmando una cosa, noi rendiamo NOTA la nostra chiave pubblica.
ora, questo non e' di per se' grave, pero' va ricordato quanto segue:
1) finche e' noto solo l'address bitcoin, la chiave pubblica e' ancora ignota.
2) normalmente la chiave pubblica diventa nota quando viene fatta la prima transazione in outupt da un indirizzo.
3) Firmando un messaggio, noi rendiamo nota la chia pubblica anche se non e' stata fatta nessuna transazione in output da quell'indirizzo.
4) dulcis in fundo, e' indicata come buona norma svuotare completamente un indirizzo della quale e' stata fatta un'operazione di output
(e per questo nei wallet evoluti il resto viene inviato ad un indirizzo nuovo creato da zero, e non all'indirizzo di partenza)
MORALE: NON firmate nulla con il wallet se non sapete ESATTAMENTE cosa state facendo e VOLETE farlo.