Bitcoin Forum
November 17, 2024, 09:38:21 AM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Bitcoin public key integer arithmetics, help me  (Read 141 times)
kgpc28 (OP)
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
June 08, 2021, 07:12:07 PM
 #1

private key 3 (x = f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9 y = 388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672) divide 2 may output a private key 1? (x = 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 y = 483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8)

private key 5 (x = 2F8BDE4D1A07209355B4A7250A5C5128E88B84BDDC619AB7CBA8D569B240EFE4 y = D8AC222636E5E3D6D4DBA9DDA6C9C426F788271BAB0D6840DCA87D3AA6AC62D6) divide 2 may output a private key 2? (x = C6047F9441ED7D6D3045406E95C07CD85C778E4B8CEF3CA7ABAC09B95C709EE5 y = 1AE168FEA63DC339A3C58419466CEAEEF7F632653266D0E1236431A950CFE52A)

private key 11 (x = 774AE7F858A9411E5EF4246B70C65AAC5649980BE5C17891BBEC17895DA008CB y = D984A032EB6B5E190243DD56D7B7B365372DB1E2DFF9D6A8301D74C9C953C61B) divide 10 may output a private key 1? (x = 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 y = 483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8)

Can integer arithmetics be used? Not modular arithmetics.
j2002ba2
Full Member
***
Online Online

Activity: 206
Merit: 447


View Profile
June 08, 2021, 09:09:40 PM
Merited by NotATether (2)
 #2

There cannot be integer arithmetic for secp256k1 curve, since it has no solutions in integer or rational numbers. The integer solutions of any elliptic curve are limited number, usually quite low one. There is no upper bound of that number, since you could multiply the coordinates and d by very very large numbers, thus removing denominators.

There are isomorphic curves, in which you could go with rational numbers, curves in the form of y2 = x3 + d, which can be obtained by multiplying by t: (y*t3)2 = (x*t2)3 + 7*t6. The smallest positive integer d for curve of rank 1 is 12, the smallest in absolute value is -2. Of course the coordinates grow very very big, very very fast. As an exercise you could find out (x,y) mod p coordinates for d=12 by moving the point to (x*t2, y*t3), t=1806032470229063221237645096224748984265920240071041634471134158090974399836, one of the six possible values for sixthroot(12/7) mod p. Then the smallest x numerator of rational coordinate producing it has maximum number of bits ~2512, y numerator ~2768, and both have a denominator in the form of z2 for x, and z3 for y, z having max ~2256 bits.

If you use y2 = x3 + 12, with generator (-2,2) then you'd get the following coordinates:
1: (-2 2)
2: (13 -47)
3: (-74/225 11674/3375)
5: (14932678/8994001 109819305542/26973008999)
11: (261861850180472271248849532094782118/4756672475309420795224474860473521
 -134005914121975045481665034854476269198005341316588858/328061202989677115836137338038693498061075340702569)
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!