Bitcoin Mining Calculator CoinWarz

ACIS-mining and its 3 best algorithms

ACIS-mining and its 3 best algorithms
Hello. 👋🏻 Today we will tell you about ACIS-mining and its 3 best algorithms.
📌 With the advent of ASICs for mining, it became possible to mine Bitcoin in much larger quantities than using video cards. ASIC is an integrated circuit specialized to solve a specific problem, in our case, only for bitcoin mining. These schemes are many times more profitable than video cards, because with more power (hash calculation speed) they consume much less energy. This served as a good reason to create a cryptocurrency mining business.
📌 In bitcoin and other blockchain systems, the complexity of mining depends on how quickly the miners find the block. Compared with the GPU and CPU, specialized #ASIC miners solve #PoW puzzles better and are therefore able to quickly find new blocks.
📌 Since PoW is still the preferred mining consensus mechanism, we propose to take a multiple algorithm approach. Instead of trying to use algorithms which are ASIC resistant, we propose to use algorithms which have had ASIC miners for quite some time. These are: #SHA256, #Scrypt, and #X11.
🔹 The SHA-256 algorithm has a number of advantages over other information protection technologies. Over the years of use in the cryptocurrency industry, he has shown his resistance to various hacking attempts.
🔹 Scrypt is a cryptocurrency mining algorithm that was previously interesting to many single miners in view of its resistance to the so-called “hardware attack”. The speed of creating blocks in a Scrypt-based blockchain is about 30 seconds. The hashrate, like Ethash, is measured in Megahash per second. Scrypt, first of all, became popular due to its use in Litecoin #cryptocurrency.
🔹 X11 is an encryption algorithm in which eleven are used instead of one function. This means that this technology can provide a high degree of security, because in order to harm the system, an attacker will have to crack all 11 functions, which is very unlikely, because the changes made will be visible after breaking the first function, and developers will have a lot of time to protect the system before the hacker reaches the eleventh function.
Since these miners are already in wide use, the distribution of mining should be fair and even. Furthermore, the use of three different algorithms results in a far less chance of any single person gaining a majority hash rate share. Lastly, we use the Multishield difficulty adjustment algorithm to prevent difficulty spike issues resulting from burst mining.
Read more about PYRK mining solutions here: https://www.pyrk.org
Read our Whitepaper to know more about the project:
https://www.pyrk.org/Pyrk-Whitepaper.pdf
https://preview.redd.it/rxmlr7wt1k251.png?width=1200&format=png&auto=webp&s=162f9ddaacb3cf3e137638464a208bdf25e50a21
submitted by VS_community to pyrk [link] [comments]

Step by Step Guide to Starting Smart Mining of ViaBTC

Step by Step Guide to Starting Smart Mining of ViaBTC
In order to help our miners to get the best possible profits, now we present you the step by step guide to starting Smart Mining of ViaBTC. No time for hesitation, try Smart Mining now!
Smart mining consists of two different mining modes, namely as “Manual Switch” and “Auto Switch”.
Auto Switch provides an automated way of profitable mining using the designated algorithm to monitor the real-time status of possible returns. In comparison to manual switch, it’s more flexible and easier to keep tracking of your mining returns.
1.
Enable Auto Switch
It now supports BTC、BCH and BSV, besides, your assets in your account can also be converted into BTC on an hourly basis automatically.
Before enabling auto switch mode, you’re required to configure smart mining URL: stratum+tcp://bitcoin.viabtc.com:3333;
Enable Manual Switch
This supports Bitcoin pool (BTC, BCH, BSV, FCH) and Ethereum pool (ETH, ETC).
One-click switch address is different from the stratum URL for a specified coin. Details for one-click switch URL are listed as following: BTC/BCH/BSV/FCH: stratum+tcp://bitcoin.viabtc.com:3333 ETH/ETC: stratum+tcp://ethereum.viabtc.com:3333 Noted: Port 25 or 443 is available as an alternative option.
2.
Go to www.viabtc.com then click [Settings] from the drop-down menu on your right hand side.
https://preview.redd.it/6rvece3anm551.png?width=1400&format=png&auto=webp&s=bf1365d690542a9d49712fecf1c117e5e94c74f4
Click [Switch mining pool] under the [Mining Settings] to select a new coin type.

https://preview.redd.it/8ag76racnm551.png?width=1400&format=png&auto=webp&s=2b79ffb7dfde4e0b7ab51bb584815a1b8b91f30c
Select “Mode” and “Coin Type”
https://preview.redd.it/7zmjh3ienm551.png?width=1400&format=png&auto=webp&s=2c2ff5f99265402def95717f4a28de71ffe17b32
Frequently Asked Questions
What is the unique feature of Auto Switch compares to Manual Switch? It’s more flexible and easy to set up, SHA-256 mining algorithm compatible.
How long will it take to be activated after enabling Auto Switch? Once Auto Switch is on, system will monitor the possible return rate of all compatible coins using a designated algorithm and switch to the one with higher profits, you may go to the Pool panel for more accurate mining status.
Why I can’t see my earnings increased after enabling Auto Switch mode? Auto Switch mode demands high-efficiency when it switch between the current mined coins to the new one with possible high returns, specified using designated algorithm and current difficulty, thus it’s not a guarantee pass for high returns when “Auto Switch” is on.
Is there any requirements of MIN. limit of hashrate before enabling Auto Switch? There is no minimum limit of hashrate in your account before enabling Auto Switch in your account.
Which type of coins are supported in Auto Switch mode? Currently all types of coins in Bitcoin Pool are supported in Auto Switch mode, including BTC, BCH and BSV.
When will the mining rewards distributed to my account? Rewards distribution are varies for different mining modes, and distribution time remained unchanged compares to the one in Manual Switch mode.
Can I use part of hashrate to mine a designated coin after enabling Auto Switch? After enabling Auto Switch, hashrate connecting to your account will switch from one to the other automatically using a designated algorithm.
Will I receive hashrate fluctuation notification after enabling Auto Switch? You’re required to set hashrate fluctuation notification for all compatible coins by the time enabling Auto Switch, more detailed guideline can be found here.
How to check your current mining preference?
Go to www.viabtc.com first then enter [Pool] panel to check your current mining preference.
When should I change my mining preference?
It is recommended to use profit calculator to get a general idea of the theoretical earnings outcome when selecting mining preference.
submitted by ViaBTC to BitcoinMining [link] [comments]

Review and Prospect of Crypto Economy-Development and Evolution of Consensus Mechanism (2)

Review and Prospect of Crypto Economy-Development and Evolution of Consensus Mechanism (2)

