Bitcoin makes use of cryptographic hash function SHA256, which stands for Secure Hash Algorithm 256-bit. The SHA was invented in 1985 and further developed by the NSA in the early 2000's. The NSA is tasked with the protection of U.S. communications networks and information systems.
Cryptography is about constructing and analysing protocols to prevent third parties reading it. It is useful in privacy use–cases. The cryptographic protocol is an abstract or an existing protocol that performs a security-related function and applies cryptographic methods. A protocol describes how cryptographic algorithms should be used to secure information. In this protocol, two users can each create a “shared secret” that only the two parties know, for communication.
So what are Algorithms? Basically, when you write a computer program you tell the computer exactly what to do, step by step. By telling the computer what to do you also choose how it’s going to do it. An algorithm is a set of instructions in a computer program or script which produces an output or a result. Very important is the order of instruction and then the algorithm also specifies the order. The algorithm tells the system what to do in order to achieve the desired result. The algorithm does not necessarily know the result but knows it has to have a result.
On the other hand, what is a protocol? The protocol a set of rules that governs how a system operates. The rules establish the basic function of the different parts of how to interact with each other. It does not have a chronological order and does not produce an output or a result.
Algorithms use the underlying protocol to achieve these goals. A sample of an underlying protocol is HTTP which is used by the World Wide Web. This protocol defines how messages are formatted and transmitted; also, what the actions web servers and browser should take in response to various commands.
How is this applicable to the blockchain? The blockchain needs both protocols and algorithms and each of them has a distinct role.
In the blockchain the algorithm:
|–||verifies signatures of the ownership of the Bitcoin. Your private key is used to create the signature and the public key is used to verify the signature. This allows anyone to verify your signature as long as they have your public key. It is important to know that the private key must remain a secret.|
|–||decides if a block is valid;|
|–||determines how miners validate a block;|
|–||establishes the procedure for telling a block to move;|
|–||establishes the procedure for creating new coins;|
|–||tells the system how to determine consensus;|
On the other hand protocols in the blockchain
|–||tell the nodes how to interact with each other(without telling them to do so).|
|–||determine how data gets routed from one node to the next (without telling the data to move).|
|–||define what the blocks have to look like.|
|–||stipulate who decides which transactions are valid.|
|–||identifies who maintains the ledger.|
About the Author
Pieter Lategan is the founder of Techno Magazine. He also blogs for the Free Online Magazine. He focuses on the business side of blockchain technology. He writes about businesses which will improve with blockchain, cryptocurrencies, and dApps.