Pages:
Author

Topic: Nxt source code flaw reports - page 5. (Read 113312 times)

legendary
Activity: 2142
Merit: 1009
Newbie
March 19, 2014, 04:44:19 PM
Like releasing the full source on Jan 3rd?

It was never promised to release full source on Jan 3rd. Why r u still there, all ur posts r troll posts.
newbie
Activity: 28
Merit: 0
March 19, 2014, 03:43:45 PM
Don't reveal the flaw on 3rd of April, please

Let someone find it.
Are you seriously suggesting to break a promise?


Like releasing the full source on Jan 3rd?
hero member
Activity: 644
Merit: 500
March 19, 2014, 02:37:59 PM
Don't reveal the flaw on 3rd of April, please

Let someone find it.
Are you seriously suggesting to break a promise?


Where is the promise that the flaw will be revealed on the 3rd? All I see is the promise of reward before that date. 
hero member
Activity: 630
Merit: 500
Bitgoblin
March 19, 2014, 02:29:01 PM
Don't reveal the flaw on 3rd of April, please

Let someone find it.
Are you seriously suggesting to break a promise?
hero member
Activity: 644
Merit: 500
March 19, 2014, 01:31:59 PM
Could you make this clearer?

Only after 3rd of April.

Don't reveal the flaw on 3rd of April, please

Let someone find it.

hero member
Activity: 834
Merit: 524
Nxt NEM
March 14, 2014, 06:19:22 PM
If NXT-copycoin starts from its genesis block, that condition is not causing any problem or risk?

No, don't worry. Smiley

ok Smiley

*sigh ... the flaw-candidates are running out. Interesting to see the revelation of 3rd of April ...
legendary
Activity: 2142
Merit: 1009
Newbie
March 14, 2014, 06:08:26 PM
If NXT-copycoin starts from its genesis block, that condition is not causing any problem or risk?

No, don't worry. Smiley
hero member
Activity: 834
Merit: 524
Nxt NEM
March 14, 2014, 06:07:34 PM
Is this "getLastBlock().height > 303" a flaw?

/code]


condition with "303" :  when block height is 1 - 302, transactions' timestamp can be > blockTimestamp.





It's not the flaw. The block contains a transaction that expired before the block timestamp. The corresponding check was added later.

If NXT-copycoin starts from its genesis block, that condition is not causing any problem or risk?
legendary
Activity: 2142
Merit: 1009
Newbie
March 14, 2014, 05:18:53 PM
Is this "getLastBlock().height > 303" a flaw?

