tx · 8nEfRJeACvVcyoQZUwrx52ZmXW9UpaYjvTEdvh5WDsrS

3MpXL6eqSecQEouk5eAmF9qQCUyUG7LJFYQ:  -0.01400000 Waves

2021.09.15 03:11 [1703421] smart account 3MpXL6eqSecQEouk5eAmF9qQCUyUG7LJFYQ > SELF 0.00000000 Waves

{ "type": 13, "id": "8nEfRJeACvVcyoQZUwrx52ZmXW9UpaYjvTEdvh5WDsrS", "fee": 1400000, "feeAssetId": null, "timestamp": 1631664768323, "version": 2, "chainId": 84, "sender": "3MpXL6eqSecQEouk5eAmF9qQCUyUG7LJFYQ", "senderPublicKey": "8tHWDE9VrGrpEvHJDGWbEjydv4vkxv3Vg1ugA6sTb9vG", "proofs": [ "4zXA83FRjiDt9d1miV5NYGmfWuY17VPGgU5UQ2TbBNNb22pQxaRd5AKZKrU4WcbeN6nzXrnmtLFTTzTrR4vg6tMz" ], "script": "base64:AAIEAAAAAAAAAAIIAgAAAAAAAAAAAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAKYm9keUJhc2U2NAkAAloAAAABCAUAAAACdHgAAAAJYm9keUJ5dGVzBAAAAA1zaWduZWRNZXNzYWdlCQABmwAAAAEJAAEsAAAAAgkAASwAAAACAgAAABoZRXRoZXJldW0gU2lnbmVkIE1lc3NhZ2U6CgkAAaQAAAABCQABMQAAAAEFAAAACmJvZHlCYXNlNjQFAAAACmJvZHlCYXNlNjQEAAAABXByb29mBAAAAAlwcm9vZnNTdW0DAwkAAGYAAAACCQAAyAAAAAEJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAAAAAAAAAAAQAYJAABmAAAAAgkAAMgAAAABCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAEAAAAAAAAAAEAJAAACAAAAAQIAAAAuUHJvb2YgbGVuZ3RoIG11c3QgYmUgZXF1YWwgdG8gNjQgYnl0ZXMgb3IgbGVzcwMDAwMDAwkBAAAAAiE9AAAAAgkAAMgAAAABCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAIAAAAAAAAAAAAGCQEAAAACIT0AAAACCQAAyAAAAAEJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAwAAAAAAAAAAAAYJAQAAAAIhPQAAAAIJAADIAAAAAQkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAEAAAAAAAAAAAABgkBAAAAAiE9AAAAAgkAAMgAAAABCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAUAAAAAAAAAAAAGCQEAAAACIT0AAAACCQAAyAAAAAEJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAABgAAAAAAAAAAAAYJAQAAAAIhPQAAAAIJAADIAAAAAQkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAHAAAAAAAAAAAACQAAAgAAAAECAAAAI1RoZXJlIG11c3QgYmUgbm8gbW9yZSB0aGFuIDIgcHJvb2ZzCQAAywAAAAIJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAABBAAAAAlwcm9vZlNpemUJAADIAAAAAQUAAAAJcHJvb2ZzU3VtAwkBAAAAAiE9AAAAAgUAAAAJcHJvb2ZTaXplAAAAAAAAAABBCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAABpXcm9uZyBwcm9vZiBzaXplLiBBY3R1YWw6IAkAAaQAAAABBQAAAAlwcm9vZlNpemUCAAAAGyBieXRlcy4gRXhwZWN0ZWQ6IDY1IGJ5dGVzLgUAAAAJcHJvb2ZzU3VtBAAAAANwYmsJAAOEAAAAAgkAAfUAAAABBQAAAA1zaWduZWRNZXNzYWdlBQAAAAVwcm9vZgkAAAAAAAACBQAAAANwYmsBAAAAQN5w5GE0SrztKUCHFFhiViJPzEo43k4WL47wHZs64J8e5tJCY0Bh2fJHMFfc4vr/BxS+d2gT/Y/gc6d69Akj6LGMg2jw", "height": 1703421, "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+
5+
6+
7+@Verifier(tx)
8+func verify () = {
9+ let bodyBase64 = toBase64String(tx.bodyBytes)
10+ let signedMessage = toBytes((("Ethereum Signed Message:
11+" + toString(size(bodyBase64))) + bodyBase64))
12+ let proof = {
13+ let proofsSum = if (if ((size(tx.proofs[0]) > 64))
14+ then true
15+ else (size(tx.proofs[1]) > 64))
16+ then throw("Proof length must be equal to 64 bytes or less")
17+ else if (if (if (if (if (if ((size(tx.proofs[2]) != 0))
18+ then true
19+ else (size(tx.proofs[3]) != 0))
20+ then true
21+ else (size(tx.proofs[4]) != 0))
22+ then true
23+ else (size(tx.proofs[5]) != 0))
24+ then true
25+ else (size(tx.proofs[6]) != 0))
26+ then true
27+ else (size(tx.proofs[7]) != 0))
28+ then throw("There must be no more than 2 proofs")
29+ else (tx.proofs[0] + tx.proofs[1])
30+ let proofSize = size(proofsSum)
31+ if ((proofSize != 65))
32+ then throw((("Wrong proof size. Actual: " + toString(proofSize)) + " bytes. Expected: 65 bytes."))
33+ else proofsSum
34+ }
35+ let pbk = ecrecover(keccak256(signedMessage), proof)
36+ (pbk == base58'5Swk7RRnAt6X5Ztq5BiLiq6wBdwMwojxSg7AGqhs4sqRRbDP5gr4f5ki8Db28FBiCqLMXE3QvXyAQf3rkiPftFSx')
37+ }
38+

github/deemru/w8io/169f3d6 
36.65 ms