Author

Topic: NXT :: descendant of Bitcoin - Updated Information - page 451. (Read 2761645 times)

sr. member
Activity: 952
Merit: 253

Ok got you...
the 100 reserve I understand - this is the pre fund for instant TX
the 24 hours is arbitrary and the reserve should be held until no instant TX are not confirmed.
EDIT: this is the maximum total liability they can create and they cannot withdraw the reserve balance.
I still don't understand the 1/10 if it were a limit per instant TX as further risk management, its stil arbitrary but I could understand it but I don't get it as a 24hr limit on the reserve - why is this?

If am not completely mistaken, an attack should work like this:

I have 1000 merchants. I want to buy 1000 items, 1 from each merchant. I initiate the trade and pay each of them 1 NXT. My reserve fund is 100. So, if everything goes well, I have 1000 items an only paid 100.

The merchants send me the items as soon as they have the confidence that I can pay and I do not cheat. That confidence is different from merchant to merchant.

1) They send the transactions I send them to the network.
2) They wait for a moment to see what other transactions are coming through.
3) They re-evaluate my reserve fund.

Here kicks the network randomizer in:

A) Some merchants see that I was cheating, so they will cancel the trade and nodes start deleting my transactions for that very account.
B) Some merchants are faster and did not wait for so long. They already sent me the item. They need to be refunded, so they resend the transactions.

---

I see this is not quite secure as it might seems from the beginning. In case merchants of type B trying to refunding them, I could easily abort the refunding process by spamming the network with transactions. I can replay this over and over again.

Is there a way to distinguish merchants from me?

In my thinking there are two balances, - apologies if this is a bit long....

The Reserve Balance which is an amount of NXT you cannot withdraw and you can initiate instant transactions up to that level - this is a permanent reserve until cancelled.

The other balance is the Instant Balance which is updated as soon as an instant transaction is broadcast by a node i.e. 0 confirmations.
This reflects the liability the account has created with an instant transaction.
The node the transaction is broadcast through will have an realtime view of this because it will update the accounts instant balance before broadcasting the tx, all nodes seeing the TX will also update the instant balance for that account.
If the account tries to initiate more TX that would make Instant Balance > Reserve Balance this would create an error.

An attack vector such as you describe would rely on being able to send the TX through a node which had not yet updated its instant balance total for the account in question.

For instant transactions to work I would want to ensure that both accounts had to be connected to a node and both nodes had the same view of the instant transaction balance of the sending account. If the seller is logged into the buyer node then this is a possible edge case attack.

This means that the sellers account can confirm that there are sufficient reserved funds for the instant purchase because it also has a view of the buyers instant balance that it can verify with other nodes - this would be a possible client verification/check  during the purchasing process, the seller NRS node is passive in this process other than providing data to the sellers software client.

Even if the buyer switches nodes, the seller doesn't and the sellers node reconciles the instant balance of the sellers account using normal time line rules.... So unless the buyer can get the seller onto a node that doesn't know the buyers balance or initiate trades with lots of sellers which it knows are connected to nodes which won't get the instant balance update then an attack will fail ( I think)


Once the instant TX is confirmed the liability reduces and the instant balance can be reduced.
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
How do I get on the Testnet? I'm running client version 0.8.8 on Linux.

Have a look at here: http://www.nxtcrypto.org/nxt-change-log/nxt-084e-change-log

Thanks  Grin I tried looking through the change logs but must have skipped that one. Is it possible to run testnet and real NXT at the same time?

Not for the same node. You could ask Jean-Luc.
full member
Activity: 266
Merit: 100

If it is possible to speed up the network, in a resource efficient manor that wasn't out of balance with the purpose for speeding it up I say "Hell Yeah! Do it". If not , there are other options.

To use your words 'Hell Yeah' this is the way I would try to do it... and it is about infrastructure if you consider this to be how NXT works as a whole, but its not about H/W or shouldn't be (other than N/W).

What ever works.
Plus this kind of conversation is just interesting. Cheesy

What do you mean by H/W and N/W ? missed that.

For next computation is not the issue but we cannot do much about data volumes... we can make the communication more efficient by compressing/turning it into binary, but once done then the more transactions you have the more data nodes need to exchange so N/W or network could become an issue. Its not an issue today we don't need nodes with huge pipes but in my experience the way you stop something like this being an issue or costing a lot to fix is to solve it when the system is small.

