Author

Topic: [ANN] Litecoin - a lite version of Bitcoin. Launched! - page 354. (Read 1467253 times)

donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
Really sad to see LTC slip away into a maniacal man's paradise just like ScamCoin.

Manual TX fee adjustments ? That sounds like fun Undecided

It's really hard to figure out your position on stuff, bulanula. And plus you seem to flip flop so often. Ever thought of running for a political position?

Are you against manual transaction fee adjustments or for them? Do you know that the bitcoin fee has been manually adjusted from 0.01 btc to 0.0005 btc as the bitcoin price rose to $30? And now that the price is back to $2, the current bitcoin fees make it very cheap to spam bitcoin also.

I'm not sure difficulty is that much linked to coin value. For instance, the BTC diff is now about what it was in early June or something, but its value is like 10 times lower.

Yes, so if bitcoin had auto adjusted fees, the fee won't increase back to 0.01 btc because the difficulty didn't drop so much. But it would be about twice the 0.0005 btc fee, which would at least be going in the right direction without having to release another client just to manually adjust the fees.

I'm not sure either if a fluctuating fee (or to put it in other words, a somewhat unpredictable fee) is a good thing psychologically. Manual adjustment from time to time, depending on the economic situation, sounds good enough to me.

Yes psychologically, it might be bad. Though it's just a simple calculation that anyone can do if they know the difficulty, so it's not something mysterious.
hero member
Activity: 518
Merit: 500
Really sad to see LTC slip away into a maniacal man's paradise just like ScamCoin.

Manual TX fee adjustments ? That sounds like fun Undecided
hero member
Activity: 793
Merit: 1026
Wow, I go on vacation for a week and come back to see this mess!  On the one hand, fuck RS or CH or whoever the fuck it is that's doing this, but I've also been very happy to see the innovative fast response and reasonable client changes as a result.  Thanks for all the hard work coblee, litecoins rock!
legendary
Activity: 1904
Merit: 1002
You're right.
sr. member
Activity: 392
Merit: 250
So you want centralized fee policy?  To me this proposal is the right incentive structure.
It's not really centralized since noone is forced to update their client.
Fees go up as the network becomes more secure.
If I understood well, the point of coblee's idea is precisely to keep a stable fee (in fiat value), which is somewhat equivalent to the fees going down as the network becomes more secure.

Note that I don't really mind the automatically adjusting fee, I'm just not sure it's as needed as psychologically uncomfortable. When I started using BTC, that mysterious unpredictable fee was a major turn off to me.
legendary
Activity: 1904
Merit: 1002
Here's another thought I have. Ideally, I'd like to tie the transaction fees with current price of Litecoin so that the cost of spamming stays the same in terms of fiat cost. (We are still living in a fiat world whether we like it or not.) But that's impossible to do in code. The next best thing is to tie it to the difficulty. The idea is that difficulty is loosely coupled with price. If ltc price goes up, difficulty will follow as more miners jump in. And as ltc price goes down, mining becomes unprofitable, miners leave, and difficulty goes down.
[...]
Thoughts?
I'm not sure difficulty is that much linked to coin value. For instance, the BTC diff is now about what it was in early June or something, but its value is like 10 times lower.
I'm not sure either if a fluctuating fee (or to put it in other words, a somewhat unpredictable fee) is a good thing psychologically. Manual adjustment from time to time, depending on the economic situation, sounds good enough to me.

