Smart Contract Details
Open on Dero ExplorerInternal ID:
49846
Hash / Transaction:
Block:
Timestamp:
2025-08-22 22:42:11 UTC (1 months ago)
Creator:
tokenz
(1773608)
Raw Data:
[{"name":"SC_ACTION","datatype":"U","value":1},{"name":"SC_CODE","datatype":"S","value":"Function Initialize(receiver String) Uint64\n1 STORE(\"owner\",SIGNER())\n2 IF IS_ADDRESS_VALID(ADDRESS_RAW(receiver)) THEN GOTO 4\n3 RETURN 0\n4 STORE(\"receiver\",receiver)\n5 STORE(\"deadline\",0) \n6 STORE(\"deposited\",0) \n7 RETURN 0\nEnd Function\nFunction StartSwap(hash String) Uint64\n1 IF DEROVALUE() == 0 THEN GOTO 7\n2 IF EXISTS(\"hash\")==1 THEN GOTO 7\n3 STORE(\"hash\",hash)\n4 STORE(\"deadline\",BLOCK_TIMESTAMP() + 86400)\n5 STORE(\"deposited\",DEROVALUE())\n6 RETURN 0\n7 RETURN 1\nEnd Function\nFunction Withdraw(key String) Uint64 \n1 IF ADDRESS_RAW(LOAD(\"receiver\"))==SIGNER() THEN GOTO 3\n2 RETURN 1\n3 IF LOAD(\"deadline\")\u003eBLOCK_TIMESTAMP() THEN GOTO 5\n4 RETURN 1\n5 IF STRLEN(key)\u003c=32 THEN GOTO 7\n6 RETURN 1\n7 IF LOAD(\"hash\")==HEX(SHA256(key)) THEN GOTO 9\n8 RETURN 1\n9 SEND_DERO_TO_ADDRESS(SIGNER(),LOAD(\"deposited\"))\n10 STORE(\"key\",key) \n11 RETURN 0\nEnd Function\nFunction Refund() Uint64 \n1 IF LOAD(\"owner\")==SIGNER() THEN GOTO 3\n2 RETURN 1\n3 IF LOAD(\"deadline\")\u003cBLOCK_TIMESTAMP() THEN GOTO 5\n4 RETURN 1\n5 SEND_DERO_TO_ADDRESS(SIGNER(),LOAD(\"deposited\"))\n6 RETURN 0\nEnd Function"},{"name":"entrypoint","datatype":"S","value":"Initialize"},{"name":"receiver","datatype":"S","value":"dero1qy4yf7c577wqzvzq44x30lygha5wjz7wrhw6dnv5n3pq4f4d7aqluqq30m7ak"}]
Code:
Function Initialize(receiver String) Uint64
1 STORE("owner",SIGNER())
2 IF IS_ADDRESS_VALID(ADDRESS_RAW(receiver)) THEN GOTO 4
3 RETURN 0
4 STORE("receiver",receiver)
5 STORE("deadline",0)
6 STORE("deposited",0)
7 RETURN 0
End Function
Function StartSwap(hash String) Uint64
1 IF DEROVALUE() == 0 THEN GOTO 7
2 IF EXISTS("hash")==1 THEN GOTO 7
3 STORE("hash",hash)
4 STORE("deadline",BLOCK_TIMESTAMP() + 86400)
5 STORE("deposited",DEROVALUE())
6 RETURN 0
7 RETURN 1
End Function
Function Withdraw(key String) Uint64
1 IF ADDRESS_RAW(LOAD("receiver"))==SIGNER() THEN GOTO 3
2 RETURN 1
3 IF LOAD("deadline")>BLOCK_TIMESTAMP() THEN GOTO 5
4 RETURN 1
5 IF STRLEN(key)<=32 THEN GOTO 7
6 RETURN 1
7 IF LOAD("hash")==HEX(SHA256(key)) THEN GOTO 9
8 RETURN 1
9 SEND_DERO_TO_ADDRESS(SIGNER(),LOAD("deposited"))
10 STORE("key",key)
11 RETURN 0
End Function
Function Refund() Uint64
1 IF LOAD("owner")==SIGNER() THEN GOTO 3
2 RETURN 1
3 IF LOAD("deadline")<BLOCK_TIMESTAMP() THEN GOTO 5
4 RETURN 1
5 SEND_DERO_TO_ADDRESS(SIGNER(),LOAD("deposited"))
6 RETURN 0
End Function