tx · C4uVkrqjbHVP2t5ixBjmAqAxRiNFfqayZuvbJHUJHxri 3N7k64v9wtBF5umN4bmngFuEmoDkaswhMET: -0.01400000 Waves 2019.08.28 13:38 [650942] smart account 3N7k64v9wtBF5umN4bmngFuEmoDkaswhMET > SELF 0.00000000 Waves
{ "type": 13, "id": "C4uVkrqjbHVP2t5ixBjmAqAxRiNFfqayZuvbJHUJHxri", "fee": 1400000, "feeAssetId": null, "timestamp": 1566988788455, "version": 1, "sender": "3N7k64v9wtBF5umN4bmngFuEmoDkaswhMET", "senderPublicKey": "Ge8gmxGW6kwQYVrRnxsBKcaZGrN5f4LN5rkFXpTmiRfU", "proofs": [ "5m6J3sajgNhWPJX4e8MJDgjeL7Gp4iciG2biTA8bYuJUYuTfN7qAGGwvPoQ4uGfntUSgXN8pcRxem7jkXABfxG9f" ], "script": "base64:AwQAAAAHUHViS2V5MQEAAAAgaQxxSAhSITOlMYdvwKcfK7u/x0yzOg/68EH0ax0QlWUEAAAAB1B1YktleTIBAAAAILb58FcZXTIbjEshMW6ayDB2XcNop87YatlbtNE8j6N0BAAAAARzaWcxAwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAAB1B1YktleTEAAAAAAAAAAAEAAAAAAAAAAAAEAAAABHNpZzIDCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAQUAAAAHUHViS2V5MgAAAAAAAAAAAQAAAAAAAAAAAAkAAGYAAAACCQAAZAAAAAIFAAAABHNpZzEFAAAABHNpZzIAAAAAAAAAAADO+UOI", "chainId": 84, "height": 650942, "spentComplexity": 0 } View: original | compacted Prev: e95sS1KDmVG3CAN1YXrLTBwfmpNXiDWtR4dgTnsoZ7S Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | {-# STDLIB_VERSION | |
1 | + | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | - | let a = Address(base58'3N68ycVbfuqQfDnJGwKvNAx8QoaNVAf7vw7') | |
4 | - | let canTransfer = extract(getBoolean(a, "can_transfer")) | |
5 | - | let validRecipient = base58'3N68ycVbfuqQfDnJGwKvNAx8QoaNVAf7vw7' | |
6 | - | let expireTimestamp = 1554016775000 | |
7 | - | let isDebug = true | |
8 | - | match tx { | |
9 | - | case tx: TransferTransaction => | |
10 | - | let isPeriodFinished = (tx.timestamp > expireTimestamp) | |
11 | - | let isValidRecipient = (tx.recipient == a) | |
12 | - | let result = if (if (isValidRecipient) | |
13 | - | then canTransfer | |
14 | - | else false) | |
15 | - | then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
16 | - | else false | |
17 | - | if (isPeriodFinished) | |
18 | - | then true | |
19 | - | else result | |
20 | - | case tx: SetScriptTransaction => | |
21 | - | let isPeriodFinished = (tx.timestamp > expireTimestamp) | |
22 | - | if (isDebug) | |
23 | - | then true | |
24 | - | else isPeriodFinished | |
25 | - | case _ => | |
26 | - | let isPeriodFinished = (tx.timestamp > expireTimestamp) | |
27 | - | isPeriodFinished | |
28 | - | } | |
3 | + | let PubKey1 = base58'854p8BYzrj6yBPRPmfQur3oF1Rjc1AJ548qRp5FT5kDa' | |
4 | + | let PubKey2 = base58'DKGFPozLrsiR8NM4NJzqQaBYC8NyGYjuw2hDYicQVjco' | |
5 | + | let sig1 = if (sigVerify(tx.bodyBytes, tx.proofs[0], PubKey1)) | |
6 | + | then 1 | |
7 | + | else 0 | |
8 | + | let sig2 = if (sigVerify(tx.bodyBytes, tx.proofs[1], PubKey2)) | |
9 | + | then 1 | |
10 | + | else 0 | |
11 | + | ((sig1 + sig2) > 0) |
github/deemru/w8io/3ef1775 37.14 ms ◑