tx · GeRTMQ5VRLornLBy8dk3eEcNEdeod5zzbzRPEU8Ah6gW

3MukPacWskGGNcT8ubWWzSwVPa9ah9KHvuB:  -0.01400000 Waves

2019.08.28 13:53 [650960] smart account 3MukPacWskGGNcT8ubWWzSwVPa9ah9KHvuB > SELF 0.00000000 Waves

{ "type": 13, "id": "GeRTMQ5VRLornLBy8dk3eEcNEdeod5zzbzRPEU8Ah6gW", "fee": 1400000, "feeAssetId": null, "timestamp": 1566989721890, "version": 1, "sender": "3MukPacWskGGNcT8ubWWzSwVPa9ah9KHvuB", "senderPublicKey": "H3q3RM4MQSLjCTYpgaitRNz8cKHhMtcwoUfc2c86cfej", "proofs": [ "3maZnCScMXu42y2ReqgWEALcSw51FXF5VTBC6bMqVnia2r7m1x5bGTzHsw6UL4PCBcjPaV86xJwC24d6JXEvStmJ" ], "script": "base64:AwQAAAAHUHViS2V5MQEAAAAgaQxxSAhSITOlMYdvwKcfK7u/x0yzOg/68EH0ax0QlWUEAAAAB1B1YktleTIBAAAAILb58FcZXTIbjEshMW6ayDB2XcNop87YatlbtNE8j6N0BAAAAARzaWcxAwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAAB1B1YktleTEAAAAAAAAAAAEAAAAAAAAAAAAEAAAABHNpZzIDCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAQUAAAAHUHViS2V5MgAAAAAAAAAAAQAAAAAAAAAAAAkAAGYAAAACCQAAZAAAAAIFAAAABHNpZzEFAAAABHNpZzIAAAAAAAAAAADO+UOI", "chainId": 84, "height": 650960, "spentComplexity": 0 } View: original | compacted Prev: 4yhpD2BkyF4KwMmG1fGrDVBmGAoceHnMyDQC2Ffiydj6 Next: none Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
2-{-# SCRIPT_TYPE ACCOUNT #-}
3-{-# CONTENT_TYPE DAPP #-}
4-let pubKey = fromBase64String("base64:MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdtRCFr5mgIRlyUiLAkbat/B8b5INC+1jGemO8MBM9mACSsFEWTY2Baw8/pXqisUL6MS4eg2p8SztclxVG5NB9wGaE7p4dg4qiRXVOaAqvLzDbJtnWvhrBQrkZKaA1FsWffgJ6syswp94ekCc06NLRwy4YhG1vpM2qHZmerCFC9QIDAQAB")
5-
6-let priv = "HkKm5jKqD4FyCvPFPpsEFehGobCF8HAnsA7pAfD8pdr1"
7-
8-let txId1 = toBytes("99gi5tM5kUeKRU3Hzgykrv5u9YU5woEFcaF5xRz76j6V")
9-
10-let sign = fromBase64String("base64:m0zwP9hJvt6oMXY8PGO1NFzLoDOPQ6MbMmxnfqpwFzxgOYMSOk+aV7PgjzuhCramncA2SM5L1/4Ga8LlanPIKimuAYndFMLKLJ7tp3S/oW/TiqU//yWBohRsuEIFjgS3Kq/kZ3HvnmBWfFFlgVRjo3OeDs1b7XLHUHsXLKOLgyU=")
11-
12-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqlAiANSmBpDHYKP9sKgeN/l1bAb28g/tGlgDkwT5FiMN4X3pwdvdxE7mvSR8/41dU9rx4jG+6tZpb1ULVDPs431tR2IRaTXw5Cj+Ac2vhL+5JamCerGD1UW+bh/EGQtxo8W3YLDrofXB5QHJx4Pkz2Kgf+oS/C8hHuB/U4krO76U0507GTjZPP9kRQ0uLSMeqQXt8wXS+nMp5wajqxPpDLMaSREgsKwv/AEkP4dzpTYbikLBYl4qtdJsD84HLFSkiwd3BhcOrPjoIYmLxQuBD5TIMKTKD3sdZgaY9rsyqx3A00innyxD6zp3b4gFpUOX8JxKZdEC2myEqleNgg7GzwIDAQAB")
13-
14-let privateKey = "MIICXgIBAAKBgQDGV1yyjdQDx8hfbZI/8QIRnvFgDE1HyNUg2HHllrbSXxRzK62uGagkRviGZoSgB20U/kk/N0s0B5wr5sK6uhgXOssAE9bwaqvESl1JKpb+G6oz2NtqtWdkS/AwHfboJLwx182I8aymN8KF5pfEHmo00gUJum6IdJWAEF0nK5HS9wIDAQABAoGBAMRFbVjQGs8G41Tzo/cccvSm+asXYV448hdHuSX+B7qUFjOGNJ+FiiskBAlT58hIsPxGSouBFy1MnpGfEHIhd3W+GLN8o208g10bzmoYE0a7Wmc6KwXrkhu62XMoKK3rEoAzxzD8NWpC5DAAjUG39OsWQdbzwRal1nxlbyPkucZxAkEA8yIq1b+Z3ZIvBcIEP57xc+Y/IgssGvc7feTbrdsVWwtRq04MlI01nYEEP9XIC3JEtlxZ7C8zTpjoK/cylPGUKQJBANDWYCpk34mivZP7hM7v5BTi89TjOyuvpePPOA7IUu/WOo5bLLk+0dppOLduNUpoNZnjiZu+jSmA134pqGN2Eh8CQCHuMMAnvxdW4U0SaHlgex3Lkh/0IzGYMys8lxPKMU7FY55ehA7vLf5PFQK7mPFP/xrcBIibhbOAT1ZjZyG2HRECQQDDmBUnf6TR3wdaA1eHDa18Vnfy6wQvTWq87Abf6YWsNeRQElrYAVtBCg3h1ym4T9PsFu16XkUOGys5ccDRrvMXAkEAhisdzcp7pAAIRZ7gyN2ude0DUI26W4dLd8LoE3wTJIu6p5jiApWotBbxehVlY9TVtzQTA0NXYflmVKfotVPgZQ=="
15-
16-let publicKey = fromBase64String("base64:MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGV1yyjdQDx8hfbZI/8QIRnvFgDE1HyNUg2HHllrbSXxRzK62uGagkRviGZoSgB20U/kk/N0s0B5wr5sK6uhgXOssAE9bwaqvESl1JKpb+G6oz2NtqtWdkS/AwHfboJLwx182I8aymN8KF5pfEHmo00gUJum6IdJWAEF0nK5HS9wIDAQAB")
17-
18-let txId = toBytes("base64:OTlnaTV0TTVrVWVLUlUzSHpneWtydjV1OVlVNXdvRUZjYUY1eFJ6NzZqNlY=")
19-
20-let signature = toBytes("base64:xTZMTrqOumK2lP4UNi/U7Z/T41Nq1h4AtfbuoI74TuomM/LafIRw+wmledW3p5bTuNYfBBf5+JpCz545STWCC+/Zq1Xd6flBBCzXI1eq+6YFP4Qiri/RKquD9w2O5x0DFX2NwfrxzKLgtMaiQtL6ndt6farvotbIh0Z3YtwH+Nc=")
21-
22-@Callable(i)
23-func checkSign (number,TxId,Signature,PublicKey) = {
24- let gameId = toBytes(TxId)
25- let a = rsaVerify(SHA256, gameId, Signature, PublicKey)
26- WriteSet([DataEntry((number + "_Pub"), PublicKey), DataEntry((number + "_Private"), privateKey), DataEntry((number + "_TXID"), gameId), DataEntry((number + "_Signature"), Signature), DataEntry((number + "_Verify"), a)])
27- }
28-
29-
30-@Verifier(tx)
31-func verify () = true
32-
2+{-# CONTENT_TYPE EXPRESSION #-}
3+let PubKey1 = base58'854p8BYzrj6yBPRPmfQur3oF1Rjc1AJ548qRp5FT5kDa'
4+let PubKey2 = base58'DKGFPozLrsiR8NM4NJzqQaBYC8NyGYjuw2hDYicQVjco'
5+let sig1 = if (sigVerify(tx.bodyBytes, tx.proofs[0], PubKey1))
6+ then 1
7+ else 0
8+let sig2 = if (sigVerify(tx.bodyBytes, tx.proofs[1], PubKey2))
9+ then 1
10+ else 0
11+((sig1 + sig2) > 0)

github/deemru/w8io/c3f4982 
37.49 ms