Pages:
Author

Topic: EnCoin Proposal v4.0 - scads of technical details - now with a WIKI! (Read 6151 times)

hero member
Activity: 798
Merit: 1000
New ideas that will eventually make their way into the wiki:

Big TradeNet change: I kept worrying about businesses not wanting to be part of the TN because they would have to use 1 account only to get their transaction fee refunds and that would take away any anonymity they would have. This bothered me a lot and I think it would have hindered acceptance. So I've come up with a very good compromise: proof-of-stake. Before, the proposal used proof-of-economic activity to gain reputation. Now, there will be 5 or 6 levels of reputation that are based solely on a stake amount. Example: level 0 would be around 500 ENC or like 50 or 100 ENC mined in the SupplyNet (in lieu of a stake). Level 5 would be around 30-35k ENC with steps in between.

This is just hand-waving for now, but something like this:

Level 0) 10%
1) 10%
2) 20%
3) 20%
4) 20%
5) 20%

These are the shares of the transaction fee refunds that each level gets. On top of that, a level 5 gets a share in levels 0-4, level 4 in 0-3, and so on. Additionally, if any merchant does not care about anonymity, they can use their stake account to collect transactions and get refunds specific to their transactions in amounts of 30-70% depending on their level. There will still be some kind of reputation system but it will be more to track if an account did not create a transaction block when they were supposed to and so on. Once deposited in a stake, the stake money cannot be used in the network. There will probably be a 10 day waiting period or some such before a stake can be removed.

On SupplyNets: to further create competition, SupplyNets will now compete against each other. If the 6 ENC award is used per block, then the top half will receive 8 ENC and the bottom 4 ENC. There will also be a minimum number of SNGs required before mining can begin. It will probably be equal to the number of TNGs. That way at any given time, there will need to be at least 100 or so people looking to mine before a mining competition can begin. This competition among groups will help keep the difficulty honest and reduce the possibility of an attack on the difficulty.


Also, MoneyIsDebt, a programmer of 15 years, has tentatively agreed to help work on the project, so hopefully it will begin development soon.
hero member
Activity: 798
Merit: 1000
1. Problem with gaming the reputation is that even if they were able to do so, there isn't much that they could do. Delaying transactions is really the only thing. Fees are something that do need to be worked on a little.
2. You don't "defy" the laws of physics. Not to put koomey's law anywhere near that pedestal, but if there is a technological leap, either everyone will soon have access to it, or the few that do can't accomplish much with it. Also, a big part of the next revision of this project would be the free coins given away as stated a few posts earlier. I'm not gonna go into too much detail on this now because I plan on releasing a simple version of this proposal that is based heavily on this idea that would make it impossible for someone to game coin creation.
3. Bitcoin merged mining absolves all risk as long as bitcoin remains useful.
4. There really are not that many people using Bitcoin. And all of the shadiness surrounding its beginnings, and those like Solidcoin, would not exist here. And give this project a couple years to show price stability, and you just might see people use it for actual commerce instead of rampant speculation. Businesses, I believe, would be more likely to adopt a stable currency rather than one so volatile. But it will take time, of course.


I was referring to high-level design and not programming when I said you were not qualified. The high-level design requires you to explain how rational agents will behave in mathematical detail. You must do things like explicitly define agents' payoffs and choice sets. You don't make an effort in this direction.

I did do this in earlier revisions of the proposal, to some degree anyway. It's a tiring process though, and I'm not too keen on wasting more of my free time for this project.
full member
Activity: 187
Merit: 100

This is interesting, and refreshingly new for an AltCoin. I see problems though:

1. Technical: The balances & reputation framework may be too weak to secure this. Attackers might find a way to game reputation. The fee rules may hit scalability limits.

2. New developments: Some people might find ingenious new ways of minting money in defiance of Koomeys law just because of you,
and everyone else will resent this.

3. Risk/Reward: No large early adopter benefit will keep exactly those away. You need to find a way to also reduce the risk of
early adopters. Short of guaranteed buy-back contracts and reserves I can't see this happen.