https://preview.redd.it/a51zsja94db51.png?width=567&format=png&auto=webp&s=99e8080c9e9b1fb5e11cbd70f915f9cb37188f81
Foreword
The consensus mechanism is one of the important elements of the blockchain and the core rule of the normal operation of the distributed ledger. It is mainly used to solve the trust problem between people and determine who is responsible for generating new blocks and maintaining the effective unification of the system in the blockchain system. Thus, it has become an everlasting research hot topic in blockchain.
This article starts with the concept and role of the consensus mechanism. First, it enables the reader to have a preliminary understanding of the consensus mechanism as a whole; then starting with the two armies and the Byzantine general problem, the evolution of the consensus mechanism is introduced in the order of the time when the consensus mechanism is proposed; Then, it briefly introduces the current mainstream consensus mechanism from three aspects of concept, working principle and representative project, and compares the advantages and disadvantages of the mainstream consensus mechanism; finally, it gives suggestions on how to choose a consensus mechanism for blockchain projects and pointed out the possibility of the future development of the consensus mechanism.
Contents
First, concept and function of the consensus mechanism
1.1 Concept: The core rules for the normal operation of distributed ledgers
1.2 Role: Solve the trust problem and decide the generation and maintenance of new blocks
1.2.1 Used to solve the trust problem between people
1.2.2 Used to decide who is responsible for generating new blocks and maintaining effective unity in the blockchain system
1.3 Mainstream model of consensus algorithm
Second, the origin of the consensus mechanism
2.1 The two armies and the Byzantine generals
2.1.1 The two armies problem
2.1.2 The Byzantine generals problem
2.2 Development history of consensus mechanism
2.2.1 Classification of consensus mechanism
2.2.2 Development frontier of consensus mechanism
Third, Common Consensus System
Fourth, Selection of consensus mechanism and summary of current situation
4.1 How to choose a consensus mechanism that suits you
4.1.1 Determine whether the final result is important
4.1.2 Determine how fast the application process needs to be
4.1.2 Determining the degree to which the application requires for decentralization
4.1.3 Determine whether the system can be terminated
4.1.4 Select a suitable consensus algorithm after weighing the advantages and disadvantages
4.2 Future development of consensus mechanism
Last lecture review: Chapter 1 Concept and Function of Consensus Mechanism plus Chapter 2 Origin of Consensus Mechanism
Chapter 3 Common Consensus Mechanisms (Part 1)
Figure 6 Summary of relatively mainstream consensus mechanisms
📷
https://preview.redd.it/9r7q3xra4db51.png?width=567&format=png&auto=webp&s=bae5554a596feaac948fae22dffafee98c4318a7
Source: Hasib Anwar, "Consensus Algorithms: The Root Of The Blockchain Technology"
The picture above shows 14 relatively mainstream consensus mechanisms summarized by a geek Hasib Anwar, including PoW (Proof of Work), PoS (Proof of Stake), DPoS (Delegated Proof of Stake), LPoS (Lease Proof of Stake), PoET ( Proof of Elapsed Time), PBFT (Practical Byzantine Fault Tolerance), SBFT (Simple Byzantine Fault Tolerance), DBFT (Delegated Byzantine Fault Tolerance), DAG (Directed Acyclic Graph), Proof-of-Activity (Proof of Activity), Proof-of- Importance (Proof of Importance), Proof-of-Capacity (Proof of Capacity), Proof-of-Burn ( Proof of Burn), Proof-of-Weight (Proof of Weight).
Next, we will mainly introduce and analyze the top ten consensus mechanisms of the current blockchain.
》POW
-Concept:
Work proof mechanism. That is, the proof of work means that it takes a certain amount of computer time to confirm the work.
-Principle:
Figure 7 PoW work proof principle
📷
https://preview.redd.it/xupacdfc4db51.png?width=554&format=png&auto=webp&s=3b6994641f5890804d93dfed9ecfd29308c8e0cc
The PoW represented by Bitcoin uses the SHA-256 algorithm function, which is a 256-bit hash algorithm in the password hash function family:
Proof of work output = SHA256 (SHA256 (block header));
if (output of proof of work if (output of proof of work >= target value), change the random number, recursive i logic, continue to compare with the target value.
New difficulty value = old difficulty value* (time spent by last 2016 blocks /20160 minutes)
Target value = maximum target value / difficulty value
The maximum target value is a fixed number. If the last 2016 blocks took less than 20160 minutes, then this coefficient will be small, and the target value will be adjusted bigger, if not, the target value will be adjusted smaller. Bitcoin mining difficulty and block generation speed will be inversely proportional to the appropriate adjustment of block generation speed.
-Representative applications: BTC, etc.
》POS
-Concept:
Proof of stake. That is, a mechanism for reaching consensus based on the holding currency. The longer the currency is held, the greater the probability of getting a reward.
-Principle:
PoS implementation algorithm formula: hash(block_header) = Coin age calculation formula: coinage = number of coins * remaining usage time of coins
Among them, coinage means coin age, which means that the older the coin age, the easier it is to get answers. The calculation of the coin age is obtained by multiplying the coins owned by the miner by the remaining usage time of each coin, which also means that the more coins you have, the easier it is to get answers. In this way, pos solves the problem of wasting resources in pow, and miners cannot own 51% coins from the entire network, so it also solves the problem of 51% attacks.
-Representative applications: ETH, etc.
》DPoS
-Concept:
Delegated proof of stake. That is, currency holding investors select super nodes by voting to operate the entire network , similar to the people's congress system.
-Principle:
The DPOS algorithm is divided into two parts. Elect a group of block producers and schedule production.
Election: Only permanent nodes with the right to be elected can be elected, and ultimately only the top N witnesses can be elected. These N individuals must obtain more than 50% of the votes to be successfully elected. In addition, this list will be re-elected at regular intervals.
Scheduled production: Under normal circumstances, block producers take turns to generate a block every 3 seconds. Assuming that no producer misses his order, then the chain they produce is bound to be the longest chain. When a witness produces a block, a block needs to be generated every 2s. If the specified time is exceeded, the current witness will lose the right to produce and the right will be transferred to the next witness. Then the witness is not only unpaid, but also may lose his identity.
-Representative applications: EOS, etc.
》DPoW
-Concept:
Delayed proof of work. A new-generation consensus mechanism based on PoB and DPoS. Miners use their own computing power, through the hash algorithm, and finally prove their work, get the corresponding wood, wood is not tradable. After the wood has accumulated to a certain amount, you can go to the burning site to burn the wood. This can achieve a balance between computing power and mining rights.
-Principle:
In the DPoW-based blockchain, miners are no longer rewarded tokens, but "wood" that can be burned, burning wood. Miners use their own computing power, through the hash algorithm, and finally prove their work, get the corresponding wood, wood is not tradable. After the wood has accumulated to a certain amount, you can go to the burning site to burn the wood. Through a set of algorithms, people who burn more wood or BP or a group of BP can obtain the right to generate blocks in the next event segment, and get rewards (tokens) after successful block generation. Since more than one person may burn wood in a time period, the probability of producing blocks in the next time period is determined by the amount of wood burned by oneself. The more it is burned, the higher the probability of obtaining block rights in the next period.
Two node types: notary node and normal node.
The 64 notary nodes are elected by the stakeholders of the dPoW blockchain, and the notarized confirmed blocks can be added from the dPoW blockchain to the attached PoW blockchain. Once a block is added, the hash value of the block will be added to the Bitcoin transaction signed by 33 notary nodes, and a hash will be created to the dPow block record of the Bitcoin blockchain. This record has been notarized by most notary nodes in the network. In order to avoid wars on mining between notary nodes, and thereby reduce the efficiency of the network, Komodo designed a mining method that uses a polling mechanism. This method has two operating modes. In the "No Notary" (No Notary) mode, all network nodes can participate in mining, which is similar to the traditional PoW consensus mechanism. In the "Notaries Active" mode, network notaries use a significantly reduced network difficulty rate to mine. In the "Notary Public Activation" mode, each notary public is allowed to mine a block with its current difficulty, while other notary public nodes must use 10 times the difficulty of mining, and all normal nodes use 100 times the difficulty of the notary public node.
Figure 8 DPoW operation process without a notary node
📷
https://preview.redd.it/3yuzpemd4db51.png?width=500&format=png&auto=webp&s=f3bc2a1c97b13cb861414d3eb23a312b42ea6547
-Representative applications: CelesOS, Komodo, etc.
CelesOS Research Institute丨DPoW consensus mechanism-combustible mining and voting
》PBFT
-Concept:
Practical Byzantine fault tolerance algorithm. That is, the complexity of the algorithm is reduced from exponential to polynomial level, making the Byzantine fault-tolerant algorithm feasible in practical system applications.
-Principle:
Figure 9 PBFT algorithm principle
📷
https://preview.redd.it/8as7rgre4db51.png?width=567&format=png&auto=webp&s=372be730af428f991375146efedd5315926af1ca
First, the client sends a request to the master node to call the service operation, and then the master node broadcasts other copies of the request. All copies execute the request and send the result back to the client. The client needs to wait for f+1 different replica nodes to return the same result as the final result of the entire operation.
Two qualifications: 1. All nodes must be deterministic. That is to say, the results of the operation must be the same under the same conditions and parameters. 2. All nodes must start from the same status. Under these two limited qualifications, even if there are failed replica nodes, the PBFT algorithm agrees on the total order of execution of all non-failed replica nodes, thereby ensuring security.
-Representative applications: Tendermint Consensus, etc.
Next Lecture: Chapter 3 Common Consensus Mechanisms (Part 2) + Chapter 4 Consensus Mechanism Selection and Status Summary
CelesOS
As the first DPOW financial blockchain operating system, CelesOS adopts consensus mechanism 3.0 to break through the "impossible triangle", which can provide high TPS while also allowing for decentralization. Committed to creating a financial blockchain operating system that embraces supervision, providing services for financial institutions and the development of applications on the supervision chain, and formulating a role and consensus ecological supervision layer agreement for supervision.
The CelesOS team is dedicated to building a bridge between blockchain and regulatory agencies/financial industry. We believe that only blockchain technology that cooperates with regulators will have a real future. We believe in and contribute to achieving this goal.

📷Website
https://www.celesos.com/
📷 Telegram
https://t.me/celeschain
📷 Twitter
https://twitter.com/CelesChain
📷 Reddit
https://www.reddit.com/useCelesOS
📷 Medium
https://medium.com/@celesos
📷 Facebook
https://www.facebook.com/CelesOS1
📷 Youtube
https://www.youtube.com/channel/UC1Xsd8wU957D-R8RQVZPfGA
submitted by CelesOS to u/CelesOS [link] [comments]

Can someone explain me in simple terms what exactly is "solving a hard mathematical problem" in relation to bitcoin miners?

I have read several blogs and several small books but none of the book could explain easily how does exactly a bitcoin generated. I know the following things:
  1. After every 10 minutes, a block is generated which contains all the transactions that happened since the last block got verified.
  2. All the miners try to verify the newly generated block. It's a hard mathematical problem which requires extensive computation. The miner which solves that problem gets 12.5 Btc in reward.
I am confused about that mathematical problem. What is that? Is it finding a key by brute force method for the newly generated hash of the newly generated block? Why is it so hard? Is it because the hash generated becomes longer and longer as the number of transactions have increased? Or is the hash generated contains all knowledge of the transaction since the first bitcoin generated?
Can some one explain me in simple terms? I want to make other people understand the value of bitcoin but get confused myself while explaining them.
P.S. I am a technical person and have no difficulty in understanding the mathematics.
submitted by kumartarun to Bitcoin [link] [comments]

The 8 Skills to Be a Good Miner

Many people may feel quite confused about their low profit now. Maybe you forget to think about the small details when you are mining. Small little details will make big difference in your final income.
Now, i want to share you the 8 skills to improve your benefits.
1, Get a cheaper power
Everyone knows the power is the most charge in mining, if we can find a cheaper electricity, it will be good. So, how to get a cheaper electricity?
55% of the mining is in China, and 40% of the mining is in Sichuan China. Why? Because there are many hydroelectric power station in there. So, you can find a place near the station and get a cheaper electricity from them.
If you can find free electricity, it is the best anyway
2, Choose low w/t machine
As you know, low comsuption machine is very popular those days, like S17 pro 53t, T17 42t. They are 7nm technical, the w/t is low and it can even overclock, it maybe a good choice. Also, we need to consider the price of machine.
Cheap price machine means fast ROI, But low W/T machine has a bright future.
3, Buy miner when BTC begin to raise after long drop
When BTC price keep falling, of course the machine will be cheaper and cheaper. When the BTC price begin to raise, we can buy miner at that time, because the price is the cheapset and you can earn money back soon.
Normally at that time, the good machine will be sold out quickly, when the market feedback that those machine are good, you may be late to get the chance. So, make your plan for purchasing before, when price down, get them.
4, Do not forget BCH, BSV, ZEN coin
Do remember SHA-256 Algorithm can mining BCH and BSV as well. Sometimes those coin may get even a better profits than BTC.
Some miner has auto setting for BTC, but you can choose BSV and BCH mining if you set it,
5, Notice the half reward period information
Because the half reward time is coming in 2020, there will be a chance or a risk for it. Many low hashrate machine may be out of the style and high hashrate will be more competitive.
Low your risk and not to buy those cheap machine now
6, Choose a good future crypto currency
There are many coins in this field now, we need to analyse and find a better direction for mining. Like Z11, many people use it for ZEN mining nowadays, and their benefits is top now.
Also, people buy many S17, it can earn money back before next year half reward time. And they believe the BTC price will increase creazily as last two times.
7, Make plan for your selling of coin or machine
As you know, the price of the BTC changes everytime, we can mining the BTC first and keep it in hand, do not sell it every day. It is very stupid. Just sell it when price high, you do not need to take any risk if you do not buy BTC directy. We do not need to care about the low price situation, we only need to wait. When chance come, get it.
Same for machine
8. Don't be fooled by the mining calculator
Many sites calculate mining profits based on hardware and electricity prices. If you've never mined before, you might be happy to see the numbers provided by these websites and calculators and think, "I'll make a fortune!"
However, these websites don't tell you: in addition to the cost of electricity, there may be other current costs, such as maintenance, cooling, rent, labor, etc. Generally, the hash rate and power consumption of the device are slightly different from what the factory says.
This difference is more common in unpopular brands. You can better understand the actual hash rate and the actual power consumption by watching the miner test video on YouTube. In addition, depending on the distance from the meter to the device and the type of cable used, the power loss from the meter to the device can be as high as 200 watts.
In addition to the cost of mining machines, some initial costs are required to prepare the infrastructure, such as cooling and venting, cabling and distribution, shelves, network and monitoring equipment, safety measures, etc.
The network difficulty is constantly changing and increasing at a significant speed, which directly affects the mining revenue. You can check the bitcoin network difficulty chart to see its growth rate, but your miner will not always be 100% active.
Due to maintenance, network problems, ore pool problems, power problems and many other problems, the miner may be offline for several hours. I suggest that you consider setting the normal operation time of the miner to less than 97% when calculating. We have rich mining experience in professional ore pools, and the normal operation time of these mining machines will not exceed 97-98%.
Thats all, hope those information will help you become a good mining investor.
submitted by 15Ansel to BitcoinMining [link] [comments]

How to Create Your Own Cryptocurrency Using Python 2020

A blockchain is a public database that irreversibly documents and authenticates the possession and transmission of digital assets. Digital currencies, like Bitcoin and Ethereum, are based on this concept. Blockchain is an exciting technology that you can use to transform the capabilities of your applications.
Of late, we’ve been seeing governments, organizations, and individuals using the blockchain technology to create their own cryptocurrencies—and avoid being left behind. Notably, when Facebook proposed its own cryptocurrency, called Libra, the announcement stirred many waters across the world.

What if you could also follow suit and create your own version of a cryptocurrency?

I thought about this and decided to develop an algorithm that creates a crypto.
I decided to call the cryptocurrency fccCoin.
In this tutorial, I’m going to illustrate the step-by-step process I used to build the digital currency (I used the object-oriented concepts of the Python programming language).
Here is the basic blueprint of the blockchain algorithm for creating the fccCoin:
class Block: def __init__(): #first block class pass def calculate_hash(): #calculates the cryptographic hash of every block class BlockChain: def __init__(self): # constructor method pass def construct_genesis(self): # constructs the initial block pass def construct_block(self, proof_no, prev_hash): # constructs a new block and adds it to the chain pass u/staticmethod def check_validity(): # checks whether the blockchain is valid pass def new_data(self, sender, recipient, quantity): # adds a new transaction to the data of the transactions pass u/staticmethod def construct_proof_of_work(prev_proof): # protects the blockchain from attack pass u/property def last_block(self): # returns the last block in the chain return self.chain[-1]
Now, let me explain what is taking place…
1. Building the first Block class A blockchain comprises of several blocks that are joined to each other (that sounds familiar, right?).
The chaining of blocks takes place such that if one block is tampered with, the rest of the chain becomes invalid.
In applying the above concept, I created the following initial block class
import hashlib import time class Block: def __init__(self, index, proof_no, prev_hash, data, timestamp=None): self.index = index self.proof_no = proof_no self.prev_hash = prev_hash self.data = data self.timestamp = timestamp or time.time() u/property def calculate_hash(self): block_of_string = “{}{}{}{}{}”.format(self.index, self.proof_no, self.prev_hash, self.data, self.timestamp) return hashlib.sha256(block_of_string.encode()).hexdigest() def __repr__(self): return “{} – {} – {} – {} – {}”.format(self.index, self.proof_no, self.prev_hash, self.data, self.timestamp)
As you can see from the code above, I defined the __init__() function, which will be executed when the Block class is being initiated, just like in any other Python class.
I provided the following parameters to the initiation function:
self—this refers to the instance of the Block class, making it possible to access the methods and attributes associated with the class; index—this keeps track of the position of the block within the blockchain; proof_no—this is the number produced during the creation of a new block (called mining); prev_hash—this refers to the hash of the previous block within the chain; data—this gives a record of all transactions completed, such as the quantity bought; timestamp—this places a timestamp for the transactions. The second method in the class, calculate_hash, will generate the hash of the blocks using the above values. The SHA-256 module is imported into the project to assist in obtaining the hashes of the blocks.
After the values have been inputted into the cryptographic hash algorithm, the function will return a 256-bit string representing the contents of the block.
This is how security is achieved in blockchains—every block will have a hash and that hash will rely on the hash of the previous block.
As such, if someone tries to compromise any block in the chain, the other blocks will have invalid hashes, leading to disruption of the entire blockchain network.
Ultimately, a block will look like this:
{ “index”: 2, “proof”: 21, “prev_hash”: “6e27587e8a27d6fe376d4fd9b4edc96c8890346579e5cbf558252b24a8257823”, “transactions”: [ {‘sender’: ‘0’, ‘recipient’: ‘Quincy Larson’, ‘quantity’: 1} ], “timestamp”: 1521646442.4096143 }
2. Building the Blockchain class The main idea of a blockchain, just as the name implies, involves “chaining” several blocks to one another.
Therefore, I’m going to construct a Blockchain class that will be useful in managing the workings of the whole chain. This is where most of the action is going to take place.
The Blockchain class will have various helper methods for completing various tasks in the blockchain.
Let me explain the role of each of the methods in the class.
a. Constructor method This method ensures the blockchain is instantiated.
class BlockChain: def __init__(self): self.chain = [] self.current_data = [] self.nodes = set() self.construct_genesis()
Here are the roles of its attributes:
b. Constructing the genesis block The blockchain requires a construct_genesis method to build the initial block in the chain. In the blockchain convention, this block is special because it symbolizes the start of the blockchain.
In this case, let’s construct it by simply passing some default values to the construct_block method.
I gave both proof_no and prev_hash a value of zero, although you can provide any value you want.
def construct_genesis(self): self.construct_block(proof_no=0, prev_hash=0) def construct_block(self, proof_no, prev_hash): block = Block( index=len(self.chain), proof_no=proof_no, prev_hash=prev_hash, data=self.current_data) self.current_data = [] self.chain.append(block) return block
c. Constructing new blocks
The construct_block method is used for creating new blocks in the blockchain.
Here is what is taking place with the various attributes of this method:
d. Checking validity
The check_validity method is important in assessing the integrity of the blockchain and ensuring anomalies are absent.
As mentioned earlier, hashes are essential for the security of the blockchain as even the slightest change in the object will lead to the generation of a completely new hash.
Therefore, this check_validity method uses if statements to check whether the hash of every block is correct.
It also verifies if every block points to the right previous block, through comparing the value of their hashes. If everything is correct, it returns true; otherwise, it returns false.
u/staticmethod def check_validity(block, prev_block): if prev_block.index + 1 != block.index: return False elif prev_block.calculate_hash != block.prev_hash: return False elif not BlockChain.verifying_proof(block.proof_no, prev_block.proof_no): return False elif block.timestamp <= prev_block.timestamp: return False return True
e. Adding data of transactions
The new_data method is used for adding the data of transactions to a block. It’s a very simple method: it accepts three parameters (sender’s details, receiver’s details, and quantity) and append the transaction data to self.current_data list.
Anytime a new block is created, this list is allocated to that block and reset once more as explained in the construct_block method.
Once the transaction data has been added to the list, the index of the next block to be created is returned.
This index is calculated by adding 1 to the index of the current block (which is the last in the blockchain). The data will assist a user in submitting the transaction in future.
def new_data(self, sender, recipient, quantity): self.current_data.append({ ‘sender’: sender, ‘recipient’: recipient, ‘quantity’: quantity }) return True
f. Adding proof of work
Proof of work is a concept that prevents the blockchain from abuse. Simply, its objective is to identify a number that solves a problem after a certain amount of computing work is done.
If the difficulty level of identifying the number is high, it discourages spamming and tampering with the blockchain.
In this case, we’ll use a simple algorithm that discourages people from mining blocks or creating blocks easily.
u/staticmethod def proof_of_work(last_proof): ”’this simple algorithm identifies a number f’ such that hash(ff’) contain 4 leading zeroes f is the previous f’ f’ is the new proof ”’ proof_no = 0 while BlockChain.verifying_proof(proof_no, last_proof) is False: proof_no += 1 return proof_no u/staticmethod def verifying_proof(last_proof, proof): #verifying the proof: does hash(last_proof, proof) contain 4 leading zeroes? guess = f'{last_proof}{proof}’.encode() guess_hash = hashlib.sha256(guess).hexdigest() return guess_hash[:4] == “0000”
g. Getting the last block
Lastly, the latest_block method is a helper method that assists in obtaining the last block in the blockchain. Remember that the last block is actually the current block in the chain.
u/property def latest_block(self): return self.chain[-1]
Let’s sum everything together
Here is the entire code for creating the fccCoin cryptocurrency.
You can also get the code on this GitHub repository.
import hashlib import time class Block: def __init__(self, index, proof_no, prev_hash, data, timestamp=None): self.index = index self.proof_no = proof_no self.prev_hash = prev_hash self.data = data self.timestamp = timestamp or time.time() u/property def calculate_hash(self): block_of_string = “{}{}{}{}{}”.format(self.index, self.proof_no, self.prev_hash, self.data, self.timestamp) return hashlib.sha256(block_of_string.encode()).hexdigest() def __repr__(self): return “{} – {} – {} – {} – {}”.format(self.index, self.proof_no, self.prev_hash, self.data, self.timestamp) class BlockChain: def __init__(self): self.chain = [] self.current_data = [] self.nodes = set() self.construct_genesis() def construct_genesis(self): self.construct_block(proof_no=0, prev_hash=0) def construct_block(self, proof_no, prev_hash): block = Block( index=len(self.chain), proof_no=proof_no, prev_hash=prev_hash, data=self.current_data) self.current_data = [] self.chain.append(block) return block u/staticmethod def check_validity(block, prev_block): if prev_block.index + 1 != block.index: return False elif prev_block.calculate_hash != block.prev_hash: return False elif not BlockChain.verifying_proof(block.proof_no, prev_block.proof_no): return False elif block.timestamp <= prev_block.timestamp: return False return True def new_data(self, sender, recipient, quantity): self.current_data.append({ ‘sender’: sender, ‘recipient’: recipient, ‘quantity’: quantity }) return True u/staticmethod def proof_of_work(last_proof): ”’this simple algorithm identifies a number f’ such that hash(ff’) contain 4 leading zeroes f is the previous f’ f’ is the new proof ”’ proof_no = 0 while BlockChain.verifying_proof(proof_no, last_proof) is False: proof_no += 1 return proof_no u/staticmethod def verifying_proof(last_proof, proof): #verifying the proof: does hash(last_proof, proof) contain 4 leading zeroes? guess = f'{last_proof}{proof}’.encode() guess_hash = hashlib.sha256(guess).hexdigest() return guess_hash[:4] == “0000” u/property def latest_block(self): return self.chain[-1] def block_mining(self, details_miner): self.new_data( sender=”0″, #it implies that this node has created a new block receiver=details_miner, quantity= 1, #creating a new block (or identifying the proof number) is awarded with 1 ) last_block = self.latest_block last_proof_no = last_block.proof_no proof_no = self.proof_of_work(last_proof_no) last_hash = last_block.calculate_hash block = self.construct_block(proof_no, last_hash) return vars(block) def create_node(self, address): self.nodes.add(address) return True u/staticmethod def obtain_block_object(block_data): #obtains block object from the block data return Block( block_data[‘index’], block_data[‘proof_no’], block_data[‘prev_hash’], block_data[‘data’], timestamp=block_data[‘timestamp’])
Now, let’s test our code to see if it works.
blockchain = BlockChain() print(“***Mining fccCoin about to start***”) print(blockchain.chain) last_block = blockchain.latest_block last_proof_no = last_block.proof_no proof_no = blockchain.proof_of_work(last_proof_no) blockchain.new_data( sender=”0″, #it implies that this node has created a new block recipient=”Quincy Larson”, #let’s send Quincy some coins! quantity= 1, #creating a new block (or identifying the proof number) is awarded with 1 ) last_hash = last_block.calculate_hash block = blockchain.construct_block(proof_no, last_hash) print(“***Mining fccCoin has been successful***”) print(blockchain.chain)
It worked!
Here is the output of the mining process:
***Mining fccCoin about to start*** [0 – 0 – 0 – [] – 1566930640.2707076] ***Mining fccCoin has been successful*** [0 – 0 – 0 – [] – 1566930640.2707076, 1 – 88914 – a8d45cb77cddeac750a9439d629f394da442672e56edfe05827b5e41f4ba0138 – [{‘sender’: ‘0’, ‘recipient’: ‘Quincy Larson’, ‘quantity’: 1}] – 1566930640.5363243]
Conclusion
There you have it!
That’s how you could create your own blockchain using Python.
Let me say that this tutorial just demonstrates the basic concepts for getting your feet wet in the innovative blockchain technology.
If this coin were deployed as-is, it could not meet the present market demands for a stable, secure, and easy-to-use cryptocurrency.
Therefore, it can still be improved by adding additional features to enhance its capabilities for mining and sending financial transactions.
Nonetheless, it’s a good starting point if you decide to make your name known in the amazing world of cryptos.
If you have any comments or questions, please post them below.
Happy (crypto) coding!
Source: Cryptoors
submitted by djkloud to CryptoTechnology [link] [comments]

5 things hardly anyone knows about the BMP project

1. The BMP is the most secure public voting system ever build.

Because all BMP actions are weighted by hashpower and is the first system capable of adding all the Bitcoin SHA-256 hashpower (BTC+BCH+BSV) at the same time. Then, BMP computes more hashpower than BTC or any other crypto.

2. BMP is a legitimately and neutral place.

Open-source, free, politically neutral, hashpower calculation is fair and accurate, each miner or pool can use it independently, without permission. Fully compatible with the whitepaper vision, specifically the last two sentences.

3. BMP is decentralized and indestructible as Bitcoin blockchain.

100% on-chain. It is designed to be deployed on multiple independent servers, and will display the same information at all times. No dependencies, except Bitcoin clients.

4. Votes can be modified while the voting is open.

You can vote more than once, the BMP only computes the last vote for each miner. This allows for discovering consensus, thinking, negotiating and rectifying. Because we learn in the process.

5. Miners can delegate % of hashpower in any address.

With power_by_opreturn coinbase signaling, any solo-miner or pool can delegate arbitrary percentages of his hashpower in any address. And without interfering with mining operations.
This allows for the participation of the entire community: mining partners/associates, small miners, pool miners, developers, researchers, operators, communicators and other key professionals (if miners want). In this way, the BMP is an indestructible pressure cooker, containing controversies, without split, by voting with hashpower, stably, as whitepaper says, legitimately, ad-infinitum.

And this is just the minimum viable beta. If you look the BMP protocol you will see that it is a powerful base system ready for building a next-level organization, as never seen before.
submitted by Ozn0g to btc [link] [comments]

Got this in my inbox a couple of minutes back

A new user sent me this to my inbox, its a description of the events after the fork, with a signed message at the bottom. I've gone through it once but its very late here in my timezone, have to go through it again tomorrow. I'm sure I'm not the the only receipient, but just in case pinging some people here.
https://honest.cash/kiarahpromise/sigop-counting-4528

*** EDIT 2 ***
Before you continue. From the Bitcoin whitepaper:
" The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes."

*** EDIT ***
Ok, I have slept over this.
How big is the chance that these two events, the sigop tx spamming of the network and the intended theft of funds stuck in segwit by an unknown miner, were coordinated and not coincidential? I slept over this message and am wondering if that was one two-phased plan and even this message was planned (probably a bit different but it was adapted afterwards to the new situation, that's why the first half of it is such a mess to read) to spread fear after the two plans got foiled.

The plan consisted of various Acts
Act 1) Distract and spam the network with sigop transactions that exploit a bug to cause distraction and halt all BCH transaction volume. The mempool would become filled with unconfirmed transactions
Act 2) When a patch is deployed, start your mining pool and mine the hell out of it to quickly create a legitimate block. They prepared the theft transactions and would hide them in the (predicted) massive mempool of unconfirmed transactions that would have been accumulated. They would mine a big block, everyone would be so happy that BCH works again, and devs would be busy looking for sigop transactions.
Act 3) Hope that the chain gets locked in via checkpoint so the theft cannot be reverted
Act 4) Leak to the media that plenty of BCH were stolen after the fork and the ABC client is so faulty it caused a halt of the network after the upgrade
Act 5) Make a shitload of money by shorting BCH (there was news about a appearance of a big short position right after the fork)

