Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relative lock-time limitation when using a block-based limit #1552

Closed
thephez opened this issue Jul 25, 2017 · 6 comments
Closed

Relative lock-time limitation when using a block-based limit #1552

thephez opened this issue Jul 25, 2017 · 6 comments

Comments

@thephez
Copy link
Collaborator

thephez commented Jul 25, 2017

I came across this inconsistency while reviewing BIPs. Per BIP-0068, 16 bits of the sequence number are used for the relative lock time to allow for lock times of a year. Since Dash has a block time of 2.5 minutes (vs. Bitcoin's 10 minutes), the maximum block-based relative lock time is reduced by a quarter (2^16 * 2.5 min/block = ~113.75 days).

Time-based lock times remain the same as in bitcoin (~1 year) since the granularity was not changed.

Also, to maintain the relationship between the scaling of block-based and time-based lock time values described in BIP-0068, 18 bits of the sequence number would have to be used AND the granularity would have to be changed from 9 (512 seconds) to 7 (128 seconds). Doing this would result in the same maximum lock times for both time and block-based lock-times as bitcoin due to the factor of 4 between the Dash block time and Bitcoin block time.

At a minimum, these changes would have to be made at the following location in transaction.h, but I have not considered what other implications there might be:

One complication is the affect on any existing lock-times based on the current parameters if the mask and granularity were simply changed.

UdjinM6 added a commit to UdjinM6/dash that referenced this issue Sep 19, 2017
@UdjinM6
Copy link

UdjinM6 commented Sep 20, 2017

should be fixed by #1641

@UdjinM6
Copy link

UdjinM6 commented Sep 21, 2017

reopening and postponing till 12.3
#1647

@UdjinM6 UdjinM6 reopened this Sep 21, 2017
@UdjinM6 UdjinM6 reopened this Nov 7, 2017
AmirolAhmad pushed a commit to AmirolAhmad/gobytes-test that referenced this issue Dec 11, 2017
AmirolAhmad pushed a commit to AmirolAhmad/gobytes-test that referenced this issue Dec 12, 2017
@nmarley
Copy link

nmarley commented Jun 22, 2018

@UdjinM6 Should we move this to 12.4 milestone?

@UdjinM6 UdjinM6 modified the milestones: 12.3, 12.4 Jun 22, 2018
@UdjinM6
Copy link

UdjinM6 commented Jun 22, 2018

@nmarley agree (fixed).

@UdjinM6 UdjinM6 removed this from the 13.0 milestone Jan 11, 2019
@PastaPastaPasta
Copy link
Member

@UdjinM6 please reopen if this isn't resolved.

@thephez
Copy link
Collaborator Author

thephez commented Apr 12, 2021

@PastaPastaPasta This was never resolved

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants