EMVPARTY discussion: Gas cost for contract execution

I don’t see any technical reason why BTC burning couldn’t be done in place of XCP burning.

Every XCP spend requires BTC anyway to pay mining fees, so you’re always in need of BTC to execute smart contracts on Counterparty. You might as well go the whole 9 yards and pay for smart contract execution outright in BTC.

Imagine the marketing value of this:

“With Counterparty, you can execute Ethereum smart contracts directly on the Bitcoin mainchain using BTC only, without ever owning an altcoin”

This would be absolutely phenomenal for Counterparty.

1 Like

I think you might be on to something. However, you must consider the incentives of the Counterparty Node operators. By burning XCP they would be aware of an immediate economic incentive to hold XCP. You can argue that the same is the case with BTC, but BTC is not and will not be in a deflationary situation for a long time (decades).

An interesting compromise would be that it costs XCP to establish a smart contract and that it costs BTC to execute it. This goes some of the way to encouraging Counterparty Node deployment and reducing the barrier to entry for end-users. You still have appropriate spam prevention on computing operations.

I’ll have to think more about this.

EDIT: Also, it is actually quite elegant to have the Counterparty Protocol decoupled from the underlying blockchain (in this case the Bitcoin |Blockchain). By using XCP in place of BTC for different functions it can keep the Counterparty Protocol shielded from issues within the Bitcoin Blockchain. E.g. We don’t want an issue with Bitcoin that enables someone to execute near infinite smart contracts for near zero cost, crippling the Counterparty Network. A seamless liquid exchange mechanism between XCP and BTC is my preferred solution and it could be quite frictionless to the end-user.

Yes, I imagine publishing smart contract code to the Counterparty ledger might need to cost XCP, but if it’s technically feasible to do in BTC, then it too should be payable in BTC. Of course, these things should also be payable in XCP at the same time.

The EVM should be based on XCP and then capable of not being dependant on Bitcoin. BTC is becoming too political and rather at odds with its creators intent. If BTC goes too far in the wrong direction, having capability to move XCP to whatever is the better major chain, would be a real strength. Going further then, you could consider that a user’s choice of coin should be irrelevant but I prefer the other perspective, that CounterParty could become active on multiple chains… Litecoin CounterParty could be linked into the BTC CounterParty… etc, it just needs that extra step of flexibility that might be possible. I see no good reason to not use XCP and prefer BTC and limit the options, that just locks CounterParty to BTC even more.

JPJA’s suggestion looks good to me. The limit on step up and step down in price is not too fast and not too clever than it can be manipulated. It’s simple and clear and by rights should just work well. In the case that there is a clear issue that arising for XCP - where demand outstrips XCP because a price differential, then that can be considered but surely the price of XCP will fairly match the use of EVM and other CounterParty capability.

We see now then why above some calls for use of BTC… because BTC is not reflecting the demand on the EVM… and would perhaps then be then a lever to manipulate the EVM because the gas price wouldn’t respond. At least that’s my interpretation, following from suggestion of locking in the price but perhaps there’s more flexibility than I’m understanding. Still I can’t see why CounterParty devs and community would not want to see XCP acknowledged and prefer BTC in a way that limits us in the future.

It seems that suggestion to use BTC is as wild as the opposite - creating a new gas coin… but why, just stick with the established XCP and run with it… experiment and adapt. CounterParty isn’t just a BTC add-on, it should be more ambitious than that.

The EVM should be based on XCP and then capable of not being dependant on Bitcoin.

It wouldn’t be. You’d still be able to pay with XCP. This would adapt to any host coin, and works in Counterparty’s favor on every host coin for that matter, as the host coin sees a mutual benefit.

BTC is becoming too political and rather at odds with its creators intent. If BTC goes too far in the wrong direction, having capability to move XCP to whatever is the better major chain, would be a real strength.

Agreed.

