Stellar TimeLock for Birthday Gift
Clash Royale CLAN TAG#URR8PPP
up vote
6
down vote
favorite
Say Alice wants to send Bob 100 XLM for his birthday, but she is often traveling and may not remember to carry out the Tx on the day of Bob's birthday...
Time lock just specifies when a Tx can be signed and submitted to the network.
Is there a way to sign/submit a Tx that will 'execute' itself at a specific time&date in the future?
Any ideas on how to do this with Stellar?
smart-contract
add a comment |Â
up vote
6
down vote
favorite
Say Alice wants to send Bob 100 XLM for his birthday, but she is often traveling and may not remember to carry out the Tx on the day of Bob's birthday...
Time lock just specifies when a Tx can be signed and submitted to the network.
Is there a way to sign/submit a Tx that will 'execute' itself at a specific time&date in the future?
Any ideas on how to do this with Stellar?
smart-contract
add a comment |Â
up vote
6
down vote
favorite
up vote
6
down vote
favorite
Say Alice wants to send Bob 100 XLM for his birthday, but she is often traveling and may not remember to carry out the Tx on the day of Bob's birthday...
Time lock just specifies when a Tx can be signed and submitted to the network.
Is there a way to sign/submit a Tx that will 'execute' itself at a specific time&date in the future?
Any ideas on how to do this with Stellar?
smart-contract
Say Alice wants to send Bob 100 XLM for his birthday, but she is often traveling and may not remember to carry out the Tx on the day of Bob's birthday...
Time lock just specifies when a Tx can be signed and submitted to the network.
Is there a way to sign/submit a Tx that will 'execute' itself at a specific time&date in the future?
Any ideas on how to do this with Stellar?
smart-contract
smart-contract
asked Aug 31 at 0:02
AliceXLM
332
332
add a comment |Â
add a comment |Â
3 Answers
3
active
oldest
votes
up vote
7
down vote
accepted
This capability is not on-network. Third party solution(s) exist. For example: https://galactictalk.org/d/1466-smart-stellar-timed-payments
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
add a comment |Â
up vote
2
down vote
Another solution is to have Alice create and fund a new account C and sign a timebound transaction to merge C into Bob account. Then she can share the transaction with Bob before his birthday, he has the transaction but he has to wait his birthday to submit it to the network and redeem his gift.
Alice can set the thresholds and signatures weighs of C so that Bob knows she can't move the funds out of the account before his birthday.
First Alice needs to build the merge account transaction (here n
is the Contract account sequence):
Transaction #2
- Source: C
- Sequence:
n+2
- Time Bounds: (min=bob birthday, max=0)
- Operations:
- Operation
- Type: AccountMerge
- Destination: B
- Operation
Alice would write down the transaction hash h(#2)
and XDR.
To setup the Contract C, Alice would send the following transaction to the network:
Transaction #1
- Source: C
- Sequence:
n+1
- Operations:
- Operation
- Type: SetOptions
- MasterWeight: 0
- LowThreshold: 2
- MediumThreshold: 2
- HighThreshold: 2
- Signer: (type=ed25519, key=B, weight=1)
- Operation
- Type: SetOptions
- Signer: (type=pre-auth-tx, hash=
h(#2)
, weight=1)
- Operation
On the day of its birthday, Bob would sign and submit transaction #2 to receive Alice gift. Before that date, neither Bob nor Alice are able to withdraw the funds.
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
add a comment |Â
up vote
1
down vote
I'm the author of https://test.artspirit.com/ and doing timed-payments is the main service of my site. It's working already on the testnet.
Let me know if this one is what you are looking for. Any feedback
on the current version is welcome.
add a comment |Â
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
7
down vote
accepted
This capability is not on-network. Third party solution(s) exist. For example: https://galactictalk.org/d/1466-smart-stellar-timed-payments
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
add a comment |Â
up vote
7
down vote
accepted
This capability is not on-network. Third party solution(s) exist. For example: https://galactictalk.org/d/1466-smart-stellar-timed-payments
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
add a comment |Â
up vote
7
down vote
accepted
up vote
7
down vote
accepted
This capability is not on-network. Third party solution(s) exist. For example: https://galactictalk.org/d/1466-smart-stellar-timed-payments
This capability is not on-network. Third party solution(s) exist. For example: https://galactictalk.org/d/1466-smart-stellar-timed-payments
answered Aug 31 at 0:06
Synessoâ¦
1,926223
1,926223
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
add a comment |Â
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
K lovely! Thank you :-)
â AliceXLM
Aug 31 at 9:48
add a comment |Â
up vote
2
down vote
Another solution is to have Alice create and fund a new account C and sign a timebound transaction to merge C into Bob account. Then she can share the transaction with Bob before his birthday, he has the transaction but he has to wait his birthday to submit it to the network and redeem his gift.
Alice can set the thresholds and signatures weighs of C so that Bob knows she can't move the funds out of the account before his birthday.
First Alice needs to build the merge account transaction (here n
is the Contract account sequence):
Transaction #2
- Source: C
- Sequence:
n+2
- Time Bounds: (min=bob birthday, max=0)
- Operations:
- Operation
- Type: AccountMerge
- Destination: B
- Operation
Alice would write down the transaction hash h(#2)
and XDR.
To setup the Contract C, Alice would send the following transaction to the network:
Transaction #1
- Source: C
- Sequence:
n+1
- Operations:
- Operation
- Type: SetOptions
- MasterWeight: 0
- LowThreshold: 2
- MediumThreshold: 2
- HighThreshold: 2
- Signer: (type=ed25519, key=B, weight=1)
- Operation
- Type: SetOptions
- Signer: (type=pre-auth-tx, hash=
h(#2)
, weight=1)
- Operation
On the day of its birthday, Bob would sign and submit transaction #2 to receive Alice gift. Before that date, neither Bob nor Alice are able to withdraw the funds.
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
add a comment |Â
up vote
2
down vote
Another solution is to have Alice create and fund a new account C and sign a timebound transaction to merge C into Bob account. Then she can share the transaction with Bob before his birthday, he has the transaction but he has to wait his birthday to submit it to the network and redeem his gift.
Alice can set the thresholds and signatures weighs of C so that Bob knows she can't move the funds out of the account before his birthday.
First Alice needs to build the merge account transaction (here n
is the Contract account sequence):
Transaction #2
- Source: C
- Sequence:
n+2
- Time Bounds: (min=bob birthday, max=0)
- Operations:
- Operation
- Type: AccountMerge
- Destination: B
- Operation
Alice would write down the transaction hash h(#2)
and XDR.
To setup the Contract C, Alice would send the following transaction to the network:
Transaction #1
- Source: C
- Sequence:
n+1
- Operations:
- Operation
- Type: SetOptions
- MasterWeight: 0
- LowThreshold: 2
- MediumThreshold: 2
- HighThreshold: 2
- Signer: (type=ed25519, key=B, weight=1)
- Operation
- Type: SetOptions
- Signer: (type=pre-auth-tx, hash=
h(#2)
, weight=1)
- Operation
On the day of its birthday, Bob would sign and submit transaction #2 to receive Alice gift. Before that date, neither Bob nor Alice are able to withdraw the funds.
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
add a comment |Â
up vote
2
down vote
up vote
2
down vote
Another solution is to have Alice create and fund a new account C and sign a timebound transaction to merge C into Bob account. Then she can share the transaction with Bob before his birthday, he has the transaction but he has to wait his birthday to submit it to the network and redeem his gift.
Alice can set the thresholds and signatures weighs of C so that Bob knows she can't move the funds out of the account before his birthday.
First Alice needs to build the merge account transaction (here n
is the Contract account sequence):
Transaction #2
- Source: C
- Sequence:
n+2
- Time Bounds: (min=bob birthday, max=0)
- Operations:
- Operation
- Type: AccountMerge
- Destination: B
- Operation
Alice would write down the transaction hash h(#2)
and XDR.
To setup the Contract C, Alice would send the following transaction to the network:
Transaction #1
- Source: C
- Sequence:
n+1
- Operations:
- Operation
- Type: SetOptions
- MasterWeight: 0
- LowThreshold: 2
- MediumThreshold: 2
- HighThreshold: 2
- Signer: (type=ed25519, key=B, weight=1)
- Operation
- Type: SetOptions
- Signer: (type=pre-auth-tx, hash=
h(#2)
, weight=1)
- Operation
On the day of its birthday, Bob would sign and submit transaction #2 to receive Alice gift. Before that date, neither Bob nor Alice are able to withdraw the funds.
Another solution is to have Alice create and fund a new account C and sign a timebound transaction to merge C into Bob account. Then she can share the transaction with Bob before his birthday, he has the transaction but he has to wait his birthday to submit it to the network and redeem his gift.
Alice can set the thresholds and signatures weighs of C so that Bob knows she can't move the funds out of the account before his birthday.
First Alice needs to build the merge account transaction (here n
is the Contract account sequence):
Transaction #2
- Source: C
- Sequence:
n+2
- Time Bounds: (min=bob birthday, max=0)
- Operations:
- Operation
- Type: AccountMerge
- Destination: B
- Operation
Alice would write down the transaction hash h(#2)
and XDR.
To setup the Contract C, Alice would send the following transaction to the network:
Transaction #1
- Source: C
- Sequence:
n+1
- Operations:
- Operation
- Type: SetOptions
- MasterWeight: 0
- LowThreshold: 2
- MediumThreshold: 2
- HighThreshold: 2
- Signer: (type=ed25519, key=B, weight=1)
- Operation
- Type: SetOptions
- Signer: (type=pre-auth-tx, hash=
h(#2)
, weight=1)
- Operation
On the day of its birthday, Bob would sign and submit transaction #2 to receive Alice gift. Before that date, neither Bob nor Alice are able to withdraw the funds.
edited Aug 31 at 14:50
answered Aug 31 at 12:46
Francesco
892417
892417
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
add a comment |Â
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Is there actually a way to set things so that the merge account goes through but the account canâÂÂt send payments from it?
â Paul
Aug 31 at 14:01
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
Yes, let me edit the answer to expand on it
â Francesco
Aug 31 at 14:30
add a comment |Â
up vote
1
down vote
I'm the author of https://test.artspirit.com/ and doing timed-payments is the main service of my site. It's working already on the testnet.
Let me know if this one is what you are looking for. Any feedback
on the current version is welcome.
add a comment |Â
up vote
1
down vote
I'm the author of https://test.artspirit.com/ and doing timed-payments is the main service of my site. It's working already on the testnet.
Let me know if this one is what you are looking for. Any feedback
on the current version is welcome.
add a comment |Â
up vote
1
down vote
up vote
1
down vote
I'm the author of https://test.artspirit.com/ and doing timed-payments is the main service of my site. It's working already on the testnet.
Let me know if this one is what you are looking for. Any feedback
on the current version is welcome.
I'm the author of https://test.artspirit.com/ and doing timed-payments is the main service of my site. It's working already on the testnet.
Let me know if this one is what you are looking for. Any feedback
on the current version is welcome.
answered Sep 1 at 22:02
bluesky
414
414
add a comment |Â
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstellar.stackexchange.com%2fquestions%2f1551%2fstellar-timelock-for-birthday-gift%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password