Questions about DHT, cryptography, and security

@artbrock would you be able to advice? Still waiting…

@artbrock Do advice on this. Look forward… hope i dont need to wait too long. Thanks!

@pauldaoust could you advice on my questions above. Or could you get @artbrock to reply me?

There’s a handful of things here to address:

Transactions in ETH or BTC take the same amount of computing power no matter their size. This actually means every transaction uses A LOT of power – approximately 681.59 kWh which is over 23 days of electricity for an average American household to do a single BTC transaction. (See link for current data on BTC / ETH energy usage data.)

I’m targeting to be well under 0.1 KWh per HoloFuel transaction and having it be complete in more like 10 seconds rather than 10 minutes. However, this reduced validation workload increases means that a temporarily effective attack on a single HoloFuel transaction is much cheaper to attempt (even if you’ll eventually get caught). So we need to make sure the cost of attacking the network (producing node addresses near a pre-imaged hash, KYCing those accounts, and providing the compute power) always costs significantly more than you can earn from performing the attack.

This is the main reason to have a Tx size limit on HoloFuel.

So if you want HoloFuel to make a million dollar transaction secure, you’re gonna have to break it into a lot of transactions closer to $100 to ensure that the cost of an attack on a transaction is higher than the transaction value. Doing this many transactions actually costs the network more computing power than a single small transaction costs, and therefore it should cost more than a single small transaction costs… which is why a flat 1% still makes sense.

That being said, we will probably provide a UI for larger transactions which automatically breaks them down into the smaller ones. But even that may have a size limit (maybe closer to $10,000 ?) so that it doesn’t lock both party’s chains for too long.

Put simply, HoloFuel is not optimized for being a speculation tool for multi-million dollar transactions. It is optimized for high volumes of small transactions. We’ll probably have many other currencies to fill different needs in the Holochain ecosystem, and ways to move between them, so if there’s a need for this kind of currency, someone (maybe not us) will make it.

1 Like

@art Hmmm… the top 50 holo accounts have hot value of at least 300k usd. If holo fuel is going to be listed on an exchange for trading, surely you have to expect transfer to/fro of 5/6 figures or even more.

Then how do u handle larger holo fuel txs transfer to/withdrawal from exchange? Your answer make me feel you didn’t think enough of this problem.

Let’s say there is a transfer of holo fuel to/out of exchange of 100k usd (this is really not a big sum at all in current market conditions), how many sub-transactions is needed to make up a 100k tx?

10 sub-tx of 10k usd to make up 100k usd tx? How long will it take to “finalize” 10 holo fuel tx of 10k? Have you think through this? This is a real scenario you should expect if holo fuel is to list on any exchange.

If there is a 300k usd tx, there will be 30 sub-txs of 10k?
I feel you have to think of a way to handle larger txs without compromising security and UX. I feel it is a glaring hole on the way holo fuel works.

1% on 300k is the same as 1% on 300 tx’s of 1k

just it depends on the settings, eventually most everything will be customizable

this would depend on a variety of factors… DHT redundancy, node liveness, propagation methods, etc

all of your concerns can easily be addressed by designing your own current-see and writing the DNA for associated Happ. remember that Holofuel is only one of many to be implemented

@Sol said: the top 50 holo accounts have hot value of at least 300k usd.

You are referring to the top 50 HOT accounts… not HoloFuel accounts. And they can transact at whatever the gas costs of ERC20 transactions are (currently pretty high). And most of those are exchanges who will probably not be swapping into HoloFuel themselves, but continuing to operate HOT exchanges for a long time to come.

You do not need to immediately swap into HoloFuel when we launch. In fact, I expect we will keep HOT running as a main interface with crypto markets for quite a while. [Although, we’ll certainly want to close it down before we’ve completely replaced Ethereum and all the rest of inefficient blockchain tech with more efficient Holochain counterparts. :slight_smile: But that might take a few years.]

If holo fuel is going to be listed on an exchange for trading,

Personally, I’m in no rush to get HoloFuel on an exchange and don’t want to allow that during our 1:1 swap pricing window anyway because it would create confusing dual pricing between HOT and HoloFuel.

… but more about exchanges in the next one …

how do u handle larger holo fuel txs transfer to/withdrawal from exchange?

Exchanges are going to need to some special work to operate HoloFuel in their existing business models. What I mean by this, is that exchanges rely on controlling the keys to your crypto wallet to ensure the ability to complete both sides of a trade in different currencies. They can’t do that with a proper HoloFuel account.

Part of our Cryptographic Autonomy License (CAL) specifies that end-users must control their own cryptographic keys. So if you transfer HoloFuel into your account on an exchange, you’re really going to need be transferring to the exchange’s HoloFuel account, with an earmark identifying it as belonging to you in a sub-section of their account. Therefore movements between those sub-accounts are not actually HoloFuel transfers at all and can be managed by whatever means the exchange uses for tracking their internal sub-accounts (even centralized ones are possible).

This isn’t really all that different than things currently work which is why, for example, Binance, Paribu, HotBit, and IDEX are some of the largest HOT holders – because of people’s balances in exchanges.

Your answer make me feel you didn’t think enough of this problem.

Because you don’t like my answer doesn’t mean I haven’t thought it through. More importantly, it isn’t really something that is optional any more than physics is optional. You sound like I’m trying to inconvenience speculators out of some personal dislike of them. That is not why HoloFuel works this way.

We can’t compromise HoloFuel’s security model without compromising its security. So as someone who expects to be holding a bunch of HoloFuel, you should appreciate that I’m unwilling to sacrifice its security to please a sub-group of users.

If there is a 300k usd tx, there will be 30 sub-txs of 10k?
I feel you have to think of a way to handle larger txs without compromising security and UX.

There is a way to enable a large transaction, but there’s other groups who will hate this answer as much as you might like it. Replace automated validation with human review.

We could remove the Tx size limits for any tranasactions with the Holo Org account (coming or going). It’s literally Holo’s BUSINESS to enforce the security of HoloFuel (if we’re crooked, y’all are already screwed) so we could have a human approve the transaction (and potentially require some kind of multi-sig for large transactions so that a single key being compromised doesn’t enable large transactions).

Also, if sending from the Holo Org account doesn’t have to pay tx fees (which would be kinda dumb because we’re just paying ourselves) then it doesn’t introduce any additional cost to relay through this account.

The anarcho-libertarians who think everything crypto should absolutely not rely on any human intervention will hate this. But it’s a way to keep automated validation secure, by requiring human validation for large transfers.

4 Likes

Thanks arthur @artbrock your replies above. I appreciate further details you wrote.

Can you also advice on my question on the above quote?