Going further then, you could consider that a user’s choice of coin should be irrelevant but I prefer the other perspective, that CounterParty could become active on multiple chains… Litecoin CounterParty could be linked into the BTC CounterParty… etc

We had Dogeparty and it wasn’t worth the effort. Also this seems kind of irrelevant to the point.

it just needs that extra step of flexibility that might be possible. I see no good reason to not use XCP and prefer BTC and limit the options, that just locks CounterParty to BTC even more.

I don’t “prefer” BTC, but I do claim this would generate rather gripping headlines for days on end. It could deal a crushing blow to Ethereum’s momentum at a very opportune time.

Come on: “Execute Ethereum contracts on Bitcoin mainchain with BTC only”? Talk about an explosion in demand for Counterparty.

That’s just unnecessarily limiting. If there a fluid capability to shift any coin to become XCP = EVM-gas, then BTC becomes just another altcoin that CounterParty can acknowledge. XCP is CounterParty’s principal currency and there’s reason that should exist. Calling for CounterParty to be just a nodule on BTC serves BTC’s interests and those with alt-agenda, not CounterParty’s interest.

A headline that is not caught up and confused with any BTC politics will be best.

“Execute Ethereum contracts on the Bitcoin blockchain”, is a better and simpler statement.

Perhaps then your intent is to draw CounterParty into the Bitcoin politics… committing to a flavour of BTC core or not-core… where that is not necessary.

It’s wiser just to keep it simple, and let everyone see CounterParty’s capabilities are agnostic… even to BTC.

How is giving people the option of paying in BTC in addition to XCP more limiting than only giving them the option of paying in XCP? What I’ve proposed is a free market outcome.

Let me say this: if burning BTC to exec Ethereum contracts on Bitcoin’s mainchain is technically feasible to do, and despite this you don’t implement it for whatever reason, someone else can implement this feature and steal all the thunder. I’d just hope it would be Counterparty to do it first, because doing so would turn our current anemic developer interest situation completely around and catapult Counterparty to top of mind industry-wide. That is worth at least as much as guaranteeing only the current holders of XCP that everyone will be forced to acquire XCP to exec contracts (even though that’s not technically necessary and a clone of Counterparty could provide a BTC burning service).

Having that option is exactly what I am suggesting. XCP is the principal and then BTC or any other coin can be used by shapeshift or another route to be the XCP required.

Admittedly I read your posts while tired but still, this below from your first posts looks at odds with that flexibility just suggested. “In place of” is not the same as using XCP as the principal and shifting other coins into XCP - and then into CounterParty space.

Keep it simple and have CounterParty’s EVM in CounterParty space - ie use XCP, avoiding liability of other any other chain’s politics and nonsense. Then, if there’s a transparent route to enable other coins, then yes of course enable that - even to the point that the end user is oblivious and thinks they are using BTC or DOGE or whatever.

One step at a time … setup CounterParty as an attractor, capable of running EVM, and don’t create confusion that it’s BTC Bitcoin devs that have done that. Then allow not just XCP but a route to other coins being used via shapeshitt. Then the pricing is very apparent to anyone who looks closely. To start with a confusion of what currency is the core would undermine XCP’s potential beyond just EVM.

No, you’re suggesting we depend on Shapeshift, which is a centralized exchange. That’s not the same thing.

You’re creating a liability by not implementing BTC burning for smart contract execution. If it’s technically feasible, then Bitcoin holders would all want to see that feature. Since there are far more people who hold BTC than who hold XCP, this is a clear path to forking Counterparty and getting much higher adoption.

What Counterparty needs most right now is to establish itself in the developer community. So far it is failing massively on that front. Burning BTC to exec Ethereum contracts would cause an explosion in developer interest. There’s no other way to pay for Ethereum execution on Bitcoin with BTC than what I’ve proposed doing.

BTW, burning BTC is censorship resistant. OpenBazaar is doing it to establish vendor reputation.