Also we talk about NXT (singular) and think about 1 node, there is value in thinking of it as a network and a sequence of nodes...

I really don't understand a lot about programing, Does that mean in the future it will take more powerful computers to run the network or just more computers? and if N/W is "network" what is H/W
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
How do I get on the Testnet? I'm running client version 0.8.8 on Linux.

Have a look at here: http://www.nxtcrypto.org/nxt-change-log/nxt-084e-change-log
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
1/x or definitely 10? - I just think users will think of an amount like 200, 500, 1000 nxt rather than 1/10 or 1/x, i should have expressed more clearly, I think the user should be able to specify the level of pocket money they need.... aka reserve balance

No, you do not get what I was trying to say. You need TWO fractions of your total amount:

Say you have 1000 NXT for non-instant transactions available.

Now, you want to have 100 NXT for instant transactions available. So, you have only 900 NXT available for non-instant transactions.
But still, you are only allowed to have 1/10 of THESE 100 NXT to spent within the frame of 24 hours.

Replace 100, 10 and 24 with your preferred constants.

As you might see, you cannot have the 900 NXT available for instant refunding. Why? Because you can withdraw them at any time.

Ok got you...
the 100 reserve I understand - this is the pre fund for instant TX
the 24 hours is arbitrary and the reserve should be held until no instant TX are not confirmed.
EDIT: this is the maximum total liability they can create and they cannot withdraw the reserve balance.
I still don't understand the 1/10 if it were a limit per instant TX as further risk management, its stil arbitrary but I could understand it but I don't get it as a 24hr limit on the reserve - why is this?

If am not completely mistaken, an attack should work like this:

I have 1000 merchants. I want to buy 1000 items, 1 from each merchant. I initiate the trade and pay each of them 1 NXT. My reserve fund is 100. So, if everything goes well, I have 1000 items and paid only 100.

The merchants send me the items as soon as they have the confidence that I can pay and I do not cheat. That confidence is different from merchant to merchant.

1) They send the transactions I send them to the network.
2) They wait for a moment to see what other transactions are coming through.
3) They re-evaluate my reserve fund.

Here kicks the network randomizer in:

A) Some merchants see that I was cheating, so they will cancel the trade and nodes start deleting my transactions for that very account.
B) Some merchants are faster and did not wait for so long. They already sent me the item. They need to be refunded, so they resend the transactions.

---

I see this is not quite secure as it might seems from the beginning. In case merchants of type B trying to refunding them, I could easily abort the refunding process by spamming the network with transactions. I can replay this over and over again.

Is there a way to distinguish merchants from me?
full member
Activity: 224
Merit: 100

Seriously though, this is pretty scary. You can brute force the ENTIRE network at once. It's the equivalent of someone walking though the neighborhood (at high speed) checking every door for a weak lock and methodically steal EVERYTHING from anyone who has the wrong kind of lock.

It would be nice to be able to tie your account to a MAC address if you want to, or to a list of MAC addresses. 2FA might help as well but don't see that as feasible at the core level.

Anyone can run a cracker on anything - that doesn't mean it can be broken.
There is a variation called vanitygen to look for nice account numbers
Tries lots of passwords until it finds one that matches your parameters
I wanted a shorter account number which is the one in my signature so I wrote a script to find me one, 5 digits shorter than my original one.
People can easily write a cracker but will it work ? - read the posts on password length and entropy...
I read the other thread... its juvenile.

I'm sure someone has already calculated the hash for "Peanuts" which is account 11002691385236070570, put any NXT in that account, a bot will see the TX on the block chain and nick the NXT probably.

I've run 10m passwords through NRS to see if I can break it - didn't,  I did do it randomly to see if i could get a password collision.
I could have run a smarter cracker but I didn't see the point its not my job to find people who have used weak passwords.


Since there's no username/password combination, a hacker does not need to target an account to crack it. They can set up a cracker to log into http://localhost:7875/ and start with A, then AA, Then AAA and so on. They can run this cycle continuously. If your password is halfway decent maybe it takes them a couple of years to break it, but since you can't change your secret phrase you are a sitting duck. You can send to a new account once in a while but you lose your "coin age" and have to wait 1440 blocks to forge again every time you do this.

I typed in 'password" and instantly gained access to an account that had a couple hundred NXT there at one point. Who's  NXT indeed.