But the people who planned this attack have underestimated the awareness and speed of the BCH dev team. They were probably sure that Act 1 would take hours or even days so the mempool would be extremely bloated (maybe they speculated that everyone paniced and wanted to get out of BCH) and Act 2 would consequently be successful because no one would spot their theft transactions quick enough.

But they didn't calculate that someone is working together with various BCH pools in precaution to prevent exactly this scenario (segwit theft) and even prepared transactions to move all locked coins back to their owners.

Prohashings orphaned block was likely unpredicted collateral damage as Jonathan suggests below, because they were not involved in the plan of the two pools who prepared to return the segwit coins. I'm guessing that the pools did not expect a miner with an attacking theft block that early and had to decide quickly what to do when they spotted it.

So now that both plans have been foiled, Plan B) is coming into place again. Guerrilla style fear mongering about how BCH is not decentralized. Spread this info secretly in the community with the proof in form of a signed message connected to the transactions. Of course, the attacker worked actually alone, attacked us for our own good, and will do so again, because the evil dictatorship devs have to be eradicated....

As an unwanted side effect of these events the BTC.top and BTC.com "partnership" has been exposed. So what do we do with this new revelation is a question that we probably have to discuss.

They worked together with someone who wanted to return the segwit coins and avoided a theft. They used their combined hashing dominance to avoid a theft. I applaud them for that. From a moral perspective this is defendable and my suspicion that we have more backing for BCH than you can see with your eye by following hash rate charts is now being revealed as true again.

But the dilemma BCH has is revealed again as well. we need more of the SHA-256 hash rate cake because we actually do not want that any entity in this space has more than 50% hash power.

*** EDIT 2 ***
Added Satoshi's quote from the whitepaper.
submitted by grmpfpff to btc [link] [comments]

With the pretty awesome rise of almost all crypto currencies, it's time to restart our machines and mine the most profitable coin today 30.01.2020!!!

So let's talk about the GPUs to start with, the ranking has radically changed and even those that were running at a loss have become profitable again The top 10 chart:
1.NVIDIA GeForce RTX 2080 Ti 4.60 Mh/s 220W $1.35 $0.55 Zcoin(XZC) MTP Algo
2.NVIDIA GeForce RTX 2080 4.00 Mh/s 190W $1.17 $0.48 Zcoin(XZC) MTP
3.AMD Radeon VII 78.00 Mh/s 230W $1.22 $0.39 EthereumClassic(ETC) Ethash Algo
4.NVIDIA GeForce GTX 1080 Ti 3.60 Mh/s 190W $1.05 $0.37 Zcoin(XZC) MTP
5.AMD Radeon RX 5700 XT 51.50 Mh/s 140W $0.81 $0.30 EthereumClassic(ETC) Ethash
6.NVIDIA GeForce RTX 2060 2.60 Mh/s 130W $0.76 $0.29 Zcoin(XZC)MTP
7.NVIDIA GeForce RTX 2070 2.80 Mh/s 150W $0.82 $0.28 Zcoin(XZC) MTP
8.NVIDIA GeForce GTX 1080 2.80 Mh/s 150W $0.82 $0.28 Zcoin(XZC) MTP
9.NVIDIA GeForce GTX 1070 Ti 2.50 Mh/s 130W $0.73 $0.26 Zcoin(XZC) MTP
10.NVIDIA GeForce GTX 1660 Ti 2.00 Mh/s 100W $0.59 $0.22 Zcoin(XZC)
Now let's go to the asic Top 10:
  1. Innosilicon A10 ETHMaster 500.00 Mh/s 750W Ethash $5.13 EthereumClassic(ETC) Ethash
  2. Bitmain Antminer Z11 135.00 kh/s 1418W Equihash $3.45 Pirate(ARRR)
  3. BlackMiner F1+ 22.00 Gh/s 860W Eaglesong $3.23 Nervos(CKB) FPGAminer
4.Bitmain Antminer B7 96.00 kh/s 528W Tensority $1.87
5.Bitmain Antminer S17+ 73.00 Th/s 2920W SHA-256 $1.67 BitcoinSV(BSV)
6.StrongU STU-U6 420.00 Gh/s 2100W X11 $1.52 Dash(DASH)
  1. Bitmain Antminer S17 Pro 56 Th/s 2212W SHA-256 $1.46 BitcoinSV(BSV)
  2. Bitmain Antminer S17 59.00 Th/s 2385W SHA-256 $1.34 BitcoinSV(BSV)
  3. Innosilicon A9 ZMaster 50.00 kh/s 620W Equihash $1.08 Pirate(ARRR)
  4. FusionSilicon X7 262.00 Gh/s 1300W X11 $1.03 Dash(DASH)
Dont forget you can find around new Firmware for example for Z9/Z11 Efudd Firmware,and Hive OS firmwares which can Overclock S9/S15/S17 or Underclock (if your electriciy fee are too expensive), for example my S17 Pro I switched to new firmware (Hive OS) to 36Th/s with 900 Watts power gives me a 2.90 usd/day profit without electricity of course, for Z11 Overclocking without changing PSU from 135 to 150-160Ko/sol.
I calculated everything on the basis of 0.15 cens Kw / h.
Brand New Miner coming out:
ASICminer Zeon Turbo 400,000 Sol/s Equihash
Most Profitable Miner in the World. ASICminer Daily Revenue: $27 $16 (less 0.15 Kw/h fee) ASICminer Power Consumption: 2500W
asicminer dot co/shop (Factory)
submitted by pushingworld77 to BitcoinMining [link] [comments]

