linear distance

asked 2021-07-15 23:14:35 +0200

Miroslaw gravatar image

Hello

I want to take linear distance beetween two points on Eliptic curve:

curve : y2=x3+7 secp256k1

p_string = 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE FFFFFC2F'
p = ZZ( '0x' + p_string.replace(' ', ''))
p
E = EllipticCurve( GF(p), [0, 7] )  
E
n_string = 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141'
n = ZZ( '0x' + n_string.replace(' ', '') )



xP = 0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798
yP = 0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8
P = E.point( (xP, yP) ) # Generator point

Point no 1:

p_1_x=0x28f3c7982219bf067d9723a54bef8e0ae7d970b4285a148685ce98819bd59c99
p_1_y=0x3da6945a85ba67249e96534f3cb93af144301e3ef03f848ebf17fedd55addd14
P1 = E.point( (p_1_x, p_1_y) )

Point no 2:

p_2_x=0xc69b120facc137ad7ecf7407b97f3e1bcecec27ed6617ad1e3bb4f5a265c2230
p_2_y=0xdab461d8de9d194b9aae05cf3fc361e31b0cd172985720a9963a1fd9cb4dab13
P2 = E.point( (p_2_x, p_2_y) )

calculation : perform add or mult for equal :

P1_mult = P1 * 82096204097375626523300693245739453783745399685178560726932375997561515334942 =
P1_mult result= 
(46471116781602954419346378639681376672332207911597631846166461640126253045935 : 115074167981782238568697336312618123980176908468606887399010690362202000326798 : 1)

P2_add = P2 + 29894233847412895230616850443375888414306408440111129860511310128693381347651 * P

P2_add result: 
(46471116781602954419346378639681376672332207911597631846166461640126253045935 : 115074167981782238568697336312618123980176908468606887399010690362202000326798 : 1)

so P1_mult = P2_add so what is linear distance in integer beetween P1 and P2 if we know above information?

at the moment no idea, any tips, solution, How to do?

edit retag flag offensive close merge delete