As chanc3r mentioned, username+password is merely an illusion. Actually, username+password is weaker because the first half of your "pass" is known by everyone. If your password is decent i.e. 35+ chars, I don't think any amount of CPU power (currently) can break it in an economical fashion.
sr. member
Activity: 952
Merit: 253
1/x or definitely 10? - I just think users will think of an amount like 200, 500, 1000 nxt rather than 1/10 or 1/x, i should have expressed more clearly, I think the user should be able to specify the level of pocket money they need.... aka reserve balance

No, you do not get what I was trying to say. You need TWO fractions of your total amount:

Say you have 1000 NXT for non-instant transactions available.

Now, you want to have 100 NXT for instant transactions available. So, you have only 900 NXT available for non-instant transactions.
But still, you are only allowed to have 1/10 of THESE 100 NXT to spent within the frame of 24 hours.

Replace 100, 10 and 24 with your preferred constants.

As you might see, you cannot have the 900 NXT available for instant refunding. Why? Because you can withdraw them at any time.

Ok got you...
the 100 reserve I understand - this is the pre fund for instant TX
EDIT 2: the 24 hours is arbitrary and the reserve should be held permanently to cover instant TX liability up to that amount until the user cancels the instruction which cannot be done if they are any instant TX not fully confirmed.
EDIT: this is the maximum total liability they can create and they cannot withdraw the reserve balance.
I still don't understand the 1/10 if it were a limit per instant TX as further risk management, its stil arbitrary but I could understand it but I don't get it as a 24hr limit on the reserve - why is this?
hero member
Activity: 1116
Merit: 535

Emunie is also promising instant transactions. does anyone know how they plan to achieve this? I plan to start paying attention to them soon, they are supposed to launch their 1st official product this month. I am seriously considering jumping to them depending on what I find there.

Hello

They will not launch the product this month,they will maybe next month.
Open beta testing is still going on.
If you want you can test the latest open beta software by yourself.

http://beta.emunie.com/

For more info you can check the forum:
http://forum.emunie.com

sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
1/x or definitely 10? - I just think users will think of an amount like 200, 500, 1000 nxt rather than 1/10 or 1/x, i should have expressed more clearly, I think the user should be able to specify the level of pocket money they need.... aka reserve balance

No, you do not get what I was trying to say. You need TWO fractions of your total amount:

Say you have 1000 NXT for non-instant transactions available.

Now, you want to have 100 NXT for instant transactions available. So, you have only 900 NXT available for non-instant transactions.
But still, you are only allowed to have 1/10 of THESE 100 NXT to spent within the frame of 24 hours.

Replace 100, 10 and 24 with your preferred constants.

As you might see, you cannot have the 900 NXT available for instant refunding. Why? Because you can withdraw them at any time.
hero member
Activity: 910
Merit: 1000
Well, you would have a special account for this. How much NXT you put into it is up to you.
sr. member
Activity: 952
Merit: 253
Please help us me to understand - what is the reason for the 1/10 ratio? or is it completely arbitrary?

BCNext wanted to use 1/7 but 1/10 is easier to calc without a computer.

EDIT: Cfb - what about the reserve balance approach I posted in your other thread?

Good idea.

So the 1/10 reserve is arbitrary and with a different method like reserve balance the users could decide the level of reserve depending on how much 'pocket money' they would need.

Thanks, what do others think about this alternative method of 'pre-funding' instant transactions?

https://bitcointalksearch.org/topic/m.5591145

You still need the 1/10.

1/x or definitely 10? - I just think users will think of an amount like 200, 500, 1000 nxt rather than 1/10 or 1/x, i should have expressed more clearly, I think the user should be able to specify the level of pocket money they need.... aka reserve balance
full member
Activity: 238
Merit: 100
Really, ALL of the current exchanges that handle NXT SUCK HUMONGOUS MONKEY BALLS!
This really pisses me off!  Angry  (probably already noticeable   Wink )

Now it's Cryptsy at it (again).

Sent over 7500NXT 5,5 hours ago. I can see it in the address, but they haven't added it to my account.
Same thing happend to me several times with Bter and also at Vircurex.
All were solved eventually, but in the meantime it's waiting, waiting and waiting. At least NXT transfers are fast, that way I get to wait even longer if some exchange screws up (pun intended).

Man, I would be SO relieved if a decentralized exchange would be in place....

