#!/usr/bin/env python2
 
import base64, getpass, hashlib, subprocess, sys
def doHash(x):
 return base64.b64encode(hashlib.sha512(x).digest())
def sendToXClipboard(x):
 subprocess.Popen(["xsel", "-i"], stdin=subprocess.PIPE).stdin.write(x)
try:
 site = sys.argv[1]
 except IndexError:
 sys.stderr.write("Usage: %s [domain]\n" % sys.argv[0])
 else:
 masterPassword = getpass.getpass("Password: ")
 sitePassword = doHash(doHash(site) + doHash(masterPassword)) # variant 1
#sitePassword = doHash(site + masterPassword) # variant 2
 sendToXClipboard(sitePassword)