4. Bitcoin mentality and market saturation: It's hard to convince invested Bitcoin people to switch, the first mover advantage is gone.

Good luck for the future in this!

-coinft

legendary
Activity: 1050
Merit: 1003
Point 2: The design of a decentralized system to stabilize price via coin supply manipulation is going to be complex. You would need to lay out the incentives of all the agents involved in mathematical detail. Do you have the skill-set necessary for this? Have you made any progress in this direction?

I believe I have the skillset to lay a foundation for this. My intent would always be to get the input of as many minds as possible rather than forging ahead without. I'm smart, but I have no qualms about (eventually) admitting that someone has a better idea than me. Tongue As far as progress, I came up with some more ideas and never fully fleshed out the wiki, but that was due to a relative lack of interest, Red's disappearance, and point 3.

Quote
Point 3: You are not sufficiently qualified to make a contribution here.

This is a bit harsh, but yes I admitted from the start that this project was over my head to bring to fruition. However, I do excel at designing programmatical structures, if mostly in principle and less so in practice (but not that much less so). I was willing to pay someone to help. The design isn't over my head though some of the programming may be. But I wanted input and got very little. Mostly the same claims of "it can't be done" just as many would have and did say about p2p digital currency before the existence of bitcoin. If I can't do it on my own and no one will help, the project has little chance of succeeding. There it lies.

I didn't say you were not smart. I believe you are smart.

I was referring to high-level design and not programming when I said you were not qualified. The high-level design requires you to explain how rational agents will behave in mathematical detail. You must do things like explicitly define agents' payoffs and choice sets. You don't make an effort in this direction.

hero member
Activity: 798
Merit: 1000
Point 2: The design of a decentralized system to stabilize price via coin supply manipulation is going to be complex. You would need to lay out the incentives of all the agents involved in mathematical detail. Do you have the skill-set necessary for this? Have you made any progress in this direction?

I believe I have the skillset to lay a foundation for this. My intent would always be to get the input of as many minds as possible rather than forging ahead without. I'm smart, but I have no qualms about (eventually) admitting that someone has a better idea than me. Tongue As far as progress, I came up with some more ideas and never fully fleshed out the wiki, but that was due to a relative lack of interest, Red's disappearance, and point 3.

Quote
Point 3: You are not sufficiently qualified to make a contribution here.

This is a bit harsh, but yes I admitted from the start that this project was over my head to bring to fruition. However, I do excel at designing programmatical structures, if mostly in principle and less so in practice (but not that much less so). I was willing to pay someone to help. The design isn't over my head though some of the programming may be. But I wanted input and got very little. Mostly the same claims of "it can't be done" just as many would have and did say about p2p digital currency before the existence of bitcoin. If I can't do it on my own and no one will help, the project has little chance of succeeding. There it lies.
legendary
Activity: 1050
Merit: 1003
Point 1: Ignore Everhooes. Communicating with him will waste your time.

Point 2: The design of a decentralized system to stabilize price via coin supply manipulation is going to be complex. You would need to lay out the incentives of all the agents involved in mathematical detail. Do you have the skill-set necessary for this? Have you made any progress in this direction?

Edit: From the looks of the wiki, the answer to my questions is no and no, so i come to point 3

Point 3: You are not sufficiently qualified to make a contribution here.

member
Activity: 62
Merit: 10
How do you prevent GPU farms from posing as different peers so they can always hash?
hero member
Activity: 900
Merit: 1000
Crypto Geek
 I believe the 80:20 wealth distribution is a result of a network effect that we see in nature. 

 Esoteric maths is very advanced in technical stock market analysis. What if this model could be built into a cryptocurrency itself to redistribute wealth fairly?

 Further, what if the calculation to work this out was also the proof of work?

 The simplest way I could imagine this as an analogy would be a using a Forex fund as a currency.
hero member
Activity: 798
Merit: 1000
So I believe I've come up with an idea that solves several issues with the creation of new currency and would make Red happy.

At first, I did not like this because it seems like it is another transfer of wealth. Then I was able to rationalize how this was not the case.

