tx · 6z5vEMPyvXEVLD816GAvKXa27uGQo9tkimyrmzQMzXfE

3NCHkdhkeBBP1gfHpckmb2yPoYJ2CH7fxPN:  -0.20000000 Waves

2019.03.17 12:01 [539986] smart account 3NCHkdhkeBBP1gfHpckmb2yPoYJ2CH7fxPN > SELF 0.00000000 Waves

{ "type": 13, "id": "6z5vEMPyvXEVLD816GAvKXa27uGQo9tkimyrmzQMzXfE", "fee": 20000000, "feeAssetId": null, "timestamp": 1552813393957, "version": 1, "sender": "3NCHkdhkeBBP1gfHpckmb2yPoYJ2CH7fxPN", "senderPublicKey": "si2dSJdZCsTdJWYDXE6WbT5coL1B3jbUuKsBRG3hYUm", "proofs": [ "2vCNVSjD6WA7vxPSov6p6jLiHYJHtCjEj747NRe9KWeo1RZ7pCuFXvuvJHePqkXH7C1R9gRNnUpa49wir8PAFeK1", "61RzBMFKvY7DWSyVgfm5TCJYTMmqPsd34ow7w3pND7vPFow4aqV2Wg6e8utp39Xo2dsS9Cy5KpneAfXo7iCJbtbd", "3m5EnB6T4EPbd5obnVF1T43AxYsNdxZjPR5jyHJu2ML9zDn5szY2G4ny9QWDFDjxzBrCsVcrnSmCaw9N6Jo2gF7B" ], "script": "base64:AQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkIbc0v", "chainId": 84, "height": 539986, "spentComplexity": 0 } View: original | compacted Prev: C7r1AsjeG8qJ1bhuE5E3ndgavwFEP8zgfH2qKmA3GkYf Next: 5G5xaSDAWyom1ixoprz21ucbBmR1j9mQ4eKUa9KYndtA Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
3-let WhitelistAddr = addressFromString("3N7TmPFE1QRKEtKNBcQvPiHqGdvm7RKa6V9")
4-let validState = 1000
5-let protector1 = base58'64RiMxFkTamG4znZQBhi4oxs43nNrHiHdUYYwdYQhdPj'
6-let protector2 = base58'H3BYxQ8MPzosmxYf3uj5ZLNDovW1XpbooD5K11K3vwkh'
7-let protector3 = base58'HDLZwRd7786Tk7p7Bu4ziX7dzL24yNSkVzXctJPgPTLR'
8-match tx {
9- case tx: MassTransferTransaction =>
10- false
11- case tx: TransferTransaction =>
12- let userState = getInteger(extract(WhitelistAddr), toBase58String(tx.sender.bytes))
13- if (!(isDefined(userState)))
14- then throw("Address not in whitelist")
15- else if ((userState != validState))
16- then throw("Not valid state")
17- else if (!(isDefined(tx.assetId)))
18- then {
19- let key = (toBase58String(tx.sender.bytes) + "_WAVES")
20- let minAmount = getInteger(extract(WhitelistAddr), key)
21- if (isDefined(minAmount))
22- then {
23- let curBalance = wavesBalance(extract(tx.sender))
24- if ((extract(minAmount) > (curBalance - tx.amount)))
25- then throw("Transfer is prohibited")
26- else true
27- }
28- else true
29- }
30- else true
31- case tx: SetScriptTransaction =>
32- let p1signed = if (sigVerify(tx.bodyBytes, tx.proofs[0], protector1))
33- then 1
34- else 0
35- let p2signed = if (sigVerify(tx.bodyBytes, tx.proofs[1], protector2))
36- then 1
37- else 0
38- let p3signed = if (sigVerify(tx.bodyBytes, tx.proofs[2], protector3))
39- then 1
40- else 0
41- (((p1signed + p2signed) + p3signed) >= 2)
42- case tx: LeaseTransaction =>
43- false
44- case tx: SponsorFeeTransaction =>
45- false
46- case _ =>
47- sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
48-}
3+sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)

github/deemru/w8io/873ac7e 
22.36 ms