#!/usr/bin/env python

import sys
import pywii as wii

if len(sys.argv) not in (2,3):
	print "Usage: %s keyfile.priv [keyfile.pub]"%sys.argv[0]
	sys.exit(1)

if sys.argv[1] == "-":
	k = sys.stdin.read()
else:
	k = open(sys.argv[1],"rb").read()
if len(k) != 30:
	print "Failed to read private key"
	sys.exit(2)

print "Public key:"
q = wii.ec.priv_to_pub(k)
pq = q.encode('hex')
print "X =",pq[:30]
print "   ",pq[30:60]
print "Y =",pq[60:90]
print "   ",pq[90:]

if len(sys.argv) == 3:
	fd = open(sys.argv[2],"wb")
	fd.write(q)
	fd.close()
	print "Saved public key to %s"%sys.argv[2]