A hard figure has to be used here, but I don't think misjudging the figure can have catastrophic consequences. The figure I propose is 4%. 4% is the yearly amount of increase, based on a daily supply, allowed in the currency before additional currency will be created "for free."

For example, there are 1 million coins in existence. At 4%/365 days, if more than 109.59 coins are created a day, any amount above that figure will be spread out to existing currency holders. So if 120 coins were created, 10.41 coins would be distributed to the rest of the economy based on their existing proportion of the total coins (like interest from tx fees that don't get refunded--I might now consider actually destroying unrefunded tx fees for more balance).

Pros:
Protection from weakened cryptography. If someone was able to pre-image SHA2 to make currency for much cheaper, they would only be able to abuse this ability to a very small degree.
Left over transaction fees could again be destroyed to help account for an economy that has contracted without effectively destroying work.

Cons:
Those with wealth in ENC would gain more wealth for doing nothing productive. An issue with inflationary and deflationary currencies that I am trying to hotly avoid.

Now... One way or another, those with wealth in ENC are going to gain in times of high demand. Nothing can be done to counteract this anyway. And nothing should be done to counteract this. However, by exchanging their wealth for fiat, they are again taking on the risks of fiat currency. In the far future, fiat risk may be even higher if ENC were becoming the replacement currency. So if they only benefited by a one-time sell off in exchanging to fiat, they lose by no longer having a stable store of wealth in ENC.

Therefore I believe this scenario is truly a win-win.

Some things I'd like to discuss:

1) Should there be an amount of coins produced before this takes effect, or should the figure be higher earlier on and gradually lower (I worry it would cause too much hoarding early on if at 4%)? Is 4% a good number?
2) Should the coins be given to all holders of ENC, or only economic producers such as merchants that secure the TradeNet? Would this be seen as unfair?
3) Should transaction fees be destroyed, or is this really just the same effect as giving unrefunded tx fees to all holders of ENC (perhaps by destroying them the psychological effect of inflation will be reduced and the currency will appear more stable)?
4) Should it always simply be based on daily creation, or should yearly factors be taken into account? (i.e. if 10 days went by with no creation then on the 11th day 120 coins were created, should we give out free money?)

I have also significantly updated the section on Economy in the wiki. Not related to this discussion topic.
hero member
Activity: 798
Merit: 1000
I thought there was no block chain? I'm still confused about how wallets and transactions are secured. Could you dumb it down into a YouTube video?

I was actually considering doing a power point presentation or two. There isn't a block chain like bitcoin, but there is still a chain that keeps an ordered version of events and allows newer transaction blocks to verify older transaction blocks.

It might help to imagine the first transaction block and go from there. The first consensus block will be a file written by hand.

Transaction Block 1:
{
consensus block 1 hash,

}

One peer is selected to put TB 1 together and then pass this data around to the rest of the network. Each TradeNet group will then have a peer collect and aggregate digital signatures together so that 1 signature can verify that the whole tradenet group signed it (or most of it). This data is then sent around as a signature block.

Transaction Block 2:
{
transaction block 1 hash,


}

After enough transaction blocks have passed that it is time for a new consensus block, the peer in charge of creating the next transaction block will include a hash of the new consensus block based on adding all of the data up since the last consensus block

Transaction Block 8,730:
{
consensus block 2 hash
transaction block 8,729 hash


}

The consensus block 2 hash contains all the data changed in the last 8,730 transaction blocks. Once it is approved in the next TB:

Transaction block 8,731:
{
transaction block 8,730 hash (including CB 2)


}