Regardless of BTC burning, Counterparty can’t escrow BTC. It can still only escrow XCP and assets native to its own ledger. So I don’t think this is a very compelling argument either; XCP has to be the core currency of Counterparty, inherently so.

Misquoting people in what way just reenforces the perception that you have an agenda that is not CounterParty’s interest.

What I suggested was

There’s nothing special about BTC… except the liability, vested interests, and politics that surround it.

CounterParty should be agnostic about the users preferred coin… and it does that by using XCP.
Step 1 then is enable EVM as XCP, then in time introduce whatever routes that allow users to think in terms of their own preferred currency. Once the EVM is available you might expect others will create the tools for the profit they can find providing a useful service. Again, there is no advantage binding too closely to BTC. The endgame for all kinds of cryptocurrency services should be making the user’s choice of coin irrelevant. There is no reason that all users of EVM need BTC, there is reason that the EVM runs to XCP, as that allows it to be agnostic and not sign up to vested interests in whatever the flavour of the month is… at the moment it’s arguably BTC but next month, it could be LiteCoin or [insert your favourite meme here].

Growing developer interest in Counterparty through enabling contract execution via BTC burning and related positive network effects will more than make up for any would be upside of forcing everyone to buy XCP first.

Ethereum’s dev team is much larger and much better funded. The only way Counterparty can make up for that is by sheer volume of interest. You don’t maximize interest in Counterparty by limiting the market’s options for using the platform.

XCP is not limiting. There’s nothing wrong with buying XCP. Binding CounterParty to BTC for no good reason, is by definition limiting.

XCP is agnostic … committing to BTC raises more questions than it does advantages.

Why do you not like XCP?.. The future requires an agnostic approach to user’s interest in their favorite coin. That follows from using XCP, not prefering BTC. What you are proposing, appears simply an attempt to lock out altcoins from use of the EVM. You’re not making obvious the benefit of prefering BTC to any other like LTC or DOGE or random other; so, by default you do appear to have some agenda at odds with the interests of CounterParty. Perhaps you are Ethereum interest and not CounterParty?

CounterParty will do best becoming a stronger brand and does that by enabling services in its own space - that is with XCP. That capability and others will make CounterParty stronger. Wimping out just because BTC appears strong today, is short sighted and liable to vested interests and politics. For maximum impact, CounterParty needs to look to the long term.

Consensus is more than just gifting yourself a username!.. CounterParty need to consider everyone’s interests not just the most vocal. The solution to that is to invest in CounterParty and not dilute its capability serving one service to BTC and another to XCP etc. Again, keeping it simple is better.

XCP rules ok. Anyone interested in the EVM can easily buy XCP … it’s not difficult.

Food for thought: imagine Ethereum’s btc-relay concept could work on Counterparty, too. Combined with BTC burn powered contract execution, you could run The DAO on 100% BTC. DavidPBrown, if you would please explain how this isn’t in the best interests of Counterparty, that’d be great.

You keep saying this, but it’s not true. It doesn’t bind Counterparty to BTC at all. It just opens up a new payment mechanism. You can still pay in XCP or move Counterparty to another ledger if that’s what you have in mind.

It’s not for me to explain your idea!! You need to explain how it is in the best interests of CounterParty.

You appear to propose two capabilities, as if you’re trying to leverage one in an effort to persuade on the other.

The first is a no brainer. Yes, obviously, a payment mechanism that allows people to choose to use BTC to fund their use of EVM, is a good idea. I’ve suggested CounterParty should be agnostic and go beyond what you suggest there allowing use of any currency.

The second is odd. You are suggesting:

and then assuming that it necessarily should be BTC, where that is a leap for what reason is unclear.

I keep repeating it because you seem to be getting confused between the two points you’re making.

Yes, having a payment mechanism for BTC to use EVM is a good idea… obviously.

No, BTC burning in place of XCP burning, is not a good idea… and frankly I wonder only someone at odds with the interests of CounterParty would suggest that. Again, are you Ethereum interest rather than CounterParty?

