tx · 3B1CAmftBCH1xcXBwj2mNoxf2EvXDa5Bn1Quk51oRUrh 3N8vwnpkBJJ7KqsVeXBwaNvNKW42o5NBus9: -0.01000000 Waves 2019.02.24 15:51 [509469] smart account 3N8vwnpkBJJ7KqsVeXBwaNvNKW42o5NBus9 > SELF 0.00000000 Waves
{ "type": 13, "id": "3B1CAmftBCH1xcXBwj2mNoxf2EvXDa5Bn1Quk51oRUrh", "fee": 1000000, "feeAssetId": null, "timestamp": 1551012669210, "version": 1, "sender": "3N8vwnpkBJJ7KqsVeXBwaNvNKW42o5NBus9", "senderPublicKey": "F7eJioPbxZF8qWdJeWHcMj8AweZCSYkbWA8amTqdoY61", "proofs": [ "4xvTS84zDmbM4SxCEzi87jDmPgLzhkQa4cV4fPeasAib15XN4oUa8jc8tsAA4MzWg41WevTfaWaNnTd5DCd3Cdq7" ], "script": "base64:AgQAAAAOZWxlcGhhbnRQdWJLZXkBAAAAING3SIeh9iGbzZCJz1MIvbSEJTyLJl/Vw9whVgCamcNuBAAAAAtORVRXT1JLQllURQkBAAAADnRha2VSaWdodEJ5dGVzAAAAAgkAAZoAAAABAAAAAAAAAABXAAAAAAAAAAABBAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAABdAUAAAAHJG1hdGNoMAQAAAATdHhXaXRob3V0QXR0YWNobWVudAkAAMsAAAACCQEAAAAOZHJvcFJpZ2h0Qnl0ZXMAAAACCAUAAAABdAAAAAlib2R5Qnl0ZXMAAAAAAAAAAGEJAQAAAA50YWtlUmlnaHRCeXRlcwAAAAIJAAGaAAAAAQAAAAAAAAAAAAAAAAAAAAAAAQQAAAAecmVjaXBpZW50UHVibGljS2V5QW5kU2lnbmF0dXJlCAUAAAABdAAAAAphdHRhY2htZW50BAAAABJyZWNpcGllbnRQdWJsaWNLZXkJAADJAAAAAgUAAAAecmVjaXBpZW50UHVibGljS2V5QW5kU2lnbmF0dXJlAAAAAAAAAAAgBAAAABJyZWNpcGllbnRTaWduYXR1cmUJAQAAAA50YWtlUmlnaHRCeXRlcwAAAAIFAAAAHnJlY2lwaWVudFB1YmxpY0tleUFuZFNpZ25hdHVyZQAAAAAAAAAAQAQAAAAWcmVjaXBpZW50UHVibGljS2V5SGFzaAkAAMkAAAACCQAB9QAAAAEJAAH2AAAAAQUAAAAScmVjaXBpZW50UHVibGljS2V5AAAAAAAAAAAUBAAAABVycGtXaXRoVmVyc2lvbkFuZEJ5dGUJAADLAAAAAgkAAMsAAAACCQEAAAAOdGFrZVJpZ2h0Qnl0ZXMAAAACCQABmgAAAAEAAAAAAAAAAAEAAAAAAAAAAAEFAAAAC05FVFdPUktCWVRFBQAAABZyZWNpcGllbnRQdWJsaWNLZXlIYXNoBAAAAAhjaGVja3N1bQkAAMkAAAACCQAB9QAAAAEJAAH2AAAAAQUAAAAVcnBrV2l0aFZlcnNpb25BbmRCeXRlAAAAAAAAAAAEBAAAAB1yZWNpcGllbnRBZGRyZXNzRnJvbVB1YmxpY0tleQkAAMsAAAACBQAAABVycGtXaXRoVmVyc2lvbkFuZEJ5dGUFAAAACGNoZWNrc3VtBAAAABZyZWNpcGllbnRBZGRyZXNzRnJvbVR4CAkABCQAAAABCAUAAAABdAAAAAlyZWNpcGllbnQAAAAFYnl0ZXMDCQEAAAACIT0AAAACBQAAAB1yZWNpcGllbnRBZGRyZXNzRnJvbVB1YmxpY0tleQUAAAAWcmVjaXBpZW50QWRkcmVzc0Zyb21UeAkAAAIAAAABCQABLAAAAAICAAAAGFJlY2lwaWVudCBhZGRyZXNzIGVycm9yOgkAAlgAAAABBQAAAB1yZWNpcGllbnRBZGRyZXNzRnJvbVB1YmxpY0tleQMJAQAAAAEhAAAAAQkAAfQAAAADBQAAABN0eFdpdGhvdXRBdHRhY2htZW50BQAAABJyZWNpcGllbnRTaWduYXR1cmUFAAAAEnJlY2lwaWVudFB1YmxpY0tleQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABtJbnZhaWQgcmVjaXBpZW50IHNpZ25hdHVyZToJAAJYAAAAAQUAAAAScmVjaXBpZW50U2lnbmF0dXJlAgAAAAwKIEJvZHlCeXRlczoJAAJaAAAAAQUAAAATdHhXaXRob3V0QXR0YWNobWVudAYHsaWnjA==", "chainId": 84, "height": 509469, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 2 #-} | |
2 | + | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | + | let elephantPubKey = base58'F7eJioPbxZF8qWdJeWHcMj8AweZCSYkbWA8amTqdoY61' | |
4 | + | let NETWORKBYTE = takeRightBytes(toBytes(87), 1) | |
5 | + | match tx { | |
6 | + | case t: TransferTransaction => | |
7 | + | let txWithoutAttachment = (dropRightBytes(t.bodyBytes, 97) + takeRightBytes(toBytes(0), 1)) | |
8 | + | let recipientPublicKeyAndSignature = t.attachment | |
9 | + | let recipientPublicKey = take(recipientPublicKeyAndSignature, 32) | |
10 | + | let recipientSignature = takeRightBytes(recipientPublicKeyAndSignature, 64) | |
11 | + | let recipientPublicKeyHash = take(keccak256(blake2b256(recipientPublicKey)), 20) | |
12 | + | let rpkWithVersionAndByte = ((takeRightBytes(toBytes(1), 1) + NETWORKBYTE) + recipientPublicKeyHash) | |
13 | + | let checksum = take(keccak256(blake2b256(rpkWithVersionAndByte)), 4) | |
14 | + | let recipientAddressFromPublicKey = (rpkWithVersionAndByte + checksum) | |
15 | + | let recipientAddressFromTx = addressFromRecipient(t.recipient).bytes | |
16 | + | if ((recipientAddressFromPublicKey != recipientAddressFromTx)) | |
17 | + | then throw(("Recipient address error:" + toBase58String(recipientAddressFromPublicKey))) | |
18 | + | else if (!(sigVerify(txWithoutAttachment, recipientSignature, recipientPublicKey))) | |
19 | + | then throw(((("Invaid recipient signature:" + toBase58String(recipientSignature)) + " | |
20 | + | BodyBytes:") + toBase64String(txWithoutAttachment))) | |
21 | + | else true | |
22 | + | case _ => | |
23 | + | false | |
24 | + | } |
github/deemru/w8io/169f3d6 23.81 ms ◑