tx · 92fCky95xdJRDnbXt2ffUDEgjs4VQnURL91VbT6QsPFi

3N9Q4sZb1AYHGTKVqGMH5F8AMQmziyjzzeT:  -0.01400000 Waves

2020.10.05 20:15 [1207542] smart account 3N9Q4sZb1AYHGTKVqGMH5F8AMQmziyjzzeT > SELF 0.00000000 Waves

{ "type": 13, "id": "92fCky95xdJRDnbXt2ffUDEgjs4VQnURL91VbT6QsPFi", "fee": 1400000, "feeAssetId": null, "timestamp": 1601918159526, "version": 2, "chainId": 84, "sender": "3N9Q4sZb1AYHGTKVqGMH5F8AMQmziyjzzeT", "senderPublicKey": "6R2XtEbbfhMTJ5sKErL1hc7qvns3NHUz9ZtHh1T1dTz2", "proofs": [ "2VGzw1GJu6yS1dDoETjbydQHjVfUH7WhBKBLKc73QkkjcZV3LZA9yakZrUnE5CRJfHEiN6RALHvTnUPbUpibHV7v" ], "script": "base64:AAIDAAAAAAAAAA4IARIECgIICBIECgIIAQAAAAIBAAAABWdlS2V5AAAAAQAAAAdvcmRlcklECQABLAAAAAIJAAEsAAAAAgIAAAAMSU5BUlRFX2NlcnRfBQAAAAdvcmRlcklEAgAAAAFfAQAAABFnZXRLZXlDZXJ0aWZpY2F0bwAAAAIAAAAIc3VwcGxpZXIAAAAHb3JkZXJJRAkAASwAAAACCQEAAAAFZ2VLZXkAAAABBQAAAAdvcmRlcklECQACWAAAAAEJAAH3AAAAAQkAAZsAAAABBQAAAAhzdXBwbGllcgAAAAIAAAABaQEAAAAOYWRkQ2VydGlmaWNhdG8AAAACAAAAB29yZGVySUQAAAAEZGF0YQQAAAAPc3VwcGxpZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABGl0ZW0JAQAAABFnZXRLZXlDZXJ0aWZpY2F0bwAAAAIFAAAAD3N1cHBsaWVyQWRkcmVzcwUAAAAHb3JkZXJJRAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAEaXRlbQUAAAAEZGF0YQUAAAADbmlsAAAAAWkBAAAAD3ZvdGFDZXJ0aWZpY2F0bwAAAAIAAAAHb3JkZXJJRAAAAAZzdGVsbGUEAAAACmNoaWF2ZVZvdGkJAAEsAAAAAgkAASwAAAACAgAAAAxJTkFSVEVfdm90aV8FAAAAB29yZGVySUQCAAAAAV8EAAAADWNoaWF2ZVZvdGFudGkJAAEsAAAAAgkAASwAAAACAgAAAA9JTkFSVEVfdm90YW50aV8FAAAAB29yZGVySUQCAAAAAV8EAAAAC3ZvdGlBdHR1YWxpBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAACmNoaWF2ZVZvdGkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAOdm90YW50aUF0dHVhbGkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAANY2hpYXZlVm90YW50aQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAACQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAApjaGlhdmVWb3RpCQAAZAAAAAIFAAAAC3ZvdGlBdHR1YWxpBQAAAAZzdGVsbGUJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADWNoaWF2ZVZvdGFudGkJAABkAAAAAgUAAAAOdm90YW50aUF0dHVhbGkAAAAAAAAAAAEFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABRTZXRTY3JpcHRUcmFuc2FjdGlvbgQAAAABZAUAAAAHJG1hdGNoMAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAE1RyYW5zZmVyVHJhbnNhY3Rpb24EAAAAAWUFAAAAByRtYXRjaDAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5Bzt3aJo=", "height": 1207542, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2PRjKWiBwYTR5ErynryKNbbcSEkg3gPQ4FXX3H7p34W4 Next: HYPSh99AqPcBTVj4pYRd9hLTtJNjQ44QsCvb6UgiZvGt Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 func geKey (orderID) = (("INARTE_cert_" + orderID) + "_")
55
6-
7-let ownerAccountPublicKey = base58'6R2XtEbbfhMTJ5sKErL1hc7qvns3NHUz9ZtHh1T1dTz2'
86
97 func getKeyCertificato (supplier,orderID) = (geKey(orderID) + toBase58String(sha256(toBytes(supplier))))
108
4139 @Verifier(tx)
4240 func verify () = match tx {
4341 case d: SetScriptTransaction =>
44- sigVerify(tx.bodyBytes, tx.proofs[0], ownerAccountPublicKey)
42+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
43+ case e: TransferTransaction =>
44+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
4545 case _ =>
46- true
46+ false
4747 }
4848
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func geKey (orderID) = (("INARTE_cert_" + orderID) + "_")
55
6-
7-let ownerAccountPublicKey = base58'6R2XtEbbfhMTJ5sKErL1hc7qvns3NHUz9ZtHh1T1dTz2'
86
97 func getKeyCertificato (supplier,orderID) = (geKey(orderID) + toBase58String(sha256(toBytes(supplier))))
108
119
1210 @Callable(i)
1311 func addCertificato (orderID,data) = {
1412 let supplierAddress = toBase58String(i.caller.bytes)
1513 let item = getKeyCertificato(supplierAddress, orderID)
1614 WriteSet([DataEntry(item, data)])
1715 }
1816
1917
2018
2119 @Callable(i)
2220 func votaCertificato (orderID,stelle) = {
2321 let chiaveVoti = (("INARTE_voti_" + orderID) + "_")
2422 let chiaveVotanti = (("INARTE_votanti_" + orderID) + "_")
2523 let votiAttuali = match getInteger(this, chiaveVoti) {
2624 case a: Int =>
2725 a
2826 case _ =>
2927 0
3028 }
3129 let votantiAttuali = match getInteger(this, chiaveVotanti) {
3230 case a: Int =>
3331 a
3432 case _ =>
3533 0
3634 }
3735 WriteSet([DataEntry(chiaveVoti, (votiAttuali + stelle)), DataEntry(chiaveVotanti, (votantiAttuali + 1))])
3836 }
3937
4038
4139 @Verifier(tx)
4240 func verify () = match tx {
4341 case d: SetScriptTransaction =>
44- sigVerify(tx.bodyBytes, tx.proofs[0], ownerAccountPublicKey)
42+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
43+ case e: TransferTransaction =>
44+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
4545 case _ =>
46- true
46+ false
4747 }
4848

github/deemru/w8io/3ef1775 
28.48 ms