Don't get to worried about it. It happen to me at every single exchange except on DGEX but there you have to wait anyways. BTER likes to do this also very often. Vircurex is in my opinion most stable, it happend to me only once there but you have to wait 50 confirmations and liquidity is next to nothing.

Cryptsy is another story. They are already notorious for not crediting the coins even after 1000 confirmations, I believe that with NXT this will only get worse. I submitted my 4 ticket today with Cryptsy in a week. 2 days ago my NXT withdrawal was stuck for a day, I got pissed, contacted them and asked them to cancel it. They habe done it in 30 mins, I sold them and got BTC out of there. Today I gave it another chance. Deposited 10k, after 14 hours, nothing. I contacted them after 30 mins they asked me for all the info even though I provided the blockchain screenshot, so quite obviously they were stalling. After my second email they sent me a reply that because of the big number NXT deposits they they are overwhelmed and deposits take over an hour. What a bunch of crap. Once I get deposit through I will withdraw the coins and never enter this bullshit exchange, ever!!! It might be the best to convert them to BTC cause they will probably be stuck 3 days again.

If nothing, they respond to ticket in under an hour, but they will solve your problem just if it is straightforward, meaning cancel deposit.
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
Please help us me to understand - what is the reason for the 1/10 ratio? or is it completely arbitrary?

BCNext wanted to use 1/7 but 1/10 is easier to calc without a computer.

EDIT: Cfb - what about the reserve balance approach I posted in your other thread?

Good idea.

So the 1/10 reserve is arbitrary and with a different method like reserve balance the users could decide the level of reserve depending on how much 'pocket money' they would need.

Thanks, what do others think about this alternative method of 'pre-funding' instant transactions?

https://bitcointalksearch.org/topic/m.5591145

You still need the 1/10.
full member
Activity: 154
Merit: 100
Which Mobile Clients are out there?

How is the status of local signing, Come-from-Beyond?
sr. member
Activity: 952
Merit: 253
Please help us me to understand - what is the reason for the 1/10 ratio? or is it completely arbitrary?

BCNext wanted to use 1/7 but 1/10 is easier to calc without a computer.

EDIT: Cfb - what about the reserve balance approach I posted in your other thread?

Good idea.

So the 1/10 reserve is arbitrary and with a different method like reserve balance the users could decide the level of reserve depending on how much 'pocket money' they would need.

Thanks, what do others think about this alternative method of 'pre-funding' instant transactions?

https://bitcointalksearch.org/topic/m.5591145
legendary
Activity: 2142
Merit: 1010
Newbie
Please help us me to understand - what is the reason for the 1/10 ratio? or is it completely arbitrary?

BCNext wanted to use 1/7 but 1/10 is easier to calc without a computer.


EDIT: Cfb - what about the reserve balance approach I posted in your other thread?

Good idea.
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
This 10% thing seems like a strange and confusing idea. I don't talk about the technical aspects or the possibilities with it, I just talk from a user standpoint.

The 90% are like a reserve fund for merchants in case they already send you the item and you cheated them via double spends.

Is that the way we will explain it to Average Crypto Moe?

This was the way I explained it to you.

Make me something illustrative for our average Joes.
sr. member
Activity: 338
Merit: 250
Really, ALL of the current exchanges that handle NXT SUCK HUMONGOUS MONKEY BALLS!
This really pisses me off!  Angry  (probably already noticeable   Wink )

Now it's Cryptsy at it (again).

Sent over 7500NXT 5,5 hours ago. I can see it in the address, but they haven't added it to my account.
Same thing happend to me several times with Bter and also at Vircurex.
All were solved eventually, but in the meantime it's waiting, waiting and waiting. At least NXT transfers are fast, that way I get to wait even longer if some exchange screws up (pun intended).

Man, I would be SO relieved if a decentralized exchange would be in place....
hero member
Activity: 910
Merit: 1000
This 10% thing seems like a strange and confusing idea. I don't talk about the technical aspects or the possibilities with it, I just talk from a user standpoint.

The 90% are like a reserve fund for merchants in case they already send you the item and you cheated them via double spends.

Is that the way we will explain it to Average Crypto Moe?
sr. member
Activity: 364
Merit: 250
☕ NXT-4BTE-8Y4K-CDS2-6TB82
This 10% thing seems like a strange and confusing idea. I don't talk about the technical aspects or the possibilities with it, I just talk from a user standpoint.

The 90% are like a reserve fund for merchants in case they already send you the item and you cheated them via double spends.
Jump to: