def deterministicVK(): while True: print('.'), tmp = MiniNero.intToHex(rand.getrandbits(64 * 8)) # 8 bits to a byte ... sk = MiniNero.sc_reduce_key(MiniNero.cn_fast_hash(tmp)) #s = "3c817618dcbfed122a64e592bb441d73300da9123686224a84e0eab1f075117e"; for testing #sk = MiniNero.sc_reduce_key(s) vk = MiniNero.getViewMM(sk) #note this is the sc_reduced version.. worked = 1 try: MiniNero.toPoint(vk) except: worked = 0 print("bad vk") if vk == MiniNero.sc_reduce_key( vk) and worked == 1: #already reduced + vk on curve break print("found keys") print("secret spend key:", sk) print("secret view key:", vk) vk2 = MiniNero.cn_fast_hash(MiniNero.scalarmultKey(vk, 2)) print("secret view key2:", vk2) vk3 = MiniNero.cn_fast_hash(MiniNero.scalarmultKey(vk, 3)) print("secret view key3:", vk3) pk = MiniNero.publicFromSecret(sk) print("public spend key:", pk) pvk = MiniNero.publicFromSecret(vk) print("public view key:", pvk) pvk2 = MiniNero.publicFromSecret(vk2) print("public view key2:", pvk2) pvk3 = MiniNero.publicFromSecret(vk3) print("public view key3:", pvk3) addr = MiniNero.getAddrMM(sk) print("in future this will get all addresses") print("receiving address", addr) wl = mnemonic.mn_encode(s) cks = MiniNero.electrumChecksum(wl) print(cks) print("mnemonic:", wl + " " + cks)
def deterministicVK(): while True: print("."), tmp = MiniNero.intToHex(rand.getrandbits(64 * 8)) # 8 bits to a byte ... sk = MiniNero.sc_reduce_key(MiniNero.cn_fast_hash(tmp)) # s = "3c817618dcbfed122a64e592bb441d73300da9123686224a84e0eab1f075117e"; for testing # sk = MiniNero.sc_reduce_key(s) vk = MiniNero.getViewMM(sk) # note this is the sc_reduced version.. worked = 1 try: MiniNero.toPoint(vk) except: worked = 0 print("bad vk") if vk == MiniNero.sc_reduce_key(vk) and worked == 1: # already reduced + vk on curve break print("found keys") print("secret spend key:", sk) print("secret view key:", vk) vk2 = MiniNero.cn_fast_hash(MiniNero.scalarmultKey(vk, 2)) print("secret view key2:", vk2) vk3 = MiniNero.cn_fast_hash(MiniNero.scalarmultKey(vk, 3)) print("secret view key3:", vk3) pk = MiniNero.publicFromSecret(sk) print("public spend key:", pk) pvk = MiniNero.publicFromSecret(vk) print("public view key:", pvk) pvk2 = MiniNero.publicFromSecret(vk2) print("public view key2:", pvk2) pvk3 = MiniNero.publicFromSecret(vk3) print("public view key3:", pvk3) addr = MiniNero.getAddrMM(sk) print("in future this will get all addresses") print("receiving address", addr) wl = mnemonic.mn_encode(s) cks = MiniNero.electrumChecksum(wl) print(cks) print("mnemonic:", wl + " " + cks)
def keysBoth(): print("This is for private testing purposes only, use at your own risk!") print( "this function will generate an address that is compatible both with the main client and with MyByteRub" ) print("shen noether- mrl") print(" ") while True: print('.'), sk = skGen() #s = "3c817618dcbfed122a64e592bb441d73300da9123686224a84e0eab1f075117e"; for testing vk = MiniNero.getViewMM(sk) #note this is the sc_reduced version.. worked = 1 #uncomment below lines to make viewkey a point.. try: MiniNero.toPoint(vk) except: worked = 0 print("bad vk") if vk == MiniNero.sc_reduce_key(vk) and worked == 1: #already reduced break print("found key") print("secret spend key:", sk) print("secret view key:", vk) pk = MiniNero.publicFromSecret(sk) print("public spend key:", pk) pvk = MiniNero.publicFromSecret(vk) print("public view key:", pvk) addr = MiniNero.getAddrMM(sk) print("receiving address", addr) wl = mnemonic.mn_encode(sk) cks = MiniNero.electrumChecksum(wl) print(cks) print("mnemonic:", wl + " " + cks) return sk, vk, pk, pvk, addr, wl, cks
def keysBoth(): print("This is for private testing purposes only, use at your own risk!") print("this function will generate an address that is compatible both with the main client and with MyMonero") print("shen noether- mrl") print(" ") while True: print('.'), sk = skGen() #s = "3c817618dcbfed122a64e592bb441d73300da9123686224a84e0eab1f075117e"; for testing vk = MiniNero.getViewMM(sk) #note this is the sc_reduced version.. worked = 1 #uncomment below lines to make viewkey a point.. try: MiniNero.toPoint(vk) except: worked =0 print("bad vk") if vk == MiniNero.sc_reduce_key(vk) and worked == 1: #already reduced break print("found key") print("secret spend key:", sk) print("secret view key:", vk) pk = MiniNero.publicFromSecret(sk) print("public spend key:", pk) pvk = MiniNero.publicFromSecret(vk) print("public view key:", pvk) addr = MiniNero.getAddrMM(sk) print("receiving address", addr) wl = mnemonic.mn_encode(sk) cks = MiniNero.electrumChecksum(wl) print(cks) print("mnemonic:", wl + " " + cks) return sk, vk, pk, pvk, addr, wl, cks