Assuming the signature block data equals more than 50% of the MCR, a new peer joining the network can get the CB 2 data plus the signature blocks in TB 8,731 to prove that more than 50% of the reputation agreed that CB 2 is correct. Even if 100,000 tradenet peers signed the CB, the total data is 4 bytes per peer (to identify the signing peers based on their wallet number) + 40 bytes per tradenet group (# of TNGs is currently the cube root of peers) for the aggregate signature, plus the CB data which is mostly just hashes of other data that is available on request.

At 100k peers there will be 46 tradenet groups, so 400,000 bytes + 1,840 bytes + CB (probably a couple kb) + 46 signature verifications = absolutely reliable consensus block data. And this is all that ever needs to be sent to a new peer (well they would also need the wallet number block and reputation block if they don't already have it). Anyone can request specific data as necessary from tradenet peers or cloudnet peers (which are just regular peers that are keeping up with all the blocks too).

Since 400kbytes is a lot to send around to every peer every 10 seconds, I might have it so that tradenet groups only sign every 10th or 100th or whatever tx block. Anyone in the tradenet or cloudnet can still verify valid transactions within about 10 seconds, but they won't be "rock solid" until the signatures come in. But also, for regular tx blocks, less than 50% of the total sigs will ever be required because the peer collecting the signatures only needs to get about half of the reputation (and since some peers have higher reputation they have higher weight, less sigs would be required unless those are offline) so even with 100k tradenet peers we're still looking at around a measly 150kb or so every 10 seconds or 15kb/s. 4,000 simple transactions per second (70 bytes) is about 275kb/s so 290kb/s times roughly 50% of connected nodes which would probably be around 100, or times 50 for half. So (call it 300 for additional data) 300x50 is 15MB/s or a 120Mbit connection required, which is currently within the realm of available consumer bandwidth. CURRENTLY. And there is no requirement to store all that data, just the last few days or months worth, so storage implications are moot.
hero member
Activity: 950
Merit: 1001
I thought there was no block chain? I'm still confused about how wallets and transactions are secured. Could you dumb it down into a YouTube video?
hero member
Activity: 798
Merit: 1000
I read the proposal wiki and skimmed this thread with interest.  I wish you well with this project.

I have many questions about your proposal, but the part I'm currently vaguest on is how the reputation management system works.  Is there a centralized reputation server?  If it is decentralized, how are reputation values tracked and validated?

The "transaction block" stores every kind of transaction there is in a chain. The next transaction block will include a hash of the previous transaction block, as well as the signature blocks of all the reputed TradeNet peers that signed it as being valid. When enough transaction blocks have passed that it is time to settle up accounts (the consensus block), all members of the TradeNet can follow the chain backwards to find all the data necessary to change reputation values (as well as account balances and every other piece of data that needs to be updated). Since only transaction blocks that have been signed by >50% of the reputation are included in the consensus block, everyone settling up these accounts will know what the majority of the TradeNet agreed upon. While there are a lot of rules governing this process, they are all based on simple math. "Peer X created 2 mint blocks, add 0.25 reputation points" etc. After that point, only peers that agree on the same consensus block hash will communicate with each other, so any disagreements based on missing information will be settled then. Since what was signed can always be proven, any peer refusing to accept this data must be malicious.

The system will be designed to keep the IP addresses of trusted peers relatively anonymous to non-trusted peers, and even most trusted peers. Any given peer will only be able to associate an IP address with a peer that they are supposed to be communicating with based on the random functions that assign a peer to the TradeNet. This insanely reduces the chances of some l33t h4x0r group from being able to DDoS the network. Even if they are successful in getting 50% of the reputation offline, transactions simply won't be Level 2 confirmed until enough of them come back. Once they're back, all they need to do is follow the chain back to see what they've missed, ensure it is valid, then sign the most recent block and every previous block is now signed as well.

It might be a bit more of a juggling act than the bitcoin block chain, but I think it is a lot more elegant too, assuming it eventually works. Tongue It will use more bandwidth initially, but at transaction volumes similar to visa, EnCoin should be able to use a hell of a lot less data than bitcoin, allowing more people to partake fully in the network instead of relying on someone else. But also because of the nature of simple transactions, a "dumb" credit card-like thing can be used that only need a private key and no additional data. No need to rely in fee-charging intermediaries to reduce transaction times or give easy access to your money. A debit card would be a direct link to your account, no cell phone necessary.
sr. member
Activity: 462
Merit: 250
I read the proposal wiki and skimmed this thread with interest.  I wish you well with this project.

I have many questions about your proposal, but the part I'm currently vaguest on is how the reputation management system works.  Is there a centralized reputation server?  If it is decentralized, how are reputation values tracked and validated?
hero member
Activity: 798
Merit: 1000
Well I'm thinking of a market panic - it might be for any reason. People sell because they expect the value to decline in a self-re-inforcing cycle.

Now I understand how Bitcoin arrests this cycle - through scarcity. Eventually everyone who is going to sell has sold and the bottom of the market is found. Anyone who calls the bottom correctly and buys can profit. Boom follows Bust as it ever was.

I don't understand how ENC addresses this. The bottom is never found because people can continue printing and selling into the falling market. There is no reward for holding in the falling market, because when the market recovers, holders are competing with printers on the same footing.

The point is that printing is very difficult. Although I don't like saying "it's backed by electricity and processing cycles" it essentially is. The difficulty cannot decrease, only increase, and it increases to account for two separate phenomena:

Moore's Law and Koomey's Law.

Accounting for moore's law attempts to keep the time for 1 computer to create 1 coin stable. Accounting for koomey's law attempts to keep the electrical cost to create 1 coin stable. The moore's law section needs to be tweaked though to reduce the vulnerability of hash weakening or something like what happened with cpu to gpu mining in bitcoin. I have an idea, I just haven't updated it yet.

Quote
This sounds like an interest rate. You'd need a very high interest rate to compensate for potential capital loss.

It is actually supposed to encourage merchants to be apart of the TradeNet which is what secures the network in lieu of hashing power. The actual interest payments are meant to help smooth out any losses that might be incurred due to future technology jumps or reductions in the price of electricity or whatever that lowers the long-term value of ENC slightly. In addition, if the economy contracts slightly, existing holders can "ride out the storm" on the transaction fee interest of those who do not hold ENC but are now buying in and do not feel the effects of price inflation.
legendary
Activity: 1470
Merit: 1030
Since ENC is actually intended to be a currency, everyone selling would be no more likely (barring unusual circumstances such as the cryptography being weakened/broken) than a regular currency.

Well I'm thinking of a market panic - it might be for any reason. People sell because they expect the value to decline in a self-re-inforcing cycle.

Now I understand how Bitcoin arrests this cycle - through scarcity. Eventually everyone who is going to sell has sold and the bottom of the market is found. Anyone who calls the bottom correctly and buys can profit. Boom follows Bust as it ever was.

I don't understand how ENC addresses this. The bottom is never found because people can continue printing and selling into the falling market. There is no reward for holding in the falling market, because when the market recovers, holders are competing with printers on the same footing.

[/quote]


Other properties create demand such as requiring merchants to keep a certain balance of ENC to attain higher levels of transaction fee refunds.

This sounds like an interest rate. You'd need a very high interest rate to compensate for potential capital loss.

hero member
Activity: 798
Merit: 1000
Since ENC is actually intended to be a currency, everyone selling would be no more likely (barring unusual circumstances such as the cryptography being weakened/broken) than a regular currency.

There is no "maximum price" if you mean in terms of fiat. As fiat is inflated by the will of the banks and the governments, more fiat will exist to buy (relatively limited) ENC thus increasing demand on a fiat->ENC basis. If electricity price remains the same in the face of fiat inflation (due to government regulation, for example), competition will increase to see who can make coins faster to make the interim profit on the market. This causes the difficulty to rise accordingly. If electricity price increases along with inflation (which it eventually will), then the fiat value to create ENC remains the same.

The goal is to provide a more stable purchasing power than fiat. It won't be perfect, but it will definitely be better, and inflation is controlled by the people, not the central bank. No government agency can bail out those who choose banks with a 10% reserve. And that inflation goes TO the people, not the banks.

And the whole "1 enc costs about 1 enc to produce" is ambiguous on purpose. No one person can determine what an average ENC cost to produce, they can only see what it would cost them to produce and figure out whether or not it is profitable. If cheap electric economies cannot keep up with demand, more expensive electric economies have an opportunity to step in.

Other properties create demand such as requiring merchants to keep a certain balance of ENC to attain higher levels of transaction fee refunds. Any tx fees not refunded are split up as interest among all holders of ENC proportionally. Plus the fact that creating coins will always be computationally and electrically difficult. No one can hoard cheap coins from the start, or even if that were possible, coins can be created to fill the void in the supply and those hoarding would lose value by not selling.
legendary
Activity: 1470
Merit: 1030
I haven't read all the details, so I'm open to correction but my understanding is that ENC would effectively have a maximum price.

Now if I owned ENC and it was currently trading at its maximum price, I would sell them. So would everyone else. This kind of thinking would be re-inforcing, driving the price down either to nothing and collapse.  Holding ENC would seem to have downside, with no upside.

What am I missing?
hero member
Activity: 798
Merit: 1000
I have some difference from Etlase2 on how cutthroat the competition should be. I think the most efficient should win. He likes to spread the wealth around a little more. He can explain why.

I want to address this specifically because I have been thinking about it and have come to the conclusion that your system for GEM is really no different from mine, if it works by simply basing the award amount on hash power (divided by koomey's law and such).

All the payout structure and managed pools do are normalize distribution and prevent or heavily limit the ability of server farms to make a profit. But really, server farms were never going to profit on either of these systems because they are not taking anything away from others as in a bitcoin-like system. However, the EnCoin system does make it much more difficult for a botnet to attempt to profit off of it. And I do think that is a worthy goal. Pools need to be implemented in one way or another and I prefer the slightly more bandwidth-heavy option of having the network regulate it and using it as a basis for a minimum entry requirement to the reputable tradenet.

4x GPU rigs will still be able to make more profit by using multiple nodes (after they pay off the totally useless 3 extra GPUs that is), but because the profit per coin will always be rather low, there is no reason to encourage it. Since difficulty in EnCoin is based on a per-mint block basis, 4x GPU rigs would insensibly increase the difficulty. It would eventually hurt all 4x GPU rigs because if they are the only ones profiting, the difficulty is going to increase so that a 4x GPU rig is required just to mint coins. With the way I now have the system described, if a 4x GPU finds a winning hash before 20 other members have found a minimum hash, it is just going to idle anyway so there really is no unwarranted distribution.

So rather than "spreading the wealth" it is really just "keeping difficulty sane." More efficient machines will still win.



ALSO: minor update to the wiki--reputation is awarded based on the previous consensus block transactions and fees, this way it is impossible for someone to game the reputation by only sending txs around after they get a transaction block. also, came up with an idea to reduce supplynet join spam (possible attack) by requiring using a recent transaction block hash and finding a 1/20th difficulty (or some significant amount) solution before it will be transferred to the tradenet.

edit: I just came up with a crazy idea that would help distribute more coins for less electricity. I'm still kinda working on it, but if a new supplynet group is formed and makes a minimum number of new mint blocks (at least 4 or so) within 1 or 2 days, all mint blocks from existing SNGs made during that 1 to 2 day period could get a 1 coin bonus. I'd have to make sure it couldn't be gamed, but I think that's possible.

I still haven't worked out exactly what data mint blocks will use as seed data, so this could affect things.
hero member
Activity: 798
Merit: 1000
Sounds good. Please let me know when it launches so I can get in early and pump and dump. Thank you !

My point : how will you prevent pump and dump and early adopters getting loaded ?

By not subscribing to the bitcoin formula of coin distribution.


Thanks to SgtSpike of www.bitcoinforums.net, there is now an EnCoin Wiki here: http://encoin.bitcoinforums.net/doku.php?id=start
Hopefully this will make the proposal easier to digest. Please let me know where improvements can be made or if there are any broken links.
hero member
Activity: 518
Merit: 500
Sounds good. Please let me know when it launches so I can get in early and pump and dump. Thank you !

My point : how will you prevent pump and dump and early adopters getting loaded ?
Pages:
Jump to: