Author

Topic: A crypto fixed-deposit wallet. (Read 150 times)

hero member
Activity: 1036
Merit: 933
Find your Digital Services at- cryptolibrary.pro
January 23, 2023, 04:37:57 PM
#13
In my personal opinion I think 'Why do we need such a locking system where the decentralization system gives us the opportunity to complete the work of savings keeping full control of our funds in our hands.' 
I think this option will be better to create a wallet for saving Deposit a fixed amount every month or every week. For example, you take a strategy for a certain period of time and deposit that certain amount of money there according to the rules. This way the access of your fund will be on your hand and you can also use that for the emergency situations.
hero member
Activity: 1659
Merit: 687
LoyceV on the road. Or couch.
January 23, 2023, 04:25:11 PM
#12
We have heard of deposit bank account (fixed account) where customer's deposit in their fiat currency only to be able to withdraw or have access to it at the agreed terminated timeframe with the bank. One of the propelling motive behind this is to help the individual keep save a certain sum he/she wish to use for some project in the future without being able to distort or use the  asset for some other issues that may arise that it wasn't meant for.
Deposit savings are quite common here, but you're wrong about the reason: people take it to get a higher interest, and the bank likes it because they know how long they'll have the money.

Quote
I don't know if  such is also applied to cryptocurrency too, but just in case there's non yet, then I'll love to see developers develop a crypto-wallet that specifically function as a wallet for fixed deposits of assets. Or perhaps it could be added as a feature to the already existing crypto wallets be it custodial or non-custodial wallets.
This shouldn't be part of a wallet. And I wouldn't use locktime just because you have weak hands. In that case I'd rather store the private key in a location that can't easily be accessed.
legendary
Activity: 2268
Merit: 18711
January 23, 2023, 04:22:28 PM
#11
My point was that the term "Time Locked Address" is a bit misleading. Isn't it?
I don't think so. A time locked P2SH address is just as much an address as any other address. The address in which those coins will end up - 3FahwpsL2B2yFauJXVt8vCyQnF5imdknf7 - cannot be spent from until block 800,000. It is a timelocked address.

For example, if you make such a transaction and I import that address derived from the public key into electrum, I won't see any transaction.
If you took the raw public key and derived the P2PKH address associated with that raw public key, then no, you would not see my transaction to the P2SH address using that public key as above. But the same could be said if you took the raw public key from any nested segwit address, for example, and used it to generate a P2PKH address instead.
legendary
Activity: 2380
Merit: 5213
January 23, 2023, 04:14:07 PM
#10
Thank you o_e_l_e_o for your great explanation.

But there is no address at all. Am I right? Because the fund is sent to public key, not public key hash.
The funds are sent to a P2SH output, which in this case contains a P2PK locking script with the additional time lock as I explained above.
My point was that the term "Time Locked Address" is a bit misleading. Isn't it?
For example, if you make such a transaction and I import the address derived from the public key into electrum, I won't see any transaction.
legendary
Activity: 2268
Merit: 18711
January 23, 2023, 04:01:52 PM
#9
I thought that's the LockTime which you can set for a transaction, so it can't be mined before reaching a certain block/number. I didn't notice that's Time Locked Address.
Yes, they are two different things.

The nLockTime field is a part of every transaction, regardless of what outputs are being spent or what addresses those outputs are on. It is the last 4 bytes of the of the transaction data. It specifies either a block height or a Unix time, before which the transaction will not be relayed and will not be mined. If you don't change it manually, then the majority of wallets set it to either 0, or to the most recent block (which helps to prevent fee sniping). However, if all inputs in a transaction have their nSequence set to max (0xffffffff), then nLockTime is ignored. Note that this is all transaction specific. So in this case, as you said above, if you have a currently unspendable timelocked transaction, but also have the private key(s), you can just make a new transaction which is not timelocked.

OP_CHECKLOCKTIMEVERIFY, however, is part of the locking script you are sending coins to. Just as we might send coins to a more familiar script such as OP_DUP OP_HASH160 pubkeyhash OP_EQUALVERIFY OP_CHECKSIG and any coins sent to such a script can only be unlocked by providing the correct public key and a valid signature, any coins sent to a locking script containing OP_CHECKLOCKTIMEVERIFY can only be spent once the specified height/time has been reached.

But there is no address at all. Am I right? Because the fund is sent to public key, not public key hash.
The funds are sent to a P2SH output, which in this case contains a P2PK locking script with the additional time lock as I explained above. The address for the above script is:
Code:
3FahwpsL2B2yFauJXVt8vCyQnF5imdknf7
legendary
Activity: 2380
Merit: 5213
January 23, 2023, 03:47:12 PM
#8
With using locktime feature, you can make a transaction which can't be mined until a certain time/block number. But it doesn't prevent you from spending the fund earlier.
This is different to what is being offered by Coinb.in as quoted by Plaguedeath. It utilizes the OP_CHECKLOCKTIMEVERIFY OP code in the redeem script, rather than the nLockTime field in the transaction data itself.
I thought that's the LockTime which you can set for a transaction, so it can't be mined before reaching a certain block/number. I didn't notice that's Time Locked Address.
But there is no address at all. Am I right? Because the fund is sent to public key, not public key hash.
legendary
Activity: 2268
Merit: 18711
January 23, 2023, 03:07:05 PM
#7
With using locktime feature, you can make a transaction which can't be mined until a certain time/block number. But it doesn't prevent you from spending the fund earlier.
This is different to what is being offered by Coinb.in as quoted by Plaguedeath. It utilizes the OP_CHECKLOCKTIMEVERIFY OP code in the redeem script, rather than the nLockTime field in the transaction data itself.

Let's take the following public key as an example, which is generated from the private key 0000....0001:
Code:
0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798

Let's also say we don't want any coins on this address to be spendable until block 800,000.

So we head to https://coinb.in/#newTimeLocked and paste in our public key, select "blockheight", enter 800000, and hit "Submit". We then get shown a P2SH address which has the following redeem script:
Code:
0300350cb175210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ac

Let's break that down:

03 - push 3 bytes to the stack
00350c - little endian encoding of the number 800,000
b1 - OP_CHECKLOCKTIMEVERIFY
75 - OP_DROP
21 - push 33 bytes to the stack

The next 33 bytes are the public key we pasted in as above, followed by 0xac, which is OP_CHECKSIG.

So this script essentially checks if we have reached the necessary block (or Unix time) specified. If we haven't, it terminates in an error. If we have reached the necessary height/time, then OP_CHECKLOCKTIMEVERIFY will verify, OP_DROP will clear the stack, and then all that is left will be the pubkey and OP_CHECKSIG as it would be in a old school P2PK output.
hero member
Activity: 812
Merit: 560
January 23, 2023, 02:01:23 PM
#6
We have heard of deposit bank account (fixed account) where customer's deposit in their fiat currency only to be able to withdraw or have access to it at the agreed terminated timeframe with the bank. One of the propelling motive behind this is to help the individual keep save a certain sum he/she wish to use for some project in the future without being able to distort or use the  asset for some other issues that may arise that it wasn't meant for.

I will recommend you to go through this provided link that talks about a time lock features https://bitcointalksearch.org/topic/time-lock-feature-151959 the topic had been discussed before and going by some of the discussions recommendations it should give more insight on how to engage using a time lock security features for the safe keeping of our bitcoin for a long time in other not to have access to them before the time it needs may arises, but we must also consider that needs are unpredictable as situations changes with time, can we really adapt to the features even when we got pressed with financial impromptu needs with urgent attention.
legendary
Activity: 3668
Merit: 6382
Looking for campaign manager? Contact icopress!
January 23, 2023, 01:03:20 PM
#5
If a person has no basic discipline to resist panic selling, maybe they shouldn't get involved with Bitcoin at all.

Exactly. Even the banks allow you cancel a deposit, just you'll lose some money. So... OP's actual use case it.. only for those who don't understand the products they're using.
Timelock is an option, as already said. I don't like it. In my experience a paper wallet has done the job. Why? Because one is less prone to spend money he doesn't have at hand.
Of course, generating a paper wallet correctly and safely can be challenge for some. But imho it's a good option for saving. And if one gets into big real life problems (and it can happen, unfortunately), that money is not so difficult to access and spend.
legendary
Activity: 3024
Merit: 2148
January 23, 2023, 12:56:15 PM
#4
If a person has no basic discipline to resist panic selling, maybe they shouldn't get involved with Bitcoin at all.

The downsides of locking yourself out of funds are too big. You risk missing out on selling Bitcoin with a good profit if bull market comes. You risk being left without funds when you most need them. Imagine having a health emergency or other critical emergency and not being able to solve it because you locked yourself out of your coins.
legendary
Activity: 2380
Merit: 5213
January 23, 2023, 12:10:08 PM
#3
With using locktime feature, you can make a transaction which can't be mined until a certain time/block number. But it doesn't prevent you from spending the fund earlier.
As long as you have the private key, you can spend the fund at any time you want.

If you want to lock the fund, so that there is no way to spend that until a certain time, you must make a transaction with a locktime to a new address. You must keep the raw transaction safely, because you will need to broadcast that in the future.
You also need to destroy any backup you have of the private key of the address which holds the fund now and keep the private key of the new address safely.

Warning:
Don't do this if you don't know what exactly you are doing.
hero member
Activity: 854
Merit: 663
January 23, 2023, 10:19:38 AM
#2
It's called a timelocked transaction, you can follow this guide if you think you're need to use it.

Actually your explanation about the benefit of enable such feature doesn't really make sense because it's a matter of their personality, if someone can't being discipline and have a good money management, they shouldn't to invest in the first place since they're actually can't invest!

You can use Coinbin to do that. I had one a few months ago and it's quite easy to create/spend your coins after the chosen period.

To create the Time Locked Address:
1. Go to Coinb.in;
2. New -> Time Locked Address.
3. Enter your address public key (the one you require to sign the transaction and be able to spend the coins);
4. Enter the date-time or blockheight you want to release the coins.
5. Submit and save the Redeem Script (don't lose that or you won't be able to spend your coins in the future);
6. Send the coins you want to keep locked to the Address generated.

After the chosen period, you will be able to spend your coins.
1. Go to Coinb.in;
2. New -> Transaction;
3. Paste your Redeem Script and click Load (it's going to show every input available to be spent);
4. Paste the address you want to send the coins to at the "Address" field and the amount in the "Amount" field. The remaining funds will be used as fee. E.g: If your address has 0.015BTC, you can put 0.014BTC in the "Amount" field and the fee will be 0.001BTC (0.015 - 0.014);
5. Submit and copy the raw transaction;
6. Go to the "Sign" tab (at Coinb.in);
7. Paste the private key from the address you choose when creating the Time Locked Address.
8. Paste the raw transaction you just created.
9. Submit, copy the signed transaction and push it to the network (you can do it in the Broadcast tab).
10. Transaction sent!
hero member
Activity: 938
Merit: 605
Leading Crypto Sports Betting & Casino Platform
January 23, 2023, 09:50:01 AM
#1
We have heard of deposit bank account (fixed account) where customer's deposit in their fiat currency only to be able to withdraw or have access to it at the agreed terminated timeframe with the bank. One of the propelling motive behind this is to help the individual keep save a certain sum he/she wish to use for some project in the future without being able to distort or use the  asset for some other issues that may arise that it wasn't meant for.

I don't know if  such is also applied to cryptocurrency too, but just in case there's non yet, then I'll love to see developers develop a crypto-wallet that specifically function as a wallet for fixed deposits of assets. Or perhaps it could be added as a feature to the already existing crypto wallets be it custodial or non-custodial wallets.
Some benefits I presume crypto users to get from this are:
✓ It will help crypto users manage and execute their assets meant actually for the specific purposes without falling to distraction.
✓ It guarantees a sure savings for the future ( as an owner can only have access to assets at agreed terminated date).
✓  For those that lacks the discipline to keep savings, it's going to give them opportunity to start having savings. Etc.

I am convinced that there are other numerous benefits which I can't catch up right now, so may s feel free to drop other benefits that comes into mind. Furthermore, what do you guys think about this?

Jump to: