μνΈνννκ° μ λ§ μΈλ₯μ¬μ μμ²λ λ°μ μ μ΄λ£©ν μ μ΄ λ¬΄μμ΄λλ©΄ μνμμ€ν μ μμ΄μ κ³μ’κ³μ€μ΄λ μ μ°¨κ° μλ€λ μ μ λλ€.
μ΄μ λν΄ μ€λͺ ν΄ λ³΄κ² μ΅λλ€.
μνΈν ννμ κ³μ’λ²νΈλ 곡κ°ν€λΌκ³ ν΄μ λΉλ°ν€λ₯Ό νΉμ μν곡μμ ν΅ν΄ μ 곡κ°ν€κ° λ§λ€μ΄μ§λλ€............νΉμ κ³μ’λ²νΈ(μ¦ κ³΅κ°ν€(x,yμ’ν)) λ κΌ λΉλ°ν€λ₯Ό κ°μ§κ³ μμ΅λλ€.
λΉλ°ν€μ 곡κ°ν€μ 1:1 λμμ΄λ©° 2^256κ°μ§(256λΉνΈ)μ λΉλ°ν€κ³΅κ°ν€μμ΄ μ‘΄μ¬ν©λλ€.
μ΄ μν곡μμ νΉμ§μ λΉλ°ν€λ‘ 곡κ°ν€λ₯Ό κ³μ°νλκ²μ κ°λ₯ν΄λ
곡κ°ν€λ₯Ό ν΅ν΄μ λΉλ°ν€λ₯Ό κ³μ°νλ κ²μ λΆκ°λ₯ νλ€λ κ²μ
λλ€.............
(곡κ°ν€λ₯Ό ν΅ν΄μ λΉλ°ν€λ₯Ό κ³μ°ν μ μλ€λκ²μ ecdsa μμνΈν μνν΄λ²μ νμλ€λΌκ³ μκΈ°ν μμκ³ μμ²λ μνμ²μ¬λΌλ©΄ κ°λ₯ν μλ μμμ§ λͺ¨λ¦
λλ€ .)
μ΄λ€ μ¬λμ΄ μμλ‘ μνκ³μ°μ ν΅ν΄ νΉμ νλμ 곡κ°ν€,λΉλ°ν€λ₯Ό κ³μ°ν΄λΈλ€κ³ μΉ©μλ€.
κ·Έ 곡κ°ν€ λΉλ°ν€λ ν΄λΉ μνΈνννμ λΈλ‘체μΈμ μ°μ΄μ§λ μμκ³ κΈ°λ‘λ λμ΄μμ§ μμ§λ§
κ·Έ μ체λ‘μ¨ κ·Έ κ³μ’λ μμ±λ κ²μ΄κ³ ν΄λΉ λΈλ‘체μΈμ κ·Έ κ³μ’λ‘ μ
κΈ, μ‘κΈμ νλκ² κ°λ₯ν©λλ€.
νμ΄νΌμλ μ΄ λ¬΄μμ΄λλ©΄ κ·Έλ₯ λΉλ°ν€μ 곡κ°ν€λ₯Ό κ³μ°ν΄μ μ’ μ΄μ κΈ°λ‘ν΄λμκ²λΏμ λλ€. κ·Έ κ³μ’μ μνΈν ννλ₯Ό μ κΈμμΌ λΈλ‘체μΈμ κΈ°λ‘ν΄λμΌλ©΄ λμ€μ κ·Έ κ³μ’μ λΉλ°ν€λ₯Ό ν΅ν΄μ μ‘κΈλ©μΈμ§(ecdsaμλͺ )λ₯Ό μμ±νμ¬ λΈλ‘체μΈμ μ°λκ² κ°λ₯ν©λλ€. μ‘κΈλ©μΈμ§(ecdsaμλͺ )μμ νΉμ μν곡μμ μν΄ λΉλ°ν€λ‘ λ°μ μμ±ν μ μμΌλ©° ecdsaμλͺ μ λ©μΈμ§λ₯Ό ν΅νμ¬ λΉλ°ν€λ₯Ό μμλ΄λκ²μμ κ±°μ λΆκ°λ₯ν κ°κΉμ΄ μνν΄λ²μ΄κ³ λ¨μ§ κ·Έ ecdsaμλͺ μ΄ ν΄λΉ 곡κ°ν€μ λΉλ°ν€μμΌλ‘ ν΅ν΄μ λ§λ€μ΄λΈ κ²μΈμ§ μλμ§ κ²μ¦νλ κ²λ§μ΄ κ°λ₯ν©λλ€.
ecdsaλ§μΌλ‘ μΆ©κ·Όν κ·Έ μνΈν ννμ 보μμ΄ κ°λ₯ν©λλ€.
ecdsaμ μνμ ν΄λ²μ΄ κΉ¨μ§λ©΄ λΈλ‘체μΈμ 보μμμ κΉ¨μ§λλ€.
κ·Έλ¬λκΉ λΈλ‘체μΈμ΄ ν¬κ² νμμλμ
μ
λλ€.
λΈλ‘체μΈμ κ·Έλ₯ μ₯λΆμνμ΄κ³ κ·Έκ²μ λ€μμ μ»΄ν¨ν°κ° λμΌνκ² λ³΄κ΄νλ μμ
μΌ λΏμ
λλ€.
μ΄ λΈλ‘체μΈμ μμ
λλ¬Έμ μνΈν ννμ μ μ‘ μλκ° λλ¦°κ²μ
λλ€.
μ€μ λ‘ λΈν체μΈμ ꡬ쑰λ₯Ό μμ ν λ°κΎΌ μνΈνννλ€μ΄ λͺλͺμλλ° λΈλ‘체μΈμ μ°μ§ μκΈ°λλ¬Έμ μνΈνννμΈκ³μμ μμΈλκ³ μλ κ² κ°λκ΅°μ.
μμμ (곡κ°ν€λ₯Ό ν΅ν΄μ λΉλ°ν€λ₯Ό κ³μ°ν μ μλ€λκ²μ ecdsa μμνΈν μνν΄λ²μ νμλ€λΌκ³ μκΈ°ν μμκ³ μμ²λ μνμ²μ¬λΌλ©΄ κ°λ₯ν μλ μμμ§ λͺ¨λ¦ λλ€ .) λΌκ³ μΈκΈν λΆλΆμ΄ μλλ° μ΄μλν΄ λ©°μΉ μ μ μ μ μ κ° μ μ μ€ν κΈ λ§ν¬μ λλ€.
μ λͺ©:μ΄λ€μ¬λμ΄ μνΈνννμ ecdsa μνλ°©μ μμ νλ©΄ μ΄λ€μΌμ ν κΉ????
λ§ν¬: https://steemit.com/kr-bitcoin/@donworry8/2tzmab-ecdsa
μ΄λ€ μνμ 곡μ,μνμ λ©μΉ΄λμ¦μ λ°λΌ λΉλ°ν€λ₯Ό ν΅ν΄ 곡κ°ν€κ° λ§λ€μ΄μ§λμ§λ μκΈ°ν΄λ³΄κ³ μΆμλ° κ°λ₯ν μ§ λͺ¨λ₯΄κ² λ€μ. μμΈλ‘ μ€,κ³ λ±νκ΅ μνμ§μ μ λλ§ μμΌλ©΄ μ΄ν΄ν μ μμ΅λλ€.
κ°λ¨ν μμ½νμλ©΄ λΉλ°ν€ 1,2,3,4,5,6,7,8,9,10,11,12,13μ ν΄λΉνλ 곡κ°ν€μ μμ΄ p1,p2,p3,p4,p5,p6,....μ ꡬνλ 곡μμ λν΄ μ΄μΌκΈ°ν΄λ³΄κ² μ΅λλ€.
μ p1μ ecdsa Secp256k1 κ·κ²©νμ λͺ
μλμ΄μμ΅λλ€.
μ p1μ xμ’ν
-- 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798
μ p1μ yμ’ν
-- 483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8
κ·ΈλΌ p2λ 무μμΌκΉμ μ x,yμ 2λ₯Ό κ³±νλ κ³μ° λ°©λ²μ΄ μμ΅λλ€. μμ½ν΄μΌ ν΄μ μ¬κΈ°μ μ μ§μκ² μ΅λλ€. κ·Έλ₯ λͺ
μνκ²μλλ€. 2P1=p2μ΄λ©°
μ p2 xμ’ν
-- c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5
μ p2 yμ’ν
-- 01ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a
μ
λλ€.
p3λ p2+p1λΌκ³ μ μνλ©° κ·Έ ꡬ체μ x,yλ₯Ό ꡬνλ 곡μμ
μ p3 xμ’ν
-- (((p2x-p1x) / (p2y-p1y))^2 - p1x - p2x ) MOD P μ
λλ€.
μ p3 yμ’ν
-- -(((p2x-p1x) / (p2y-p1y))(p3x-p2x) + p2y ) MOD Pμ
λλ€.
(λλ¨Έμ§ κ΅¬νλ Pκ°μ νΉμ κ°μΌλ‘μ ecdsa Secp256k1 κ·κ²©μ λͺ
μλμ΄μμ΅λλ€. )
P = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE FFFFFC2F
p4λ p3+p1μ
λλ€.
μ p3μ’νμ»λ곡μμμ p4λ₯Ό p3λ‘ κ³ μΉλ©΄λ©λλ€.
μ 곡μλ€μ x3+7=y2 λ‘ κ΅¬ν΄μ§λ νμ곑μ κ·Έλνμμ νΉμ μ§μ λ°©μ μ y=ax+bμ κ΅μ°¨νλ μΈμ μꡬνλ곡μμ λλ€. p1,p2,-p3 μΈμ μ νΉμ ν μ§μ κ³Ό νμ곑μ μ μΈ κ΅μ°¨μ μ λλ€. λ p1,p3,-p4μμ κ·Έλ ꡬμ p2,p3,-p5μμ κ·Έλ μ΅λλ€. aκ°μ κΈ°μΈκΈ°λ‘ κ°λ¨ν λμ μ μ§λλ κΈ°μΈκΈ° 곡μ (p2x-p1x)/(p2y-p1y)λ‘ κ΅¬ν΄μ§λλ€.
μμ -p3,-p4,-p5μμ ' -'(λ§μ΄λμ€)νκΈ°νκ²μ νμ곑μ κ·Έλνκ° Y^2μ΄κΈ°λλ¬Έμ(yλ μμμ μμ λκ·Όμκ°λλ€) xμΆκΈ°μ€μΌλ‘ λμΉλλ κ·ΈλνλΌμ νΉμ xμ μλνμ¬ yμ ν΄κ° λκ°μμ΅λλ€. (y,-y)μ΄λ -yνλ λμΉμ μ ' -'(λ§μ΄λμ€)λΌκ³ νκΈ°ν©λλ€. (μ΄λ κ² λμΉμ μΌλ‘ κ²°κ³Όκ°μ μ‘μμ£Όμ§ μμΌλ©΄ μ νμ μμ΄μ p1,p2,p3μ΄ μΈμ μμλ§ λκ³ λκ²μ λλ€.)
(νλ§λ€λ‘ ecdsaμ 곡κ°ν€λ νμ곑μ 곡μ y2=x3+ax+bμ νΉμ μμμ μ§μ κ·Έλνμ κ΅μ°¨νλ κ΅μ°¨μ μ ꡬνλ 곡μμΌλ‘ λ§λ€μ΄μ§ μ νμ μμ΄μ΄λ©λλ€. μ p4λ 'p1+p3'μΈ λμμ 'p2 κ³±νκΈ° 2'μ λμΌνμ μ΄ λ©λλ€. p6 = p1+p5 or p2+p4 or p3*2)
--κ³±μ
μ°μ°(κ³±νκΈ° 2)μ λν μ΄μμ½ λ©λͺ¨
(p2κ°μ μ¬μ€ μ p1μ μ νλ μ§μ μ λ€λ₯Έ κ΅μ°¨μ μ λν xμΆκΈ°μ€ λμΉμ μ΄ λ°λ‘ p2μ΄κ³ μ΄κ±Έ p1*2μ΄λΌκ³ μ μν©λλ€. μ¦ 2λ₯Ό κ³±νλ 곡μμ νμ곑μ μμ νΉμ μ μ μ νλ μ§μ μ λ€λ₯Έ κ΅μ°¨μ μ xμΆκΈ°μ€μΌλ‘ λμΉλλ μ (-y)μ
λλ€.(μ ν κ²½μ° κ΅μ°¨μ μ 3κ°κ° μλ 2κ°κ°λκΈ°λλ¬Έ))
(μ ν κ²½μ°λ x3+7=y2(x3+ax+b=y2)μ΄ λ°©μ μμ λ―ΈλΆνκ° dy/dx=3x^2/2yκ° λ°λ‘ ν΄λΉ μ μ μ νλ μ§μ μ κΈ°μΈκΈ°λ©λλ€.)
μ νμ μμ΄λ‘ λ§λ€μ΄ 보면
μ P(n)= P(n-1) + P(1) μ΄λΌλ μμ΄ λ§λ€μ΄μ§λλ€. (μΈμ P(n),P(n-1),P(1)μ νμ곑μ κ³Όμ κ΅μ°¨μ μ
λλ€.)
λ P(n)= P(n-2) + P(2) μ΄λΌκ³ ν΄λ μκ΄μμ΅λλ€.(μΈμ P(n),P(n-2),P(2) μμ νμ곑μ κ³Όμ κ΅μ°¨μ μ
λλ€.)
λ P(n)= P(n-a) + P(a) μ΄λΌκ³ ν΄λ μκ΄μλλ° aλ 256λΉνΈμ«μ(0~2^256μ¬μ΄ μ μ)κ° λ©λλ€.(μ무 μλ μκ΄μλλ° 1μ΄ κ°μ₯ 무λν©λλ€. μλλ©΄ p1κ°μ λͺ
μλμ΄μκ³ p1κ°μΌλ‘λΆν° λͺ¨λ μ’νκ° μμ±λ©λλ€.)
곡μ보μλ©΄ μκ² μ§λ§ κ·Έλ₯ κ³±μ
,λΊμ
μ κ³±, μ¬μΉμ°μ°μ΄ μ λΆμ
λλ€.
κ·Έλμ ν΄λΉ νΉμ κ²°κ³Όμ px,py(<--μ΄κ² λ°λ‘ 곡κ°ν€μ
λλ€)λ‘λΆν° μμ°μ°νμ¬ λΉλ°ν€λ₯Ό ꡬνλκ² κ°λ₯ν κ² κ°μλ°
μνμμ μμΌλ©΄ λμ ν΄λ³΄μΈμ κ±°μ λΆκ°λ₯ν©λλ€. μ΄κ±Έ νλ©΄ λΉμ μ λͺ¨λ κ³μ’μ λΉλ°ν€λ₯Ό μμ°μ°μ μν΄ μμλΌμ μκ²λλ©° λͺ¨λ κ³μ’μ λμ μ‘κΈν μμλ λ§λ₯ λ§λ²ν€λ₯Ό μ»μ΄ λΌ μ μμκ²λλ€.... λν μννμ¦μ? κ°μ 건 μ무κ²λ μλ μ
μ μ μ΄λ£¨κ² λλ κ²μΌμλ μμ΅λλ€....... νλ² ν΄λ³΄μλ©΄ λ§μ
,λΊμ
,κ³±μ
μ¬μΉμ°μ°μ μΈκ³κ° μΌλ§λ μ¬μ€νκ³ κ·Έ λν νκ΅μ λ°°μ λκ²μ μ λ§ μ΄λ° μ¬μΉμ°μ°μ μμ°μ°λ λͺ»νΈλ μμ€μ κ²μ΄ μκ³ κ΄λ ¨μ§μ νμν΄λ³΄λ©΄ μνμ¬ μμ²΄κ° μ΄μ κ΅μ₯ν λ°μ ν μ°κ΄ν μλ€λ κ²μ μμλΌ μ μμκ²λλ€.
νΉμ μμμ λΉλ°ν€κ°μΌλ‘ 곡κ°ν€λ₯Ό μ»μ΄λ΄κΈ°λλ¬Έμ μ¬κΈ°μ μ½κ°μ λ¬Έμ μ μ΄ μμμ μμ΅λλ€. μΌλΆ 곡κ°ν€λ€μμμ°μ°μ΄ μ½κ² κ°λ₯νλ©° λΉλ°ν€λ₯Ό μμλ΄λκ² κ°λ₯νκ²μ΄μ§μ. κ·Ήν μΌλΆλΆμ΄μ§λ§ μ‘°μ¬ν΄μΌν λΆλΆμ΄κΈ° λλ¬Έμ μ΄λ° 보μμ·¨μ½μ±κ³Ό μ΄λ»κ²νλ©΄ 보μμ κ°ν κ³μ’μ£Όμ(곡κ°ν€)λ₯Ό μ»μ΄λ΄λμ§μ λν΄μλ μ¨λ³΄κ³ μΆκ΅°μ.
μ¬λ¬ μ·¨μ½μ±μ΄ μμμ μλλ° κ·Έμ€ νκ°μ§κ°
μμμ λΉλ°ν€κ°μΌλ‘ 곡κ°ν€λ₯Ό μ»μ΄λΈλ€κ³ νλλ°....λ°λ‘ μ΄ μμμ λΉλ°ν€κ°.....μ μΆμΈ‘ν΄ λΌμ μλ€λ©΄ 곡κ°ν€ κ°μ μΆμΆν΄ λΌμ μμ΅λλ€.
곡κ°ν€λ‘ λΉλ°ν€λ‘ μμλ΄λ μνμ 맀컀λμ¦μ λΈκ°λ₯ν μ§ λͺ¨λ₯΄μ§λ§
μμμ λΉλ°ν€κ°μ μμ±νλ λμμκ³ λ¦¬μ¦μ 맀컀λμ¦μ μ ν΄μ Έ μμμΌλ‘ μ€νλ € μ΄κ² λ μ¬μΈμ μμ΅λλ€.
곡κ°ν€λ₯Ό μμ±ν λ μ°λ λμμμ±μκ³ λ¦¬μ¦μ΄ μΆμΈ‘κ°λ₯ν μκ³ λ¦¬μ¦μ΄λ©΄ 곡κ°ν€λ ν΄νΉλΉν©λλ€.
μ€μ λ‘ μ΄λ κ² ν΄νΉλΉν 곡κ°ν€λ€μ΄ λ§μ΄ μλ€κ³ λ€μμ΅λλ€.
μ΄κ²μ ecdsaμ μμ°μ°μ νμ΄μ λκ²μ΄ μλλΌ λμμκ³ λ¦¬μ¦μ μΆμΈ‘νμ¬ λ°©λν dbλ₯Ό λ§λ€μ΄ κ°λ₯νλ κ²μ
λλ€.
ecdsaλ 256λΉνΈλ₯Ό μ°μ§λ§ λμμκ³ λ¦¬μ¦μ 16λΉνΈ32λΉνΈλ₯Ό μ°κΈ°λλ¬Έμ λ²μκ° νμ λμ΄μμλ€λ κ²μ΄ ν°λ¬Έμ μ
λλ€. 256λΉνΈμ λ°μ΄νλ² μ΄μ€λ μ§κ΅¬μμ λͺ¨λ μ»΄ν¨ν°λ₯Ό ν©μ³λ μλμ§λ§ 16,32λΉνΈμ λ°μ΄ν λ² μ΄μ€λ μ±λ₯μ’μ μ»΄ν¨ν° νλλ‘ κ°λ₯ν©λλ€.
μ¦ 32λΉνΈ λμμμ±κΈ°λ‘ μμ±λ λΉλ°ν€λ‘ 곡κ°ν€λ‘ λ§λ€λ©΄ ν΄νΉμνμ λ
ΈμΆλλ μ
μ΄μ£
μ΄κ²λ§κ³ λ 곡κ°ν€κ° 보μμ μ·¨μ½νκ² λ μν©μ΄ λͺλͺ μμ΅λλ€.
(κ°μ₯ μ΅μ
μ λΉλ°ν€λ₯Ό κ°μΈμ΄ μμ μνκ³ κ±°λμλ μ§κ°μ¬μ΄νΈλ μ λ§κΈ°κ±°λ νΉμ μμ μ μ»΄ν¨ν°μ μ μ₯ν΄ λλ κ²½μ°(λ©λͺ¨λ coreμ±μ μ§κ°νμΌμ΄λ)μΌμ§λ λͺ¨λ¦
λλ€)