Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Monday April 29 2019, @11:57PM   Printer-friendly
from the chain-things-up dept.

Submitted via IRC for ErnestTBass

When railroad tracks were first laid across the western U.S., there were eight different gauges all competing to dominate the industry – making a nationwide, unified rail system impossible; it took an act of Congress in 1863 to force the adoption of an industry standard gauge of 4-ft., 8-1⁄2 inches.

FedEx CIO Rob Carter believes the same kind of thing needs to happen for blockchain to achieve widespread enterprise adoption.

While the promise of blockchain to create a more efficient, secure and open platform for ecommerce can be realized using a proprietary platform, it won't be a global solution for whole industries now hampered by a myriad of technical and regulatory hurdles. Instead, a platform based on open-source software and industry standards will be needed to ensure process transparency and no one entity profits from the technology over others.

"I think we're in the state where we're duking it out for the dominant design," Carter said during a CIO panel discussion at the Blockchain Global Revolution Conference here. "We're not an organization that pushes for more regulatory control, but there are times regulatory mandates and pushes can be incredibly helpful."

Source: https://www.computerworld.com/article/3391070/fedex-cio-its-time-to-mandate-blockchain-for-international-shipping.html


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by All Your Lawn Are Belong To Us on Tuesday April 30 2019, @02:25PM (3 children)

    by All Your Lawn Are Belong To Us (6553) on Tuesday April 30 2019, @02:25PM (#836691) Journal

    Does blockchain by its method of ensuring security inherently cause what is popularly perceived as ineffciency of energy as competing factions all use arrays of machines to do the proof of work to sign and authenticate? Or is this something that is strictly caused by the race to profit in cryptomining?

    Where I'm going at there is that, thanks to your explanation (in part), I can see where it would be useful for a bunch of parties who have no reason to trust one another (shipping companies) to create a veriably secure log for packages without trust to a central authority but at the cost of much seemingly wasted energy to deliver that proof. We have had international banking by data transmission for quite awhile now which didn't require blockchain, and why can't the shipping industry adopt such a measure... Let's say the U.N. develops (or endorses) a standard, or the more conventional route of ISO standards are employed and a central authority established that all parties must trust. Or let's say my idea is wrong here - are there no other alternatives?

    --
    This sig for rent.
    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 2, Interesting) by sshelton76 on Tuesday April 30 2019, @03:47PM (2 children)

    by sshelton76 (7978) on Tuesday April 30 2019, @03:47PM (#836726)

    This is an excellent question and goes to the heart of something we call "consensus".

    In a nutshell, consensus is the degree to which different parties agree or disagree about the current state of the chain.

    To answer the question in the simplest form, the answer is "no", you do not need "proof of work" at all for a blockchain to function.
    However the answer is a little more complicated so here goes...

    Whenever you select "proof of n", whether it is "proof of work" or "proof of stake" or any of the myriad "proof" mechanisms, what you are really doing is saying "how can I slow things down enough that umpteen million nodes can all come to consensus about some important part of the chain?".

    In the original blockchain implementation "Bitcoin", the idea was that bitcoins were the thing being tracked in the ledger, furthermore a fixed quantity of bitcoins (21 Million) would come into existence over a set period of time (roughly 150 years).

    To ensure ledger consistency and atomicity, it was decided that a block should take an average of 10 minutes to find and would be no larger than 1MB. This way every single node could stay in sync, even if they were on 56k dialup. In exchange for finding a block there would be a reward given and this reward would represent a subsidy to the node which created the block.

    So what is a block? It is a list of the transactions it contains or better put "witnessed". The block's identifier would be the SHA256 hash of all the transaction hashes, in order to ensure data integrity. This way it would be immediately obvious if someone was tampering with the data in flight.

    Now you have a problem... How do you ensure that no one is abusing the system by sending bogus transactions and filling the blockchain up with worthless blocks? This starts to delve into game theory. There is a financial incentive to pre-calculating a bunch of blocks and using them to take over the blockchain because the longest chain is always the winner. Furthermore, there is no requirement that any block actually contain any transactions in it at all. This was originally permitted because in the early days there might not be enough transactions in 10 minutes to fill up a block.

    So they introduced proof of work and "difficulty". With PoW, you need to take the most recent accepted block header, concatenate it to a list of transactions you are including in the block and then take the SHA256 hash. But you also need to include an integer n, such that SHA256(prevhash + SHA256(txhash[...]) + n) = 1/difficulty.

    This means it is always a race to find n since all the other things are relatively static. Difficulty is used to literally make it less likely that any given n will result in a blockhash below the given threshold. For bitcoin difficulty is adjusted every 2 weeks in an effort to try and keep the average block time to 10 minutes and this help to mitigate the effects of a huge amount of hashing power coming in and taking over the chain. The tradeoff here is that as more hashing power is brought to bear on the blockchain, the rate of new blocks found still stays roughly equal for the network, but smaller operators who cannot afford to keep upgrading their equipment are forced to drop out.

    This causes consolidation for so called miners and eventually you are left in a dangerous situation with only one or two players. Also the marginal cost of electricity and the equipment to mine quickly becomes the primary factor in determining the value of your coin. Furthermore, miners who drop out of one coin, can easily jump to another coin with a lower difficulty level. This is a feature if the miner is honest, but history has shown that miners will rent their rigs to the highest bidder and that bidder can and often does have nefarious intent. Thus proof of work systems are a very poor way to secure your blockchain.

    What we have here is a very complicated answer to what should be a simple question. "How do we all keep in sync?" and a far better answer is "Don't do it by subsidizing the finding of blocks, find another way".

    Once you get past that problem then you just have to figure out another way to limit spam from malicious actors. People will spam if they can, but if the cost to spam is prohibitive then there needs to be a business reason for it.

    Thus for blockchains which are intended to be used between parties who "know each other but do not necessarily trust each other" such as banks, the answer is to allow blocks to be found by only the participating entities and no anonymous third parties. Furthermore, just get rid of canonical blocks, i.e. blocks are identified by timestamp, not necessarily a sequence number. As long as two blocks do not contain conflicting transactions, such as Alice only had $50 but she managed to send $50 to Bob and $50 to Charlie, i.e. the double spending problem, then there is no reason the whole network needs to stay in complete consensus for every single block.

    But for situations where the parties neither know, nor trust eachother you are better off with "proof of stake" type of solution where each block finder must pledge an amount of money equal to or greater than the block they found. If it turns out later that there is something wrong with those blocks, then rest of the network takes the pledged stake. Otherwise the block finder receives their reward.

    In otherwords, the block reward is there to subsidize the people who are paying their own money in terms of electricity and compute cycles to find the blocks in the first place.

    These financial incentives only really apply when there is no other financial incentive for running the network and it's the primary problem with every crypto-currency out there. No miner wants to sell their coins for less than they cost to produce, but no one wants to buy the coins if they don't see a use either now or in the future. So you get these boom and bust cycles in the crypto-currency markets caused by people who fundamentally have no idea WTF they are buying. Money is only worth what you can buy with it. If your plan is to buy it now and sell it when the price rises, you aren't investing you're speculating and you're contributing to a hype bubble that people who are serious about the tech, neither want nor need.

    Thus the TLDR;

    Cryptocurrency is one application of Blockchain technology. Cryptocurrency adds a lot of complexity in order to address weaknesses from game theory.

    If you aren't doing crypto-currency, you don't really need proof of anything, it's easy enough to verify signatures on your own and the fact that the network accepted the previous blocks is enough security that you don't even need to go back and verify old blocks if you don't want to. It all depends on what you're trying to do.

    • (Score: 2) by All Your Lawn Are Belong To Us on Tuesday April 30 2019, @05:06PM (1 child)

      by All Your Lawn Are Belong To Us (6553) on Tuesday April 30 2019, @05:06PM (#836773) Journal

      Thanks so much for both the in depth and TLDR explanations. And responding to your below, an explanatory website would indeed be of interest although I'd assume would take a huge chunk of skull sweat from you. (Especially if it carried both TLDR and detail explanations as nice as your above post). Thanks for sharing your knowledge!

      --
      This sig for rent.
      • (Score: 1) by sshelton76 on Tuesday April 30 2019, @07:12PM

        by sshelton76 (7978) on Tuesday April 30 2019, @07:12PM (#836829)

        Thanks and yeah it will take some brain power. I don't have a lot of freetime, but I can probably do a chapter a week and post some links in my journal here.
        Most likely it won't be its own site, but a github pages site. I just don't have time to admin yet another server, especially one for explaining to people how to build a blockchain in a serverless fashion.