I’m done repeating the point. Scroll and read again will be same effect as repeats.

I never suggested contract execution should be paid in BTC to the exclusion of XCP:

Is it realistic to assume a scenario where XCP is thriving on the Bitcoin blockchain yet BTC is dying? I don’t think so.

Both XCP and BTC are anchored to the same blockchain and same miners, so without a strong BTC you can’t have a strong XCP. Without a healthy Bitcoin, Counterparty is either dead or has to move to a different blockchain.

I find it hard to believe Bitcoin holders could DoS Counterparty at zero cost, except in a scenario where both projects are dead.

There may be a risk that very wealthy BTC holders could DoS Counterparty nodes for the fun of it, but that would cost them lots of money, and if they have that much money to burn they could buy up XCP and attack that way.

The main problem for me with burning BTC is that it burns BTC ,… something we’ve tried to avoid as much as possible (apart from the initial BTC -> XCP burn).

It would also tie the price of XCP to BTC, or at least a ceiling, if the execution of a contract would cost 3 XCP or 0.0003 BTC then depending on the price of BTC and XCP people will choose the cheapest, I’m not very good at economics, but afaik that should more or less fix the XCP price to the BTC price.

Burning BTC to execute contracts instead of XCP sounds like a nice usability feature though, but I’d rather integrate 1 or centralized services (such as ShapeShift) into counterwallet.io to make that easier.
Probably if we’d integrate one then others might even do a PR to be included too, so we don’t even have to spend time integrating more than one.

Personally I think the gas cost should be a formula of the total XCP supply, I just suck at math … so need some1 to come up with a formula.

A limit on the gas per block should only be a spam prevention, not something we want to hit other then when some1 wants to DoS.

1 Like

The value of an XCP is already a function of the total XCP supply. Fixing a formula to the total XCP supply, surely would be adding a step beyond simply acknowledging the market’s assessment of real XCP price, relative to the cost of running a contract.

Again, I know too little of how Ethereum is doing pricing to suggest how mapping to that, would help devs being familiar with the similar capability CounterParty can do, helping them resolve what advantages there are on CounterParty without being troubled by the price of gas.

As JPJA above, I expect there simply needs to be a clear menu to choose from and the price of each option needs to match the cost to run it.

I take that to suggest the formula needs to acknowledge the number of nodes and the amount of work. Demand and supply, then sets the price.

I don’t understand how all nodes will be capable of running all contracts but perhaps that’s then into EVM’s potential of indexing work that is off chain in some exotic way I can’t imagine.

Ethereum can easily provide identical functionality. It’s like using gift cards. If I have to buy a gift card first to “pay BTC at Starbucks”, I would never would say I’m using BTC at Starbucks. Just like I would never say I’m using BTC to exec contracts if I need to sell coins on Shapeshift first to do so.

Right now Counterparty isn’t seen as a Bitcoin smart contract platform despite Shapeshift already listing it, so I don’t think that changes things at all. The problem with Counterparty is you’re forced to buy an altcoin to use it. Change that and you change the game completely.

Seconded.

Keep in mind, burning BTC is the only way to do Ethereum contracts onchain with BTC. The Bitcoin developers must accept that it needs to be done this way, because it can’t be done any other way without sidechains et al.

Burnt contracts could be the difference between Counterparty becoming the defacto smart contract platform, or having the market mentally lump Counterparty in with Ethereum as a mere altcoin toy. I see a major difference in developer mindshare between those two outcomes.

It’s doubtful that the market will care about needing to check whether BTC or XCP is the cheaper way to pay for smart contract execution in the moment. They’ll just use one or the other.

Burnt BTC contracts is the best plan to rapidly grow developer interest in Counterparty. Out of this we gain a very strong dev team and more actively used platform, which would go a million miles beyond restricting contracts to XCP in helping the Counterparty platform grow in market value.