So you want centralized fee policy?  To me this proposal is the right incentive structure.  Fees go up as the network becomes more secure.
sr. member
Activity: 392
Merit: 250
Here's another thought I have. Ideally, I'd like to tie the transaction fees with current price of Litecoin so that the cost of spamming stays the same in terms of fiat cost. (We are still living in a fiat world whether we like it or not.) But that's impossible to do in code. The next best thing is to tie it to the difficulty. The idea is that difficulty is loosely coupled with price. If ltc price goes up, difficulty will follow as more miners jump in. And as ltc price goes down, mining becomes unprofitable, miners leave, and difficulty goes down.
[...]
Thoughts?
I'm not sure difficulty is that much linked to coin value. For instance, the BTC diff is now about what it was in early June or something, but its value is like 10 times lower.
I'm not sure either if a fluctuating fee (or to put it in other words, a somewhat unpredictable fee) is a good thing psychologically. Manual adjustment from time to time, depending on the economic situation, sounds good enough to me.
legendary
Activity: 1904
Merit: 1002
Here's another thought I have. Ideally, I'd like to tie the transaction fees with current price of Litecoin so that the cost of spamming stays the same in terms of fiat cost. (We are still living in a fiat world whether we like it or not.) But that's impossible to do in code. The next best thing is to tie it to the difficulty. The idea is that difficulty is loosely coupled with price. If ltc price goes up, difficulty will follow as more miners jump in. And as ltc price goes down, mining becomes unprofitable, miners leave, and difficulty goes down.

So we want an inverse relationship between the base fee and the difficulty. When Litecoin becomes popular and more people start to mine it and ltc price goes up, we want the fees to go down. And we should also cap the max fee at 1 LTC. Something like this.

BaseFee = 0.1 / difficulty (round to 2 significant digits)

With the current difficulty at 0.63769, the base fee will be 0.15 LTC.
If the network doubles and difficulty doubles, the base fee will be reduced to 0.075 LTC.
And if we ever go back down to difficulty of less than 0.1, the base fee will be at most 1 LTC.

Thoughts?

I like it personally.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
Here's another thought I have. Ideally, I'd like to tie the transaction fees with current price of Litecoin so that the cost of spamming stays the same in terms of fiat cost. (We are still living in a fiat world whether we like it or not.) But that's impossible to do in code. The next best thing is to tie it to the difficulty. The idea is that difficulty is loosely coupled with price. If ltc price goes up, difficulty will follow as more miners jump in. And as ltc price goes down, mining becomes unprofitable, miners leave, and difficulty goes down.

So we want an inverse relationship between the base fee and the difficulty. When Litecoin becomes popular and more people start to mine it and ltc price goes up, we want the fees to go down. And we should also cap the max fee at 1 LTC. Something like this.

BaseFee = 0.1 / difficulty (round to 2 significant digits)

With the current difficulty at 0.63769, the base fee will be 0.15 LTC.
If the network doubles and difficulty doubles, the base fee will be reduced to 0.075 LTC.
And if we ever go back down to difficulty of less than 0.1, the base fee will be at most 1 LTC.

Thoughts?
legendary
Activity: 1876
Merit: 1000

Well done coblee,  thank you.

My previous posts about your changes were based solely on my ignorance of how the transactions fees worked.

Thanks for you hard work.

-----------------------
"my ignorance is only surpassed by my lack of knowledge" jmo
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
You don't even understand the problem that Litecoin is currently facing. Don't tell me I don't know what I'm talking about, when the exact thing happened with the very coin you're telling me to go back to.

I don't think the same thing happened to SolidCoin 1.0. SolidCoin 1.0 was using a fixed fee system, and ArtForz took advantage of that and spammed the network and only paying the same low fixed fee as everyone else. So RealSolid has to shutdown the chain because his change to Bitcoin's fee system backfired. Having a fixed fee is good, but that's assuming no one abuses it and sends spam transactions for low cost.

Let me summarize what's been happening

Dust spamming transactions

