Post
Topic
Board Italiano (Italian)
Re: [ATTENZIONE] Traduzione libro Mastering Bitcoin
by
arulbero
on 23/01/2016, 22:49:12 UTC

Ciao
ringrazio chi contribuisce, nel mio piccolo posso segnalare un errore (se ho capito) a pagina Huh (6 fondo pagina, 71 del file pdf in italiano) paragrafo "Chiavi Pubbliche", l'immagine 3: Crittografia a curve ellittiche: visualizzando una curva ellittica su F(p), con p=17 non riporta la soluzione (3, 17) ... infatti (3^3+7-17^2)%17 == 0.

Intanto vado avanti cercando di capire sta crittografia, che invidia per chi l'ha gia' capita Smiley


Non riporta la soluzione (3,17) poichè riporta già la soluzione (3,0), che è la stessa. Anche se sembra un quadrato, quella griglia di punti non forma un quadrato. Devi pensare che sia i valori delle x che i valori delle y vanno da 0 a 16. La riga y=17 è sovrapposta idealmente alla riga y=0, tipo un cilindro ( ma anche la riga verticale x=0 e la riga verticale x=17 coincidono, quindi di fatto il quadrato è come fosse una specie di ciambella )

Se noti tutte le soluzioni sono simmetriche rispetto alla linea y="8,5" poichè ad esempio y=5 e y=12 sono uno l'opposto dell'altro, cioè 12=-5, e così funziona per tutte le altre coppie tranne proprio il caso di (3,0), poichè l'opposto di 0 è ancora 0 (e ovviamente se (x,y) è una soluzione dell'equazione, lo è anche (x,-y), quindi i punti di questa curva ellittica vanno a coppie tranne il caso del punto con ordinata nulla; questo è anche il motivo per cui una chiave pubblica, che è un punto sulla curva ellittiche secp256k1, può essere rappresentato sia mediante 2 coordinate da 256 bit ciascuna, sia mediante una sola coordinata di 256 bit - la x - più il segno della y)
Poichè p è un numero primo, osserva che, fissata la x, una coordinata y è sempre pari mentre l'altra è sempre dispari; per indicare la coordinata pari si antepone il prefisso 02 alla rappresentazione esadecimale della x, per indicare la coordinata negativa si antepone lo 03 (convenzione valida solo nelle transazioni del sistema Bitcoin)