What is the math behind mining bitcoins?

What math does the computer do exactly to mine bitcoins? How do they make it to be harder and harder to mine and calculate so that you always end up needing more processing power? Why was it once relatively easy and now it is almost impossible to do decent mining with a desktop computer?
submitted by DarinHristov to askscience [link] [comments]

Butterfly Labs 5GH/s Miner

So I was poking around on various bitcoin and other crypto currency mining sites and found out about a company called Butterfly Labs that produces units with chips specifically designed to mine bitcoin. The cheapest unit generating an average of 5GH/s give or take 10% valued at only 274$!
I ran these numbers through a few calculators and they all averaged at about 1.75$ USD every hour or ~41$ per DAY! It would take UNDER A WEEK to get back your initial investment! With ONE of these you could be making 15.3 THOUSAND dollars a year! From a 274$ investment! It seems too good to be true! These things even come with a LIFETIME warranty!
Literally EVERY review I've seen by googling topics like "Butterfly Labs 5GH/s Review" etc have been almost entierly positive, from a variety of different sources. My ONLY reason for questioning this is that it seems WAY too good to be true!
Can anyone who has currently/has had one of these units tell me their experience? I'm looking into buying one with two of my friends and we're almost entierly convinced apart from slight scepticism due to the possibility of it being a scam.
EDIT: Thanks for the clarification everyone, the real winners here are Butterfly Labs for making so much money in an rapidly inflating market. Hopefully DOGE will go up to 14/coin in a few years then I'll be rich.
TLDR: If it seems to good to be true, it is.
submitted by Nestemitta to dogecoin [link] [comments]

Is Crypto Currency truly at risk due to Quantum Computers, and what can you do about it?

Is Crypto Currency truly at risk due to Quantum Computers, and what can you do about it?

There is no denying that the Quantum revolution is coming. Security protocols for the internet, banking, telecommunications, etc... are all at risk, and your Bitcoins (and alt-cryptos) are next!
This article is not really about quantum computers[i], but, rather, how they will affect the future of cryptocurrency, and what steps a smart investor will take. Since this is a complicated subject, my intention is to provide just enough relevant information without being too “techy.”

The Quantum Evolution

In 1982, Nobel winning physicist, Richard Feynman, hypothesized how quantum computers[ii] would be used in modern life.
Just one year later, Apple released the “Apple Lisa”[iii] – a home computer with a 7.89MHz processor and a whopping 5MB hard drive, and, if you enjoy nostalgia, it used 5.25in floppy disks.
Today, we walk around with portable devices that are thousands of times more powerful, and, yet, our modern day computers still work in a simple manner, with simple math, and simple operators[iv]. They now just do it so fast and efficient that we forget what’s happening behind the scenes.
No doubt, the human race is accelerating at a remarkable speed, and we’ve become obsessed with quantifying everything - from the everyday details of life to the entire universe[v]. Not only do we know how to precisely measure elementary particles, we also know how to control their actions!
Yet, even with all this advancement, modern computers cannot “crack” cryptocurrencies without the use of a great deal more computing power, and since it’s more than the planet can currently supply, it could take millions, if not billions, of years.
However, what current computers can’t do, quantum computers can!
So, how can something that was conceptualized in the 1980’s, and, as of yet, has no practical application, compromise cryptocurrencies and take over Bitcoin?
To best answer this question, let’s begin by looking at a bitcoin address.

What exactly is a Bitcoin address?

Well, in layman terms, a Bitcoin address is used to send and receive Bitcoins, and looking a bit closer (excuse the pun), it has two parts:[vi]
A public key that is openly shared with the world to accept payments. A public key that is derived from the private key. The private key is made up of 256 bits of information in a (hopefully) random order. This 256 bit code is 64 characters long (in the range of 0-9/a-f) and further compressed into a 52 character code (using RIPEMD-160).
NOTE: Although many people talk about Bitcoin encryption, Bitcoin does not use Encryption. Instead, Bitcoin uses a hashing algorithm (for more info, please see endnote below[vii]).
Now, back to understanding the private key:
The Bitcoin address “1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm” translates to a private key of “5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsreAnchuDf” which further translates to a 256 bit private key of “0000000000000000000000000000000000000000000000000000000000000001” (this should go without saying, but do not use this address/private key because it was compromised long ago.) Although there are a few more calculations that go behind the scenes, these are the most relevant details.
Now, to access a Bitcoin address, you first need the private key, and from this private key, the public key is derived. With current computers, it’s classically impractical to attempt to find a private key based on a public key. Simply put, you need the private key to know the public key.
However, it has already been theorized (and technically proven) that due to private key compression, multiple private keys can be used to access the same public key (aka address). This means that your Bitcoin address has multiple private keys associated with it, and, if someone accidentally discovers or “cracks” any one of those private keys, they have access to all the funds in that specific address.
There is even a pool of a few dedicated people hunting for these potential overlaps[viii], and they are, in fact, getting very efficient at it. The creator of the pool also has a website listing every possible Bitcoin private key/address in existence[ix], and, as of this writing, the pool averages 204 trillion keys per day!
But wait! Before you get scared and start panic selling, the probability of finding a Bitcoin address containing funds (or even being used) is highly unlikely – nevertheless, still possible!
However, the more Bitcoin users, the more likely a “collision” (finding overlapping private/public key pairs)! You see, the security of a Bitcoin address is simply based on large numbers! How large? Well, according to my math, 1.157920892373x1077 potential private keys exist (that number represents over 9,500 digits in length! For some perspective, this entire article contains just over 14,000 characters. Therefore, the total number of Bitcoin addresses is so great that the probability of finding an active address with funds is infinitesimal.

So, how do Quantum Computers present a threat?

At this point, you might be thinking, “How can a quantum computer defeat this overwhelming number of possibilities?” Well, to put it simple; Superposition and Entanglement[x].
Superposition allows a quantum bit (qbit) to be in multiple states at the same time. Entanglement allows an observer to know the measurement of a particle in any location in the universe. If you have ever heard Einstein’s quote, “Spooky Action at a Distance,” he was talking about Entanglement!
To give you an idea of how this works, imagine how efficient you would be if you could make your coffee, drive your car, and walk your dog all at the same time, while also knowing the temperature of your coffee before drinking, the current maintenance requirements for your car, and even what your dog is thinking! In a nutshell, quantum computers have the ability to process and analyze countless bits of information simultaneously – and so fast, and in such a different way, that no human mind can comprehend!
At this stage, it is estimated that the Bitcoin address hash algorithm will be defeated by quantum computers before 2028 (and quite possibly much sooner)! The NSA has even stated that the SHA256 hash algorithm (the same hash algorithm that Bitcoin uses) is no longer considered secure, and, as a result, the NSA has now moved to new hashing techniques, and that was in 2016! Prior to that, in 2014, the NSA also invested a large amount of money in a research program called “Penetrating Hard Targets project”[xi] which was used for further Quantum Computer study and how to break “strong encryption and hashing algorithms.” Does NSA know something they’re not saying or are they just preemptively preparing?
Nonetheless, before long, we will be in a post-quantum cryptography world where quantum computers can crack crypto addresses and take all the funds in any wallet.

What are Bitcoin core developers doing about this threat?

Well, as of now, absolutely nothing. Quantum computers are not considered a threat by Bitcoin developers nor by most of the crypto-community. I’m sure when the time comes, Bitcoin core developers will implement a new cryptographic algorithm that all future addresses/transactions will utilize. However, will this happen before post-quantum cryptography[xii]?
Moreover, even after new cryptographic implementation, what about all the old addresses? Well, if your address has been actively used on the network (sending funds), it will be in imminent danger of a quantum attack. Therefore, everyone who is holding funds in an old address will need to send their funds to a new address (using a quantum safe crypto-format). If you think network congestion is a problem now, just wait…
Additionally, there is the potential that the transition to a new hashing algorithm will require a hard fork (a soft fork may also suffice), and this could result in a serious problem because there should not be multiple copies of the same blockchain/ledger. If one fork gets attacked, the address on the other fork is also compromised. As a side-note, the blockchain Nebulas[xiii] will have the ability to modify the base blockchain software without any forks. This includes adding new and more secure hashing algorithms over time! Nebulas is due to be released in 2018.

Who would want to attack Bitcoin?

Bitcoin and cryptocurrency represent a threat to the controlling financial system of our modern economy. Entire countries have outright banned cryptocurrency[xiv] and even arrested people[xv], and while discrediting it, some countries are copying cryptocurrency to use (and control) in their economy[xvi]!
Furthermore, Visa[xvii], Mastercard[xviii], Discover[xix], and most banks act like they want nothing to do with cryptocurrency, all the while seeing the potential of blockchain technology and developing their own[xx]. Just like any disruptive technology, Bitcoin and cryptocurrencies have their fair share of enemies!
As of now, quantum computers are being developed by some of the largest companies in the world, as well as private government agencies.
No doubt, we will see a post-quantum cryptography world sooner than most realize. By that point, who knows how long “3 letter agencies” will have been using quantum technology - and what they’ll be capable of!

What can we do to protect ourselves today?

Of course, the best option is to start looking at how Bitcoin can implement new cryptographic features immediately, but it will take time, and we have seen how slow the process can be just for scaling[xxi].
The other thing we can do is use a Bitcoin address only once for outgoing transactions. When quantum computers attack Bitcoin (and other crypto currencies), their first target will be addresses that have outgoing transactions on the blockchain that contain funds.
This is due to the fact that when computers first attempt to crack a Bitcoin address, the starting point is when a transaction becomes public. In other words, when the transaction is first signed – a signed transaction is a digital signature derived from the private key, and it validates the transaction on the network. Compared to classical computers, quantum computers can exponentially extrapolate this information.
Initially, Bitcoin Core Software might provide some level of protection because it only uses an address once, and then sends the remaining balance (if any) to another address in your keypool. However, third party Bitcoin wallets can and do use an address multiple times for outgoing transactions. For instance, this could be a big problem for users that accept donations (if they don’t update their donation address every time they remove funds). The biggest downside to Bitcoin Core Software is the amount of hard-drive space required, as well as diligently retaining an up-to-date copy of the entire blockchain ledger.
Nonetheless, as quantum computers evolve, they will inevitably render SHA256 vulnerable, and although this will be one of the first hash algorithms cracked by quantum computers, it won’t be the last!

Are any cryptocurrencies planning for the post-quantum cryptography world?

Yes, indeed, there are! Here is a short list of ones you may want to know more about:

Full disclosure:

Although I am in no way associated with any project listed above, I do hold coins in all as well as Bitcoin, Litecoin and many others.
The thoughts above are based on my personal research, but I make no claims to being a quantum scientist or cryptographer. So, don’t take my word for anything. Instead, do your own research and draw your own conclusions. I’ve included many references below, but there are many more to explore.
In conclusion, the intention of this article is not to create fear or panic, nor any other negative effects. It is simply to educate. If you see an error in any of my statements, please, politely, let me know, and I will do my best to update the error.
Thanks for reading!

References

[i] https://www.youtube.com/watch?v=JhHMJCUmq28 – A great video explaining quantum computers.
[ii] https://www.doc.ic.ac.uk/~nd/surprise_97/journal/vol4/spb3/ - A brief history of quantum computing.
[iii] https://en.wikipedia.org/wiki/Apple_Lisa - More than you would ever want to know about the Apple Lisa.
[iv] https://www.youtube.com/watch?v=tpIctyqH29Q&list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo - Want to learn more about computer science? Here is a great crash course for it!
[v] https://www.collinsdictionary.com/dictionary/english/quantify - What does quantify mean?
[vi] https://en.bitcoin.it/wiki/Private_key - More info about Bitcoin private keys.
[vii] https://www.securityinnovationeurope.com/blog/page/whats-the-difference-between-hashing-and-encrypting - A good example of the deference between Hash and Encryption
[viii] https://lbc.cryptoguru.org/stats - The Large Bitcoin Collider.
[ix] http://directory.io/ - A list of every possible Bitcoin private key. This website is a clever way of converting the 64 character uncompressed key to the private key 128 at a time. Since it is impossible to save all this data in a database and search, it is not considered a threat! It’s equated with looking for a single needle on the entire planet.
[x] https://uwaterloo.ca/institute-for-quantum-computing/quantum-computing-101#Superposition-and-entanglement – Brief overview of Superposition and Entanglement.
[xi] https://www.washingtonpost.com/world/national-security/nsa-seeks-to-build-quantum-computer-that-could-crack-most-types-of-encryption/2014/01/02/8fff297e-7195-11e3-8def-a33011492df2_story.html?utm_term=.e05a9dfb6333 – A review of the Penetrating Hard Targets project.
[xii] https://en.wikipedia.org/wiki/Post-quantum_cryptography - Explains post-quantum cryptography.
[xiii] https://www.nebulas.io/ - The nebulas project has some amazing technology planned in their roadmap. They are currently in testnet stage with initial launch expected taking place in a few weeks. If you don’t know about Nebulas, you should check them out. [xiv] https://en.wikipedia.org/wiki/Legality_of_bitcoin_by_country_or_territory - Country’s stance on crypto currencies.
[xv] https://www.cnbc.com/2017/08/30/venezuela-is-one-of-the-worlds-most-dangerous-places-to-mine-bitcoin.html - Don’t be a miner in Venezuela!
[xvi] http://www.newsweek.com/russia-bitcoin-avoid-us-sanctions-cryptocurrency-768742 - Russia’s plan for their own crypto currency.
[xvii] http://www.telegraph.co.uk/technology/2018/01/05/visa-locks-bitcoin-payment-cards-crackdown-card-issue - Recent attack from visa against crypto currency.
[xviii] https://www.ccn.com/non-government-digital-currency-junk-says-mastercard-ceo-rejecting-bitcoin/ - Mastercards position about Bitcoin.
[xix] http://www.livebitcoinnews.com/discover-joins-visa-mastercard-barring-bitcoin-support/ - Discovers position about Bitcoin.
[xx] http://fortune.com/2017/10/20/mastercard-blockchain-bitcoin/ - Mastercard is making their own blockchain.
[xxi] https://bitcoincore.org/en/2015/12/21/capacity-increase/ - News about Bitcoin capacity. Not a lot of news…
[xxii] https://learn.iota.org/faq/what-makes-iota-quantum-secure - IOTA and quantum encryption.
[xxiii] https://eprint.iacr.org/2011/191.pdf - The whitepaper of Winternitz One-Time Signature Scheme
[xxiv] https://cardanoroadmap.com/ - The Cardano project roadmap.
[xxv] https://eprint.iacr.org/2017/490 - More about the BLISS hash system.
[xxvi] https://www.ethereum.org/ - Home of the Ethereum project.
[xxvii] https://en.wikipedia.org/wiki/SHA-3#Security_against_quantum_attacks – SHA3 hash algorithm vs quantum computers.
[xxviii] https://en.wikipedia.org/wiki/Lamport_signature - Lamport signature information.
[xxix] https://theqrl.org/ - Home of the Quantum Resistant Ledger project.
submitted by satoshibytes to CryptoCurrency [link] [comments]

Bitcoin ABC's "parked blocks" feature allows minority hashrate attackers to cause a permanent chain split with high probability.

BACKGROUND
------------------------------------------------------
In November, Bitcoin ABC introduced "auto-finalization" and "parked blocks" functionality in order to mitigate the risk of 51% attacks.
Roughly, the way auto-finalization works is that after receiving a new block, a node will look back ten blocks prior and mark that previous block as finalized, which means that the node will not reorg past that point without manual intervention. This prevents attackers from double spending with large reorgs, and thus provides some protection for exchanges and the like.
The parked blocks functionality is intended to prevent against medium-length reorgs by adding a proof of work penalty. Specifically, a 4+ block reorg requires double the PoW; a 1 or 2 block reorg requires an extra 1/2 blocks' worth of PoW, and a 3 block reorg requires an extra blocks' worth of PoW. These are approximations, because of BCH's DAA which changes each block, but you can find this implemented in FindMostWorkChain() in validation.cpp.
When these changes were added, there was some discussion on btc about how auto-finalization could lead to chain splits because an attacker could mine a 10 block secret chain and broadcast it right at the perfect time that the honest network has broadcast its 10th block from the fork point; however, this is a difficult attack to pull off, and the parked blocks functionality actually makes it such that the attacker would need to mine more like 20 blocks secretly (approximately, because of the DAA), which makes it nearly impossible.
However, I did not see significant discussion regarding the implications of the parked block functionality itself, and the negative way in which it interacts with auto-finalization. Here is my attempt to rectify that, by presenting an attack that could cause chain splits with moderate probability even for attackers with minority hash rate.

ATTACK:
----------------------------------------------------
1) Somehow force a soft-split with the parked chain.
2) Make sure that the soft split continues until both sides finalize a block on their side of the split (possibly via balancing hashpower on both sides of the soft split).
More specifically:
1) Mine 3 blocks before the honest network mines three blocks, and broadcast block 3 when you detect honest block 3 has been broadcast.
2) Mine such that the difficulty/work condition is fulfilled (see step 2 below regarding lowering the difficulty): block1 + 1/2*priv2 + 1/2*pub2 > pub4 + priv4. If this condition isn't met, the attacker can just try to win the split from the next step and get 3-4 block rewards
3) Ensure that each side of the soft split mines block 4 before the other side mines block 5, moving into the double-PoW penalty phase. This may require withholding blocks temporarily if "too far ahead", such that there is a 3vs3 split. Since this could happen, it improves our probability of success compared to the calculations below.
4) Mine at the tip of whichever chain is behind, such that neither side reorgs before finalizing a block on their side of the split. That is, each side must mine 7 blocks w/o being reorg'd. (Must mine 1 before the other mines 4, or 2 before 8, etc.)
--Analysis is for step 4 is complicated and thus omitted below, but this is likely to succeed, and extremely likely to succeed if the network is split close to evenly or if the attacker has substantial hash power.

Analysis:
----------------------------------------------------------
Let x = attacker hash rate; y = main chain hash rate after soft split; z = alt/"attack" chain hash rate after soft split.
-----STEP 1-------------
--Start by assuming the attacker has just mined a block and keeps it secret; then they must win 2 blocks before the honest chain wins 3
--There are 6 possible ways to win: AA, AHA, HAA, AHHA, HHAA, HAHA (A = attacker block; H = honest block.)
Pr[success] = x^2 + 2*x^2*(1-x) + 3*x^2*(1-x)^2
x = 1/20 1.4%
x = 1/10 5.23%
x = 1/4 26.17%
x = 1/3 40.74%
x = 1/2 68.75%
x = 3/5 82.08%
------STEP 2---------------
Ideally, the 4th block for both chains will be of the proper difficulty that would prevent either chain from being reorged by seeing that 4th block, in which case the soft split should persist. This occurs if the following conditions are met:
1) In order to prevent the 4th honest block from reorging our 3 private blocks, we need: privChainWork + 1/2*(privBlock1work + privBlock2work) > mainChainWork
2) In order to prevent the 4th attack block from reorging the 3 public blocks, we need: mainChainWork + 1/2*(pubBlock1work + pubBlock2work) > privChainWork
Note that pubBlock1work == privBlock1work in all cases. Some algebra:
Condition 1 priv1 + priv2 + priv3 + 1/2*priv1 + 1/2*priv2 > pub1 + pub2 + pub3 + pub4
Condition 2 pub1 + pub2 + pub3 + 1/2*pub1 + 1/2*pub2 > priv1 + priv2 + priv3 + priv4
priv1 + priv2 + priv3 > pub1 + pub2 + pub3 + pub4 - (1/2*priv1 + 1/2*priv2)
pub1 + pub2 + pub3 > priv1 + priv2 + priv3 + priv4 - (1/2*pub1 + 1/2*pub2)
pub1 + pub2 + pub3 > pub1 + pub2 + pub3 + pub4 - (1/2*priv1 + 1/2*priv2) + priv4 - (1/2*pub1 + 1/2*pub2)
0 > pub4 + priv4 - (1/2*priv1 + 1/2*priv2) - (1/2*pub1 + 1/2*pub2)
(1/2*priv1 + 1/2*priv2) + (1/2*pub1 + 1/2*pub2) > pub4 + priv4
block1 + 1/2*priv2 + 1/2*pub2 > pub4 + priv4
This is extremely likely if the difficulty is decreasing, which can happen on the private chain by mining blocks with future timestamps, and is likely on the main chain as well, since it will have less hashpower than before the fork point.
------STEP 3------------------------
--What is the probability that both chains mine block 4 before the other mines block 5?
--Assume both chains have 3 blocks already and the attacker has no secret blocks. If the attacker successfully mined block 4 already, our chances would be higher, so this is an underestimate.
--The chance of success depends on how much hash is on each side, which we don't know. Here we analyze two possibilities:
1) y = z (attacker's best case);
2) y = 3z (1/4 of the honest hash is on one side, 3/4 on the other)
--For case 1, assume the miner simply shuts off until one side wins a block, and then immediately mines the other side. They could also pick a side to start with, but we ignore that possibility. For case 2, we assume the attacker mines on the minority chain until a block is mined, and switches if the minority chain wins the first block.
Case 1:
Pr[success] = x + z = x + y
x = 1/20 52.5%
x = 1/10 55%
x = 1/4 62.5%
x = 1/3 66.67%
x = 1/2 75%
x = 3/5 80%
Case 2:
Pr[success] = (x+z)*(x+y) + y*(x+z) = x^2 + 2xy + 2yz + xz
x = 1/20 42.41%
x = 1/10 47.13%
x = 1/4 60.16%
x = 1/3 66.67%%
x = 1/2 78.13%
x = 3/5 84%
-----END STEP 3---------------------


EXAMPLE: Attacker has x fraction of the hash rate, and if he successfully finishes step 1, we assume that the difficulty works out in step 2 about half the time (probably a significant underestimate). Assume that each step is independent (not true, and causes an underestimate of success probability). Assume that the soft split that results splits the hash power 3 to 1, as in case 2 above. What is the probability of getting to the final step of the attack? How many initial blocks can the attacker expect to throw out before succeeding, and how long should this take given their hash rate?
x = 1/20 0.3% 334 blocks thrown out, 6680 blocks total, 46.4 days
x = 1/10 1.23% 82 blocks thrown out, 820 blocks total, 5.7 days
x = 1/4 7.87% 13 blocks thrown out, 52 blocks total, 8.7 hours
x = 1/3 13.58% 8 blocks thrown out, 24 blocks total, 4 hours
x = 1/2 26.86% 4 blocks thrown out, 8 blocks total, 1.3 hours
x = 3/5 34.47% 3 blocks thrown out, 5 blocks total, < 1 hour

DISCUSSION
-------------------------------------------
There are tradeoffs between protecting against chain-split attacks and protecting against deep reorgs, and a chain like that of BCH, with minority SHA-256 hashrate, must tread carefully. However, I think I have demonstrated here that there isn't a tradeoff when you have both parked blocks AND auto-finalization - the security assumption of "everything is fine if majority hashrate is honest" is no longer true, because a 33% attacker can cause a far worse outcome than a deep reorg.
That said, unlike with 51% attacks, this particular attack is one that isn't as likely to be profitable for the attacker financially, so it may not be exploited by random Internet bad guys. Also, it would require some more complicated software and is less likely to succeed without some amount of network intelligence, like knowing which nodes are miners or exchanges to target. However, it CAN still be profitable in a number of ways: shorting BCH, low-conf double spends, and/or the possible selfish mining profits that could accrue from a failure at some step of this strategy.
Timejacking may be useful to smooth over some of the parts of the attack by making sure that a timejacked node will view a block as valid/invalid when the rest of the network doesn't, via timestamp manipulation. This can buy the attacker a little bit of time, and "shape" the network such that he knows which side of the split his targets may be on. Furthermore, if the attacker fails to split the network somewhat evenly, then he can ignore the minority side of the fork and immediately start trying again on the majority side, in an attempt to cause a 3-way split.
Finally, while you may believe that this attack is improbable, the prevailing wisdom of this sub is that a super powerful cabal of bankers will stop at nothing to destroy Bitcoin Cash (operating via their alleged proxy, Blockstream), and since a well-resourced attacker should be able to pull this attack off, I believe y'all should be more concerned than you have been. My recommendation is to remove the parked block functionality from ABC entirely, and accept the risk of medium-length reorgs.
submitted by iwantfreebitcoin to btc [link] [comments]

Now that we've had a few 8MB blocks, let's dispel this centralisation myth once and for all.

Preface

Firstly, I'm just a Bitcoin enthusiast who is getting tired of the notion that BTC is some censorship-resistant bastion of decentralisation and BCH is not due to its larger blocks.
The data below is publicly available and I've tried to include sources, so if there are any errors in my work or findings, please share them below and I'll update this post.
Edit: zcc0nonA has provided a brief write-up describing what decentralisation actually is in the comments below which is well worth a read.
The bulk of the calculation is done assuming assuming 5MB blocks (~36tx/sec), which is a healthy capacity for BCH currently (if miners consistently mine 4MB < 8MB blocks) and what BTC was averaging before the holidays.
If there are any other factors which I've missed out, please let me know and ideally provide some data.

Storage

Almost the simplest argument to refute is the storage problem:
5MB blocks * 6 blocks/hr = 30MB/hr
30MB/hr = ~22GB/month = ~263GB/year
Current avg. price for a 4TB HDD is ~$150 [source]
4TB (~3.8TB usable) / 263GB = ~14 years of 5MB blocks

Bandwidth

The bandwidth issue is slightly more complex, since full nodes will download the blockchain (which increases in proportion to blocksize), but their main network function is to upload/share data with the network.
With this in mind, I've found a source for data usage on a typical node for both BCH and BTC, and fortunately the past 6 hours have seen several 8MB blocks so the data should be representative.
We can leave the additional rx bandwidth from the larger blocksize out of the equation since this will correlate roughly to the capacity calculation above.
In those 6 hours the BTC node sent ~8.3GB of network related data, whereas the BCH node sent 3.6GB.
The transaction volume/second for that period appears to roughly match up to the data ratio (2.3:1, BTC:BCH) so that would suggest that this figure increases based on network adoption/transaction volume, rather than being influenced by blocksize.

Development

83.39% of the current 1288 nodes on the BCH chain are running Bitcoin ABC [source]
87.26% of the current 10124 nodes on the BTC chain are running Bitcoin Core [source]
Both projects are open source, but commit access is limited to a few individuals in both cases so this is the area where both could improve the most.

Mining

This is the easiest argument to dispel, since both chains use the SHA-256 hashing algorithm which means they can both use the same mining pools and hardware.
Edit: LexGrom has also added that the development of a fee market is not only bad for for users, but small miners as well. This is because they have to pay fees on their withdrawals from their respective pools.
This creates a market which favours larger miners, since small miners cannot claim their funds until they reach a threshold high enough that they can withdraw and spend.

Roger

He's a man who likes Bitcoin and wants it to succeed, not the king of BCH. The personal attacks on this guy are signs of weak arguments and true trolls. This also goes for arguments around China, Jihan, or CSW since they tend to rest on an ad-hominem (ad-countrinem?) foundations too.

Conclusion

Not only is BCH not centralised, but it's actually about as decentralised as BTC, if not more so. (I haven't even mentioned Blockstream and their relationship with the Core devs). Larger blocks do not significantly impact a regular users ability to run a full node, and in fact the main barrier will be bandwidth used (tx) for either chain as adoption increases.
The arguments against raising blocksize seem to disappear the moment one examines the data more closely, except for one:
If Bitcoin scales on-chain it will remain censorship-resistant and largely decentralised, which is exactly the opposite of what governments want, but was exactly the goal of the original project.
submitted by thegreatmcmeek to btc [link] [comments]

howmanyconfs.com - How does the security of different Proof-of-Work blockchains compare to Bitcoin?

https://howmanyconfs.com
Original post in Bitcoin here: https://np.reddit.com/Bitcoin/comments/biokgy/howmanyconfscom_how_does_the_security_of/

https://github.com/lukechilds/howmanyconfs.com/raw/mastescreenshot.png

How are these values calculated?

It's easy to compare blockchain hashrates when the Proof-of-Work algorithm is the same. For example if Bitcoin has a hashrate of SHA-256 @ 40 PH/s and Bitcoin Cash has a hashrate of SHA-256 @ 2 PH/s, it's easy to see that for a given period of time the Bitcoin blockchain will have 20x (40/2) the amount of work securing it than the Bitcoin Cash blockchain. Or to say that differently, you need to wait for 20x more Bitcoin Cash confirmations before an equivalent amount of work has been done compared to the Bitcoin blockchain. So 6 Bitcoin confirmations would be roughly equivalent to 120 Bitcoin Cash confirmations in the amount of work done.
However if the Proof-of-Work algorithms are different, how can we compare the hashrate? If we're comparing Bitcoin (SHA-256 @ 40 PH/s) against Litecoin (Scrypt @ 300 TH/s), the hashes aren't equal, one round of SHA-256 is not equivalent to one round of Scrypt.
What we really want to know is how much energy is being consumed to provide the current hash rate. Literal energy, as in joules or kilowatt hours. It would be great if we had a universal metric across blockchains like kWh/s to measure immutability.
However that's fairly hard to calculate, we need to know the average power consumption of the average device used to mine. For GPU/CPU mined Proof-of-Work algorithms this varies greatly. For ASIC mined Proof-of-Work algorithms it varies less, however it's likely that ASIC manufacturers are mining with next generation hardware long before the public is made aware of them, which we can't account for.
There's no automated way to get this data and no reliable data source to scrape it from. We'd need to manually research all mining hardware and collate the data ourself. And as soon as newer mining hardware comes out our results will be outdated.
Is there a simpler way to get an estimated amount of work per blockchain in a single metric we can use for comparisons?
Yeah, there is, we can use NiceHash prices to estimate the cost in $ to secure a blockchain for a given timeframe. This is directly comparable across blockchains and should be directly proportionate to kWh/s, because after all, the energy needs to be paid for in $.
How can we estimate this?
Now we have an estimated total Proof-of-Work metric measured in dollars per second ($/s).
The $/s metric may not be that accurate. Miners will mark up the cost when reselling on NiceHash and we're making the assumption that NiceHash supply is infinite. You can't actually rent 100% of Bitcoin's hashpower from NiceHash, there isn't enough supply.
However that's not really an issue for this metric, we aren't trying to calculate the theoretical cost to rent an additional 100% of the hashrate, we're trying to get a figure that allows us to compare the cost of the current total hashrate accross blockchains. Even if the exact $ value we end up with is not that accurate, it should still be proportionate to kWh/s. This means it's still an accurate metric to compare the difference in work done over a given amount of time between blockchains.
So how do we compare these values between blockchains?
Once we've done the above calculations and got a $/s cost for each blockchain, we just need to factor in the average block time and calculate the total $ cost for a given number of confirmations. Then see how much time is required on the other blockchain at it's $/s value to equal the total cost.
So to calculate how many Litecoin confirmations are equivalent to 6 Bitcoin confirmations we would do:
Therefore we can say that 240 Litecoin confirmations are roughly equal to 6 Bitcoin confirmations in total amount of work done.

Notes

$/s doesn't mean what it sounds like it means.

The $/s values should not be taken as literal costs.
For example:
This is does not mean you could do a 51% attack on Bitcoin and roll back 6 blocks for a cost of $360,000. An attack like that would be much more expensive.
The $/s value is a metric to compare the amount of work at the current hashrate between blockchains. It is not the same as the cost to add hashrate to the network.
When adding hashrate to a network the cost will not scale linearly with hashrate. It will jump suddenly at certain intervals.
For example, once you've used up the available hashrate on NiceHash you need to add the costs of purchasing ASICs, then once you've bought all the ASICs in the world, you'd need to add the costs of fabricating your own chips to keep increasing hashrate.

These metrics are measuring "work done", not security.

More "work done" doesn't necessarily mean "more security".
For example take the following two blockchains:
Bitcoin Cash has a higher $/s value than Zcash so we can deduce it has more "work done" over a given timeframe than Zcash. More kWh/s are required to secure it's blockchain. However does that really mean it's safer?
Zcash is the dominant blockchain for it's Proof-of-Work algorithm (Equihash). Whereas Bitcoin Cash isn't, it uses the same algorithm as Bitcoin. In fact just 5% of Bitcoin's hashrate is equivalent to all of Bitcoin Cash's hashrate.
This means the cost of a 51% attack against Bitcoin Cash could actually be much lower than a 51% attack against Zcash, even though you need to aquire more kWh/s of work, the cost to aquire those kWh/s will likely be lower.
To attack Bitcoin Cash you don't need to acquire any hardware, you just need to convince 5% of the Bitcoin hashrate to lend their SHA-256 hashpower to you.
To attack Zcash, you would likely need to fabricate your own Equihash ASICs, as almost all the Equihash mining hardware in the world is already securing Zcash.

Accurately calculating security is much more complicated.

These metrics give a good estimated value to compare the hashrate accross different Proof-of-Work blockchains.
However to calculate if a payment can be considered "finalised" involves many more variables.
You should factor in:
If the cryptocurrency doesn't dominate the Proof-of-Work it can be attacked more cheaply.
If the market cap or trading volume is really low, an attacker may crash the price of the currency before they can successfully double spend it and make a profit. Although that's more relevant in the context of exchanges rather than individuals accepting payments.
If the value of the transaction is low enough, it may cost more to double spend than an attacker would profit from the double spend.
Ultimately, once the cost of a double spend becomes higher than an attacker can expect to profit from the double spend, that is when a payment can probably be considered "finalised".
submitted by dyslexiccoder to CryptoCurrency [link] [comments]

What's the difference between Litcoin and Bitcoin?

In 2009, Satoshi Nakamoto launched bitcoin as the world’s first cryptocurrency. The code is open source, which means it can be modified by anyone and freely used for other projects. Many cryptocurrencies have launched with modified versions of this code, with varying levels of success.
Litecoin was announced in 2011 with the goal of being the ‘silver’ to bitcoin’s ‘gold’. At the time of writing, Litecoin has the highest market cap of any mined cryptocurrency, after bitcoin.
Here’s our guide to show you the crucial difference between bitcoin and litecoin.
Mining differences
Just like bitcoin, litecoin is a crytocurrency that is generated by mining. Litecoin was created in October 2011 by former Google engineer Charles Lee. The motivation behind its creation was to improve upon bitcoin. The key difference for end-users being the 2.5 minute time to generate a block, as opposed to bitcoin’s 10 minutes. Charles Lee now works for Coinbase, one of the most popular online bitcoin wallets.
ASIC Mining
For miners and enthusiasts though, litecoin holds a much more important difference to bitcoin, and that is its different proof of work algorithm. Bitcoin uses the SHA-256 hashing algorithm, which involves calculations that can be greatly accelerated in parallel processing. It is this characteristic that has given rise to the intense race in ASIC technology, and has caused an exponential increase in bitcoin’s difficulty level.
Litecoin, however, uses the scrypt algorithm – originally named as s-crypt, but pronounced as ‘script’. This algorithm incorporates the SHA-256 algorithm, but its calculations are much more serialised than those of SHA-256 in bitcoin. Scrypt favours large amounts of high-speed RAM, rather than raw processing power alone. As a result, scrypt is known as a ‘memory hard problem‘.
The consequences of using scrypt mean that there has not been as much of an ‘arms race’ in litecoin (and other scrypt currencies), because there is (so far) no ASIC technology available for this algorithm. However, this is soon to change, thanks to companies like Alpha Technologies, which is now taking preorders.
GPU mining
To highlight the difference in hashing power, at the time of writing, the total hashing rate of the bitcoin network is over 20,000 Terra Hashes per second, while litecoin is just 95,642 Mega Hashes per second.
For the time being, ‘state of the art’ litecoin mining rigs come in the form of custom PCs fitted with multiple graphics cards (ie: GPUs). These devices can handle the calculations needed for scrypt and have access to blisteringly fast memory built into their own circuit boards.
There was a time when people could use GPU mining for bitcoin, but ASICs have made this method not worth the effort.
If you are a developer, cryptocurrency investor, or just a curious person and want to invest some time to learn about cryptocurrency visit BTCNEWZ
Transaction differences
The main difference is that litecoin can confirm transactions must faster than bitcoin. The implications of that are as follows:
Transaction speed (or faster block time) and confirmation speed are often touted as moot points by many involved in bitcoin, as most merchants would allow zero-confirmation transactions for most purchases. It is necessary to bear in mind that a transaction is instant, it is just confirmed by the network as it propagates.
submitted by alifkhalil469 to BtcNewz [link] [comments]

Blockchain Dictionary for Newbies

Blockchain Glossary: From A-Z
51% Attack
When more than half of the computing power of a cryptocurrency network is controlled by a single entity or group, this entity or group may issue conflicting transactions to harm the network, should they have the malicious intent to do so.
Address
Cryptocurrency addresses are used to send or receive transactions on the network. An address usually presents itself as a string of alphanumeric characters.
ASIC
Short form for ‘Application Specific Integrated Circuit’. Often compared to GPUs, ASICs are specially made for mining and may offer significant power savings.
Bitcoin
Bitcoin is the first decentralised, open source cryptocurrency that runs on a global peer to peer network, without the need for middlemen and a centralised issuer.
Block
Blocks are packages of data that carry permanently recorded data on the blockchain network.
Blockchain
A blockchain is a shared ledger where transactions are permanently recorded by appending blocks. The blockchain serves as a historical record of all transactions that ever occurred, from the genesis block to the latest block, hence the name blockchain.
Block Explorer
Block explorer is an online tool to view all transactions, past and current, on the blockchain. They provide useful information such as network hash rate and transaction growth.
Block Height
The number of blocks connected on the blockchain.
Block Reward
A form of incentive for the miner who successfully calculated the hash in a block during mining. Verification of transactions on the blockchain generates new coins in the process, and the miner is rewarded a portion of those.
Central Ledger
A ledger maintained by a central agency.
Confirmation
The successful act of hashing a transaction and adding it to the blockchain.
Consensus
Consensus is achieved when all participants of the network agree on the validity of the transactions, ensuring that the ledgers are exact copies of each other.
Cryptocurrency
Also known as tokens, cryptocurrencies are representations of digital assets.
Cryptographic Hash Function
Cryptographic hashes produce a fixed-size and unique hash value from variable-size transaction input. The SHA-256 computational algorithm is an example of a cryptographic hash.
Dapp
A decentralised application (Dapp) is an application that is open source, operates autonomously, has its data stored on a blockchain, incentivised in the form of cryptographic tokens and operates on a protocol that shows proof of value.
DAO
Decentralised Autonomous Organizations can be thought of as corporations that run without any human intervention and surrender all forms of control to an incorruptible set of business rules.
Distributed Ledger
Distributed ledgers are ledgers in which data is stored across a network of decentralized nodes. A distributed ledger does not have to have its own currency and may be permissioned and private.
Distributed Network
A type of network where processing power and data are spread over the nodes rather than having a centralised data centre.
Difficulty
This refers to how easily a data block of transaction information can be mined successfully.
Digital Signature
A digital code generated by public key encryption that is attached to an electronically transmitted document to verify its contents and the sender’s identity.
Double Spending
Double spending occurs when a sum of money is spent more than once.
Ethereum
Ethereum is a blockchain-based decentralised platform for apps that run smart contracts, and is aimed at solving issues associated with censorship, fraud and third party interference.
EVM
The Ethereum Virtual Machine (EVM) is a Turing complete virtual machine that allows anyone to execute arbitrary EVM Byte Code. Every Ethereum node runs on the EVM to maintain consensus across the blockchain.
Fork
Forks create an alternate version of the blockchain, leaving two blockchains to run simultaneously on different parts of the network.
Genesis Block
The first or first few blocks of a blockchain.
Hard Fork
A type of fork that renders previously invalid transactions valid, and vice versa. This type of fork requires all nodes and users to upgrade to the latest version of the protocol software.
Hash
The act of performing a hash function on the output data. This is used for confirming coin transactions.
Hash Rate
Measurement of performance for the mining rig is expressed in hashes per second.
Hybrid PoS/PoW
A hybrid PoS/PoW allows for both Proof of Stake and Proof of Work as consensus distribution algorithms on the network. In this method, a balance between miners and voters (holders) may be achieved, creating a system of community-based governance by both insiders (holders) and outsiders (miners).
Mining
Mining is the act of validating blockchain transactions. The necessity of validation warrants an incentive for the miners, usually in the form of coins. In this cryptocurrency boom, mining can be a lucrative business when done properly. By choosing the most efficient and suitable hardware and mining target, mining can produce a stable form of passive income.
Multi-Signature
Multi-signature addresses provide an added layer of security by requiring more than one key to authorize a transaction.
Node
A copy of the ledger operated by a participant of the blockchain network.
Oracles
Oracles work as a bridge between the real world and the blockchain by providing data to the smart contracts.
Peer to Peer
Peer to Peer (P2P) refers to the decentralized interactions between two parties or more in a highly-interconnected network. Participants of a P2P network deal directly with each other through a single mediation point.
Public Address
A public address is the cryptographic hash of a public key. They act as email addresses that can be published anywhere, unlike private keys.
Private Key
A private key is a string of data that allows you to access the tokens in a specific wallet. They act as passwords that are kept hidden from anyone but the owner of the address.
Proof of Stake
A consensus distribution algorithm that rewards earnings based on the number of coins you own or hold. The more you invest in the coin, the more you gain by mining with this protocol.
Proof of Work
A consensus distribution algorithm that requires an active role in mining data blocks, often consuming resources, such as electricity. The more ‘work’ you do or the more computational power you provide, the more coins you are rewarded with.
Scrypt
Scrypt is a type of cryptographic algorithm and is used by Litecoin. Compared to SHA256, this is quicker as it does not use up as much processing time.
SHA-256
SHA-256 is a cryptographic algorithm used by cryptocurrencies such as Bitcoin. However, it uses a lot of computing power and processing time, forcing miners to form mining pools to capture gains.
Smart Contracts
Smart contracts encode business rules in a programmable language onto the blockchain and are enforced by the participants of the network.
Soft Fork
A soft fork differs from a hard fork in that only previously valid transactions are made invalid. Since old nodes recognize the new blocks as valid, a soft fork is essentially backward-compatible. This type of fork requires most miners upgrading in order to enforce, while a hard fork requires all nodes to agree on the new version.
Solidity
Solidity is Ethereum’s programming language for developing smart contracts.
Testnet
A test blockchain used by developers to prevent expending assets on the main chain.
Transaction Block
A collection of transactions gathered into a block that can then be hashed and added to the blockchain.
Transaction Fee
All cryptocurrency transactions involve a small transaction fee. These transaction fees add up to account for the block reward that a miner receives when he successfully processes a block.
Turing Complete
Turing complete refers to the ability of a machine to perform calculations that any other programmable computer is capable of. An example of this is the Ethereum Virtual Machine (EVM).
Wallet
A file that houses private keys. It usually contains a software client which allows access to view and create transactions on a specific blockchain that the wallet is designed for.
submitted by Tokenberry to NewbieZone [link] [comments]

