Förstå hur ECDSA skyddar dina data. (6 / 15 steg)
Steg 6: ECDSA ekvationen
Nu, hur fungerar det? Bra Elliptic Curve cryptography är baserad på en ekvation i formuläret:
y ^ 2 = (x ^ 3 + en * x + b) mod p
Första sak du märker är att det finns en modulo och att "y" är fyrkant (Glöm inte detta är ekvationen för en kurva i ett diagram). Detta innebär att för varje x samordnar (Glöm inte också att vi endast arbetar med heltal), du kommer att ha två värden för y och att kurvan är symmetriska på X-axeln. Den modulo är ett primtal och ser till att alla värden är inom vårt sortiment av 160 bitar och det tillåter användning av "modulära kvadratroten" och "modulära multiplicative inversen" matematik som underlättar beräkningen av grejer. Eftersom vi har en modulo (p), betyder det att möjliga värden i y ^ 2 är mellan 0 och p-1, vilket ger oss p totala möjliga värden. Dock eftersom vi har att göra med heltal, endast en mindre delmängd av dessa värden kommer att vara en "perfekt kvadrat" (fyrkantiga värdet av två heltal), vilket ger oss möjliga punkter på kurvan där N < p (N är antalet perfekt rutor mellan 0 och p). Du följer mig så långt? :)
Eftersom varje x kommer att ge två punkter (positiva och negativa värden av kvadratroten av y ^ 2), detta innebär att det är N/2 möjligt 'x' koordinater som är giltiga och som ger en punkt på kurvan. Så denna elliptisk kurva har ett ändligt antal poäng på det, och det är allt på grund av heltal beräkningar och modulus.
Ouff, som var svårt! Låt oss sammanfatta innan vi går vidare. ECDSA ekvationen ger oss en kurva med ett ändligt antal giltiga poäng på det (N) eftersom Y-axeln är bunden av modulus (p) och måste vara en perfekt kvadrat (y ^ 2) med en symmetri på X-axeln. Vi har totalt N/2 möjligt, giltigt x koordinater utan att glömma att N < s.