Merkle Tree - Eine Basis der Blockchain Blockchainwelt

04-04 01:33 - 'This probably explains M[AST simplest]. / M = Merkle. AST = abstract syntax trees / AST is another way of saying "Mad Libs" if you were familiar with those as a kid. / But where as Contracts on Ethereum each require their own...' by /u/kybarnet removed from /r/Bitcoin within 80-90min

'''
This probably explains M[AST simplest]1 .
M = Merkle. AST = abstract syntax trees
AST is another way of saying "Mad Libs" if you were familiar with those as a kid.
But where as Contracts on Ethereum each require their own set of codes, processing, and storing - A MAST Contract would read such as:
Input A -> Perform Action 235 (look up 235, output multi-sig) -> Request Inputs B -> Validate Action 124 (look up 124, use HASH 256...) so on...
In other words smart contracts would be written in parts, referencing parts of previously submitted smart contracts. This would reduce a contract size from say 2,500 Bytes to say 700 Bytes.
What is likely more important however, as it couples with 'sharding' type of technology, then the contracts could get pruned down. Ethereum is a son of a bitch to host a full node upon. It's near impossible, kills SSDs in months. Some contract read / write, a lot. Unlike BTC, where each transaction is coin movement, an ETH transaction can be a web browser updating - This is all great when transactions are a penny, but paying more than a penny for web browsing is sort of crazy. Also, someone might 'inadvertently' spam 'refresh page', multiple this by 1,000 Users acting in unison, and you end up with ass tons of reading and rewriting on the SSDs, happening all the fucking time.
Smart Contracts just don't work in the current form, unless you do like what NEO did, which is charge people $2,500 per smart contract (or some such) where as they are (virtually) free on ETH.
To get smart contracts to work, in the way people expect them to, and to keep node hosting 'decentralized' - most smart contract functionality will need to be pruned from the main block chain, and kept within a silo, side chain, or shard.
This is a concept we've been working on with [Alvalor]2 . Which is something of a sandbox project, with focus on Stack development, but also about pushing boundaries. Max Walter is the lead dev, I help generate ideas here and there, but it's real small and casually run. If anyone is interested, feel free to join up. We might have our own blockchain one day, who knows.
'''
Context Link
Go1dfish undelete link
unreddit undelete link
Author: kybarnet
1: https://en.wikipedia.org/wiki/Abstract_syntax_tree 2: /Alvalor
submitted by removalbot to removalbot [link] [comments]

A breakdown of the aelf blockchain whitepaper — Part 2

A breakdown of the aelf blockchain whitepaper — Part 2

https://preview.redd.it/p9cf7c4cpri51.png?width=512&format=png&auto=webp&s=006d466a2d0ad4d4afbbffe340eb2ad44631ad27

Breaking down the aelf side-chain

Cloud computing, parallel processing, and AEDPoS have greatly improved the execution performance of any kind of smart contract, but when they are applied to enterprise-level scenarios, new problems crop up. To begin with, in software design, it is a rather bad idea to program all the methods in the same class. We always write a series of classes to inherit a base class, in order to decouple the functionalities and make the class extensible whenever needed. The same also applies to blockchain design. Second, since all the data and transactions are accessible to anyone through a blockchain explorer, if we put the smart contract and data of different enterprises or government sectors on a single blockchain, then everyone can see them, which means there will be no data privacy. Although there are encryption techniques which can mask data, such as zero knowledge proof, it is always better to put the data of different enterprises on different blockchains.
Based on these considerations, long before other projects even realized it, aelf proposed that side-chain technology should be applied to this scenario. Unfortunately, for someone who is new to blockchain, it is almost impossible to understand how side-chain works. Side-chain is not what it literally means, it is not subordinate to the main chain. On the contrary, a side chain is a blockchain distributed system with the same functions and nodes as a main chain (say, the aelf blockchain). As mentioned above, we can put the data of different enterprises on different blockchains. This means we can build many blockchains, and work magic (of course not magic in its literal sense) to make these chains connect to the aelf main chain (in fact, we can call any of these blockchains a main chain and the rest side chains). Currently, the most popular method of connecting any two blockchains, which we also call cross-chain, is using a middle-man. When we want to use bitcoin to play a decentralized game on Ethereum, we need to send a transaction with some amount of bitcoin to a locking bitcoin address, then the middle-man will exchange the locked BTC for ETH at a certain exchange rate and allocate to you the equivalent amount of ETH on Ethereum, which you can use for playing games.
But in aelf, we use a metadata indexing method, which is more straightforward. Unlike other projects who built on the blockchains of those already successful projects (such as Ethereum or the HyperLedger fabric framework for consortium blockchains), the aelf team has writen all the code and build the infrastructure from scratch. From the beginning, the aelf team has defined how the data structure of a blockchain, a block, a transaction etc. should look like in C#. In an aelf blockchain data structure, there is an attribute called blockchain ID, which is a unique hash; and in block data structure, there are several attributes called blockchain ID , Merkle tree root and related side chain block list. There is also one more important thing: all of aelf’s data structures are serialized and stored in Redis (a popular key-value pair database system), so is the side chain information. As a result, as the aelf main chain is growing with block production by BPs, other side chains can send transactions to cross-chain contracts, which then execute the related code to connect to the main chain’s network port and request the main chain to index the side chain block and pay the indexing fee.
The core issue here is how to index a side chain: when a main chain (the block data structure on the main chain, or the data records with main chain ID in Redis), receives a request from a side chain, it adds the side chain’s block head data structure to the related side chain block list, which means theoretically we have indexed or related a side chain. We have mentioned that there is also a blockchain ID in each block, this attribute allows a main chain to index blocks from different side chains. When a user on a main chain wants to access data on a side chain or vise versa, they just need to find the target block on the main chain and its related side chain block list, and then find the target block on the side chain via key indexing.
As we will explain later, blockchains for different application scenarios generate blocks at different speeds. Under such circumstances, a chain with slower speed might index many blocks from a chain that produces blocks faster. This method can be applied to scenarios such as forking.
In practice, we can build any number of blockchains, and relate it via indexing to the aelf main chain, with a specific category of smart contracts running on each of them. For example, we can allow only banking-related smart contracts deployed on a specific blockchain, and e-commerce smart contracts on another. Our whitepaper summarizes it best:
One chain, one contract.
Moreover, the indexing method can make many blockchains into a hierarchical tree structure, the root being the so-called main chain. That’s because a related blockchain can then again index another blockchain as its side chain, and the process can keep going on. Logically, this is in perfect accordance with hierarchical taxonomy, for example, the financial sector has many subcategories, such as banking, lending, investment and insurance, and under investment banking, there are venture capital, investment bank etc… Each subcategory is supported by an indexed blockchain.
So how do these blockchains collaborate in a distributed system? First we need to be know that any node in a distributed system is just a software instance running on your computer, or a process. In TCP/IP, a node is allocated a port number, so we can run any number of this type of instances on a computer. However, each instance has its own port number: we can run several blockchain nodes, one IPFS node, one bit-torrent node and etc. simultaneously. In aelf, you should first start a main chain instance, and then you can build and run a side chain instance. Transactions broadcast on the side chain are collected by the BP nodes (block production nodes) on the main chain. When smart contracts deployed on the side chain is triggered, the BP and full nodes on the main chain will run them.

Aelf — a blockchain based operating system

To perfect the design of our software system, aelf made the system extensible, flexible and pluggable. Just as there are thousands of Linux OS with only one Linux kernel. As Ethereum Founder Vitalik Buterin has explained, Ethereum can be seen as a world computer because there are lots of smart contracts running on it, and the contract execution results are consistent in all the distributed systems around the world. This idea is also embedded in aelf’s system and we call it a “blockchain infrastructure operating system”, or a distributed operating system.
Just like any OS, aelf has a kernel and a shell. In fact, aelf’s kernel is not something like a Linux kernel, it is just an analogy. There is a special concept in aelf’s kernel called the minimum viable blockchain system, which defines the most fundamental aspect of a blockchain. If a developer wants to create a new blockchain system or a new blockchain project, he does’t have to start from scratch, instead, he can directly extend and customize using the aelf blockchain open-source code. The technologies described above are all included in the minimum viable blockchain system. With these, anyone can customize:
  • Block property: block data structure, block packaging speed, transaction data structure, etc.
  • Consensus type: AEDPoS is used by default, but you can also use incentive consensus, like PoW and PoS. And you can also use the consensus of traditional distributed systems, like PoS and Practical Byzantine Fault Tolerance, or PBFT. In fact, the f evil nodes of 3f+1 nodes are the upper limit for any distributed system to reach a consensus, which is called the Byzantine Fault Tolerance, or BFT. In order to do this, there is a specific algorithm, but in 1999, a much more efficient algorithm to reach this consensus came along, that is the PBFT. In scenarios like private blockchain or consortium blockchain where there is no need for a incentive model, PBFT will be a good option.
  • Smart contract collection: In aelf, there are many predefined smart contracts that can be used directly by other contracts, such as token contract, cross-chain contract (also called CCTP, or cross chain transfer protocol), consensus contract, organization voting contracts, etc. Of course, you can also create your own contract with a brand new implementation logic.
  • Others.

Summary

So this is our breakdown of the aelf blockchain whitepaper. In previous articles, we first introduced two basic concepts which are often misinterpreted by other articles. After helping you get these two concepts straight, we then introduced aelf’s vast arsenal of powerful technology. If these articles helped you understand the aelf blockchain better, then I have reached my goal. But I must advise you to read the whitepaper for a more detailed explanation. With all this knowledge at your disposal, I believe you will be much more comfortable developing DApps on aelf.
Check Part 1 here: https://medium.com/aelfblockchain/a-breakdown-of-the-aelf-blockchain-whitepaper-part-1-a63fc2e3e2e7
submitted by Floris-Jan to aelfofficial [link] [comments]

One Year after the Public Chain Takeoff, the New Era of Blockchain 3.0 has Arrived

One Year after the Public Chain Takeoff, the New Era of Blockchain 3.0 has Arrived

https://preview.redd.it/gflezdzc0rh51.png?width=512&format=png&auto=webp&s=b93d52868ac1216ffc51cbf4f3e9280db500c329
Everyone said that 2019 is the year public blockchains took off, and 2020 will be the first year blockchain began to achieve business adoption. Although the coronavirus pandemic continues to wreak havoc on all walks of life worldwide, the blockchain industry is making great strides forward.
In just a few years, the blockchain sector has developed from 1.0 to 3.0, and each upgrade has brought about some changes in the world. As we all know, blockchain 1.0 generally refers to cryptocurrency centered around Bitcoin. Blockchain 2.0 is public chains represented by Ethereum, which can develop smart contracts. In the era of blockchain 3.0, people think that thousands of blockchains can coexist and interoperate.
In the past two years, people have had high expectations of many public chains. However, some of the so-called “blockchain 3.0” projects have either shown slow progress or failed to live up to the expectations after their mainnet went live. People then began to expect to see a killer DApp achieving wide adoption of blockchain. At the same time, as the underlying technology for blockchain connectivity, multi-chain structure and cross-chain technology have become an important part of ‘blockchain 3.0’.
aelf and other Web 3.0 projects can be seen as the underlying technology providers for the Internet of Value. On the aelf blockchain, whether it is valuable information or digital currency, everything can be connected and shared, which is where the magic of cross-chain technology lies.
If the consensus mechanism is the core competitiveness of blockchain, then the cross-chain technology is the key to realizing the Internet of Value for blockchain, particularly for alliance chains and private chains. It is the key to preventing different blockchains from being isolated islands and serves as a bridge connecting blockchain and the outside world.

Cross-chain technology is designed to prevent blockchain from being isolated islands of data

At present, although these public chain projects have seen their performance improved, none of them is able to build the much-anticipated “underlying blockchain highway’ singlehandedly. In particular, driven by the prevailing view that each public chain should be an independent ecosystem, public chains today have become isolated islands of data with different architectures incompatible systems, which poses real difficulty to DApp developers.
The cross-chain technology, as the name suggests, is aimed to realize asset circulation, information exchange and application collaboration between different blockchain platforms. It can be likened to a bridge linking different public chains, which can help realize data transmission between different blockchain networks and greatly reduce transmission costs.
It is obvious that the demand for cross-chain technology is very urgent in today’s blockchain world.
Cross-chain communication can be divided into homogeneous and heterogeneous cross-chain according to different underlying blockchain technology platforms. Cross-chain interaction between homogeneous chains is simple, since their security mechanisms, consensus algorithms, network topology, block generation verification logic are consistent. Cross-chain interaction between heterogeneous chains is quite different. For example, Bitcoin uses PoW algorithm while the alliance chain Fabric uses traditional deterministic consensus algorithm, and its block form and deterministic guarantee mechanism are very different. Since designing a direct cross-chain communication mechanism is not easy, cross-chain interaction between heterogeneous chains generally requires third-party services.

aelf is doubling down on heterogeneous cross-chain research

At present, cross-chain technology mainly includes notary schemes, hash-locking, side chains or relays, and distributed private key control. aelf uses the side chain or relay scheme.
aelf’s cross-chain logic is ‘main chain + side chain’, with an emphasis on ‘one chain, one scenario’, where each side chain can be a scenario, such as a DApp, or a DeFi app. aelf’s cross-chain architecture is centered around the main chain.

https://preview.redd.it/n6q32zae0rh51.png?width=512&format=png&auto=webp&s=53aa5f093279c65b1a529ccefdf840a11382dc9d
In the cross-chain process, aelf achieves intercommunication between different chains via indexing. An index is the transfer of data from one chain to another in a defined structure. The cross-chain index has two steps: parent chain indexing child chain and child chain indexing parent chain.
  • The parent chain requests data from the child-chain and the data are then sent from the child chain to the parent chain.
  • The parent chain processes all the child chain’s index data, generating a Merkle tree, and stores it on the chain. The child chain block has been indexed by the parent chain, and must wait for the data to be confirmed by the network.
The above steps include the whole process of the parent chain indexing the child chain’s block and the child chain re-indexing the parent chain’s block. It’s worth noting that only irreversible blocks can be indexed by other chains.