Code:
for (i = 0; i < block.numberOfTransactions; i++) {

Transaction transaction = blockTransactions.get(block.transactions[i]);

if (
  transaction.timestamp > curTime + 15 ||
transaction.deadline < 1 ||
(transaction.timestamp + transaction.deadline * 60 < blockTimestamp &&
getLastBlock().height > 303)
||
transaction.fee <= 0 ||
!transaction.validateAttachment() || Nxt.transactions.get(block.transactions[i]) != null ||
(transaction.referencedTransaction != 0 &&
Nxt.transactions.get(transaction.referencedTransaction) == null &&
blockTransactions.get(transaction.referencedTransaction) == null) ||
(unconfirmedTransactions.get(block.transactions[i]) == null && !transaction.verify())
)
{

break;

}



condition with "303" :  when block height is 1 - 302, transactions' timestamp can be > blockTimestamp.





It's not the flaw. The block contains a transaction that expired before the block timestamp. The corresponding check was added later.
full member
Activity: 238
Merit: 100
March 14, 2014, 05:08:52 PM
Is this "getLastBlock().height > 303" a flaw?

Code:
for (i = 0; i < block.numberOfTransactions; i++) {

Transaction transaction = blockTransactions.get(block.transactions[i]);

if (
  transaction.timestamp > curTime + 15 ||
transaction.deadline < 1 ||
(transaction.timestamp + transaction.deadline * 60 < blockTimestamp &&
getLastBlock().height > 303)
||
transaction.fee <= 0 ||
!transaction.validateAttachment() || Nxt.transactions.get(block.transactions[i]) != null ||
(transaction.referencedTransaction != 0 &&
Nxt.transactions.get(transaction.referencedTransaction) == null &&
blockTransactions.get(transaction.referencedTransaction) == null) ||
(unconfirmedTransactions.get(block.transactions[i]) == null && !transaction.verify())
)
{

break;

}



condition with "303" :  when block height is 1 - 302, transactions' timestamp can be > blockTimestamp.





hmmm 302 blocks is less than 1 day
hero member
Activity: 834
Merit: 524
Nxt NEM
March 14, 2014, 04:52:13 PM
Is this "getLastBlock().height > 303" a flaw?

Code:
for (i = 0; i < block.numberOfTransactions; i++) {

Transaction transaction = blockTransactions.get(block.transactions[i]);

if (
  transaction.timestamp > curTime + 15 ||
transaction.deadline < 1 ||
(transaction.timestamp + transaction.deadline * 60 < blockTimestamp &&
getLastBlock().height > 303)
||
transaction.fee <= 0 ||
!transaction.validateAttachment() || Nxt.transactions.get(block.transactions[i]) != null ||
(transaction.referencedTransaction != 0 &&
Nxt.transactions.get(transaction.referencedTransaction) == null &&
blockTransactions.get(transaction.referencedTransaction) == null) ||
(unconfirmedTransactions.get(block.transactions[i]) == null && !transaction.verify())
)
{

break;

}



condition with "303" :  when block height is 1 - 302, transactions' timestamp can be > blockTimestamp.



legendary
Activity: 2142
Merit: 1009
Newbie
March 12, 2014, 04:00:33 PM
Could you make this clearer?

Only after 3rd of April.
legendary
Activity: 1260
Merit: 1168
March 12, 2014, 03:26:20 PM
This message was too old and has been purged
hero member
Activity: 834
Merit: 524
Nxt NEM
March 08, 2014, 11:33:15 AM

Is the 3rd flaw still running free out there?
...though NXT source is public? Smiley

  https://bitbucket.org/JeanLucPicard  



U still have time to find it and get 100K reward.

absolutely great.
In that case I start focusing on that flaw, coz I just got my first java code working Smiley
and therefore I'm qualified java dev now -  I shall have a date with that flaw Smiley  :
We shall meet in the place where there is no darkness


legendary
Activity: 2142
Merit: 1009
Newbie
March 08, 2014, 10:44:11 AM

Is the 3rd flaw still running free out there?
...though NXT source is public? Smiley

  https://bitbucket.org/JeanLucPicard  



U still have time to find it and get 100K reward.
hero member
Activity: 834
Merit: 524
Nxt NEM
March 08, 2014, 10:21:50 AM

Is the 3rd flaw still running free out there?
...though NXT source is public? Smiley

  https://bitbucket.org/JeanLucPicard  

legendary
Activity: 866
Merit: 1002
March 02, 2014, 04:15:04 PM

Building on previous posts.

The previous block is always read from the lastBlock ala getBaseTarget.

If a malicious person were to re-write the client at pushBlock so that previous block was offset by 1 at generation time so then verifyGenerationSignature would honour this previous block and skip the actual previous block, meaning that there would be a block with missing transactions making double spending possible.

And what makes you think, any other peer in network would accept such block...
newbie
Activity: 26
Merit: 0
February 27, 2014, 06:37:18 PM

Building on previous posts.

The previous block is always read from the lastBlock ala getBaseTarget.

If a malicious person were to re-write the client at pushBlock so that previous block was offset by 1 at generation time so then verifyGenerationSignature would honour this previous block and skip the actual previous block, meaning that there would be a block with missing transactions making double spending possible.

legendary
Activity: 2142
Merit: 1009
Newbie
February 24, 2014, 12:28:35 PM
Could you please elaborate on how its a feature and not a flaw.

I prefer to wait until someone explains why it's a flaw.
legendary
Activity: 2142
Merit: 1009
Newbie
February 24, 2014, 03:10:18 AM
The block hash is excluded from generation signature.

Code:
    block.payloadHash = digest.digest();

    // ???

    block.generationSignature = Crypto.sign(Block.getLastBlock().generationSignature, secretPhrase);

Flaw: Blocks can be mutated after the fact, by the account which generated the block.

It's not a flaw, it's a feature.
Pages:
Jump to: