If we are talking about space .. first we need understand , there are no 2**256 public key.
there are a lot of less than we think.
import random
import sys
p = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
n = 0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141
E = EllipticCurve(GF(p), [0, 7])
G = E.point( (0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798,0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8)) # Base point
for i in range(1,256):
try:
d=E.lift_x((2**i))
print("found point",d)
except:
print("sorry, there is no point on curve with x=",2**i)