https://preview.redd.it/cx381n9f0rh51.png?width=512&format=png&auto=webp&s=48bbb33731e42ba1d6c0a21a57e325274f150283
As a result, aelf does not need a Hub or a relay chain and is more of a decentralized cross-chain model. This is because communication between different chains does not necessarily require the permission of the aelf’s only main chain each time. The multi-layer child chains under the side chain can also communicate with each other with the index of the upper-layer parent chain and without the main chain getting involved.
On the premise of decentralization, aelf established that only confirmed blocks can be indexed, because only irreversible data can be trusted to ensure the network’s security. aelf also has its own solution for communicating with the Ethereum ecosystem, which can be interfaced with the Ethereum and other blockchain systems via adapters, making it compatible with existing mainstream ecosystems.
It can be seen that aelf has done a great job in homogeneous cross-chain technology, whereas some public chain projects have yet to pull it off. aelf has also begun to develop heterogeneous cross-chain technology, which will allow external chains such as Bitcoin and Ethereum to lock tokens into smart contracts and generate ccorresponding tokens on the aelf chain through contracts to achieve cross-chain communication. It is clear that aelf has taken the lead in cross-chain development.
While it’s still too early to talk about blockchain 3.0 and most projects are still trying to figure out where the underlying technologies are heading, solving the scalability issue public chains are facing today through the cross-chain technology has become the general trend. Cross-chain technology can realize communication between different chains, greatly improve blockchain’s ability to transfer value, and promote the development of IoT and cloud computing. On the other hand, without cross-chain technology, all kinds of blockchain platforms information will just be isolated islands of data, putting a significant limit on the applications of blockchain platforms.
We believe that the cross-chain mechanisms will greatly increase the value of blockchain and usher in a new era of blockchain development. With strong technical prowess and the ability to achieve commercial application, aelf will continue to explore the cross chain technology and provide strong technical support for the rapid and steady development of the industry!
submitted by Floris-Jan to aelfofficial [link] [comments]

Implementation of MAST proposal is finished (BIP 98/116/117)

What's MAST? https://bitcoinmagazine.com/articles/the-next-step-to-improve-bitcoin-s-flexibility-scalability-and-privacy-is-called-mast-1476388597/
Source: https://github.com/maaku/bitcoin/tree/merkle-branch-verify https://github.com/maaku/bitcoin/tree/tail-call-semantics
BIP 98: https://github.com/bitcoin/bips/blob/mastebip-0098.mediawiki BIP 116: https://github.com/bitcoin/bips/blob/mastebip-0116.mediawiki BIP 117: https://github.com/bitcoin/bips/blob/mastebip-0117.mediawiki
submitted by domschm to Bitcoin [link] [comments]

UMI scales quickly and integrates easily 🚀

UMI scales quickly and integrates easily 🚀

https://preview.redd.it/cn2daera0n951.jpg?width=1023&format=pjpg&auto=webp&s=34e3dbd5efd01bec9248ab9d36afabb594a14be5
Despite the emergence of new technological solutions, only about 2000 transactions are still placed in the Bitcoin network block, and the block itself is created in about 10 minutes. For 11 years, developers have not been able to agree and implement a solution that would allow to scale the system and improve performance qualitatively.

Most other cryptocurrencies have a similar problem. They are launched and continue to work almost in their original form even after the appearance of numerous innovative solutions. So, the Ethereum network has been trying to switch to the PoS algorithm for more than two years, but due to code complexities, security threats and problems with reaching the necessary consensus, this causes enormous inconvenience. When creating UMI, all these problems were taken into account.

⭐️UMI code ensures the safe implementation of any updates. The network is easily modified and scaled with new high-tech solutions.

Thanks to the Proof-of-Authority technology, you can increase the block size or introduce any development without hard forks and threats to the network. Moreover, UMI makes full use of the Merkle tree and has high-quality API and SDK tools that allow you to interact with all kinds of crypto platforms.

❗️UMI features provide easy integration with existing payment systems, exchangers and cryptocurrency exchanges.
submitted by UMITop to u/UMITop [link] [comments]

HEX juicy importance

Typical Bitcoin forks have a couple of issues Frail security: Double spends On the off chance that the fork utilizes a similar evidence of work, or mining equipment, it's inconsequential for diggers from the bigger unique venture to assault it.
Medium BitcoinHEX utilizes the very much tried ERC20 standard to keep away from any of these issues. Powerless advancement: Fewer engineers In principle, a bigger network of engineers will attempt more cool things and complete in excess of a littler network.
BitcoinHEX by being an ERC20 token gets full favorable position of the biggest pool of designers in crypto (Ethereum engineers), and the entirety of the cool new innovations they make, for example, appropriated trades, nuclear swaps, and so forth
Poor motivator arrangement: Free riders You and your cooperation difficult to make something new and cool, to have a whale wake up one day and glimmer crash the market on you. Why? Free loaders suck.
BitcoinHEX "We're all Satoshi" include which gives every unclaimed coin to individuals that claimed at 2% per week more than 50 weeks implies that in under a year, just genuinely invested individuals will hold the token.
Out of line dissemination Should the person that lives in china with free power and about free work accessible get most of all the recently stamped coins (expansion)? While expanding centralization, and not wanting to haggle with the journalists of the product they run (center designers.) BitcoinHEX is genuinely circulated to those that advance it through: the 5% referral hold it, through staking, or on the other hand help get the undertaking to minimum amount and appropriation (rewards for cases and guarantee size.)
The rich getting more extravagant unreasonably Trades and assets reward themselves while offering nothing to the little folks whose Bitcoin they should be in guardianship of. Trades are something contrary to what Bitcoin was made for. Distributed money. Not companion to trade to peer money. They're large security openings that have l ost a large number of dollars of client reserves.
Whales asserting BitcoinHEX are punished 50-75% on the grounds that who actually needs some mammoth trade or store guaranteeing an enormous part of your token to dump on you at their recreation? Punishment triggers from 1k-10k+ coins.
Expansion for security Though Bitcoin has expanded its stockpile by 17 million coins over its reality by paying diggers to mine (square rewards.) BitcoinHEX needn't bother with expansion for security. Enough individuals are digging Ethereum for a wide range of reasons that we don't need to pay them BitcoinHEX to do as such.
Disparagement of the first A few forks like to imagine they're the genuine article, and not only a duplicate. They do this by having a fundamentally the same as name, logo, and even purchase twitter handles and sites that used to advance the genuine article, to advance the duplicate. In reality a duplicate does best when it separates itself with better highlights, evaluating, or promoting. In the event that your plan of action incorporates claiming to be something you're not, it's a terrible plan of action. BitcoinHEX isn't Satoshi's vision, it's likewise not Bitcoin. It's Bitcoin forked into Ethereum. That has focal points ordinary Bitcoin forks don't. It is amusing to prod different forks when satoshisvision.com focuses to BitcoinHEX.com however Smiley They earned that prodding.
Why BitcoinHEX is incredible Low expansion
All the cool game hypothesis that quickens appropriation of the undertaking ends in under 1 year. At that point the main expansion in the undertaking originates from individuals that've removed coins from flow by staking. At the point when the main swelling you have is from remunerations to individuals that have trustlessly and safely bolted up their tokens for an extensive stretch of time, that is incredible for esteem.
No paying excavators for security with square rewards Conveyance to those well on the way to have been in crypto the longest Simple for trades to coordinate because of recognition and trust of ERC20 standard. Works with appropriated trades no problem at all Works with nuclear swaps no problem at all Most devs in the crypto (Ethereum) Simple case apparatus, asserts all UTXOs in a location without a moment's delay
Incredible advertising. Howdy Smiley Low charges. A bitcoinHEX exchange would just cost around 27 pennies or less on 5/24/2018 Scaling arrangements not too far off. Vitalik Buterin has been distributing take a shot at evidence of stake and sharding which could lessen waste and increment exchange limit incredibly.
Incredible practice, particularly in the event that you've never encountered the biggest crypto environment and second biggest by marketcap.
Advances free discourse. You can transmit your business and financial vitality that used to just exist in the Bitcoin language, in the Ethereum language. Broadens your scope of individuals you can exchange with, talk tokens to.
Tokenomics Moment Referral Bonus Individuals you allude get came up with all required funds, and you get a 5% referral reward. Appropriation rewards to stakers (end on 50th week, since all cases will be finished)
We're all Satoshi (week after week) Like clockwork a reward equivalent to 2% of unclaimed assets is dispersed to individuals that claimed. Reward topped at 100% of unclaimed tokens. For example, if Satoshi doesn't guarantee, individuals who willed get a reward equivalent to his coins after some time, however not more.
Speed Bonus (paid to petitioner on guarantee) Claimable: Balance in addition to [math below] first week 10%< second week (10% x (.95 to the intensity of [week number]) SpeedBonuss Viral Bonus (week by week) The more individuals that guarantee, the bigger the rewards Complete reward upmod (Guarantee % of 1/3 all out conceivable case occasions)/10 Minimum amount Bonus (week by week) The bigger the cases the bigger the rewards. All out reward upmod (Guarantee % of all out potential coins)/10 A debt of gratitude is in order for the rewards Inception contract gets a similar reward you do. Selection rewards to stakers (end on 50th week, since all cases will be finished)
Senseless whales Singular cases 1k to 10k+ btc punished 50 to 75% directly scaled before rewards.
Goxmenot Gox trustee addresses can't guarantee Typical Staking (Not thought about a reward and doesn't end at 50 weeks) 1% per 10 days. Longer lockup= impetus multiplier Example Time reward: multi day lockup = 129.6% (on the grounds that 3.6 occasions 36%= 129.6%)
Time divider As % of profit tokens is bolted up, decreases reward multiplier. In the event that half bolted up at start, at that point multiplier decreased half Early winged creatures get the worms.
Guaranteeing A depiction of the Bitcoin UTXO will be taken at square tallness (to be reported after agreement is reviewed). The UTXO set will be smoothed for gas effectiveness, and the Merkle tree foundation of that set will be implanted in an ERC20 token agreement to permit Bitcoin holders to reclaim their tokens.
HEX links: Website: https://hex.win/ Twitter page: https://twitter.com/HEXCrypto Facebook page: https://www.facebook.com/HEXcrypto Telegram page: https://t.me/HEXcrypto Github: https://github.com/bitcoinHEX Reddit page: https://hexcrypto.reddit.com/ Medium page: https://medium.com/hex-crypto/ Ann: https://bitcointalk.org/index.php?topic=4523610.0
Author information; Bitcointalk username: Corneafx Bitcointalk profile: https://bitcointalk.org/index.php?action=profile;u=2649614
submitted by Corneafx to Cryptocoinworld [link] [comments]

Proof Of Work Explained

