submitted by D-platform to u/D-platform [link] [comments]
1. What is Bitcoin (BTC)?
2. Bitcoin’s core featuresFor a more beginner’s introduction to Bitcoin, please visit Binance Academy’s guide to Bitcoin.
Unspent Transaction Output (UTXO) modelA 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.
Nakamoto consensusIn 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.
Block productionThe 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.
Block time and mining difficultyBlock 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.
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:
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 NetworkLightning 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.
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 proposalElliptic Curve Digital Signature Algorithm (“ECDSA”) signatures are used to sign transactions on the Bitcoin blockchain.
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.
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 distributionThe 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.
Shreemoon Rajbhandarisubmitted by Shreemoon to loopringorg [link] [comments]
My Intern Experience
During my time as an undergraduate, one of the key experiences recommended is to do an internship. Gaining work experience as an intern overseas will improve a skill set in my area of interest. Working somewhere as culturally different and economically significant as China is a talking point in any interviews. There are many reasons that made me choose to do an internship in China. Definitively the best part of the experience has been living out of your comfort zone. Encountering new situations and experiences, that increase my self awareness, my capabilities and also to discover my weaknesses.
Over the past 2 years, we have seen many digital currencies/cryptocurrencies being introduced globally.These have added the aspect of using this financial ecosystem to eventually solve social issues. This could be the application of Blockchain technology in areas like logistics/supply chain to food security. Eventually, there would be many more areas where blockchain and related technology developers would be needed. It's emerging to change the way we solve the many roadblocks that we face.
Blockchain is considered to be one of the most trending topics. This is the right time for me to learn about the technology and start implementing. Blockchain is a notion that can be implemented directly or indirectly to any sector as such. Only two months prior, I had a minimal amount of knowledge about blockchain innovation, and my insight into blockchain comprised distinctly of an obscure comprehension of bitcoin and cryptographic money all in all.
During my internship, I was given investigation material to help assemble my base comprehension of Loopring and the blockchain innovation that it depends on. In the wake of beginning at Loopring, I have been given significantly more prominent chance to learn. While my comprehension of blockchain is still new, it has improved extensively since my first day at the organisation.
In this post, I would like to talk about two cryptographic methods aiming to give privacy to blockchain technology ; the zk-SNARKS and zk-STARKS protocols are two significant examples. We will look into their advantages and disadvantages, comparison between two protocols, and conclusion.
ZK-SNARKS vs ZK-STARKS
Along with the countless benefits of the Internet from which we can benefit, when we use it for social media or business company purposes, privacy is at greater risk. Approximately 90 million of Facebook users information were damaged by Cambridge Analytical data. The Wall Street stated that “ this is just the beginning, and the results are expected to grow”. The Equifax data breach revealed information on social media channels from private users. Thus, birth dates were exposed to the majority of the populations. Due to the Uber hack, data from over 55 million customers were also shared and exposed.
Privacy has consistently been seen as a valuable element within the cryptocurrency community. There is always a growing focus on improving privacy within the cryptocurrency space. Bitcoin, Ethereum, Litecoin and many other cryptocurrencies are all actively searching for the most convenient approaches to increase their security. It is the antecedent to fungibility, which is vital for a broadly used form of money. Additionally, most crypto-asset holders do not want their transaction history to be completely public to the world. Among the different cryptographic methods aiming to give privacy to blockchain technology; the zk-SNARK and zk-STARKS protocols are two main significant examples.
Two leading technologies today offer their cryptocurrencies - Monero and zcash— and strive to address protection issues. Monero uses the technology of Ring Confidential Signature. By contrast, Z-Cash uses zk-SNARK( Zero-Knowledge transparent knowledge argument), a technology that provides the ability to conduct anonymous transactions.
In recent years, zk-SNARKS has exploded as the most promising technology to solve blockchain privacy. It is a technology derived from proofs of zero-knowledge, a type of proof that anyone with a verification key can check this “proof” without disclosing the information itself. If the statement holds, a verifier will be convinced by a correct proof. If the statement is false, it is true that no prover can convince a verified statement.
zk-SNARK stands for :
- Zero-knowledge : if the statement is true, there is nothing the verifier learns beyond the fact that the statement is true.
- Succinct : The proof size needs to be small enough in a few milliseconds to be verified.
- Non-interactive :Only one set of information is sent to the verifier for verification, therefore there is no back and forth communication between the prover and verifier.
- Argument of Knowledge : A computationally soundproof: soundness runs counter to a prover leveraging polynomial-time, i.e. limited computing. Also, Without access to the witness (the private input needed to prove the statement), the evidence can not be constructed.
zk-SNARKS aims to provide fast, scalable solutions to ensure financial security. Therefore, transaction encryption is possible.When zk-SNARK is applied to a cryptocurrency, it implies you can conceal the majority of the transaction data information. This incorporates the sender address, collector address, just as the transaction sum amount. zk-SNARKS enables us to shroud the majority of this data information, while likewise enabling the system to affirm and verify the transactions. It amplifies security while maintaining consensus. In the realm of blockchain, it is one of the most exceptional blockchain level protection innovation being used.
With the launch of version 3.0, Loopring’s decentralised protocol solution struck a noteworthy milestone in early May- adding off-chain scaling and fee optimisation using zk-SNARKs. Low fees, liquidity, transparency and security are the key goal of the loopring solution. Loopring says the new Loopring 3.0 based zk-SNARK will increase trade speeds and on-chain activity efficiency tenfold. The data previously stored on-chain in Loopring 3.0 is now stored off-chain in a Merkle tree and then used as required in zk-SNARKS, updating the tree.
Be that as it may, there are a few issues with zk-SNARKS. The main problem has been the need for a trusted setup. zk-SNARKS rely on a permission private key. This essentially undermines the entire purpose of decentralised public blockchain. By introducing the need to trust a person rather than code, you threaten the entire concept of trustlessness. In theory, a prover with sufficient computational power could create fake proofs, and this is one of the reasons why many consider quantum computers as a threat to zk-SNARKs (and blockchain systems).
Last year zk-SNARKS were incorporated on a MIT Tech Review list of the top 10 Breakthrough Technologies of 2018 among AI advancements. zk-SNARKS allows both a tremendous speedup in verifying the correctness of a computation while at the same time it hides the private details from prying eyes. Some of the potential uses citied in MIT article were verifying you’re over 18 without having to share your date of birth, and providing you have a enough money in your back account as collateral without having to give away account details like your exact balance. It establishes trust which you need to interact on the blockchain. Zk-SNARK proofs are as of now being used on Zcash, on JP Morgan Pursue's blockchain-based payment system, and as an approach to safely validate customers to servers.
The more developed version of zk-SNARKS is called zk-STARKS which stands for :
Argument of Knowledge
zk-STARKS verifications are currently being touted as the better than ever form of the convention, tending to a considerable lot of the past disadvantages of zk-SNARKs. It has demonstrated an approach to accomplish a similar degree of privacy as zk-SNARKS without the requirement for the trusted setup. Starks are practically superior to Snarks as they require weaker crypto suppositions, they don't require a trusted setup and are post-quantum resistant. zk-SNARKs are based on Elliptic-Curve Cryptography, which is susceptible to advances in Quantum-Computers. zk-STARKs, on the other hand are Post-Quantum system meaning that even if Quantum-computers become powerful and ubiquitous they will not have an advantage, compared to classical computers, in breaking zk-STARKs. Anyway they have a noteworthy downside, as in the proof being too enormous. Their problem is their storage requirements. STARKs are doubly scalable, which means the proof verification is exponentially faster than the original computation’s time but the drawback is the size of the proof they create being too large, possibly 2 or 3 orders of magnitude more than those produced by zk-SNARKs. One example : StarkWare solves the inherent problems of scalability and privacy of blockchains. Using STARK technology, they generate a full proof-stack to produce and verify computer integrity tests. They utilise STARKs to batch transactions into a single proof that is verified on Ethereum. Matt Taylor states that the present iteration of StarkDEX demonstrates the viability of using STARKs for the scalability of Layer-2 by showing a substantial rise in the amount of blockchain transaction.
The idea of zk-STARKS was proposed by Eli-Ben Sasson, a professor at the Technion-Israel institute of Technology. zk-STARKS provide proofs that can be verified a lot quicker than zk-SNARKS. At the present time, Z-cash and Ethereum are on the whole considering to utilize zk-STARKS. zk-STARKS have solved the trusted setup issue. They have totally expel the requirement for multiple parties to create the private key required for the string. Rather everything needed to produce the proofs is public and the verifications are generated from arbitrary numbers. zk-STARKS actually removed the necessity in zk-SNARKS for unbalanced cryptography and rather utilizes the hash fuctions like those found in Bitcoin mining. In addition, they ought to have longer timeframe of realistic usability as far as their crytographic resilience than zk-SNARKS. However, there are some impediment of zk-STARKS, the main issue with zk-STARKS is their size. The verifications it uses are basically too enormous to use in many blockchains as they stand. As indicated by Vitalik Buterin, zk-STARKS will result in proofs of a couple of hundreds kilobytes versus the 288 bytes seen in zk-SNARKS.
The Difference Between zk-STARKS and zk-SNARKS.
Source : The Medium - Coinmonks
The complexity of communication : With the computation’s expanded complexity, the zk-SNARKS communication complexity also increases linearly, whereas zk-STARKs develops in the opposite direction and grows slowly as the computation size grows.The graph above shows that the communication required by the zk-STARKs to complete the calculation rises much slower than zk-snarks as the underlying evidence increases in complexity.
Source : The Medium - Coinmonks
The complexity of the verifier : zk-STARKs slightly widening with the development in computation size. On the other side, for confirmation evidence, zk-SNARKs requires less time than zk-STARKs. zk-STARKs, for instance need up to 100 ms to verify and zk-SNARKs need only up to 10ms. The graph above illustrates the the time taken by the zk-STARK to verify an evidence rises very slowly compared to the zk-SNARK as the underlying evidence increases in complexity.
Overall these two protocols have excellent potential in the cryptocurrency globe and can be a breakthrough avenue for mainstream implementation. Both conventions are truly needed steps to protect our privacy.
Handshake was established by Joseph Poon, the founder of Bitcoin Lightning Network, Christopher Jeffrey, and Andrew Lee, both from the Purse project. The team has optimized Merkle Tree. The developers succeed in making the Flat File Merkle Tree (FFMT) that speeds up the search, insert, and delete operations of Merkle Tree. Merkle Tree – Definition und Nutzen. In der Kryptographie und Informatik ist ein Hash-Baum oder Merkle-Tree ein Baum, in dem jeder Blattknoten mit dem Hash eines Datenblocks und jeder Nicht-Blattknoten mit dem kryptographischen Hash der Labels seiner Kindknoten beschriftet ist.. Hash Trees ermöglichen eine effiziente und sichere Verifikation der Inhalte großer Datenstrukturen. MerkleTree: A tree in which ... Recently, Changpen Zhao, the CEO of Binance, announced that a Binance Mining Pool would soon arrive. A big player, which step by step takes a lot of space in the crypto indsutry (binance bought CoinMarkertcap). The following list shows the main Bitcoin mining pools in the world: AntPool (25.2%), BTC.TOP (11.2%), BTC.com (10.2%), Bixin (8.1%), BTCC Pool (7.3% ... MERKLE TREES. Merkle trees are used in both Bitcoin and Ethereum and serve as a core fundamental component in blockchain networks. A “merkle tree” is a structure that allows for the verification of transactions through use of large historical transaction data for given blockchain networks. The miners take the transactions (or their Merkle tree) ... from Bitcoin mining in 2013. ASICs are computer chips that have been specially developed by Bitcoin for mining. They cannot perform any other function. With the emergence of entire mining farms using ASICs, the hash power and mining difficulty of the Bitcoin network became too great to mine Bitcoin as an individual. The Bitcoin Mining ... Many Bitcoin investors will never know how a Merkle Tree works or even what it is. But, if you are the kind of person that really likes to know how something works then this is a good starting point. As you delve deeper into Merkle Trees and what they mean to the blockchain, you are also going to need to become familiar with things like nodes and how Bitcoin transactions are processed. Why are Merkle roots used in Bitcoin? There are a handful of use cases for Merkle trees, but here we will focus on their importance in blockchains.Merkle trees are essential in Bitcoin and many other cryptocurrencies. They’re an integral component of every block, where they can be found in the block headers.To get the leaves for our tree, we use the transaction hash (the TXID) of every ... Zcoin Merkle Tree Proof Mining Algorithm to Fight Against the Specialized ASIC Crypto Machines. by Bitcoin Exchange Guide News Team. December 7, 2018. Home Cryptocurrency News Bitcoin News. Facebook. Twitter. Telegram. ReddIt. Linkedin. Email. Zcoin, a crypto focussed on anonymity, might not be a top coin, not even in the top 100 in fact, with a modest market capitalization of just over $28 ... Cartoon: There’s a lot of Monies in Merkle Trees The post Cartoon: Lots of Monies in Merkle Trees appeared first on BitcoinNews.com . This entry was posted in Bitcoin News , BitcoinNews.com , Blockchain , cartoon , Cartoon Corner , Cryptocurrency , merkle , merkle tree , News on January 24, 2019 by adminbtc . Mining Difficulty Target; Nonce; Merkle Root Hash; The image below is from the Bitcoin whitepaper and illustrates how the Merkle tree fits into each block. The transactions are included into blocks by miners and are hashed as part of a Merkle tree, leading to the Merkle root that is stored in the block header. This design has a number of distinct benefits. Most notably, as outlined in the ...
[index]          
Medium: https://medium.com/@benjaminhall/ Telegram: /cryptocatchup Twitter: /crypto_catchup Website: https://cryptocatchup.com Linkedin - https://www.linkedi... About Merkle Trees, used for Efficient Data Verification. In today's episode Nick... branches out and discusses Merkle Tree, that's all I've got for this one. ===== I'm not a financial adviser. Do ... Bitcoin Mining Explained in Detail: Nonce, Merkle Root, SPV,... Part 15 Cryptography Crashcourse Part 15 Cryptography Crashcourse Dr. Julian Hosp - Bitcoin, Aktien, Gold und Co. Coinomia Bitcoin Mining Crypto Domination PRE LAUNCH ... Easily Make $100 Day Trading Cryptocurrency On Binance Beginner - Duration: 16:24. CryptoJack 222,826 views. 16:24. How to CORRECTLY Solder ... Bitcoin rebounded recently, however that does not erase the debts of the longest bear market in cryptocurrency history. Here is the latest crypto news! Subsc... Lets talk about Bitcoin and what I THINK caused the recent jump in price - enjoy! Add me on Instagram: GPStephan The YouTube Creator Academy: Learn EXACTLY h... Bitcoin 101 - Merkle Roots and Merkle Trees - Bitcoin Coding and Software - The Block Header - Duration: 24:18. ... Hashes with Mining and Merkle trees - Duration: 3:24. Chainthat 233,564 views. 3 ...