tx · 4j112mrqAV1MfXybMrR9eBM5UvG63xd7ZNudQLZTDjtW

3N8M61KCm8G72mK8PjacFbnnxdbFsyqQDeT:  -0.01400000 Waves

2019.06.22 11:35 [552993] smart account 3N8M61KCm8G72mK8PjacFbnnxdbFsyqQDeT > SELF 0.00000000 Waves

{ "type": 13, "id": "4j112mrqAV1MfXybMrR9eBM5UvG63xd7ZNudQLZTDjtW", "fee": 1400000, "feeAssetId": null, "timestamp": 1561192556841, "version": 1, "sender": "3N8M61KCm8G72mK8PjacFbnnxdbFsyqQDeT", "senderPublicKey": "Bhyvkx4xdbEi4KPJNZSzx9gZgzgyLEsavuj2kYSt7SST", "proofs": [ "4jBReLZFHodfnTWLymcCvadQg68EXeTvhMwaZaNgAQXxnDxhWopVywYGpSs9mpKma2yJK9At2xidq6Y6yx8aXaEE" ], "script": "base64:AAIDAAAAAAAAAAAAAAACAAAAABZFcnJvck9ubHlXYXZlc0FjY2VwdGVkAgAAABllcnJvcl9vbmx5X3dhdmVzX2FjY2VwdGVkAAAAAAlSU0FQVUJMSUMJAAJbAAAAAQIAAAJfYmFzZTY0Ok1JSUJ2VENDQVNZQ0NRRDU1Zk56YzBXRjdUQU5CZ2txaGtpRzl3MEJBUVVGQURBak1Rc3dDUVlEVlFRR0V3SktVREVVTUJJR0ExVUVDaE1MTURBdFZFVlRWQzFTVTBFd0hoY05NVEF3TlRJNE1ESXdPRFV4V2hjTk1qQXdOVEkxTURJd09EVXhXakFqTVFzd0NRWURWUVFHRXdKS1VERVVNQklHQTFVRUNoTUxNREF0VkVWVFZDMVNVMEV3Z1o4d0RRWUpLb1pJaHZjTkFRRUJCUUFEZ1kwQU1JR0pBb0dCQU5HRVlYdGZnRFJsV1VTRG4zaGFZNE5WVlFpS0k5Q3pUaG91YTkrRHhKdWlzZXl6bUJCZTdSb2gxUlBxZHZtdE9IbUVQYkora1haWWhib3p6UFJiRkdIQ0p5QmZDTHpRZlZvczkvcVVRODh1ODNiMFNGQTJNR21RV1FBbFJ0THk2NkVrUjRyRFJ3VGoyRHpSNEVFWGdFS3BJdm84VkJzLzMrc0hMRjNFU2dBaEFnTUJBQUV3RFFZSktvWklodmNOQVFFRkJRQURnWUVBRVo2bVhGRnEzQXpmYXFXSG1DeTFBUmpsYXVZQWE4Wm1VRm5MbTBlbWc5ZGtWQko2M2FFcUFSaHRvazZiRFFEelNKeGlMcENFRjZHNGIvTnYvTS9NTHloUCtPb09UbUVUTWVnQVZRTXE3MWNob1ZKeU9GRTVCdFFhNk0vbENIRU95YTVRVWZvUkYySEY5RWpSRjQ0SzNPSyt1M2l2VFNqM3p3anRwdWRZNVhvPQAAAAIAAAABaQEAAAAPR2VuZXJhdGVSYW5kSW50AAAAAgAAAAZnYW1lSWQAAAAHcnNhU2lnbgQAAAALcnNhU2lnVmFsaWQJAAH4AAAABAUAAAAGU0hBMjU2CQABmwAAAAEFAAAABmdhbWVJZAUAAAAHcnNhU2lnbgUAAAAJUlNBUFVCTElDAwUAAAALcnNhU2lnVmFsaWQEAAAABHJhbmQJAABqAAAAAgkABLEAAAABCQAB9wAAAAEFAAAAB3JzYVNpZ24AAAAAAAAAAAYJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAABWhlbGxvBQAAAARyYW5kBQAAAANuaWwJAAACAAAAAQIAAAAVSW52YWxpZCBSU0Egc2lnbmF0dXJlAAAAAWkBAAAAA2JldAAAAAEAAAAOZXhwZWN0ZWRSZXN1bHQEAAAAEGxhc3RBdWN0aW9uSWRLZXkCAAAAD2xhc3RfYXVjdGlvbl9pZAQAAAANbGFzdEF1Y3Rpb25JZAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAABBsYXN0QXVjdGlvbklkS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAAmlkCQAAZAAAAAIFAAAADWxhc3RBdWN0aW9uSWQAAAAAAAAAAAEEAAAADG5ld0F1Y3Rpb25JZAkAAaQAAAABBQAAAAJpZAQAAAALb3duZXJXYWxsZXQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAADcG10CQEAAAAFdmFsdWUAAAABCAUAAAABaQAAAAdwYXltZW50AwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABBQAAABZFcnJvck9ubHlXYXZlc0FjY2VwdGVkBAAAAAdhc3NldElkCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAQAAAASYXVjdGlvbkR1cmF0aW9uS2V5CQABLAAAAAIJAAEsAAAAAgIAAAAIYXVjdGlvbl8FAAAADG5ld0F1Y3Rpb25JZAIAAAAJX2R1cmF0aW9uBAAAABBhdWN0aW9uTWluQmlkS2V5CQABLAAAAAIJAAEsAAAAAgIAAAAIYXVjdGlvbl8FAAAADG5ld0F1Y3Rpb25JZAIAAAAIX21pbl9iaWQEAAAAEWF1Y3Rpb25MYXN0QmlkS2V5CQABLAAAAAIJAAEsAAAAAgIAAAAIYXVjdGlvbl8FAAAADG5ld0F1Y3Rpb25JZAIAAAAJX2xhc3RfYmlkBAAAABZhdWN0aW9uTGFzdEJpZE93bmVyS2V5CQABLAAAAAIJAAEsAAAAAgIAAAAIYXVjdGlvbl8FAAAADG5ld0F1Y3Rpb25JZAIAAAAPX2xhc3RfYmlkX293bmVyBAAAAA9hdWN0aW9uT3duZXJLZXkJAAEsAAAAAgkAASwAAAACAgAAAAhhdWN0aW9uXwUAAAAMbmV3QXVjdGlvbklkAgAAAAZfb3duZXIEAAAAEGF1Y3Rpb25BbW91bnRLZXkJAAEsAAAAAgkAASwAAAACAgAAAAhhdWN0aW9uXwUAAAAMbmV3QXVjdGlvbklkAgAAAAdfYW1vdW50BAAAABFhdWN0aW9uQXNzZXRJZEtleQkAASwAAAACCQABLAAAAAICAAAACGF1Y3Rpb25fBQAAAAxuZXdBdWN0aW9uSWQCAAAACV9hc3NldF9pZAQAAAASYXVjdGlvbklzQWN0aXZlS2V5CQABLAAAAAIJAAEsAAAAAgIAAAAIYXVjdGlvbl8FAAAADG5ld0F1Y3Rpb25JZAIAAAAKX2lzX2FjdGl2ZQQAAAAOdXNlckJhbGFuY2VLZXkJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGJhbGFuY2VfBQAAAAtvd25lcldhbGxldAIAAAABXwUAAAAHYXNzZXRJZAQAAAANY3VycmVudEFtb3VudAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAA51c2VyQmFsYW5jZUtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAluZXdBbW91bnQJAABkAAAAAgUAAAANY3VycmVudEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEWF1Y3Rpb25MYXN0QmlkS2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA9hdWN0aW9uT3duZXJLZXkFAAAAC293bmVyV2FsbGV0CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABBhdWN0aW9uQW1vdW50S2V5CAUAAAADcG10AAAABmFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAARYXVjdGlvbkFzc2V0SWRLZXkFAAAAB2Fzc2V0SWQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADnVzZXJCYWxhbmNlS2V5BQAAAAluZXdBbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEmF1Y3Rpb25Jc0FjdGl2ZUtleQYJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAFmF1Y3Rpb25MYXN0QmlkT3duZXJLZXkCAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAQbGFzdEF1Y3Rpb25JZEtleQUAAAACaWQFAAAAA25pbAAAAACcivjP", "chainId": 84, "height": 552993, "spentComplexity": 0 } View: original | compacted Prev: BVN18anakFmGgv8Jc7VEhBNPirnE4n1HBd13PbtXJD3N Next: Fgi6Kj6gZCYotkfgYXkbNmAPiKvUWpCD98Yv86MNCf7Z Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let ErrorOnlyWavesAccepted = "error_only_waves_accepted"
55
6-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqlAiANSmBpDHYKP9sKgeN/l1bAb28g/tGlgDkwT5FiMN4X3pwdvdxE7mvSR8/41dU9rx4jG+6tZpb1ULVDPs431tR2IRaTXw5Cj+Ac2vhL+5JamCerGD1UW+bh/EGQtxo8W3YLDrofXB5QHJx4Pkz2Kgf+oS/C8hHuB/U4krO76U0507GTjZPP9kRQ0uLSMeqQXt8wXS+nMp5wajqxPpDLMaSREgsKwv/AEkP4dzpTYbikLBYl4qtdJsD84HLFSkiwd3BhcOrPjoIYmLxQuBD5TIMKTKD3sdZgaY9rsyqx3A00innyxD6zp3b4gFpUOX8JxKZdEC2myEqleNgg7GzwIDAQAB")
6+let RSAPUBLIC = fromBase64String("base64:MIIBvTCCASYCCQD55fNzc0WF7TANBgkqhkiG9w0BAQUFADAjMQswCQYDVQQGEwJKUDEUMBIGA1UEChMLMDAtVEVTVC1SU0EwHhcNMTAwNTI4MDIwODUxWhcNMjAwNTI1MDIwODUxWjAjMQswCQYDVQQGEwJKUDEUMBIGA1UEChMLMDAtVEVTVC1SU0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANGEYXtfgDRlWUSDn3haY4NVVQiKI9CzThoua9+DxJuiseyzmBBe7Roh1RPqdvmtOHmEPbJ+kXZYhbozzPRbFGHCJyBfCLzQfVos9/qUQ88u83b0SFA2MGmQWQAlRtLy66EkR4rDRwTj2DzR4EEXgEKpIvo8VBs/3+sHLF3ESgAhAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAEZ6mXFFq3AzfaqWHmCy1ARjlauYAa8ZmUFnLm0emg9dkVBJ63aEqARhtok6bDQDzSJxiLpCEF6G4b/Nv/M/MLyhP+OoOTmETMegAVQMq71choVJyOFE5BtQa6M/lCHEOya5QUfoRF2HF9EjRF44K3OK+u3ivTSj3zwjtpudY5Xo=")
77
88 @Callable(i)
99 func GenerateRandInt (gameId,rsaSign) = {
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let ErrorOnlyWavesAccepted = "error_only_waves_accepted"
55
6-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqlAiANSmBpDHYKP9sKgeN/l1bAb28g/tGlgDkwT5FiMN4X3pwdvdxE7mvSR8/41dU9rx4jG+6tZpb1ULVDPs431tR2IRaTXw5Cj+Ac2vhL+5JamCerGD1UW+bh/EGQtxo8W3YLDrofXB5QHJx4Pkz2Kgf+oS/C8hHuB/U4krO76U0507GTjZPP9kRQ0uLSMeqQXt8wXS+nMp5wajqxPpDLMaSREgsKwv/AEkP4dzpTYbikLBYl4qtdJsD84HLFSkiwd3BhcOrPjoIYmLxQuBD5TIMKTKD3sdZgaY9rsyqx3A00innyxD6zp3b4gFpUOX8JxKZdEC2myEqleNgg7GzwIDAQAB")
6+let RSAPUBLIC = fromBase64String("base64:MIIBvTCCASYCCQD55fNzc0WF7TANBgkqhkiG9w0BAQUFADAjMQswCQYDVQQGEwJKUDEUMBIGA1UEChMLMDAtVEVTVC1SU0EwHhcNMTAwNTI4MDIwODUxWhcNMjAwNTI1MDIwODUxWjAjMQswCQYDVQQGEwJKUDEUMBIGA1UEChMLMDAtVEVTVC1SU0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANGEYXtfgDRlWUSDn3haY4NVVQiKI9CzThoua9+DxJuiseyzmBBe7Roh1RPqdvmtOHmEPbJ+kXZYhbozzPRbFGHCJyBfCLzQfVos9/qUQ88u83b0SFA2MGmQWQAlRtLy66EkR4rDRwTj2DzR4EEXgEKpIvo8VBs/3+sHLF3ESgAhAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAEZ6mXFFq3AzfaqWHmCy1ARjlauYAa8ZmUFnLm0emg9dkVBJ63aEqARhtok6bDQDzSJxiLpCEF6G4b/Nv/M/MLyhP+OoOTmETMegAVQMq71choVJyOFE5BtQa6M/lCHEOya5QUfoRF2HF9EjRF44K3OK+u3ivTSj3zwjtpudY5Xo=")
77
88 @Callable(i)
99 func GenerateRandInt (gameId,rsaSign) = {
1010 let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
1111 if (rsaSigValid)
1212 then {
1313 let rand = (toInt(sha256(rsaSign)) % 6)
1414 WriteSet([DataEntry("hello", rand)])
1515 }
1616 else throw("Invalid RSA signature")
1717 }
1818
1919
2020
2121 @Callable(i)
2222 func bet (expectedResult) = {
2323 let lastAuctionIdKey = "last_auction_id"
2424 let lastAuctionId = match getInteger(this, lastAuctionIdKey) {
2525 case a: Int =>
2626 a
2727 case _ =>
2828 0
2929 }
3030 let id = (lastAuctionId + 1)
3131 let newAuctionId = toString(id)
3232 let ownerWallet = toBase58String(i.caller.bytes)
3333 let pmt = value(i.payment)
3434 if (isDefined(pmt.assetId))
3535 then throw(ErrorOnlyWavesAccepted)
3636 else {
3737 let assetId = toBase58String(value(pmt.assetId))
3838 let auctionDurationKey = (("auction_" + newAuctionId) + "_duration")
3939 let auctionMinBidKey = (("auction_" + newAuctionId) + "_min_bid")
4040 let auctionLastBidKey = (("auction_" + newAuctionId) + "_last_bid")
4141 let auctionLastBidOwnerKey = (("auction_" + newAuctionId) + "_last_bid_owner")
4242 let auctionOwnerKey = (("auction_" + newAuctionId) + "_owner")
4343 let auctionAmountKey = (("auction_" + newAuctionId) + "_amount")
4444 let auctionAssetIdKey = (("auction_" + newAuctionId) + "_asset_id")
4545 let auctionIsActiveKey = (("auction_" + newAuctionId) + "_is_active")
4646 let userBalanceKey = ((("balance_" + ownerWallet) + "_") + assetId)
4747 let currentAmount = match getInteger(this, userBalanceKey) {
4848 case a: Int =>
4949 a
5050 case _ =>
5151 0
5252 }
5353 let newAmount = (currentAmount + pmt.amount)
5454 WriteSet([DataEntry(auctionLastBidKey, 0), DataEntry(auctionOwnerKey, ownerWallet), DataEntry(auctionAmountKey, pmt.amount), DataEntry(auctionAssetIdKey, assetId), DataEntry(userBalanceKey, newAmount), DataEntry(auctionIsActiveKey, true), DataEntry(auctionLastBidOwnerKey, ""), DataEntry(lastAuctionIdKey, id)])
5555 }
5656 }
5757
5858

github/deemru/w8io/873ac7e 
21.36 ms