Proof Of Work Explained
https://preview.redd.it/hl80wdx61j451.png?width=1200&format=png&auto=webp&s=c80b21c53ae45c6f7d618f097bc705a1d8aaa88f
A proof-of-work (PoW) system (or protocol, or function) is a consensus mechanism that was first invented by Cynthia Dwork and Moni Naor as presented in a 1993 journal article. In 1999, it was officially adopted in a paper by Markus Jakobsson and Ari Juels and they named it as "proof of work".
It was developed as a way to prevent denial of service attacks and other service abuse (such as spam on a network). This is the most widely used consensus algorithm being used by many cryptocurrencies such as Bitcoin and Ethereum.
How does it work?
In this method, a group of users competes against each other to find the solution to a complex mathematical puzzle. Any user who successfully finds the solution would then broadcast the block to the network for verifications. Once the users verified the solution, the block then moves to confirm the state.
The blockchain network consists of numerous sets of decentralized nodes. These nodes act as admin or miners which are responsible for adding new blocks into the blockchain. The miner instantly and randomly selects a number which is combined with the data present in the block. To find a correct solution, the miners need to select a valid random number so that the newly generated block can be added to the main chain. It pays a reward to the miner node for finding the solution.
The block then passed through a hash function to generate output which matches all input/output criteria. Once the result is found, other nodes in the network verify and validate the outcome. Every new block holds the hash of the preceding block. This forms a chain of blocks. Together, they store information within the network. Changing a block requires a new block containing the same predecessor. It is almost impossible to regenerate all successors and change their data. This protects the blockchain from tampering.
What is Hash Function?
A hash function is a function that is used to map data of any length to some fixed-size values. The result or outcome of a hash function is known as hash values, hash codes, digests, or simply hashes.
https://preview.redd.it/011tfl8c1j451.png?width=851&format=png&auto=webp&s=ca9c2adecbc0b14129a9b2eea3c2f0fd596edd29
The hash method is quite secure, any slight change in input will result in a different output, which further results in discarded by network participants. The hash function generates the same length of output data to that of input data. It is a one-way function i.e the function cannot be reversed to get the original data back. One can only perform checks to validate the output data with the original data.
Implementations
Nowadays, Proof-of-Work is been used in a lot of cryptocurrencies. But it was first implemented in Bitcoin after which it becomes so popular that it was adopted by several other cryptocurrencies. Bitcoin uses the puzzle Hashcash, the complexity of a puzzle is based upon the total power of the network. On average, it took approximately 10 min to block formation. Litecoin, a Bitcoin-based cryptocurrency is having a similar system. Ethereum also implemented this same protocol.
Types of PoW
Proof-of-work protocols can be categorized into two parts:-
· Challenge-response
This protocol creates a direct link between the requester (client) and the provider (server).
In this method, the requester needs to find the solution to a challenge that the server has given. The solution is then validated by the provider for authentication.
The provider chooses the challenge on the spot. Hence, its difficulty can be adapted to its current load. If the challenge-response protocol has a known solution or is known to exist within a bounded search space, then the work on the requester side may be bounded.
https://preview.redd.it/ij967dof1j451.png?width=737&format=png&auto=webp&s=12670c2124fc27b0f988bb4a1daa66baf99b4e27
Source-wiki
· Solution–verification
These protocols do not have any such prior link between the sender and the receiver. The client, self-imposed a problem and solve it. It then sends the solution to the server to check both the problem choice and the outcome. Like Hashcash these schemes are also based on unbounded probabilistic iterative procedures.
https://preview.redd.it/gfobj9xg1j451.png?width=740&format=png&auto=webp&s=2291fd6b87e84395f8a4364267f16f577b5f1832
Source-wiki
These two methods generally based on the following three techniques:-
CPU-bound
This technique depends upon the speed of the processor. The higher the processor power greater will be the computation.
Memory-bound
This technique utilizes the main memory accesses (either latency or bandwidth) in computation speed.
Network-bound
In this technique, the client must perform a few computations and wait to receive some tokens from remote servers.
List of proof-of-work functions
Here is a list of known proof-of-work functions:-
o Integer square root modulo a large prime
o Weaken Fiat–Shamir signatures`2
o Ong–Schnorr–Shamir signature is broken by Pollard
o Partial hash inversion
o Hash sequences
o Puzzles
o Diffie–Hellman–based puzzle
o Moderate
o Mbound
o Hokkaido
o Cuckoo Cycle
o Merkle tree-based
o Guided tour puzzle protocol
A successful attack on a blockchain network requires a lot of computational power and a lot of time to do the calculations. Proof of Work makes hacks inefficient since the cost incurred would be greater than the potential rewards for attacking the network. Miners are also incentivized not to cheat.
It is still considered as one of the most popular methods of reaching consensus in blockchains. Though it may not be the most efficient solution due to high energy extensive usage. But this is why it guarantees the security of the network.
Due to Proof of work, it is quite impossible to alter any aspect of the blockchain, since any such changes would require re-mining all those subsequent blocks. It is also difficult for a user to take control over the network computing power since the process requires high energy thus making these hash functions expensive.
submitted by RumaDas to u/RumaDas [link] [comments]

For devs and advanced users that are still in the dark: Read this to get redpilled about why Bitcoin (SV) is the real Bitcoin

This post by cryptorebel is a great intro for newbies. Here is a continuation for a technical audience. I'll be making edits for readability and maybe even add more content.
The short explanation of why BSV is the real Bitcoin is that it implements the original L1 scripting language, and removes hacks like p2sh. It also removes the block size limit, and yes that leads to a small number of huge nodes. It might not be the system you wanted. Nodes are miners.
The key thing to understand about the UTXO architecture is that it is maximally "sharded" by default. Logically dependent transactions may require linear span to construct, but they can be validated in sublinear span (actually polylogarithmic expected span). Constructing dependent transactions happens out-of-band in any case.
The fact that transactions in a block are merkelized is an obvious sign that Bitcoin was designed for big blocks. But merkle trees are only half the story. UTXOs are essentially hash-addressed stateful continuation snapshots which can also be "merged" (validated) in a tree.
I won't even bother talking about how broken Lightning Network is. Of all the L2 scaling solutions that could have been used with small block sizes, it's almost unbelievable how many bad choices they've made. We should be kind to them and assume it was deliberate sabotage rather than insulting their intelligence.
Segwit is also outside the scope of this post.
However I will briefly hate on p2sh. Imagine seeing a stunted L1 script language, and deciding that the best way to implement multisigs was a soft-fork patch in the form of p2sh. If the intent was truly backwards-compatability with old clients, then by that logic all segwit and p2sh addresses are supposed to only be protected by transient rules outside of the protocol. Explain that to your custody clients.
As far as Bitcoin Cash goes, I was in the camp of "there's still time to save BCH" until not too long ago. Unfortunately the galaxy brains behind BCH have doubled down on their mistakes. Again, it is kinder to assume deliberate sabotage. (As an aside, the fact that they didn't embrace the name "bcash" when it was used to attack them shows how unprepared they are when the real psyops start to hit. Or, again, that the saboteurs controlled the entire back-and-forth.)
The one useful thing that came out of BCH is some progress on L1 apps based on covenants, but the issue is that they are not taking care to ensure every change maintains the asymptotic validation complexity of bitcoin's UTXO.
Besides that, The BCH devs missed something big. So did I.
It's possible to load the entire transaction onto the stack without adding any new opcodes. Read this post for a quick intro on how transaction meta-evaluation leads to stateful smart contract capabilities. Note that it was written before I understood how it was possible in Bitcoin, but the concept is the same. I've switching to developing a language that abstracts this behavior and compiles to bitcoin's L1. (Please don't "told you so" at me if you just blindly trusted nChain but still can't explain how it's done.)
It is true that this does not allow exactly the same class of L1 applications as Ethereum. It only allows those than can be made parallel, those that can delegate synchronization to "userspace". It forces you to be scalable, to process bottlenecks out-of-band at a per-application level.
Now, some of the more diehard supporters might say that Satoshi knew this was possible and meant for it to be this way, but honestly I don't believe that. nChain says they discovered the technique 'several years ago'. OP_PUSH_TX would have been a very simple opcode to include, and it does not change any aspect of validation in any way. The entire transaction is already in the L1 evaluation context for the purpose of checksig, it truly changes nothing.
But here's the thing: it doesn't matter if this was a happy accident. What matters is that it works. It is far more important to keep the continuity of the original protocol spec than to keep making optimizations at the protocol level. In a concatenative language like bitcoin script, optimized clients can recognize "checksig trick phrases" regardless of their location in the script, and treat them like a simple opcode. Script size is not a constraint when you allow the protocol to scale as designed. Think of it as precompiles in EVM.
Now let's address Ethereum. V. Buterin recently wrote a great piece about the concept of credible neutrality. The only way for a blockchain system to achieve credible neutrality and long-term decentralization of power is to lock down the protocol rules. The thing that caused Ethereum to succeed was the yellow paper. Ethereum has outperformed every other smart contract platform because the EVM has clear semantics with many implementations, so people can invest time and resources into applications built on it. The EVM is apolitical, the EVM spec (fixed at any particular version) is truly decentralized. Team Ethereum can plausibly maintain credibility and neutrality as long as they make progress towards the "Serenity" vision they outlined years ago. Unfortunately they have already placed themselves in a precarious position by picking and choosing which catastrophes they intervene on at the protocol level.
But those are social and political issues. The major technical issue facing the EVM is that it is inherently sequential. It does not have the key property that transactions that occur "later" in the block can be validated before the transactions they depend on are validated. Sharding will hit a wall faster than you can say "O(n/64) is O(n)". Ethereum will get a lot of mileage out of L2, but the fundamental overhead of synchronization in L1 will never go away. The best case scaling scenario for ETH is an L2 system with sublinear validation properties like UTXO. If the economic activity on that L2 system grows larger than that of the L1 chain, the system loses key security properties. Ethereum is sequential by default with parallelism enabled by L2, while Bitcoin is parallel by default with synchronization forced into L2.
Finally, what about CSW? I expect soon we will see a lot of people shouting, "it doesn't matter who Satoshi is!", and they're right. The blockchain doesn't care if CSW is Satoshi or not. It really seems like many people's mental model is "Bitcoin (BSV) scales and has smart contracts if CSW==Satoshi". Sorry, but UTXO scales either way. The checksig trick works either way.
Coin Woke.
submitted by -mr-word- to bitcoincashSV [link] [comments]

Bitcoin (BTC)A Peer-to-Peer Electronic Cash System.

Bitcoin (BTC)A Peer-to-Peer Electronic Cash System.
  • Bitcoin (BTC) is a peer-to-peer cryptocurrency that aims to function as a means of exchange that is independent of any central authority. BTC can be transferred electronically in a secure, verifiable, and immutable way.
  • Launched in 2009, BTC is the first virtual currency to solve the double-spending issue by timestamping transactions before broadcasting them to all of the nodes in the Bitcoin network. The Bitcoin Protocol offered a solution to the Byzantine Generals’ Problem with a blockchain network structure, a notion first created by Stuart Haber and W. Scott Stornetta in 1991.
  • Bitcoin’s whitepaper was published pseudonymously in 2008 by an individual, or a group, with the pseudonym “Satoshi Nakamoto”, whose underlying identity has still not been verified.
  • The Bitcoin protocol uses an SHA-256d-based Proof-of-Work (PoW) algorithm to reach network consensus. Its network has a target block time of 10 minutes and a maximum supply of 21 million tokens, with a decaying token emission rate. To prevent fluctuation of the block time, the network’s block difficulty is re-adjusted through an algorithm based on the past 2016 block times.
  • With a block size limit capped at 1 megabyte, the Bitcoin Protocol has supported both the Lightning Network, a second-layer infrastructure for payment channels, and Segregated Witness, a soft-fork to increase the number of transactions on a block, as solutions to network scalability.

https://preview.redd.it/s2gmpmeze3151.png?width=256&format=png&auto=webp&s=9759910dd3c4a15b83f55b827d1899fb2fdd3de1

1. What is Bitcoin (BTC)?

  • Bitcoin is a peer-to-peer cryptocurrency that aims to function as a means of exchange and is independent of any central authority. Bitcoins are transferred electronically in a secure, verifiable, and immutable way.
  • Network validators, whom are often referred to as miners, participate in the SHA-256d-based Proof-of-Work consensus mechanism to determine the next global state of the blockchain.
  • The Bitcoin protocol has a target block time of 10 minutes, and a maximum supply of 21 million tokens. The only way new bitcoins can be produced is when a block producer generates a new valid block.
  • The protocol has a token emission rate that halves every 210,000 blocks, or approximately every 4 years.
  • Unlike public blockchain infrastructures supporting the development of decentralized applications (Ethereum), the Bitcoin protocol is primarily used only for payments, and has only very limited support for smart contract-like functionalities (Bitcoin “Script” is mostly used to create certain conditions before bitcoins are used to be spent).

2. Bitcoin’s core features

For a more beginner’s introduction to Bitcoin, please visit Binance Academy’s guide to Bitcoin.

Unspent Transaction Output (UTXO) model

A UTXO transaction works like cash payment between two parties: Alice gives money to Bob and receives change (i.e., unspent amount). In comparison, blockchains like Ethereum rely on the account model.
https://preview.redd.it/t1j6anf8f3151.png?width=1601&format=png&auto=webp&s=33bd141d8f2136a6f32739c8cdc7aae2e04cbc47

Nakamoto consensus

In the Bitcoin network, anyone can join the network and become a bookkeeping service provider i.e., a validator. All validators are allowed in the race to become the block producer for the next block, yet only the first to complete a computationally heavy task will win. This feature is called Proof of Work (PoW).
The probability of any single validator to finish the task first is equal to the percentage of the total network computation power, or hash power, the validator has. For instance, a validator with 5% of the total network computation power will have a 5% chance of completing the task first, and therefore becoming the next block producer.
Since anyone can join the race, competition is prone to increase. In the early days, Bitcoin mining was mostly done by personal computer CPUs.
As of today, Bitcoin validators, or miners, have opted for dedicated and more powerful devices such as machines based on Application-Specific Integrated Circuit (“ASIC”).
Proof of Work secures the network as block producers must have spent resources external to the network (i.e., money to pay electricity), and can provide proof to other participants that they did so.
With various miners competing for block rewards, it becomes difficult for one single malicious party to gain network majority (defined as more than 51% of the network’s hash power in the Nakamoto consensus mechanism). The ability to rearrange transactions via 51% attacks indicates another feature of the Nakamoto consensus: the finality of transactions is only probabilistic.
Once a block is produced, it is then propagated by the block producer to all other validators to check on the validity of all transactions in that block. The block producer will receive rewards in the network’s native currency (i.e., bitcoin) as all validators approve the block and update their ledgers.

The blockchain

Block production

The Bitcoin protocol utilizes the Merkle tree data structure in order to organize hashes of numerous individual transactions into each block. This concept is named after Ralph Merkle, who patented it in 1979.
With the use of a Merkle tree, though each block might contain thousands of transactions, it will have the ability to combine all of their hashes and condense them into one, allowing efficient and secure verification of this group of transactions. This single hash called is a Merkle root, which is stored in the Block Header of a block. The Block Header also stores other meta information of a block, such as a hash of the previous Block Header, which enables blocks to be associated in a chain-like structure (hence the name “blockchain”).
An illustration of block production in the Bitcoin Protocol is demonstrated below.

https://preview.redd.it/m6texxicf3151.png?width=1591&format=png&auto=webp&s=f4253304912ed8370948b9c524e08fef28f1c78d

Block time and mining difficulty

Block time is the period required to create the next block in a network. As mentioned above, the node who solves the computationally intensive task will be allowed to produce the next block. Therefore, block time is directly correlated to the amount of time it takes for a node to find a solution to the task. The Bitcoin protocol sets a target block time of 10 minutes, and attempts to achieve this by introducing a variable named mining difficulty.
Mining difficulty refers to how difficult it is for the node to solve the computationally intensive task. If the network sets a high difficulty for the task, while miners have low computational power, which is often referred to as “hashrate”, it would statistically take longer for the nodes to get an answer for the task. If the difficulty is low, but miners have rather strong computational power, statistically, some nodes will be able to solve the task quickly.
Therefore, the 10 minute target block time is achieved by constantly and automatically adjusting the mining difficulty according to how much computational power there is amongst the nodes. The average block time of the network is evaluated after a certain number of blocks, and if it is greater than the expected block time, the difficulty level will decrease; if it is less than the expected block time, the difficulty level will increase.

What are orphan blocks?

In a PoW blockchain network, if the block time is too low, it would increase the likelihood of nodes producingorphan blocks, for which they would receive no reward. Orphan blocks are produced by nodes who solved the task but did not broadcast their results to the whole network the quickest due to network latency.
It takes time for a message to travel through a network, and it is entirely possible for 2 nodes to complete the task and start to broadcast their results to the network at roughly the same time, while one’s messages are received by all other nodes earlier as the node has low latency.
Imagine there is a network latency of 1 minute and a target block time of 2 minutes. A node could solve the task in around 1 minute but his message would take 1 minute to reach the rest of the nodes that are still working on the solution. While his message travels through the network, all the work done by all other nodes during that 1 minute, even if these nodes also complete the task, would go to waste. In this case, 50% of the computational power contributed to the network is wasted.
The percentage of wasted computational power would proportionally decrease if the mining difficulty were higher, as it would statistically take longer for miners to complete the task. In other words, if the mining difficulty, and therefore targeted block time is low, miners with powerful and often centralized mining facilities would get a higher chance of becoming the block producer, while the participation of weaker miners would become in vain. This introduces possible centralization and weakens the overall security of the network.
However, given a limited amount of transactions that can be stored in a block, making the block time too longwould decrease the number of transactions the network can process per second, negatively affecting network scalability.

3. Bitcoin’s additional features

Segregated Witness (SegWit)

Segregated Witness, often abbreviated as SegWit, is a protocol upgrade proposal that went live in August 2017.
SegWit separates witness signatures from transaction-related data. Witness signatures in legacy Bitcoin blocks often take more than 50% of the block size. By removing witness signatures from the transaction block, this protocol upgrade effectively increases the number of transactions that can be stored in a single block, enabling the network to handle more transactions per second. As a result, SegWit increases the scalability of Nakamoto consensus-based blockchain networks like Bitcoin and Litecoin.
SegWit also makes transactions cheaper. Since transaction fees are derived from how much data is being processed by the block producer, the more transactions that can be stored in a 1MB block, the cheaper individual transactions become.
https://preview.redd.it/depya70mf3151.png?width=1601&format=png&auto=webp&s=a6499aa2131fbf347f8ffd812930b2f7d66be48e
The legacy Bitcoin block has a block size limit of 1 megabyte, and any change on the block size would require a network hard-fork. On August 1st 2017, the first hard-fork occurred, leading to the creation of Bitcoin Cash (“BCH”), which introduced an 8 megabyte block size limit.
Conversely, Segregated Witness was a soft-fork: it never changed the transaction block size limit of the network. Instead, it added an extended block with an upper limit of 3 megabytes, which contains solely witness signatures, to the 1 megabyte block that contains only transaction data. This new block type can be processed even by nodes that have not completed the SegWit protocol upgrade.
Furthermore, the separation of witness signatures from transaction data solves the malleability issue with the original Bitcoin protocol. Without Segregated Witness, these signatures could be altered before the block is validated by miners. Indeed, alterations can be done in such a way that if the system does a mathematical check, the signature would still be valid. However, since the values in the signature are changed, the two signatures would create vastly different hash values.
For instance, if a witness signature states “6,” it has a mathematical value of 6, and would create a hash value of 12345. However, if the witness signature were changed to “06”, it would maintain a mathematical value of 6 while creating a (faulty) hash value of 67890.
Since the mathematical values are the same, the altered signature remains a valid signature. This would create a bookkeeping issue, as transactions in Nakamoto consensus-based blockchain networks are documented with these hash values, or transaction IDs. Effectively, one can alter a transaction ID to a new one, and the new ID can still be valid.
This can create many issues, as illustrated in the below example:
  1. Alice sends Bob 1 BTC, and Bob sends Merchant Carol this 1 BTC for some goods.
  2. Bob sends Carols this 1 BTC, while the transaction from Alice to Bob is not yet validated. Carol sees this incoming transaction of 1 BTC to him, and immediately ships goods to B.
  3. At the moment, the transaction from Alice to Bob is still not confirmed by the network, and Bob can change the witness signature, therefore changing this transaction ID from 12345 to 67890.
  4. Now Carol will not receive his 1 BTC, as the network looks for transaction 12345 to ensure that Bob’s wallet balance is valid.
  5. As this particular transaction ID changed from 12345 to 67890, the transaction from Bob to Carol will fail, and Bob will get his goods while still holding his BTC.
With the Segregated Witness upgrade, such instances can not happen again. This is because the witness signatures are moved outside of the transaction block into an extended block, and altering the witness signature won’t affect the transaction ID.
Since the transaction malleability issue is fixed, Segregated Witness also enables the proper functioning of second-layer scalability solutions on the Bitcoin protocol, such as the Lightning Network.

Lightning Network

Lightning Network is a second-layer micropayment solution for scalability.
Specifically, Lightning Network aims to enable near-instant and low-cost payments between merchants and customers that wish to use bitcoins.
Lightning Network was conceptualized in a whitepaper by Joseph Poon and Thaddeus Dryja in 2015. Since then, it has been implemented by multiple companies. The most prominent of them include Blockstream, Lightning Labs, and ACINQ.
A list of curated resources relevant to Lightning Network can be found here.
In the Lightning Network, if a customer wishes to transact with a merchant, both of them need to open a payment channel, which operates off the Bitcoin blockchain (i.e., off-chain vs. on-chain). None of the transaction details from this payment channel are recorded on the blockchain, and only when the channel is closed will the end result of both party’s wallet balances be updated to the blockchain. The blockchain only serves as a settlement layer for Lightning transactions.
Since all transactions done via the payment channel are conducted independently of the Nakamoto consensus, both parties involved in transactions do not need to wait for network confirmation on transactions. Instead, transacting parties would pay transaction fees to Bitcoin miners only when they decide to close the channel.
https://preview.redd.it/cy56icarf3151.png?width=1601&format=png&auto=webp&s=b239a63c6a87ec6cc1b18ce2cbd0355f8831c3a8
One limitation to the Lightning Network is that it requires a person to be online to receive transactions attributing towards him. Another limitation in user experience could be that one needs to lock up some funds every time he wishes to open a payment channel, and is only able to use that fund within the channel.
However, this does not mean he needs to create new channels every time he wishes to transact with a different person on the Lightning Network. If Alice wants to send money to Carol, but they do not have a payment channel open, they can ask Bob, who has payment channels open to both Alice and Carol, to help make that transaction. Alice will be able to send funds to Bob, and Bob to Carol. Hence, the number of “payment hubs” (i.e., Bob in the previous example) correlates with both the convenience and the usability of the Lightning Network for real-world applications.

Schnorr Signature upgrade proposal

Elliptic Curve Digital Signature Algorithm (“ECDSA”) signatures are used to sign transactions on the Bitcoin blockchain.
https://preview.redd.it/hjeqe4l7g3151.png?width=1601&format=png&auto=webp&s=8014fb08fe62ac4d91645499bc0c7e1c04c5d7c4
However, many developers now advocate for replacing ECDSA with Schnorr Signature. Once Schnorr Signatures are implemented, multiple parties can collaborate in producing a signature that is valid for the sum of their public keys.
This would primarily be beneficial for network scalability. When multiple addresses were to conduct transactions to a single address, each transaction would require their own signature. With Schnorr Signature, all these signatures would be combined into one. As a result, the network would be able to store more transactions in a single block.
https://preview.redd.it/axg3wayag3151.png?width=1601&format=png&auto=webp&s=93d958fa6b0e623caa82ca71fe457b4daa88c71e
The reduced size in signatures implies a reduced cost on transaction fees. The group of senders can split the transaction fees for that one group signature, instead of paying for one personal signature individually.
Schnorr Signature also improves network privacy and token fungibility. A third-party observer will not be able to detect if a user is sending a multi-signature transaction, since the signature will be in the same format as a single-signature transaction.

4. Economics and supply distribution

The Bitcoin protocol utilizes the Nakamoto consensus, and nodes validate blocks via Proof-of-Work mining. The bitcoin token was not pre-mined, and has a maximum supply of 21 million. The initial reward for a block was 50 BTC per block. Block mining rewards halve every 210,000 blocks. Since the average time for block production on the blockchain is 10 minutes, it implies that the block reward halving events will approximately take place every 4 years.
As of May 12th 2020, the block mining rewards are 6.25 BTC per block. Transaction fees also represent a minor revenue stream for miners.
submitted by D-platform to u/D-platform [link] [comments]

Hi, we're the Ethereum Founding Team. Ask us anything!

Hi, we are Charles, Mihai, Anthony and Vitalik (EthereumCharles, MihaiAlisie, adiiorio and vbuterin).
EDIT 2100 EST Thank you very much for all your questions, it’s been great fun!!!
If we didn’t have the time to address your question here, then feel free to post in our forums at http://forum.ethereum.org.
We're very pleased to finally chat with you all! The last couple of weeks have been very hectic for us, so we haven't been able to communicate as much as we wanted to, and we look forward to answer all your questions in this AMA.
We'll be on from 1800 EST to 2100 EST. We're opening this thread 30m early so that you can post all your questions in advance and make sure we answer everyone.
Proof: http://imgur.com/a/1Emza
.. .. ..
Main site: http://www.ethereum.org
Forum: http://forum.ethereum.org
Code: https://code.ethereum.org
Blog: http://blog.ethereum.org
Wiki: http://wiki.ethereum.org
Whitepaper: http://ethereum.org/ethereum.html
Facebook: https://www.facebook.com/ethereumproject
Youtube: http://www.youtube.com/ethereumproject
Google+: http://plus.google.com/+EthereumOrgOfficial
submitted by Ursium to IAmA [link] [comments]

MXC AMA Recapitulation-Filenet

MXC AMA Recapitulation-Filenet

https://preview.redd.it/6u8t4y55nay41.png?width=1200&format=png&auto=webp&s=6ad7775ac648def445571a6a80e285f1c152a803

Guest: FN Global Community Rep,Andrew Chan

Host: Molly

Introduction:

Andrew:
Nice to meet you guys here,it's my honor to stand here speach for Filenet.Filenet(FN) is the world's first public chain of distributed storage application who has lauchned the mainet, and is also the world's first public chain of distributed storage application using DPOS + POC consensus mechanism.Filenet is dedicated to storing and distributing valuable content, rewarding miners in the form of mining to contribute idle bandwidth and storage. The mission of Filenet is to establish a powerful distributed data service system by connecting all idle storage to form, so any storage device that can connect to the Internet can participate in mining. Generally, Filenet is a super cloud system based on distributed storage and content sharing.

Questions from community:

Molly: Q1.What are the benefits of the FN project for business? What is the main role FN plays in business for five validation and security?
Andrew:
As we said just now,Filenet(FN) is the world's first public chain of distributed storage.
Filenet is dedicated to storing and distributing valuable content. The system provides a file promotion system. The more data is retrieved, the more popular it becomes, and the file can be mined.The DAO mechanism adopted by Filenet, in the system of Filenet, users need not pay for uploading and downloading, which greatly reduces the cost of enterprise server and bandwidth.Besides that Filenet is used to retrieve and distribute mining patterns, pledge a certain amount of deposit and provide a certain amount of storage space to participate in mining. The higher the miner's contribution, the higher the probability of a block.
Filenet is a leader in the field of distributed storage because of its unique consensus mechanism, business model, economic model, ecological strategy and governance structure, enabling blockchain storage to break out of the shackles and develop into a new format, and providing a key role for the development of other blockchain storage systems.
On the level of consensus, Filenet adopts the DPOS+POC mechanism as the consensus mechanism for distribution in the context of POC storage and mining, avoiding the direct contradiction between equipment efficiency and resource allocation, and greatly improving the mining mode in the blockchain 3.0 era.
The specific operation process of DPOS algorithm is that stakeholders, namely the Token holders and miners, vote to select Filenet Super Nodes through the election program, and then the Super Nodes in the block will be randomly pseudorandomly, and the Filenet Super Nodes can choose whether to produce blocks within a specified time.
As for smart contracts, Filenet is a common chain for developers that provides special programming primitives for DApp to interact with stored data.
These primitives are contained within the EVM (ethereum intelligent contract virtual machine). Thus, information about the location of data, storage nodes, and miners can also be accessed in smart contracts.
The world's first distributed storage DApp "Ztiao" developed based on Filenet network is now on the market. All chat data in this application will be stored in a fragmented form at any node in the world, transferred by private key, and the ecology in the application will be circulated and settled with Fn as payment token.
Filenet's smart contracts apply primarily to miners' coin holdings.The smart contracts we have developed may be rapidly realized through EVM (ethereum smart contract virtual machine) and solsea.
Filenet itself has the potential to implement an intelligent contract mechanism, and we believe that future versions of EVM and WASM will naturally integrate with the capabilities of Filenet and allow other main chains to benefit from Filenet.
In terms of data structure, the Filenet block saves all data trace parameters, and the data uploaded to Filenet is of various types and large quantities. While traditional linked list structures make blocks redundant and complex to express, Filenet USES a block chain data structure with Merkle tree and DAG (directed acyclic graph) structure.
The DAG structure is more flexible, more powerful, and faster than the traditional blockchain chain structure, greatly improving the efficiency of block packaging, thereby improving the performance of the Filenet network.
The Merkle tree does not require complete block information, but only the key Merkle node information to verify the block chain number filenet. IO page 10, a total of 24 data, which makes the node lighter and more energy and resources are devoted to business processing and providing services for the filenet network.
At the same time, Merkle tree can also simplify the verification process and further improve network performance.
Molly: Q2.Why does Filenet use the DPOS + POC consensus mechanism? What is the advantage?
Andrew:
As we all know,the core element of blockchain technology is the consensus mechanism. Currently, the most commonly used mechanisms include PoW (Proof-of-Work), PoS (Proof-of-Stake), DPoS (Delegated-Proof-of Stake), and PoC (Proof-of-Contribution). Proof of Work requires miners to solve complex cryptographic math problems and relies on computing power. The advantage of the system is that it is secure and reliable. Disadvantages are its limited capacity and the possibility of “51% attacks”. The Proof of Stake consensus mechanism selects miners according to how many coins he or she has. An immediate advantage is its low resource consumption. However, it opens itself to a range of attacks, such as nothing-at-stake, and also results in centralization since wealth brings more rewards and more decision-making power. In DPoS, the majority of people holding voting rights authorize a small number of nodes to act for them. The system’s merits are its high efficiency, throughput capacity and concurrency. However, the power is then concentrated in the hands of a few nodes, which is not safe. Proof of Contribution allocates mining and validating rights according to the contributions made by the nodes. The advantage of this system is that it does not waste resources thanks to its concept of selection based on resources provided to network. A disadvantage is that the calculation of contributions depends on specific scenarios. In the era of Blockchain 3.0, the consensus mechanisms are to advance under the principles of economy of resources, security focus and scalability, throughput capacity and concurrency.

https://preview.redd.it/krjv4rm9may41.png?width=1066&format=png&auto=webp&s=40875d9f7c76c5259faba1ad09f2396447231fa5
Molly: Q3.What is the main reason behind the formation of FN? Why do you think coins like FN should be in the Marketplace?
Andrew:
As I just said,Filenet is an IPFS incentive layer to reward miners for sharing their storage and networking resources.
Filenet is also a token which powers a distributed certification mechanism. It creates a cloud-level system for content-sharing dedicated to storing and distributing valuable content on IPFS,demand leaders to results. Filenet solve the problem of data distribution and storage.Why coins like FN should be in the marketplace?
This is easy to understand,why bitcoin should be in the market?All coins can be in the market for just one reason-the consensus.If there just one person who think FN is valueble,we cannot say this is consesus,but if there is 10000,or 1 billion who make consesus,then you can say,FN should be in the market.Fn happens to have so many users make the consesus.The number of people in Filenet community has reached 210000+,the autonomy community is up to 21,the global super nodes is over 51+,Our community is still growing,our consensus is also deepening,because we all believe in the future of FN.In short term,in the mining mode, on the one hand: the tokens will be locked, and the decrease in circulation can increase the value of the token; on the other hand: mining can also generate income.
On the long term,Filenet can provide commercial applications with commercial value. Giant Internet companies such as Tencent WeSee and Byte Dance with giant data amount will have requirements for massive storage. Filenet can provide distributed storage services to solve the problem. Companies need to pay and lock FN for the distributed storage services. In this way, the circulation of FN on the market can be controlled, and thereby the value can be appreciated.
Molly: Q4.Can ordinary users also participate in mining? If can participate, how much mining can ordinary user do? And please explain the role of FN Coin easily.
Andrew:
Ordinary people can also participate in mining,as long as you pledge 400FN,and provide 4T storage space,you can join to mining.And the specific details depend on the mining pool you joined,you can see these pictures for a detailed mining tutorial.

https://preview.redd.it/z9hr1knkmay41.png?width=864&format=png&auto=webp&s=61abf14e3e659430f8387915389e024a1523ad2e

https://preview.redd.it/g8r2hmgmmay41.png?width=864&format=png&auto=webp&s=d82d323958a9ff11761b7c165be0179d7aeb91d9
Molly: Q5.What's the future plan of Filenet?
Andrew:
In the 1.0 stage, Filenet is the first distributed storage application public chain on the mainnet, the first distributed storage application public chain on the exchange, and the first distributed storage application public chain using the DPOS + POC consensus mechanism.
Filenet 2.0 comprehensively solves the key shortcomings of centralized data service centers.
In Filenet3.0 stage, the vision can catch up with and surpass many leading projects and brands of the decentralized distributed storage track, such as Filecoin, IBM, Amazon, Maidsafe, and become the leader of the track.

Free-asking Session

Q1.What is the difficulty bomb solution? Can you tell us more about [email protected]
Andrew:

https://preview.redd.it/zghna15smay41.png?width=905&format=png&auto=webp&s=2f01912ecb429f6e543d0b74322f4c295b901015
difficulty bomb is a solution to to encourage the nodes of the entire network to contribute more storage space and bandwidth, the Filenet Foundation plans to implement the difficulty bomb program in stages from May 1, 2020.
Q2.Checking the website, I found that the transaction fees of FN coins are very low, and the transaction speed is also very high! Can you explain how the FILENET project can achieve such a high transaction rate at the lowest [email protected]
Andrew:
As I said just now,there are lots of ways to generate revennue,in short term Filenet can provide commercial applications with commercial value. Giant Internet companies such as Tencent WeSee and Byte Dance with giant data amount will have requirements for massive storage. Filenet can provide distributed storage services to solve the problem. Companies need to pay and lock FN for the distributed storage services. In this way, the circulation of FN on the market can be controlled, and thereby the value can be appreciated.And in long term Filenet is aim to encourage the nodes of the entire network to contribute more storage space and bandwidth, the Filenet Foundation plans to implement the difficulty bomb program in stages from May 1, 2020.
Q3.According to packaging node program, theywill recruit 105 packaging nodes worldwide. If 105 packaging nodes have been allocated, can I still participate in the activities of this packaging [email protected]
Andrew:
yes,of course,our paging nodes have proceed to the fifth issue,you can join us.
Q4.Why do people have to buy FN or hold it back? What is the FILENET team's plan to keep competing in the [email protected]
Andrew:
You could also refer to the eco mode and the apppreciation logic I've jsut share.
Q5.what are the benefits of $FN Long Term [email protected]
Andrew:
As we just shared: For long term, Filenet can provide commercial applications with commercial value. Giant Internet companies such as Tencent WeSee and Byte Dance with giant data amount will have requirements for massive storage. Filenet can provide distributed storage services to solve the problem. Companies need to pay and lock FN for the distributed storage services. In this way, the circulation of FN on the market can be controlled, and thereby the value can be appreciated.
Follow us:
Telegram: https://t.me/MXCEnglish
MXC trading: https://t.me/MXCtrade
Twitter: https://twitter.com/MXC_Exchange
https://twitter.com/MXC_Fans
Reddit: https://www.reddit.com/MXCexchange/
Facebook: https://www.facebook.com/mxcexchangeofficial/
Discord: https://discord.gg/zu5drS8
submitted by SimonZhu666 to MXCexchange [link] [comments]

Post-Quantum signature scheme library

Introduction

Quantum Processing Units (QPU) grow increasingly, it won't take long anymore until classical cryptography is in danger. What are the consequences? Your encrypted communication with the internet in the current state will belong to history. Anybody will potentially be able to fake signatures and therefore impersonate you. And one last example, our beloved Bitcoin and Ethereum coins are in danger if the account holding them has one outgoing transaction or if anybody catches your not yet executed transaction.
Annealing quantum processors (create multi-dimensional energy term and collapse into lowest energy) from D-Wave have already up to 5000 Qubits, 2030 Qubit QPUs are already publicly available in the "Leap" Cloud from D-Wave. Circuit-based Quantum processors (QPUs with their own quantum instruction set) have already up to 72 Qubits, 15 Qubits QPUs are already publicly accessible in IBMs QPU cloud "IBM Q Network". The end of classical public key cryptography is already visible in an unpleasantly close distance.
Various post-quantum cryptographic algorithms already exist, which are currently being evaluated by NIST. One signature scheme is called "Winternitz one-time signature" (WOTS) and it allows to securely create one signature. In combination with a merkle tree, many signatures can be created. This scheme is called XMSS.

The project

A year ago I have created a clean python project during university, which contains a WOTS abstract base class and WOTS/WOTS+ implementations based on this class. It is completly configurable and easy to use (example down below). It was created using the official RFC 8391 (at that time). It is also fully documented (including the basic math) and tested. I hope that one day it can be seen as the default python WOTS/XMSS library, but for that I need your help. If you are interested, I'd love to see you join the project and make it great. You can browse the issues to get an anchor point where to start or you can suggest new issues and work on them (after approval). The repository can be found at: https://github.com/sea212/winternitz-one-time-signature . The documentation can be found at: https://winternitz-one-time-signature.readthedocs.io/en/latest/introduction.html
If you are looking for a security/cryptography project (for example for an university course), you can browse the issue to get some ideas.

Examples

Creating and verifying a signature is easy as that:
import winternitz.signatures # Create signature and verify it with the same object wots = winternitz.signatures.WOTS() message = "My message in bytes format".encode("utf-8") sig = wots.sign(message) success = wots.verify(message=message, signature=sig["signature"]) print("Verification success: " + str(success)) # Output: Verification success: True 
Retrieve the public key:
import winternitz.signatures # Create signature and verify it with the same object wots = winternitz.signatures.WOTS() key = wots.pubkey 
Remotely verifing signatures is also simple. To simplify this example, the whole sig dictionary is transmitted and I assume that the hashalgorithm is already imported with that name (see documentation for a clean example). The communication partner can import the data and verify your signature in the following way:
import winternitz.signatures # Create signature and verify it with the same object wots_other = winternitz.signatures.WOTS(w=sig["w"], sig["hashalgo"], digestsize=sig["digestsize"], pubkey=key) success = wots_other.verify(message=message, signature=sig["signature"]) print("Verification success: " + str(success)) # Output: Verification success: True 
It's easy as that. Begin now to use this easily usable library in adequate situations and be ahead of time :)
QPUs: https://en.wikipedia.org/wiki/List_of_quantum_processors
Leap cloud: https://cloud.dwavesys.com/leap/
IBM Q Network: https://www.ibm.com/quantum-computing/network/overview
NIST post-quantum cryptography evaluation: https://csrc.nist.gov/projects/post-quantum-cryptography
RFC 8391: https://tools.ietf.org/html/rfc8391
submitted by sea212H to Python [link] [comments]

Ethereum + Keybase.io = Verified Addresses/Contracts = Amazing Possibilities. My mind spun!

Just signed up to keybase.io there.
Verified addresses and smart contracts will open up a whole new world of possibilities.
This is amazing. All publicly available and users in complete control.
I can verify my twitter, github, gpg key, etc. Where it will get really interesting is when we start verifying physical addresses, government ID, social security/PPS/etc. numbers, passports, driving licenses, bank accounts, etc.
The big question now is, where is the keybase prove eth command?
submitted by HandyNumber to ethereum [link] [comments]

You can call you a Bitcoiner if you know/can explain these terms...

03/Jan/2009
10 Minutes
10,000 BTC Pizza
2016 Blocks
21 Million
210,000 Blocks
51% Attack
Address
Altcoin
Antonopoulos
Asic
Asic Boost
Base58
Batching
Bech32
Bit
Bitcoin Cash
Bitcoin Improvement Proposal (BIP)
Bitcoin SV
Bitmain
Block
Block height
Block reward
Blockchain
Blockexplorer
Bloom Filter
Brain Wallet
Buidl
Change Address
Child pays for parent (CPFP)
Coinbase (not the exchange)
CoinJoin
Coinmarketcap (CMC)
Colored Coin
Confirmation
Consensus
Custodial Wallet
Craig Wright
David Kleinman
Difficulty
Difficulty adjustment
Difficulty Target
Dogecoin
Dorian Nakamoto
Double spend
Elliptic Curve Digital Signature Algorithm (ECDSA)
Ethereum
Faketoshi
Fork
Full Node
Gavin Andresen
Genesis Block
Getting goxed
Halving
Hard Fork
Hardware Wallet
Hash
Hashing
Hierarchical Deterministic (HD) Wallet
Hodl
Hot Wallet
Initial Coin Offering (ICO)
Initial Exchange Offering (IEO)
Ledger
Light Node
Lightning
Litecoin
Locktime
Mainnet
Malleability
Master Private Key
Master Public Key
Master Seed
mBTC
Mempool
Merkle Tree
Mining
Mining Farm
Mining Pool
Mixing
MtGox
Multisig
Nonce
Not your keys,...
Opcode
Orphan block
P2PKH
P2SH
Paper Wallet
Peers
Pieter Wuille
Premining
Private key
Proof of Stake (PoS)
Proof of Work (PoW)
Pruning
Public key
Pump'n'Dump
Replace by Fee (RBF)
Ripemd160
Roger Ver
sat
Satoshi Nakamoto
Schnorr Signatures
Script
Segregated Witness (Segwit)
Sha256
Shitcoin
Sidechain
Signature
Signing
Simplified Payment Verification (SPV)
Smart Contract
Soft Fork
Stratum
Syncing
Testnet
Transaction
Transaction Fees
TransactionId (Txid)
Trezor
User Activated Soft Fork (UASF)
Utxo
Wallet Import Format (WIF)
Watch-Only Address
Whitepaper
List obviously not complete. Suggestions appreciated.
Refs:
https://bitcoin.org/en/developer-glossary https://en.bitcoin.it/wiki/Main_Page https://www.youtube.com/channel/UCgo7FCCPuylVk4luP3JAgVw https://www.youtube.com/useaantonop
submitted by PolaT1x to Bitcoin [link] [comments]

Announcement: Symphony_IOHK Releases Symphony-Web 2.0

Announcement: Symphony_IOHK Releases Symphony-Web 2.0

View from inside a blockchain galaxy
The Symphony project began with a question: how do we represent blockchain technology in a way that is stimulating, entertaining, and audio-visually engaging for a wider audience, technical and non-technical. In other words, how do we explain the abstract and give form to the formless.

It’s been over a year since we answered that question, and we’re still working to make Symphony the most interactive and immersive blockchain experience available. What began as a way to visualize the blockchain has evolved into a way to experience the blockchain: an immersive journey accessible through your device’s browser.

The result is Symphony 2.0: a 3D explorer through which anyone can traverse the topographic history of the Bitcoin blockchain, from the first transaction to the most recent. Compared with the first version, Symphony 2.0 goes deeper in every way. It drills down into transaction data to create a live soundscape – each block has its own unique audio signature – using data-driven sound synthesis. It looks like this:


Soar over the galaxies of blockchians

How it Works

As you can imagine, giving feeling to data isn’t easy. Creating a sound for each block was how I wanted to represent the uniqueness and permanence of the blockchain: once added, a block is there forever, making that same sound, containing those same transactions.

I used a technique called additive synthesis to generate sound on the fly, and utilized the parallel nature of graphics cards to synthesize a unique sound for each of the thousands of transactions that can make up a block. The sound signature that plays when you visit a block consists of each transaction producing eight sine waves (a fundamental pitch and seven harmonics). The fundamental pitch is determined by the transaction value, and the amount of randomness added to the harmonics partials is controlled by the fee-to-value ratio of the transaction.

https://preview.redd.it/w6be8pwjb5931.png?width=1114&format=png&auto=webp&s=856bbc3572cf535a35ea20a086daa467e6512e8e

Design Philosophy

With Symphony 2.0, the blockchain’s mempool – which stores unconfirmed transactions – is visualized as a gravitational swell, around which confirmed transactions spiral in concentric rings. Think of Saturn’s rings but, instead of particles of ice and rock, we have transactions, continuously adding to the size of the rings as they extend outwards. Then, undergirding each block are Merkle trees represented, unsurprisingly, as trees.

https://preview.redd.it/exoldf4lb5931.png?width=1120&format=png&auto=webp&s=07c632b930131b94b4852293bfe6272b4a9ef90f
On top of each block, confirmed transactions are visualized as 3D hexagons. Their height corresponds to the transaction volume, and their width (note the rotund individuals to the right of the image above) corresponds to the health of the block. The result is an unprecedented imagining of the blockchain, with its representative parts synced and manifest, explorable block-by-block or through a flight-simulator mode.

Ways to Experience Symphony

Symphony 2.0 is now live It can be accessed using any modern web browser, but is best experienced in Google Chrome. For laptop and mobile device users, it’s advised to select the Medium quality option and, for those with high-performance devices or dedicated graphics support, the High quality option. Performance optimizations will continue into the future.

Together with our friends at Kuva, a Bristol-based creative agency, we’ve also grown the project to include events and exhibition pieces. These events – one of which was held this year in Bristol – have included a number of exhibitions that showcase different parts of the project, including virtual reality (VR) and augmented reality (AR).

Using WebVR software, I built a VR experience based on the code for Symphony 2.0, which demonstrates the extensibility of the system. This will be exhibited at future events and, I hope, one day available for VR headsets at home.

What’s Next

We’re going on tour. We have the story, and now we need an audience. I’m also starting to build an Ethereum version using the same code base, which will feature explorable smart contracts, and, after that, Cardano. We know there are thousands of people out there who are only faintly familiar with blockchain technology and want to know more – and with Symphony 2.0, they’ll be able to cut through the confusion. A picture tells a thousand words, and an interactive audio-visual experience tells many more.

Symphony is a long-term project. It’s as much an adventure for us as our audience. We want to see how far we can take it – because blockchain technology is still developing, still growing, and the opportunity for education is only just beginning. The release of Symphony 2.0 marks a significant milestone for us, and we’re thrilled to be sharing it with you. There’s a lot of opportunity for Symphony, from optimizations and incorporation of other blockchains, to events and more ways to enjoy Symphony at home. So, stay tuned for more updates and, in the meantime, enjoy the world’s first interactive blockchain experience.
- Blog Post by Scott Darby, IOHK Creative Coder

Experience Symphony Web Now

-
https://iohk.io/blog/announcing-the-release-of-symphony-2/
submitted by Classic_Kevin_ETC to cardano [link] [comments]

AMA: Ask Mike Anything

Hello again. It's been a while.
People have been emailing me about once a week or so for the last year to ask if I'm coming back to Bitcoin now that Bitcoin Cash exists. And a couple of weeks ago I was summoned on a thread called "Ask Mike Hearn Anything", but that was nothing to do with me and I was on holiday in Japan at the time. So I figured I should just answer all the different questions and answers in one place rather than keep doing it individually over email.
Firstly, thanks for the kind words on this sub. I don't take part anymore but I still visit occasionally to see what people are talking about, and the people posting nice messages is a pleasant change from three years ago.
Secondly, who am I? Some new Bitcoiners might not know.
I am Satoshi.
Just kidding. I'm not Satoshi. I was a Bitcoin developer for about five years, from 2010-2015. I was also one of the first Bitcoin users, sending my first coins in April 2009 (to SN), about 4 months after the genesis block. I worked on various things:
You can see a trend here - I was always interested in developing peer to peer decentralised applications that used Bitcoin.
But what I'm best known for is my role in the block size debate/civil war, documented by Nathaniel Popper in the New York Times. I spent most of 2015 writing extensively about why various proposals from the small-block/Blockstream faction weren't going to work (e.g. on replace by fee, lightning network, what would occur if no hard fork happened, soft forks, scaling conferences etc). After Blockstream successfully took over Bitcoin Core and expelled anyone who opposed them, Gavin and I forked Bitcoin Core to create Bitcoin XT, the first alternative node implementation to gain any serious usage. The creation of XT led to the imposition of censorship across all Bitcoin discussion forums and news outlets, resulted in the creation of this sub, and Core supporters paid a botnet operator to force XT nodes offline with DDoS attacks. They also convinced the miners and wider community to do nothing for years, resulting in the eventual overload of the main network.
I left the project at the start of 2016, documenting my reasons and what I expected to happen in my final essay on Bitcoin in which I said I considered it a failed experiment. Along with the article in the New York Times this pierced the censorship, made the wider world aware of what was going on, and thus my last gift to the community was a 20% drop in price (it soon recovered).

The last two years

Left Bitcoin ... but not decentralisation. After all that went down I started a new project called Corda. You can think of Corda as Bitcoin++, but modified for industrial use cases where a decentralised p2p database is more immediately useful than a new coin.
Corda incorporates many ideas I had back when I was working on Bitcoin but couldn't implement due to lack of time, resources, because of ideological wars or because they were too technically radical for the community. So even though it's doesn't provide a new cryptocurrency out of the box, it might be interesting for the Bitcoin Cash community to study anyway. By resigning myself to Bitcoin's fate and joining R3 I could go back to the drawing board and design with a lot more freedom, creating something inspired by Bitcoin's protocol but incorporating all the experience we gained writing Bitcoin apps over the years.
The most common question I'm asked is whether I'd come back and work on Bitcoin again. The obvious followup question is - come back and work on what? If you want to see some of the ideas I'd have been exploring if things had worked out differently, go read the Corda tech white paper. Here's a few of the things it might be worth asking about:
I don't plan on returning to Bitcoin but if you'd like to know what sort of things I'd have been researching or doing, ask about these things.
edit: Richard pointed out some essays he wrote that might be useful, Enterprise blockchains for cryptocurrency experts and New to Corda? Start here!
submitted by mike_hearn to btc [link] [comments]

Ever Flown Around Inside Bitcoin? IOHK Introduces Symphony 2.0: The first ever 3D, immersive blockchain explorer

Ever Flown Around Inside Bitcoin? IOHK Introduces Symphony 2.0: The first ever 3D, immersive blockchain explorer

(L) Bitcoin transactions: The higher the larger value; (R) Mempool w/ incoming tx.s
The Symphony project began with a question: how do we represent blockchain technology in a way that is stimulating, entertaining, and audio-visually engaging for a wider audience, technical and non-technical. In other words, how do we explain the abstract and give form to the formless.

It’s been over a year since we answered that question, and we’re still working to make Symphony the most interactive and immersive blockchain experience available. What began as a way to visualize the blockchain has evolved into a way to experience the blockchain: an immersive journey accessible through your device’s browser.

The result is Symphony 2.0: a 3D explorer through which anyone can traverse the topographic history of the Bitcoin blockchain, from the first transaction to the most recent. Compared with the first version, Symphony 2.0 goes deeper in every way. It drills down into transaction data to create a live soundscape – each block has its own unique audio signature – using data-driven sound synthesis. It looks like this:


The flight simulation over the bitcoin network. Watch out for incoming tx.s!

How it Works

As you can imagine, giving feeling to data isn’t easy. Creating a sound for each block was how I wanted to represent the uniqueness and permanence of the blockchain: once added, a block is there forever, making that same sound, containing those same transactions.

I used a technique called additive synthesis to generate sound on the fly, and utilized the parallel nature of graphics cards to synthesize a unique sound for each of the thousands of transactions that can make up a block. The sound signature that plays when you visit a block consists of each transaction producing eight sine waves (a fundamental pitch and seven harmonics). The fundamental pitch is determined by the transaction value, and the amount of randomness added to the harmonics partials is controlled by the fee-to-value ratio of the transaction.

View looking up: Merkle trees under respective blocks; Mempool on the right

Design Philosophy

With Symphony 2.0, the blockchain’s mempool – which stores unconfirmed transactions – is visualized as a gravitational swell, around which confirmed transactions spiral in concentric rings. Think of Saturn’s rings but, instead of particles of ice and rock, we have transactions, continuously adding to the size of the rings as they extend outwards. Then, undergirding each block are Merkle trees represented, unsurprisingly, as trees.

View Top Down: Transactions as pillars, on top of blocks, on top of Merkle trees; Mempool in background
On top of each block, confirmed transactions are visualized as 3D hexagons. Their height corresponds to the transaction volume, and their width (note the rotund individuals to the right of the image above) corresponds to the health of the block. The result is an unprecedented imagining of the blockchain, with its representative parts synced and manifest, explorable block-by-block or through a flight-simulator mode.

Ways to Experience Symphony

Symphony 2.0 is now live It can be accessed using any modern web browser, but is best experienced in Google Chrome. For laptop and mobile device users, it’s advised to select the Medium quality option and, for those with high-performance devices or dedicated graphics support, the High quality option. Performance optimizations will continue into the future.

Together with our friends at Kuva, a Bristol-based creative agency, we’ve also grown the project to include events and exhibition pieces. These events – one of which was held this year in Bristol – have included a number of exhibitions that showcase different parts of the project, including virtual reality (VR) and augmented reality (AR).

Using WebVR software, I built a VR experience based on the code for Symphony 2.0, which demonstrates the extensibility of the system. This will be exhibited at future events and, I hope, one day available for VR headsets at home.

What’s Next

We’re going on tour. We have the story, and now we need an audience. I’m also starting to build an Ethereum version using the same code base, which will feature explorable smart contracts, and, more networks after that. We know there are thousands of people out there who are only faintly familiar with blockchain technology and want to know more – and with Symphony 2.0, they’ll be able to cut through the confusion. A picture tells a thousand words, and an interactive audio-visual experience tells many more.

Symphony is a long-term project. It’s as much an adventure for us as our audience. We want to see how far we can take it – because blockchain technology is still developing, still growing, and the opportunity for education is only just beginning. The release of Symphony 2.0 marks a significant milestone for us, and we’re thrilled to be sharing it with you. There’s a lot of opportunity for Symphony, from optimizations and incorporation of other blockchains, to events and more ways to enjoy Symphony at home. So, stay tuned for more updates and, in the meantime, enjoy the world’s first interactive blockchain experience.
- Blog Post by Scott Darby, IOHK Creative Coder

Experience Symphony Web Now


Original BlogPost
submitted by Classic_Kevin_ETC to Bitcoin [link] [comments]

The path to become a Blockchain Developer

Blockchain developers are in hot demand. In fact, the demand for competent blockchain developers right now far outweighs the supply, with reported starting salary offers ranging anywhere from $180k-$250k.
Whether your interest is in the generous compensation, or you're generally excited about the technology, there's a lot to be eager about.
But the roadmap to becoming a developer in this new space is hazy and unclear, even to a lot of seasoned developers. This post aims to put together a mega-list of organized resources to help you begin your journey as a blockchain developer.
Blockchain Development for Beginners: Getting Started, and Prerequisites
Before diving in, you should develop a solid understanding of some of the underlying principals, mainly: what is a blockchain, and what can you do with it?
What is a Blockchain?
A blockchain is basically just a decentralized database or a distributed ledger.
That's a pretty straightforward answer. Rest assured there is much more complexity under the surface. IBM has taken an interest recently in blockchain development and has put together some great docs that make a good starting point to dive in:
Making a Blockchain
Once you feel like you're ready to get your hands dirty, there are a number of articles and posts dedicated to helping you further your knowledge by actually building your own blockchain. Here are a few great articles I'd recommend taking a look through:
Additional Tutorials, Courses & Videos
Ethereum, Smart Contracts and Apps
The development of virtual machines like Ethereum has opened the gates for developers, creating an accessible way for you or me to build our own smart contracts / decentralized applications.
Solidity - a programming language used to develop smart contracts and decentralized applications to run in the ethereum universe. Syntactically, it's similar to javascript.
Ganache - a personal blockchain for Ethereum development that runs on your desktop
submitted by KiranKiller to CryptoCurrency [link] [comments]

ETH and EOS Will Continue to Face Congestion Problems — This Project Won’t

ETH and EOS Will Continue to Face Congestion Problems — This Project Won’t
https://preview.redd.it/4s9hat9znf341.png?width=587&format=png&auto=webp&s=4c544a57d23e9a0101f4adc154cae0f3b7923bc4

Protocol congestion is a perennial problem in the blockchain ecosystem. Various measures have been implemented to avert congestion, but most struggle to offer a long-term solution.

Protocols have tried increasing their block size to increase the number of transactions they can hold and decreasing block production time to increase block generation. Though these measures worked in the short-term, they soon reached their limit. Thus, nearly all existing protocols cannot compare their transaction rates to those of centralized platforms.
The blockchain ecosystem has experienced transaction delays, massive transaction fees, and other inconveniences as a result of congestion within blockchain protocols.
Now, protocols like Aelf are out to change this narrative.
This article explores the congestion issue in the blockchain system, specifically on the Ethereum and EOS protocols. It also explores why Aelf will not be affected by the problem of congestion.

More Users = More Transactions

According to a report by Deloitte, blockchain is changing the business landscape, causing industries to adjust their operations based on the solutions it offers. This is also being seen in governments. The report also highlights that blockchain is yet to reach its full potential.
Blockchain is growing significantly, and one of the best examples of this is the congestion in Ethereum. Back in 2017, one of the first signs of future congestion was the d’App, CryptoKitties, which caused massive congestion in the Ethereum network- at one point resulting in a six-fold increase in total network requests.

https://preview.redd.it/5nbs750tnf341.png?width=470&format=png&auto=webp&s=f060f3c596a99ab2cda654f59374b2fe124ca87f
These furry kittens were the source of great delays on the Ethereum network upon release | Source
It is also worth noting, that during the peak bull run in 2017, Bitcoin also suffered from a massively congested network and transaction time delays. The situation got so bad, some transactions took over two weeks to complete!
The delays were caused because Ethereum could only meet 15 transactions per second (tps) at the time. Even without CryptoKitties, the platform was eventually going to suffer massive delays as more people used their protocol.
Ethereum is now living the congested future of its platform as Tether transactions load its network with numerous requests that often leads to delays in the Ethereum Network. Despite increasing their block capacity by about 25%, it is not enough to meet the growing number of transactions on their platform.

Attempts Towards Greater Scalability

Over at EOS, things are not going as planned.
The protocol is among the networks that ushered in blockchain 3.0 promising faster transaction rates. This was achieved as EOS outperformed Ethereum and Bitcoin in transaction rates.
However, because of their network set up, their platform weakness was exposed in 2019 as EOS experienced a massive delay caused by a specialized Denial-of-Service (DoS) attack.
DoS attacks are successful when the targeted platform is flooded with numerous transaction requests; thus, legitimate requests cannot be processed in a good time. This can be further specialized when attackers use Distributed-Denial-of-Service, which specifically targets a single network or server, thus rendering the platform ineffective faster.
For EOS, their network weakness was exposed as the attack targeted the blockchain layer. The attacker posted so many deferred transactions that when the time came to process them (deferred are given priority over new transactions) that no new transactions could be processed The attack produced numerous trash transactions that made valid transactions useless. The attack was made via a d’App hosted on EOS.
Because the issue was not addressed since January, another attempt to slow down the network was successfully made. The plan was likely carried out to determine the limitations of the EOS network.
An airdrop was planned on the EOS network, where users would be rewarded with tokens if they frequently transferred EOS tokens into and out of the EOS network. The airdrop event created congestion because of the number of transactions being generated on the EOS network.
The congestion created on EOS on both instances can be attributed to the function of deferring transactions to a later time. This allows attackers to technically block other transactions for the period it will take to process all their ‘deferred’ transactions.

Aelf’s Simple Brilliance

Ethereum and EOS are both suffering congestion as a result of the growing number of transactions daily. These protocols are also likely to suffer congestion from planned attacks on their network.
Aelf drew lessons from both EOS and Ethereum to develop a platform that solves the issue of scalability.
On the issue of transaction rates, Aelf created a platform that achieves high tps. The tps are performed on-chain, and this is created through separation and specialization. Aelf’s protocol separates transactional data and computational dependency, which significantly impacts their tps.
Furthermore, Aelf implements parallel data processing through the separation of transactional data. This helps Aelf achieve even high tps on-chain.
The separation of transactional data is done using side chains. Aelf implements a branched-chain network as opposed to the single-chain system that is in use by both EOS and Ethereum. The branched-chain network allows Aelf to dedicate each side chain to a particular transaction type.
Aelf achieves its side chain specialization by using a “one chain to one type of contract” system. Therefore, one side chain can only process requests from one type of contract only. This makes the Aelf system highly specialized while still maintaining a simple structure.
Moreover, within the dedicated side chain, other side chains can be formed depending on the demand and needs of the network. This system resembles partitioning or sharding in database architecture and is known as “Tree Branch side chain extension” in the Aelf ecosystem.
The” Tree Branch side chain extension” acts as an emergency overflow system that protects Aelf from congestion by creating other side chains that can process transactions in case transaction requests outweigh Aelf’s capacity at the time.

https://preview.redd.it/8klki00vnf341.png?width=600&format=png&auto=webp&s=1d79d322c9d1376856ca1bb38e9688ba7bd0f7aa
A visual example of Aelf’s ‘Tree Branch’ | Source
Aelf’s side chains communicate through the main chain in the form of a Merkle tree root. Communication between the side chains is not direct. The information must pass through the filtering system of the mainchain to determine whether the data can be passed from one side chain to the other. The filtering process is based on the protocol’s guidelines.
These implementations deter deferred transactions, which makes it impossible for planned attacks to slow down the network through numerous “fake” transactions.
With Aelf’s set up, they are ahead in terms of scalability and security and, thus, a worthy choice for setting up a d’App.
Having seen the limitations of EOS and Ethereum, it is clear that their congestion problems are inevitable. Aelf remains the only platform that is immune to network congestion. The use of a side chain set up to isolate and categorize transactions is a simple yet brilliant idea implemented by the Aelf team, which assures Aelf of scalability throughout its lifetime. Aelf may have cemented themselves in blockchain history through its platform.
For more information of Aelf's platform, please follow this link.
#Aelf #DPoS #Blockchain #ParallelProcessing $ELF
Disclaimer: Please only take this information as my OWN opinion and should not be regarded as financial advice in any situation. Please remember to DYOR before making any decisions.
♂️ Hi, my name’s Sal. If you found this article useful and would like to view my other work please be sure to clap and follow me on medium and LinkedIn!😎
submitted by Floris-Jan to aelfofficial [link] [comments]

Era Swap Network White Paper

Era Swap Network White Paper

Era Swap Network

White Paper



DISCLAIMER
This Whitepaper is for Era Swap Network. Its purpose is solely to provide prospective community members with information about the Era Swap Ecosystem & Era Swap Network project. This paper is for information purposes only and does not constitute and is not intended to be an offer of securities or any other financial or investment instrument in any jurisdiction.
The Developers disclaim any and all responsibility and liability to any person for any loss or damage whatsoever arising directly or indirectly from (1) reliance on any information contained in this paper, (2) any error, omission or inaccuracy in any such information, or (3) any action resulting therefrom
Digital Assets are extremely high-risk, speculative products. You should be aware of the risks involved and fully consider before participating in Digital assets whether it’s appropriate for you. You should only participate if you are an experienced investor with sophisticated knowledge of financial markets and you fully understand the risks associated with digital assets. We strongly advise you to take independent professional advice before making any investment or participating in any way. You should check what rules and protections apply to your respective jurisdictions before investing or participating in any way. The Creators & community will not compensate you for any losses from trading, investment or participating in any way. You should read whitepaper carefully before participating and consider whether these products are right for you.

TABLE OF CONTENT

· Abstract
· Introduction to Era Swap Network
· Development Overview
· Era Swap Utility Platform
· Alpha-release Development Plan
· Era Swap Network Version 1: Specification
· Bunch Structure: 10
· Converting ES-ERC20 to ES-Na:
· Conclusion:
· Era Swap Ecosystem
· Social Links

Abstract

The early smart contracts of Era Swap Ecosystem like TimeAlly, Newly Released Tokens, Assurance, BetDeEx of Era Swap Ecosystem, are deployed on Ethereum mainnet. These smart contracts are finance-oriented (DeFi), i.e. most of the transactions are about spending or earning of Era Swap tokens which made paying the gas fees in Ether somewhat intuitive to the user (withdrawal charges in bank, paying tax while purchasing burgers) but transactions that are not token oriented like adding a nominee or appointee voting also needs Ether to be charged. As more Era Swap Token Utility platform ideas kept appending to the Era Swap Main Whitepaper, more non-financial transaction situations arise like updating status, sending a message, resolving a dispute and so on. Paying extensively for such actions all day and waiting for the transaction to be included in a block and then waiting for enough block confirmations due to potential chain re-organizations is counter-intuitive to existing free solutions like Facebook, Gmail. This is the main barrier that is stopping Web 3.0 from coming to the mainstream.
As alternatives to Ethereum, there are few other smart contract development platforms that propose their own separate blockchain that features for higher transaction throughput, but they compromise on decentralization for improving transaction speeds. Moreover, the ecosystem tools are most advancing in Ethereum than any other platform due to the massive developer community.
With Era Swap Network, the team aims to achieve scalability, speed and low-cost transactions for Era Swap Ecosystem (which is currently not feasible on Ethereum mainnet), without compromising much on trustless asset security for Era Swap Community users.

Introduction to Era Swap Network

Era Swap Network (ESN) aims to solve the above-mentioned problems faced by Era Swap Ecosystem users by building a side-blockchain on top of Ethereum blockchain using the Plasma Framework.
Era Swap Network leverages the Decentralisation and Security of Ethereum and the Scalability achieved in the side-chain, this solves the distributed blockchain trilema. In most of the other blockchains, blocks are a collection of transactions and all the transactions in one block are mined by a miner in one step. Era Swap Network will consist of Bunches of Blocks of Era Swap Ecosystem Transactions.

Decentralization

Layer 2


Scalable and Secure

A miner mines all the blocks in a bunch consequently and will commit the bunch-root to the ESN Plasma Smart Contract on Ethereum mainnet.

Development Overview
Initially, we will start with a simple Proof-of-Authority (PoA) based consensus of EVM to start the development and testing of Era Swap Ecosystem Smart Contracts as quickly as possible on the test-net. We will call this as an alpha-release of ESN test-net and only internal developers will work with this for developing smart contracts for Era Swap Ecosystem. User’s funds in a Plasma implementation with a simple consensus like PoA are still secured as already committed bunch-roots cannot be reversed.
Eventually, we want to arrive on a more control-decentralized consensus algorithm like Proof-of-Stake (PoS) probably, so that even if the chain operator shuts down their services, a single Era Swap Ecosystem user somewhere in the world can keep the ecosystem alive by running software on their system and similarly more people can join to decentralize the control further. In this PoS version, we will modify the Parity Ethereum client in such a way, that at least 50% of transaction fees collected will go to the Luck Pool of NRT Smart Contract on Ethereum mainnet and rest can be kept by miner of the blocks/bunch of blocks if they wish. After achieving such an implementation, we will release this as a beta version to the community for testing the software on their computers with Kovan ERC20 Era Swaps (Ethereum test-net).

Era Swap Decentralised Ecosystem
Following platforms are to be integrated:
  1. Era Swap Token Contract (adapted ERC20 on Ethereum) The original asset will lie on Ethereum to avoid loss due to any kind of failure in ESN.
  2. Plasma Manager Contract (on Ethereum) To store ESN bunch headers on Ethereum.
  3. Reverse Plasma Manager Contract (on ESN) Bridge to convert ES to ES native and ES native to ES. User deposits ES on Mainnet Plasma, gives proof on ESN and gets ES native credited to their account in a decentralised way.
  4. NRT Manager Contract (on Ethereum or on ESN) If it is possible to send ES from an ESN contract to luck pool of NRT Manager Contract on Ethereum, then it’s ok otherwise, NRT Manager will need to be deployed on ESN for ability to add ES to luck pool.
  5. Era Swap Wallet (React Native App for managing ESs and ES natives) Secure wallet to store multiple private keys in it, mainly for managing ES and ES native, sending ES or ES native, also for quick and easy BuzCafe payments.
  6. TimeAlly (on Ethereum or on ESN) On whichever chain NRT Manager is deployed, TimeAlly would be deployed on the same chain.
  7. Assurance (on Ethereum or on ESN) On whichever chain NRT Manager is deployed, TimeAlly would be deployed on the same chain.
  8. DaySwappers (on ESN) KYC manager for platform. For easily distributing rewards to tree referees.
  9. TimeSwappers (on ESN) Freelance market place with decentralised dispute management.
  10. SwappersWall (on ESN) Decentralised social networking with power tokens.
  11. BuzCafe (on ESN) Listing of shops and finding shops easily and quick payment.
  12. BetDeEx (on ESN) Decentralised Prediction proposals, prediction and results.
  13. DateSwappers (on ESN) Meeting ensured using cryptography.
  14. ComputeEx (on Ethereum / centralised way) Exchange assets.
  15. Era Swap Academy (on ESN / centralised way) Learn. Loop. Leap. How to implement ES Academy is not clear. One idea is if content is constantly being modified, then subscription expired people will only have the hash of old content while new content hash is only available to people who have done Dayswapper KYC and paid for the course. Dayswapper KYC is required because this way people won’t share their private keys to someone else.
  16. Value of Farmers (tbd) The exchange of farming commodities produced by farmers in VoF can be deposited to warehouses where the depositors will get ERC721 equivalent tokens for their commodities (based on unique tagging).
  17. DeGameStation (on ESN) Decentralised Gaming Station. Games in which players take turns can be written in Smart Contract. Games like Chess, Poker, 3 Patti can be developed. Users can come to DeGameStation and join an open game or start a new game and wait for other players to join.

Alpha-release Development Plan
  1. Deploying Parity Node customized according to Era Swap Whitepaper with PoA consensus.
  2. Setting up Plasma Smart Contracts.
  3. Creating a bridge for ERC20 Swap from Ethereum test-net to ESN alpha test-net.

Alpha Version
Era Swap Network Version 1 : Specification
The Version 1 release of ESN plans to fulfill the requirements for political decentralisation and transparency in dApps of Era Swap Ecosystem using Blockchain Technology. After acquiring sufficient number of users, a version 2 construction of ESN will be feasible to enable administrative decentralization, such that the Era Swap Ecosystem will be run and managed by the Era Swap Community and will no longer require the operator to support for it's functioning.
Era Swap Network (ESN) Version 1 will be a separate EVM-compatible sidechain attached to Ethereum blockchain as it’s parent chain. ESN will achieve security through Plasma Framework along with Proof-of-Authority consensus for faster finality. The idea behind plasma framework is to avoid high transaction fees and high transaction confirmation times on Ethereum mainnet by instead doing all the ecosystem transactions off-chain and only post a small information to an Ethereum Smart Contract which would represent hash of plenty of ecosystem transactions. Also, to feature movement of Era Swap Tokens from Ethereum blockchain to ESN using cryptographic proof, reverse plasma of Ethereum on ESN will be implemented.
Also, submitting hash of each ESN blocks to ESN Plasma Smart Contract on Ethereum would force ESN to have a block time equal to or more than Ethereum’s 15 second time as well as it would be very much costly for operator to post lot of hashes to an Ethereum Smart Contract. This is why, merkle root of hashes of bunch of blocks would instead be submitted to ESN Plasma Smart Contact on Ethereum.
Actors involved in the ESN:
  1. Block Producer Nodes Lesser the number of nodes, quicker is the block propagation between block producers which can help quick ecosystem transactions. We find that 7 block producers hosted on different could hosting companies and locations reduces the risk of single point of failure of Era Swap Ecosystem and facilitates 100% uptime of dApps. Block Producer Nodes will also be responsible to post the small information to the Blockchain.
  2. Block Listener Nodes Rest of the nodes will be Block Listeners which will sync new blocks produced by the block producer nodes. Plenty of public block listener nodes would be setup in various regions around the world for shorter ping time to the users of Era Swap Ecosystem. Users would submit their Era Swap Ecosystem transactions to one of these public nodes, which would relay them to rest of the Era Swap Network eventually to the block producer nodes which would finalize a new block including the user transaction.
  3. Bunch Committers This will be an instance in the block producers which will watch for new blocks confirmed on ESN and will calculate bunch merkle roots and will submit it to ESN Plasma Smart Contract. This instance will also post hash of new Ethereum blocks to ESN (after about 10 confirmations) for moving assets between both the blockchain.
  4. Users These will be integrating with dApps which would be connected to some public ESN nodes or they can install a block listner node themselves. They can sign and send transactions to the node which they are connected to and then that node will relay their transactions to block producer nodes who would finalise a block including their transaction.

Bunch Structure

A Bunch Structure in Smart Contract will consist of the following:
• Start Block Number: It is the number of first ESN block in the bunch.
• Bunch Depth: It is Merkle Tree depth of blocks in the bunch. For e.g. If bunch depth is 3, there would be 8 blocks in the bunch and if bunch depth is 10, there would be 1024 blocks in the bunch. Bunch depth of Bunches on ESN Plasma Contract is designed to be variable. During the initial phases of ESN, it would be high, for e.g. 15, to avoid ether expenditure and would be decreased in due course of time.
• Transactions Mega Root: This value is the merkle root of all the transaction roots in the bunch. This is used by Smart Contract to verify that a transaction was sent on the chain.
• Receipts Mega Root: This value is the merkle root of all the receipt roots in the bunch. This is used to verify that the transaction execution was successful.
• Timestamp: This value is the time when the bunch proposal was submitted to the smart contract. After submission, there is a challenge period before it is finalised.

Converting ES-ERC20 to ERC-NA and BACK

On Ethereum Blockchain, the first class cryptocurrency is ETH and rest other tokens managed by smart contracts are second class. On ESN, there is an advancement to have Era Swaps as the first class cryptocurrency. This cryptocurrency will feature better user experience and to differentiate it from the classic ERC20 Era Swaps, it will be called as Era Swap Natives (ES-Na). According to the Era Swap Whitepaper, maximum 9.1 Million ES will exist which will be slowly released in circulation every month.
Era Swaps will exist as ES-ERC20 as well as in form of ES-Na. One of these can be exchanged for the other at 1:1 ratio.
Following is how user will convert ES-ERC20 to ES-Na:
  1. User will give allowance to a Deposit Smart Contract, and following that call deposit method to deposit tokens to the contract.
  2. On transaction confirmation, user will paste the transaction hash on a portal which will generate a Proof of Deposit string for the user. This string is generated by fetching all the transactions in the Ethereum Block and generating a Transaction Patricia Merkle Proof to prove that user’s transaction was indeed included in the block and the Receipts Patricia Merkle Proof to confirm that the user’s transaction was successful.
  3. Using the same portal, user will submit the generated proofs to a Smart Contract on ESN, which would release funds to user. Though, user will have to wait for the Etheruem block roots to be posted to ESN after waiting for confirmations which would take about 3 minutes. Once, it’s done user’s proofs will be accepted and will receive exact amount of ES- Na on ESN.
Following is how user will convert ES-Na to ES-ERC20:
  1. ES-Na being first class cryptocurrency, user will simply send ES-Na to a contract.
  2. User will paste the transaction hash on a portal which will generate a Proof of Deposit for the user. Again ES-Na being first class cryptocurrency, Transaction Patricia Merkle Proof is enough to prove that user’s transaction was indeed included in the block. Another thing which will be generated is the block inclusion proof in the bunch.
  3. User will have to wait for the bunch confirmation to the Plasma Smart Contract and once it’s done, user can send the proof to the Plasma Smart Contract to receive ES-ERC20.

HARD Exit

Since the blocks are produced and transactions are validated by few block producers, it exposes a possibility for fraud by controlling the block producer nodes. Because ESN is based on the Plasma Model, when failure of sidechain occurs or the chain halts, users can hard exit their funds directly from the Plasma Smart Contract on Ethereum by giving a Proof of Holdings.

HOld ES Tokens Swapping with New ES Tokens

The old ES Tokens will be valueless as those tokens will not be accepted in ESN because of NRT (New Released Tokens) and TimeAlly contracts on mainnet which is causing high gas to users, hence reducing interactions. Also, there was an event of theft of Era Swap Tokens and after consensus from majority of holders of Era Swap Tokens; it was decided to create a new contract to reverse the theft to secure the value of Era Swap Tokens of the community. Below is the strategy for swapping tokens:
TimeAlly and TSGAP: Majority of Era Swap Community have participated in TimeAlly Smart Contract in which their tokens are locked for certain period of time until which they cannot move them. Such holders will automatically receive TimeAlly staking of specific durations from the operator during initialization of ESN.
Liquid Tokens: Holders of Liquid Era Swap Tokens have to transfer the old tokens to a specified Ethereum wallet address managed by team. Following that, team will audit the token source of the holder (to eliminate exchange of stolen tokens) and send new tokens back to the wallet address.

Post-Genesis Tokens Return Program

Primary asset holding of Era Swap tokens will exist on Ethereum blockchain as an ERC20 compatible standard due to the highly decentralised nature of the blockchain. Similar to how users deposit tokens to an cryptocurrency exchange for trading and then withdraw the tokens back, users will deposit tokens to ESN Contract to enter Era Swap Ecosystem and they can withdraw it back from ESN Contract for exiting from ecosystem network. The design of the token system will be such that, it will be compatible with the future shift (modification or migration of ESN version 1) to ESN version 2, in which an entirely new blockchain setup might be required.
To manage liquidity, following genesis structure will be followed:

Holder ES-ERC20 ES-Na
Team Wallet 1.17 billion (Circulating Supply) 0
Locked in Smart Contract 7.93 billion (pending NRT releases) 9.1 billion
Though it looks like there are 9.1 * 2 = 18.2 Billion ES, but the cryptographic design secures that at any point in time at least a total of 9.1 billion ES (ES-ERC20 + ES-Na) will be locked. To unlock ES-Na on ESN, an equal amount of ES-ERC20 has to be locked on Ethereum and vice-versa.
9.1 billion ES-ERC20 will be issued by ERC20 smart contract on Ethereum Blockchain, out of which the entire circulating supply (including liquid and TimeAlly holdings) of old ES will be received to a team wallet.
TimeAlly holdings of all users will be converted to ES-Na and distributed on ESN TimeAlly Smart Contract by team to the TimeAlly holders on their same wallet address.
Liquid user holdings will be sent back to the users to the wallet address from which they send back old ES tokens (because some old ES are deposited on exchange wallet address).
ES-Na will be issued in the genesis block to an ESN Manager Smart Contract address. It will manage all the deposits and withdrawals as well as NRT releases.

Attack Vectors


Following are identified risks to be taken care of during the development of ESN:
Network Spamming: Attackers can purchase ES from the exchange and make a lot of transactions between two accounts. This is solved by involving gas fees. A setting of 200 nanoES minimum gas price will be set, which can be changed as per convenience.
DDoS: Attackers can query public nodes for computationally heavy output data. This will overload the public node with requests and genuine requests might get delayed. Block producers RPC is private, so they will continue to produce blocks. To manage user’s denial of service, the provider in dApps needs to be designed in such a way such that many public nodes will be queried simple information (let’s say latest block number) and the one which response quickly to user will be selected.
AWS is down: To minimize this issue due to cloud providers down, there will be enough nodes on multiple cloud providers to ensure at least one block producer is alive.
User deposit double spending: User deposits ES on Ethereum, gets ES-Na on ESN. Then the issue happens that there are re-org on ETH mainnet and the user’s transaction is reversed. Since ETH is not a fixed chain and as per PoW 51% attack can change the blocks. As Ethereum is now enough mature and by statistics forked blocks are at most of height 2. So it is safe to consider 15 confirmations.
Exit Game while smooth functioning: User starts a hard exit directly from Plasma Smart Contract on Ethereum, then spends his funds from the plasma chain too. To counter this, the exit game will be disabled, only when ESN halts, i.e. fails to submit block header within the time the exit game starts. This is because it is difficult to mark user’s funds as spent on ESN.
Vulnerability in Ecosystem Smart Contracts: Using traditional methods to deploy smart contracts results in a situation where if a bug is found later, it is not possible to change the code. Using a proxy construction for every ecosystem smart contract solves this problem, and changing a proxy can be given to a small committee in which 66% of votes are required, this is to prevent a malicious change of code due to compromising of a single account or similar scenario.
ChainID replay attacks: Using old and traditional ways to interact with dApps can cause loss to users, hence every dApp will be audited for the same.

Conclusion

Era Swap Network is an EVM-compatible sidechain attached to the Ethereum blockchain through Plasma Framework. This allows off-chain processing of Era Swap Ecosystem transactions and posting only the hash of the bunch to Ethereum. This greatly reduces the high network fee and confirmation time issues faced by the current Era Swap Ecosystem DApps deployed on Ethereum. Also, having a separate EVM-compatible blockchain tailored to Era Swap Ecosystem improves the user experience to a higher extent. Since by design, Plasma Framework makes the Era Swap Network as secure as the Ethereum Network, user's funds on the network would be secure as well.
We believe Era Swap Network will help scale dApps of Era Swap Ecosystem to onboard the increasing numbers of users.


Era Swap Ecosystem
Era Swap Ecosystem consist of multiple interlinked platforms which is powered by Era swap (ES) token, a decentralized utility token to be used on below utility platforms. Users can access the Platforms through Era Swap Life which is the Single Sign on (SSO) gateway to the one world of Era Swap Ecosystem.
Era Swap Life: https://eraswap.life/
TimeAlly DApp -> Decentralized Token Vesting: https://www.timeally.io/
BetDeEx -> Decentralized prediction platform: https://www.betdeex.com/
Swappers Wall -> Social Time Ledgerise: https://timeswappers.com/swapperswall
TimeSwappers -> Global P2P marketplace: https://timeswappers.com/
BuzCafe -> Connects local P2P outlets: https://buzcafe.com/
DaySwappers -> Unique Affiliate Program: https://dayswappers.com/
Era Swap Academy -> E-mart for skill development: https://eraswap.academy/
Value of Farmers (VOF) -> Farming ecosystem: http://valueoffarmers.org/ coming soon
ComputeEx -> P2P lending and borrowing: https://computeex.net/ coming soon
DateSwappers -> Next gen dating: coming soon
Smart Contract address

Era Swap Token (ES)
https://etherscan.io/address/0xef1344bdf80bef3ff4428d8becec3eea4a2cf574#code

Newly Released Token (NRT) https://etherscan.io/address/0x20ee679d73559e4c4b5e3b3042b61be723828d6c#code

TimeAlly DApp
https://etherscan.io/address/0x5630ee5f247bd6b61991fbb2f117bbeb45990876#code

BetDeEx DApp https://etherscan.io/address/0x42225682113E6Ed3616B36B4A72BbaE376041D7c#code
TSGAP DApp
https://etherscan.io/address/0xbad9af4db5401b7d5e8177a18c1d69c35fc03fd3#code

White Paper
Era Swap Whitepaper: https://eraswaptoken.io/pdf/eraswap_whitepaper.pdf
Era Swap Light Paper: https://eraswaptoken.io/pdf/eraswap_lightpaper.pdf

Howey Test
Howey Test: https://eraswaptoken.io/era-swap-howey-test-letter-august7-2018.php

Era Swap SOCIAL LINKS
Telegram: https://t.me/eraswap
Twitter: https://twitter.com/eraswaptec
Facebook: https://www.facebook.com/eraswap/
Instagram: https://www.instagram.com/eraswap/
BitcoinTalk: https://bitcointalk.org/index.php?topic=5025979.msg45502457
Youtube: https://www.youtube.com/channel/UCGCP4f5DF1W6sbCjS6y3T1g
LinkedIn: https://www.linkedin.com/company/eraswap/
Reddit: https://www.reddit.com/useEraSwap
Medium: https://medium.com/@eraswap
Tumblr: https://eraswap.tumblr.com/
Mix: https://mix.com/eraswap
Pinterest: https://www.pinterest.com/eraswapt/
GitHub: https://github.com/KMPARDS/EraSwapSmartContracts
submitted by EraSwap to u/EraSwap [link] [comments]

Blockchain/Bitcoin for beginners 7: Blockchain header: Merkle roots and SPV transaction verification Merkel Tree [BlockChain] Random Crypto-Currency Concept #1 - Merkle Trees Segwit (Bitcoin): Hashes and Merkle Trees explained What Are Merkle Trees? [Blockchain & Cryptocurrency (Bitcoin, Ethereum)]

The Merkle Tree is a cryptographic invention that is essential for the health and efficient functioning of cryptocurrencies like Bitcoin. It arranges the data for transactions on the blockchain into well organized, verifiable units. It is one of the best and most effective means that the cryptocurrency community has for making sure that digital currencies continue to be legitimate and do not ... Bitcoin merkle tree []. Hash trees can be used to verify any kind of data stored, handled and transferred in and between computers. Currently the main use of hash trees is to make sure that data blocks received from other peers in a peer-to-peer network are received undamaged and unaltered, and even to check that the other peers do not lie and send fake blocks. Hash-Baum (eng. Merkle tree) ist ein Baum, in dem jeder Blattknoten mit einem Datenblock beschriftet ist und jeder Nicht-Blattknoten mit dem kryptographischen Hash der Etiketten seiner Kindknoten markiert ist. Hash-Bäume erlauben eine effiziente und sichere Verifikation der Inhalte großer Datenstrukturen. Hash-Bäume sind eine Verallgemeinerung von Hash-Listen und Hash-Ketten. This is already in existing in Bitcoin. Ethereum takes the Merkle tree concept of Bitcoin implementation a step further. Every block header in Ethereum contains not just one Merkle tree, but three trees for three kinds of objects: Transactions. Receipts (essentially, pieces of data showing the effect of each transaction) State. Fig : Block Header in Ethereum. This allows for a highly-advanced ... Additionally, Bitcoin’s implementation of Merkle trees allows for pruning of the blockchain in order to save space. This is a result of only the root hash being stored in the block header, therefore, old blocks can be pruned by removing unnecessary branches of the Merkle tree while only preserving those needed for the Merkle proof. Implementation of Merkle Trees in Other Blockchains and ...

[index] [10310] [12519] [32931] [16436] [20970] [19579] [11449] [7362] [17807] [43997]

Blockchain/Bitcoin for beginners 7: Blockchain header: Merkle roots and SPV transaction verification

Using a concept called a Merkle tree - in this video I break it down in depth with a simple example and show how a SPV node (Simple Payment Verification) node that does not keep a full copy of the ... Live Bitcoin Liquidation Watch: May 22 2020 IntroToCryptos 191 watching Live now 8.01x - Lect 24 - Rolling Motion, Gyroscopes, VERY NON-INTUITIVE - Duration: 49:13. In diesem Tutorial sehen wir uns an, wie Merkle Trees bei Bitcoin eine Rolle spielen. Früherer Zugang zu Tutorials, Abstimmungen, Live-Events und Downloa... A brief non technical explanation of what these are and how bitcoin uses them, particularly in segwit. Today I talk about Merkle Trees and their application in crypto-currencies such as Bitcoin. If you liked this video please help support the creation of more.

#