Esempio n. 1
0
def createPreviousScriptPublicKey(publicAddress):
    assert len(publicAddress) == 34

    publicAddress160BitHash = keyUtils.get160BitHashFromPublicAddress(publicAddress)

    buildScript = (("%02x" % opCodeDefinitions.OP_DUP) +
                   ("%02x" % opCodeDefinitions.OP_HASH160) +
                   ("%02x" % opCodeDefinitions.PUSH_DATA14) +
                   publicAddress160BitHash +
                   ("%02x" % opCodeDefinitions.OP_EQUALVERIFY) +
                   ("%02x" % opCodeDefinitions.OP_CHECKSIG)
                   )

    return buildScript
Esempio n. 2
0
def createScriptPublicKey(publicAddress, ScriptPayload = None):
    assert len(publicAddress) == 34

    publicAddress160BitHash = keyUtils.get160BitHashFromPublicAddress(publicAddress)

    buildScript = (("%02x" % opCodeDefinitions.OP_DUP) +
                   ("%02x" % opCodeDefinitions.OP_HASH160) +
                   ("%02x" % opCodeDefinitions.PUSH_DATA14) +
                   publicAddress160BitHash +
                   ("%02x" % opCodeDefinitions.OP_EQUALVERIFY) +
                   ("%02x" % opCodeDefinitions.OP_CHECKSIG)
                   )
    
    if ScriptPayload != None:
        assert(len(ScriptPayload)/2 <= 75 )
        buildScript += ("%02x" % len(ScriptPayload)/2 +
                        "%02x" % ScriptPayload +
                        "%02x" % opCodeDefinitions.OP_TRUE)
    
    return buildScript