TKEY mining explained. Part 1

TKEY mining explained. Part 1

https://preview.redd.it/375qshuf6fs21.png?width=1500&format=png&auto=webp&s=cf3102df8a682faf5eb9b0d20814637860a2eba0

Dear investors!
As promised, we start a series of articles about Tkeycoin mining and mining hardware. We will try to explain the process in detail and reply all the questions, if they arise. We kindly ask you not to ignore those publications and carefully read the info we provide.
To understand how mining process works in general, it is better to start with the basics. The pioneer here was the good old Bitcoin, which started to be mined back in 2009. The BTC mining technology did not really change during these 8 years - the process is still based on the Proof-Of-Work (PoW) principle and uses SHA-256 hashing algorithm.
By the way, Proof-Of-Work (PoW) existed long before the cryptocurrencies emerged, its main purpose being to create special math puzzles that required certain amount of time and resources to be solved. PoW was used to protect websites of DDOS-attacks and massive spam. In 2009 PoW was chosen by Satoshi Nakamoto for the nascent Bitcoin network, and in a few years it was already being used by millions of people for making good money.
How PoW algorithm works? The miner gets a certain math puzzle that requires spending computing power to be solved. Finding solution is a random guessing process, therefore the more computing power a miner possesses, the faster he will find the solution. The first miner to come up with the solution (to get a resulting hash) receives a certain amount of BTC as a reward for solving the block. The less lucky participants get their fraction of reward, too. It’s rather simple.
PoW principle may be compared to a class work, the teacher saying that the first student to solve the puzzle will get an A. Miners are like kids competing for an A (BTC reward). The computing power spent in the process is the amount of intellectual efforts the kids make to find the decision. Finally, the kid who comes up with the solution, gets the reward. The same happens in the Bitcoin network, though the puzzle difficulty level and the reward are different.
It looks rather simple. Naturally, millions of people all over the world soon got the idea and started to mine Bitcoins. As a result, once simple process started to get more and more complicated. There was a time, when you could mine Bitcoins with CPUs, using your home or office PC. At this stage few people knew about BTC - by the end of 2009 there were just a few hundreds of miners in the world. But the situation was changing quickly, and in the next year GPU-mining started. GPUs were faster to find the solution, and they were also cheaper, featuring the better value for money. In September 2010 GPU-mining went mainstream. A lot of people became suddenly aware that mining BTC was really profitable, therefore the number of miners increased greatly.
In the same month the first BTC mining pool was launched. In a matter of months the price of BTC skyrocketed from $1 to $20. Naturally, the difficulty of mining increased too - by November 2010 it reached 1 000 000 (compared with 10 000 in the end of 2009). In 2013 the price of BTC passed the $1000 mark. The first ASICs (customized mining hardware) emerged, meaning revolutionary changes for the market. (We will talk about them in the next part of ‘TKEY mining explained’).
These days BTC mining is by far less available and profitable than it used to be. Solo mining hardly makes any sense now. If back in 2010 you could mine BTC with an normal home PC, now you need a powerful GPU-rig or the support of a mining pool to get some considerable profit. It is caused by such factors as the increased network difficulty, block reward reduction and fast mining hardware evolution. Originally, the reward for a block solved was 50BTC, now it’s just 12,5 BTC. The network difficulty increased from 10 000 in 2009 to 6 379 265 451 411 at the moment. And most of you are well-aware of the price of up-to-date mining hardware.
Why we are talking about all this? Why we dwell in detail on the Bitcoin mining? And who is Satoshi Nakamoto?
Actually, it all this makes sense if we consider the Bitcoin situation with the Tkeycoin network current state. Mining Tkeycoin, as well as it was at the early stages of BTC history, will be really available to many, and you will be able to mine TKEY using your smartphone or a rather outdated home or office PC. You do not need to invest into costly mining hardware to get your share of TKEYs. We declared that TKEY mining will be accessible for almost everyone, and we meant it.
As you know from experience, the progress is unstoppable, therefore TKEY mining difficulty will inevitably grow with time, too. But, according to our experts, you won’t have to worry about it over the next 3 years or so.
For TKEY mining we use the updated and modified version of the PoW algorithm called mPoW. The basic principle is the same: the miners have a puzzle to solve, and get the reward when they succeed. But it’s important to know, that our protocol is free from many typical problems that plague the classical PoW. For instance,
Due to modular realization, selfish mining is made impossible; Due to the network specific architecture, 51% Attack and Double Spending are made impossible; mPoW-based mining is much less power-consuming; The network is immune to quantum attacks.
Currently, the BTC-mining is not so decentralized as it was meant to be initially. Over 65% of Bitcoin hash power is now distributed between 5 major pools. Theoretically, they can make 51% attack on the network any time soon.
On the contrary, the Tkeycoin network is completely decentralized. No monopolies will interfere with your solo mining at home, using an ordinary PC.
That is all for today. Later we will talk about SHA256 hashing algorithm, review the current ASIC market situation, suggest the best hardware for TKEY-mining and talk about mining profitability calculators.
Don’t miss the next part of ‘TKEY mining explained’!
See you soon!
Your Tkeycoin Team
submitted by tkeycoin to Tkeycoin_Official [link] [comments]

TKEY mining explained. Part 1

TKEY mining explained. Part 1

https://preview.redd.it/61gzhcjq78r21.png?width=1500&format=png&auto=webp&s=cf0406038eb054583475e500f63950362b975358

Dear investors!

As promised, we start a series of articles about Tkeycoin mining and mining hardware. We will try to explain the process in detail and reply all the questions, if they arise. We kindly ask you not to ignore those publications and carefully read the info we provide.

To understand how mining process works in general, it is better to start with the basics. The pioneer here was the good old Bitcoin, which started to be mined back in 2009. The BTC mining technology did not really change during these 8 years - the process is still based on the Proof-Of-Work (PoW) principle and uses SHA-256 hashing algorithm.

By the way, Proof-Of-Work (PoW) existed long before the cryptocurrencies emerged, its main purpose being to create special math puzzles that required certain amount of time and resources to be solved. PoW was used to protect websites of DDOS-attacks and massive spam. In 2009 PoW was chosen by Satoshi Nakamoto for the nascent Bitcoin network, and in a few years it was already being used by millions of people for making good money.

How PoW algorithm works? The miner gets a certain math puzzle that requires spending computing power to be solved. Finding solution is a random guessing process, therefore the more computing power a miner possesses, the faster he will find the solution. The first miner to come up with the solution (to get a resulting hash) receives a certain amount of BTC as a reward for solving the block. The less lucky participants get their fraction of reward, too. It’s rather simple.

PoW principle may be compared to a class work, the teacher saying that the first student to solve the puzzle will get an A. Miners are like kids competing for an A (BTC reward). The computing power spent in the process is the amount of intellectual efforts the kids make to find the decision. Finally, the kid who comes up with the solution, gets the reward. The same happens in the Bitcoin network, though the puzzle difficulty level and the reward are different.

It looks rather simple. Naturally, millions of people all over the world soon got the idea and started to mine Bitcoins. As a result, once simple process started to get more and more complicated. There was a time, when you could mine Bitcoins with CPUs, using your home or office PC. At this stage few people knew about BTC - by the end of 2009 there were just a few hundreds of miners in the world. But the situation was changing quickly, and in the next year GPU-mining started. GPUs were faster to find the solution, and they were also cheaper, featuring the better value for money. In September 2010 GPU-mining went mainstream. A lot of people became suddenly aware that mining BTC was really profitable, therefore the number of miners increased greatly.

In the same month the first BTC mining pool was launched. In a matter of months the price of BTC skyrocketed from $1 to $20. Naturally, the difficulty of mining increased too - by November 2010 it reached 1 000 000 (compared with 10 000 in the end of 2009). In 2013 the price of BTC passed the $1000 mark. The first ASICs (customized mining hardware) emerged, meaning revolutionary changes for the market. (We will talk about them in the next part of ‘TKEY mining explained’).

These days BTC mining is by far less available and profitable than it used to be. Solo mining hardly makes any sense now. If back in 2010 you could mine BTC with an normal home PC, now you need a powerful GPU-rig or the support of a mining pool to get some considerable profit. It is caused by such factors as the increased network difficulty, block reward reduction and fast mining hardware evolution. Originally, the reward for a block solved was 50BTC, now it’s just 12,5 BTC. The network difficulty increased from 10 000 in 2009 to 6 379 265 451 411 at the moment. And most of you are well-aware of the price of up-to-date mining hardware.

Why we are talking about all this? Why we dwell in detail on the Bitcoin mining? And who is Satoshi Nakamoto?

Actually, it all this makes sense if we consider the Bitcoin situation with the Tkeycoin network current state. Mining Tkeycoin, as well as it was at the early stages of BTC history, will be really available to many, and you will be able to mine TKEY using your smartphone or a rather outdated home or office PC. You do not need to invest into costly mining hardware to get your share of TKEYs. We declared that TKEY mining will be accessible for almost everyone, and we meant it.

As you know from experience, the progress is unstoppable, therefore TKEY mining difficulty will inevitably grow with time, too. But, according to our experts, you won’t have to worry about it over the next 3 years or so.

For TKEY mining we use the updated and modified version of the PoW algorithm called mPoW. The basic principle is the same: the miners have a puzzle to solve, and get the reward when they succeed. But it’s important to know, that our protocol is free from many typical problems that plague the classical PoW. For instance,

Due to modular realization, selfish mining is made impossible; Due to the network specific architecture, 51% Attack and Double Spending are made impossible; mPoW-based mining is much less power-consuming; The network is immune to quantum attacks.

Currently, the BTC-mining is not so decentralized as it was meant to be initially. Over 65% of Bitcoin hash power is now distributed between 5 major pools. Theoretically, they can make 51% attack on the network any time soon.

On the contrary, the Tkeycoin network is completely decentralized. No monopolies will interfere with your solo mining at home, using an ordinary PC.

That is all for today. Later we will talk about SHA256 hashing algorithm, review the current ASIC market situation, suggest the best hardware for TKEY-mining and talk about mining profitability calculators.
Don’t miss the next part of ‘TKEY mining explained’!

See you soon!
Your Tkeycoin Team
submitted by tkeycoin to u/tkeycoin [link] [comments]

TKEY mining explained. Part 2

TKEY mining explained. Part 2

https://preview.redd.it/2erlvx29qer21.png?width=1500&format=png&auto=webp&s=1e387b209ea03d4b77c74a0e82feeea4324c3d4b


Dear Investors!

We have already announced the official Tkeycoin network release date - April 5, 2019. The days are passing by and the release date is getting closer, meaning it’s high time to talk about the mining of TKEY cryptocurrency.

The first publication on the subject is already available on our Facebook page (just in case you missed it). We talked about the PoW algorithm, Bitcoin mining history and mining hardware evolution, Tkeycoin mining features etc. The article was really informative, and we recommend you to read (or re-read) it before you start the second part.

Today we will talk about some mining issues that we haven’t yet mentioned. Let’s start with SHA-256 algorithm, as it will be also used for Tkeycoin mining. It stands for Secure Hashing Algorithm, developed by The US National Security Service. The main advantage of this algorithm is its ability to efficiently compress data and the zero probability of collisions. In simple words, SHA-256 is safe, quick and universal.

According to the US law, SHA-256 may be used by both individuals and commercial organizations. It is not surprising that SHA-256 was applied to cryptocurrencies - this algorithm allows to encrypt any amount of data, converting it into a compact line of cryptographic hash. It is very important for mining, as miners can encrypt all the transactions in one block, producing an output hash value of the fixed size. When miners manage to find the right hash, the block is considered solved and is added to the blockchain. This is exactly how cryptocurrencies are mined.

As the process is actually based on random guessing, miners with more computing power are the first to find the right hash. As we have already mentioned, SHA-256-based mining is possible with CPUs, GPUs and ASICs. And if the first 2 options (processors and video cards respectively) are familiar to everyone, the third one may be confusing both for beginners and experienced miners.

ASIC (application specific integrated circuit) is a type of hardware customized for a specific computer task. ASIC miners are suitable only for cryptocurrency mining. They use the circuits specifically created for efficient solving of hash puzzles. Even ASIC physical design meets the basic needs of mining - for example, they normally have very efficient cooling systems.

ASICs pay off pretty quickly, feature less energy consumption (compared with GPU analogs) and bigger hashrates. Also, as we have already said, they are provided with better cooling systems. Naturally, this type of mining hardware has its drawbacks, too. For instance, you can only use it for mining one or several cryptocurrencies, based on a certain algorithm. Besides, ASICs are fast to become obsolete. But, despite all this, they are normally a profitable investment.

To mine Tkeycoin you may use a wide variety of ASICs by Bitmain (Antminer S9, S11, T15), DragonMint T1, Ebang Communication, WhatsMiner M3 etc. It’s important to note that you will also be able to mine TKEY cryptocurrency with already ‘obsolete’ hardware, because in our case the network difficulty will be comparable with the early stages of Bitcoin existence. We will publish more details and numbers soon, after we have tested the network and made the preliminary calculations.

Anyway, you still have enough time for choosing your mining hardware, as ASIC and GPU mining will be unavailable during the first month of the network existence. Our team will need a certain amount of time for public network testing and tuning. Until this process is over, it will only be possible to mine Tkeycoin using PCs, laptops and smartphones.

As soon as we have completed all the necessary tests and stabilized the mining process, all the users will become able to mine the coins with ASICs, cloud-mining services, and GPU rigs - whatever option they prefer or can afford. For your convenience, we will also release a special mining profitability calculator that will help you choose the perfect hardware for your needs, resources and desired profit level. Until then you may use for this purpose any of the dozens calculators already available online.

About mining pools. As we mentioned earlier, we will start an official Tkeycoin mining pool that will let TKEY miners unite their computing powers. Besides, we plan to publish the source code, thus allowing thousands of enthusiasts worldwide to create their own pools for Tkeycoin mining.

In conclusion, there will be no limits for Tkeycoin mining. So far, we have received a lot of questions concerning this issue. No, there will not be any limits (like 3000 coins or whatever). Tkeycoin mining will be available for anyone, we mean it.

Don’t forget to subscribe to our social media pages and follow the news of the project. Soon, we will come up to you with some tech specs and more related details, including the size of reward for solving a block.
Check your news feed regularly not to miss anything!

See you soon!
Your Tkeycoin Team
submitted by tkeycoin to u/tkeycoin [link] [comments]

I decided to post this here as I saw some questions on the QRL discord.

Is elliptic curve cryptography quantum resistant?
No. Using a quantum computer, Shor's algorithm can be used to break Elliptic Curve Digital Signature Algorithm (ECDSA). Meaning: they can derive the private key from the public key. So if they got your public key, they got your private key, and they can empty your funds. https://en.wikipedia.org/wiki/Elliptic-curve_cryptography#Quantum_computing_attacks https://eprint.iacr.org/2017/598.pdf
Why do people say that BTC is quantum resistant, while they use elliptic curve cryptography? (Here comes the idea from that never reusing a private key from elliptic curve cryptography (and public key since they form a pair) would be quantum resistant.)
Ok, just gonna start with the basics here. Your address, where you have your coins stalled, is locked by your public- private key pair. See it as your e-mail address (public key) and your password (Private key). Many people got your email address, but only you have your password. If you got your address and your password, then you can access your mail and send emails (Transactions). Now if there would be a quantum computer, people could use that to calculate your password/ private key, if they have your email address/ public key.
What is the case with BTC: they don't show your public key anywhere, untill you make a transaction. So your public key is private untill you make a transaction. How do they do that while your funds must be registered on the ledger? Wel, they only show the Hash of your public key (A hash is an outcome of an equation. Usually one-way hash functions are used, where you can not derive the original input from the output. But everytime you use the same hash function on the same original input (For example IFUHE8392ISHF), you will always get the same output (For example G). That way you can have your coins on public key IFUHE8392ISHF, while on the chain, they are on G.) So your funds are registered on the blockchain on the "Hash" of the public key. The Hash of the public key is also your "email address" in this case. So you give "G" as your address to send BTC to.
By the way, in the early days you could use your actual public key as your address. And miners would receive coins on their public key, not on the hashed public key. That is why all the Satoshi funds are vulnerable to quantum attacks even though these addresses have never been used to make transactions from. These public keys are already public instead of hashed. Also certain hard forks have exposed the public keys of unused addresses. So it's really a false sense of security that most people hang on to in the first place.
But it's actually a false sense of security over all.
Since it is impossible to derive a public key from the Hash of a public key, your coins are safe for quantum computers as long as you don't make any transaction. Now here follows the biggest misconseption: Pretty much everyone will think, great, so BTC is quantum secure! It's not that simple. Here it is important to understand two things:
1 How is a transaction sent? The owner has the private key and the public key and uses that to log into the secured environment, the wallet. This can be online or offline. Once he is in his wallet, he states how much he wants to send and to what address.
When he sends the transaction, it will be broadcasted to the blockchain network. But before the actual transaction that will be sent, it is formed into a package, created by the wallet. This happens out of sight of the sender.
That package ends up carrying roughly the following info: The public key to point to the address where the funds will be coming from, the amount that will be transferred, the public key of the address the funds will be transferred to.
Then this package caries the most important thing: a signature, created by the wallet, derived from the private- public key combination. This signature proves to the miners that you are the rightfull owner and you can send funds from that public key.
So this package is then sent out of the secure wallet environment to multiple nodes. The nodes don’t need to trust the sender or establish the sender’s "identity." And because the transaction is signed and contains no confidential information, private keys, or credentials, it can be publicly broadcast using any underlying network transport that is convenient. As long as the transaction can reach a node that will propagate it into the network, it doesn’t matter how it is transported to the first node.
2 How is a transaction confirmed/ fullfilled and registered on the blockchain?
After the transaction is sent to the network, it is ready to be processed. The nodes have a bundle of transactions to verify and register on the next block. This is done during a period called the block time. In the case of BTC that is 10 minutes.
If you comprehend the information written above, you can see that there are two moments where you can actually see the public key, while the transaction is not fullfilled and registered on the blockchain yet.
1: during the time the transaction is sent from the sender to the nodes
2: during the time the nodes verify the transaction.
This paper describes how you could hijack a transaction and make a new transaction of your own, using someone elses address to send his coins to an address you own during moment 2: the time the nodes verify the transaction:
https://arxiv.org/pdf/1710.10377.pdf
"(Unprocessed transactions) After a transaction has been broadcast to the network, but before it is placed on the blockchain it is at risk from a quantum attack. If the secret key can be derived from the broadcast public key before the transaction is placed on the blockchain, then an attacker could use this secret key to broadcast a new transaction from the same address to his own address. If the attacker then ensures that this new transaction is placed on the blockchain first, then he can effectively steal all the bitcoin behind the original address."
So this means that practically, you can't call BTC a quantum secure blockchain. Because as soon as you will touch your coins and use them for payment, or send them to another address, you will have to make a transaction and you risk a quantum attack.
Why would Nexus be any differtent?
If you ask the wrong person they will tell you "Nexus uses a combination of the Skein and Keccak algorithms which are the 2 recognized quantum resistant algorithms (keccal is used by the NSA) so instead of sha-256, Nexus has SK-1024 making it much harder to break." Which would be the same as saying BTC is quantum resistant because they use a Hashing function to hash the private key as long as no transaction is made.
No, this is their sollid try to be quantum resistant: Nexus states it's different because they have instant transactions (So there wouldn't be a period during which time the nodes verify the transaction. This period would be instant.) Also they use a particular order in which the miners verify transactions: First-In-First-Out (FIFO) (So even if instant is not instant after all, and you would be able to catch a public key and derive the private key, you would n't be able to have your transaction signed before the original one. The original one is first in line, and will therefore be confirmed first. Also for some reason Nexus has standardized fees which are burned after a transaction. So if FIFO wouldn't do the trick you would not be able to use a higher fee to get prioritized and get an earlyer confirmation.
So, during during the time the nodes verify the transaction, you would not be able to hijack a transaction. GREAT, you say? Yes, great-ish. Because there is still moment # 1: during the time the transaction is sent from the sender to the nodes. This is where network based attacks could do the trick:
There are network based attacks that can be used to delay or prevent transactions to reach nodes. In the mean time the transactions can be hijacked before they reach the nodes. And thus one could hijack the non quantum secure public keys (they are openly included in sent signed transactions) who then can be used to derive privatekeys before the original transaction is made. So this means that even if Nexus has instant transactions in FIFO order, it is totally useless, because the public key would be obtained by the attacker before they reach the nodes. Conclusion: Nexus is Nnot quantum resistant. You simply can't be without using a post quantum signature scheme.
Performing a DDoS attack or BGP routing attacks or NSA Quantum Insert attacks on a peer to peer newtork would be hard. But when provided with an opportunitiy to steal billions, hackers would find a way. For example:
https://bitcoinmagazine.com/articles/researchers-explore-eclipse-attacks-ethereum-blockchain/
For BTC:
https://eprint.iacr.org/2015/263.pdf
"An eclipse attack is a network-level attack on a blockchain, where an attacker essentially takes control of the peer-to-peer network, obscuring a node’s view of the blockchain."
That is exactly the receipe for what you would need to create extra time to find public keys and derive private keys from them. Then you could sign transactions of your own and confirm them before the originals do.
By the way, yes this seems to be fixed now, but it most definately shows it's possible. And there are other creative options. Either you stop tranasctions from the base to get out, while the sender thinks they're sent, or you blind the network and catch transactions there. There are always options, and they will be exploited when billions are at stake. The keys can also be hijacked when a transaction is sent from the users device to the blockchain network using a MITM attack. The result is the same as for network based attacks, only now you don't mess with the network itself. These attacks make it possible to 1) retrieve the original public key that is included in the transaction message. 2) Stop or delay the transaction message to arrive at the blockchain network. So, using a quantum computer, you could hijack transactions and create forged transactions, which you then send to the nodes to be confirmed before the nodes even receive the original transaction. There is nothing you could change to the Nexus network to prevent this. The only thing they can do is implement a quantum resistant signature scheme. They plan to do this in the future, like any other serious blockchain project. Yet Nexus is the only of these future quantum resistant projects to prematurely claim to be quantum resistant. There is only one way to get quantum resistancy: POST QUANTUM SIGNATURE SCHEMES. All the rest is just a shitty shortcut that won't work in the end.
(If you use this info on BTC, you will find that the 10 minutes blocktime that is used to estimate when BTC will be vulnerable for quantum attacks, can actually be more then 10 minutes if you catch the public key before the nodes receive them. This makes BTC vulnerable sooner thatn the 10 min blocktime would make you think.)
By the way, Nexus using FIFO and standadrized fees which are burned after the transaction comes with some huge downsides:
Why are WOTS+ signatures (and by extension XMSS) more quantum resistant?
First of all, this is where the top notch mathematicians work their magic. Cryptography is mostly maths. As Jackalyst puts it talking about post quantum signature schemes: "Having papers written and cryptographers review and discuss it to nauseating levels might not be important for butler, but it's really important with signature schemes and other cryptocraphic methods, as they're highly technical in nature."
If you don't believe in math, think about Einstein using math predicting things most coudldn't even emagine, let alone measure back then.
Then there is implementing it the right way into your blockchain without leaving any backdoors open.
So why is WOTS+ and by extension XMSS quantum resistant? Because math papers say so. With WOTS it would even take a quantum computer too much time to derive a private key from a public key. https://en.wikipedia.org/wiki/Hash-based_cryptography https://eprint.iacr.org/2011/484.pdf
What is WOTS+?
It's basiclally an optimized version of Lamport-signatures. WOTS+ (Winternitz one-time signature) is a hash-based, post-quantum signature scheme. So it's a post quantum signature scheme meant to be used once.
What are the risks of WOTS+?
Because each WOTS publishes some part of the private key, they rapidly become less secure as more signatures created by the same public/private key are published. The first signature won't have enough info to work with, but after two or three signatures you will be in trouble.
IOTA uses WOTS. Here's what the people over at the cryptography subreddit have to say about that:
https://www.reddit.com/crypto/comments/84c4ni/iota_signatures_private_keys_and_address_reuse/?utm_content=comments&utm_medium=user&utm_source=reddit&utm_name=u_QRCollector
With the article:
http://blog.lekkertech.net/blog/2018/03/07/iota-signatures/
Mochimo uses WOTS+. They kinda solved the problem: A transaction consists of a "Source Address", a "Destination Address" and a "Change Address". When you transact to a Destination Address, any remaining funds in your Source Address will move to the Change Address. To transact again, your Change Address then becomes your Source Address.
But what if someone already has your first address and is unaware of the fact you already send funds from that address? He might just send funds there. (I mean in a business environment this would make Mochimo highly impractical.) They need to solve that. Who knows, it's still a young project. But then again, for some reason they also use FIFO and fixed fees, so there I have the same objections as for Nexus.
How is XMSS different?
XMSS uses WOTS in a way that you can actually reuse your address. WOTS creates a quantum resistant one time signature and XMSS creates a tree of those signatures attached to one address so that the address can be reused for sending an asset.
submitted by QRCollector to QRL [link] [comments]

Bitmain Antminer S4 ASIC SHA-256 2000 GH/S Bitcoin Mining Machine How to calculate SHA-256 hash without any software? - YouTube How to buy & setup the Antminer S9 bitcoin and bitcoin cash SHA-256 miner - Still Profitable? Butterfly Labs 50 Gh/s ASIC Bitcoin Miner SHA-256 Mining Bitcoin with Excel - YouTube

Bitcoin Cash mining calculator for SHA-256: Price 272.71$, 352.1565G difficulty, 2.1635 EH/s network hashrate, 6.2500 BCH block reward. Bitcoin Cash mining pools list and list of best mining software. See what SHA 256 coins to mine and view their most profitable mining pools by checking the pool fee, payment scheme or minimum payout. Bitcoin SV mining calculator for SHA-256: Price 159.25$, 272.3419G difficulty, 2.0739 EH/s network hashrate, 6.2524 BSV block reward. Bitcoin SV mining pools list and list of best mining software. Bitcoin mining calculator for SHA-256: Price 12,977.79$, 19.9973T difficulty, 144.1406 EH/s network hashrate, 6.2500 BTC block reward. Bitcoin mining pools list and list of best mining software. Calculate Bitcoin (BTC) mining profitability in realtime based on hashrate, power consumption and electricity cost. BTC exchange rates, mining pools. BTC exchange rates, mining pools. $12,976.61 $62.75 $412.92 $126.63 $5.37 $72.44 $55.67 Follow @WhatToMine dark mode

[index] [28443] [4842] [32047] [42715] [45007] [3244] [4137] [9486] [43698] [20226]

Bitmain Antminer S4 ASIC SHA-256 2000 GH/S Bitcoin Mining Machine

This video goes over the setup and buying of the Antminer S9 bitcoin and bitcoin cash miner from Bitmain. It will actually mine any SHA-256 coin. Bitmain Twi... This video explains the concept of hashing and SHA-256 for newbies. For more information visit http://99bitcoins.com/what-is-bitcoin-hash/ Bitcoins are mined using a cryptographic algorithm called SHA-256. This algorithm is simple enough to be done with pencil and paper, as I show in this video.... Here in theory the most stable mining machine for bitcoin, here l show you. Do you want to buy a course? Exams, videos, notes, go to gabakusa.com/shop QUESTI... This item is available for just a few days on eBay. It has been tested and does work. BITMAIN ANTMINER S4 ASIC SHA-256 Bitcoin Miner 2000 GH/S https://www.eb...

#