tx · CwH9ckTbNJXxPgn8x1HsVw7Fc75ivwVXbArbaGKTT3sd

3NBSqQgm5U3zh5cfSneNkm2wmUaXzTJ4sUB:  -0.01000000 Waves

2020.11.03 11:54 [1248907] smart account 3NBSqQgm5U3zh5cfSneNkm2wmUaXzTJ4sUB > SELF 0.00000000 Waves

{ "type": 13, "id": "CwH9ckTbNJXxPgn8x1HsVw7Fc75ivwVXbArbaGKTT3sd", "fee": 1000000, "feeAssetId": null, "timestamp": 1604393663036, "version": 2, "chainId": 84, "sender": "3NBSqQgm5U3zh5cfSneNkm2wmUaXzTJ4sUB", "senderPublicKey": "9oYfYUoEoGCa2YMXvKKMhiSQ2uy3cGDTfkHdwddnPEj4", "proofs": [ "3dBLgfWLwjbrYD5nEWcGHgPyRGpvUUZLUtq51CV1yy4PGHta8RpZ5kF4YxFjqqWmWQ3sAZUa8LoJARHo7vqYNekY" ], "script": "base64:AAIEAAAAAAAAAAIIAgAAAAUAAAAACmRBcHBTdHJpbmcJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAAJZEFwcF9saXN0AgAAABwiZEFwcF9saXN0IiBpcyBub3Qgc3BlY2lmZWQhAAAAAAhkQXBwTGlzdAkABLUAAAACBQAAAApkQXBwU3RyaW5nAgAAAAF8AAAAAAdhZG1pblBrAQAAACBFHhhYddGi2yuwI0/VUCaXuuYkDcTJbY5O5IpruTOzcwEAAAAQZ2V0U3RyaW5nQWRkcmVzcwAAAAEAAAAEZEFwcAkABCUAAAABCQAEJAAAAAEFAAAABGRBcHABAAAAEHZlcmlmeVJlc3RJbnZva2UAAAABAAAABmludm9rZQQAAAAHJG1hdGNoMAgFAAAABmludm9rZQAAAARkQXBwAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdBZGRyZXNzBAAAAAF0BQAAAAckbWF0Y2gwBAAAAAtkQXBwQWRkcmVzcwkABCUAAAABBQAAAAF0AwkBAAAAASEAAAABCQEAAAAPY29udGFpbnNFbGVtZW50AAAAAgUAAAAIZEFwcExpc3QFAAAAC2RBcHBBZGRyZXNzBwMJAQAAAAEhAAAAAQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwkABLkAAAACCQAETAAAAAICAAAACGZ1bmN0aW9uCQAETAAAAAIFAAAAC2RBcHBBZGRyZXNzBQAAAANuaWwCAAAAAV8HBwYHAAAAAAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAADCQEAAAABIQAAAAEJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAAdhZG1pblBrBAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAXSW52b2tlU2NyaXB0VHJhbnNhY3Rpb24EAAAAAWkFAAAAByRtYXRjaDADCQEAAAAQdmVyaWZ5UmVzdEludm9rZQAAAAEFAAAAAWkJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5BwcG68D71w==", "height": 1248907, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 4 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let dAppString = valueOrErrorMessage(getStringValue(this, "dApp_list"), "\"dApp_list\" is not specifed!")
5+
6+let dAppList = split(dAppString, "|")
7+
8+let adminPk = base58'5eokMGZL2aEEoNTCmc4YdixCN7xHcGciJMCvkbWvRJSv'
9+
10+func getStringAddress (dApp) = toString(addressFromRecipient(dApp))
11+
12+
13+func verifyRestInvoke (invoke) = match invoke.dApp {
14+ case t: Address =>
15+ let dAppAddress = toString(t)
16+ if (!(containsElement(dAppList, dAppAddress)))
17+ then false
18+ else if (!(valueOrElse(getBooleanValue(this, makeString(["function", dAppAddress], "_")), false)))
19+ then false
20+ else true
21+ case _ =>
22+ false
23+}
24+
25+
26+
27+@Verifier(tx)
28+func verify () = if (!(sigVerify(tx.bodyBytes, tx.proofs[0], adminPk)))
29+ then match tx {
30+ case i: InvokeScriptTransaction =>
31+ if (verifyRestInvoke(i))
32+ then sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
33+ else false
34+ case _ =>
35+ false
36+ }
37+ else true
38+

github/deemru/w8io/169f3d6 
13.78 ms