Litecoin is using the SAME Bitcoin code to deal with spam. The problem was that when I initially released Litecoin, I tried to change as a little as I could from Bitcoin. So I naively left the fee the same: 0.0005 ltc for transaction fee and 0.0001 ltc for transaction relay fee. This made it too cheap for a spammer to bloat our chain. The spammer started off by sending transactions with a ton of 0.00000001 LTC outputs and paying very little fees. (See: http://blockexplorer.sytes.net/block/4d5fc716d8a56f4223d38ebdaa2858551302d2118084448895db4131a3087117) So I increased it 200 times to make it closer to Bitcoin dollar-wise: 0.1 ltc for transaction fee and 0.02 ltc for transaction relay fee. See these 2 commits:

https://github.com/coblee/litecoin/commit/b661930c59691761691e0690771981af37b2b835
https://github.com/coblee/litecoin/commit/f0f9b11e860acb96279f26010c55d30b0684f10b

Exempt low-priority transactions

After this change went in, the spammer decided to send a lot of 2 LTC transactions for free. (See: http://blockexplorer.sytes.net/block/cf33787eec7468824617350664ec77048e6ecf47e6ade82a3bf07d5d566219a7) Bitcoin allows 3000 bytes of low priority transactions to go into a block for free. So he manages to fit about 13 of these transactions into each block without paying any fee. It's annoying but not too bad. But since we are finding blocks 4 times as fast as Bitcoin, this attack is 4 times as effective than a similar attack on Bitcoin. So I made the change to reduce the amount of exempt free transaction space to 500 bytes:

https://github.com/coblee/litecoin/commit/65f2053c72522a12ff92429c28d654ac8002cea4
https://github.com/coblee/litecoin/commit/332adc52190d079ccc3a6da0457ad2a494fc3866

I also changed the priority threshold to match Litecoins parameters. It was previously using 144 for the numbers of blocks found a day. So by using 576, the priority cutoff is now 1 litecoin day per 250 bytes.

https://github.com/coblee/litecoin/commit/8fe8e1304c7e7ed15e5499054e24b97b96ba98a1

High-priority transactions

Once that fix went in, the spammer can no longer fit 13 of those low priority transactions in each block. He can fit about 3. So he decided to make his transactions high priority. He started sending 577 coins to himself per transaction. (See: http://blockexplorer.sytes.net/block/960d4b540de8663508fad8e3a24b8329bc8c435a1233648281788a557ccbdcfb) He could then fit about 13 of these into a block. Since they are high priority, they can be sent without any fees. And they are only limited by the free transaction rate limiting code to prevent abuse. I then decided that we can live with this since honest user's transactions will be higher priority and will go in ahead of this spam. This attack will just slowly bloat the chain.

Dust spamming transactions round 2

I think after the spammer saw that I wasn't going to do anything about the high-priority transactions, he decided that's it's not worth his time to continue that since it's not doing much damage. He went back to dust spamming. But this time, he's taking advantage of the lower relay transaction fees and the fact that many users have not upgraded to the latest code. So he's paying 1/5 the cost that he normally should be charged. He's paying about 1 LTC for 50k of chain bloat. (See: http://blockexplorer.sytes.net/block/fa27fbea0d3e1a45021debb64c894ad619223baa5ee594c6fd47cda4d3e5168c) This is the problem we currently have.

This exact same attack can be performed on Bitcoin, but I don't think anyone is wasting time with it. You can bloat the Bitcoin chain by 50kb by spending 0.025 btc or 6 cents. (and 1GB is only going to cost $1200) My fix proposed above should fix this problem for both Litecoin and Bitcoin.
legendary
Activity: 1764
Merit: 1015
LOL  Cheesy Cheesy Now Litecoin finds itself in the same predicament that Solidcoin had to solve to fend off malicious attackers. It's going to be very interesting seeing how Coblee fixes this "bug" in the protocol.
HENCE THE ENTIRE DILEMMA  Cheesy Cheesy Cheesy.
You can't even tell the difference between a (small) transaction fee (=given back to miners) and a (huge) king tax (=kept by the magic fairy of everythingisfineland)... just go run the TaxCoin logo design contest or something.
LOL

Edit:
You don't even understand the problem that Litecoin is currently facing. Don't tell me I don't know what I'm talking about, when the exact thing happened with the very coin you're telling me to go back to.
sr. member
Activity: 392
Merit: 250
LOL  Cheesy Cheesy Now Litecoin finds itself in the same predicament that Solidcoin had to solve to fend off malicious attackers. It's going to be very interesting seeing how Coblee fixes this "bug" in the protocol.
HENCE THE ENTIRE DILEMMA  Cheesy Cheesy Cheesy.
You can't even tell the difference between a (small) transaction fee (=given back to miners) and a (huge) king tax (=kept by the magic fairy of everythingisfineland)... just go run the TaxCoin logo design contest or something.
full member
Activity: 154
Merit: 102
Bitcoin!
Litecoin is using the exact same solution as Bitcoin, AFAIK, the only difference being the coin values have been increased to match real-world values.

Then why are we wasting time talking about how to fix it?  Maybe I jumped in the middle of something without realizing what was really being discussed.
Alternate solutions are being discussed, but the currently implemented solution is what I said. (unless I'm mistaken)
legendary
Activity: 1764
Merit: 1015
Litecoin is using the exact same solution as Bitcoin, AFAIK, the only difference being the coin values have been increased to match real-world values.

Then why are we wasting time talking about how to fix it?  Maybe I jumped in the middle of something without realizing what was really being discussed.
HENCE THE ENTIRE DILEMMA  Cheesy Cheesy Cheesy.

legendary
Activity: 1904
Merit: 1002
Litecoin is using the exact same solution as Bitcoin, AFAIK, the only difference being the coin values have been increased to match real-world values.

Then why are we wasting time talking about how to fix it?  Maybe I jumped in the middle of something without realizing what was really being discussed.
full member
Activity: 154
Merit: 102
Bitcoin!
Though there is one solution I can think of. Which is to require a transaction fee on all coins sent that are not a day old. So if you try to send coins that are not a day old (i.e. don't have 576 confirmations), you need to pay 0.1 ltc fee. What do people think about that?

That would probably be ok, however, you can't choose which coins to use so if you had a bunch of older coins and one new one which was exactly the size you want, I think the client would choose that one.  We'd need to combine it with a tweak to the coin selection algorithm.
If he's using custom code to create the transactions, he can use whichever coins he wants to.
full member
Activity: 154
Merit: 102
Bitcoin!
Though there is one solution I can think of. Which is to require a transaction fee on all coins sent that are not a day old. So if you try to send coins that are not a day old (i.e. don't have 576 confirmations), you need to pay 0.1 ltc fee. What do people think about that?
It's a cat and mouse game.  Would not the spammer just use coins that are two days old in that case?

He would have to wait 2 days to be able to spam again after he exhausted his funds.
We don't know how many coins he has.  He could spam for two days using 5% of his coins, and then start recycling the spammed ones for all we know.

Meh.  Bitcoin has solved the problem with a combination of time and value based fee requirements.  Why reinvent the wheel here?
Litecoin is using the exact same solution as Bitcoin, AFAIK, the only difference being the coin values have been increased to match real-world values.
legendary
Activity: 1904
Merit: 1002
Though there is one solution I can think of. Which is to require a transaction fee on all coins sent that are not a day old. So if you try to send coins that are not a day old (i.e. don't have 576 confirmations), you need to pay 0.1 ltc fee. What do people think about that?
It's a cat and mouse game.  Would not the spammer just use coins that are two days old in that case?

He would have to wait 2 days to be able to spam again after he exhausted his funds.
We don't know how many coins he has.  He could spam for two days using 5% of his coins, and then start recycling the spammed ones for all we know.

Meh.  Bitcoin has solved the problem with a combination of time and value based fee requirements.  Why reinvent the wheel here?
full member
Activity: 154
Merit: 102
Bitcoin!
Though there is one solution I can think of. Which is to require a transaction fee on all coins sent that are not a day old. So if you try to send coins that are not a day old (i.e. don't have 576 confirmations), you need to pay 0.1 ltc fee. What do people think about that?
It's a cat and mouse game.  Would not the spammer just use coins that are two days old in that case?

He would have to wait 2 days to be able to spam again after he exhausted his funds.
We don't know how many coins he has.  He could spam for two days using 5% of his coins, and then start recycling the spammed ones for all we know.
Jump to: