Generate a SHA-256 encrypted hash - Online hash encryption

World History Timeline of Events Leading up to Bitcoin - In the Making

A (live/editable) timeline of historical events directly or indirectly related to the creation of Bitcoin and Cryptocurrencies
*still workin' on this so check back later and more will be added, if you have any suggested dates/events feel free to lemme know...
This timeline includes dates pertaining to:
Ancient Bartering – first recorded in Egypt (resources, services...) – doesn’t scale
Tally sticks were used, making notches in bones or wood, as a form of money of account
9000-6000 BC Livestock considered the first form of currency
c3200 BC Clay tablets used in Uruk (Iraq) for accounting (believed to be the earliest form of writing)
3000 BC Grain is used as a currency, measured out in Shekels
3000 BC Banking developed in Mesopotamia
3000 BC? Punches used to stamp symbols on coins were a precursor to the printing press and modern coins
? BC Since ancient Persia and all the way up until the invention and expansion of the telegraph Homing Pigeons were used to carry messages
2000 BC Merchants in Assyria, India and Sumeria lent grain to farmers and traders as a precursor to banks
1700 BC In Babylon at the time of Hammurabi, in the 18th century BC, there are records of loans made by the priests of the temple.
1200 BC Shell money first used in China
1000-600 BC Crude metal coins first appear in China
640 BC Precious metal coins – Gold & Silver first used in ancient Lydia and coastal Greek cities featuring face to face heads of a bull and a lion – first official minted currency made from electrum, a mixture of gold and silver
600-500 BC Atbash Cipher
A substitution Cipher used by ancient Hebrew scholars mapping the alphabet in reverse, for example, in English an A would be a Z, B a Y etc.
400 BC Skytale used by Sparta
474 BC Hundreds of gold coins from this era were discovered in Rome in 2018
350 BC Greek hydraulic semaphore system, an optical communication system developed by Aeneas Tacticus.
c200 BC Polybius Square
??? Wealthy stored coins in temples, where priests also lent them out
??? Rome was the first to create banking institutions apart from temples
118 BC First banknote in the form of 1 foot sq pieces of white deerskin
100-1 AD Caesar Cipher
193 Aureus, a gold coin of ancient Rome, minted by Septimius Severus
324 Solidus, pure gold coin, minted under Constantine’s rule, lasted until the late 8th century
600s Paper currency first developed in Tang Dynasty China during the 7th century, although true paper money did not appear until the 11th century, during the Song Dynasty, 960–1279
c757–796 Silver pennies based on the Roman denarius became the staple coin of Mercia in Great Britain around the time of King Offa
806 First paper banknotes used in China but isn’t widely accepted in China until 960
1024 The first series of standard government notes were issued in 1024 with denominations like 1 guàn (貫, or 700 wén), 1 mín (緡, or 1000 wén), up to 10 guàn. In 1039 only banknotes of 5 guàn and 10 guàn were issued, and in 1068 a denomination of 1 guàn was introduced which became forty percent of all circulating Jiaozi banknotes.
1040 The first movable type printer was invented in China and made of porcelain
? Some of the earliest forms of long distance communication were drums used by Native Africans and smoke signals used by Native Americans and Chinese
1088 Movable type in Song Dynasty China
1120 By the 1120s the central government officially stepped in and produced their own state-issued paper money (using woodblock printing)
1150 The Knights Templar issued bank notes to pilgrims. Pilgrims deposited their valuables with a local Templar preceptory before embarking, received a document indicating the value of their deposit, then used that document upon arrival in the Holy Land to retrieve their funds in an amount of treasure of equal value.
1200s-1300s During the 13th century bankers from north Italy, collectively known as Lombards, gradually replace the Jews in their traditional role as money-lenders to the rich and powerful. – Florence, Venice and Genoa - The Bardi and Peruzzi Families dominated banking in 14th century Florence, establishing branches in many other parts of Europe
1200 By the time Marco Polo visited China they’d move from coins to paper money, who introduced the concept to Europe. An inscription warned, "All counterfeiters will be decapitated." Before the use of paper, the Chinese used coins that were circular, with a rectangular hole in the middle. Several coins could be strung together on a rope. Merchants in China, if they became rich enough, found that their strings of coins were too heavy to carry around easily. To solve this problem, coins were often left with a trustworthy person, and the merchant was given a slip of paper recording how much money they had with that person. Marco Polo's account of paper money during the Yuan Dynasty is the subject of a chapter of his book, The Travels of Marco Polo, titled "How the Great Kaan Causeth the Bark of Trees, Made Into Something Like Paper, to Pass for Money All Over his Country."
1252 Florin minted in Florence, becomes the hard currency of its day helping Florence thrive economically
1340 Double-entry bookkeeping - The clerk keeping the accounts for the Genoese firm of Massari painstakingly fills in the ledger for the year 1340.
1397 Medici Bank established
1450 Johannes Gutenberg builds the printing press – printed words no longer just for the rich
1455 Paper money disappears from China
1466 Polyalphabetic Cipher
1466 Rotating cipher disks – Vatican – greatest crypto invention in 1000 yrs – the first system to challenge frequency analysis
1466 First known mechanical cipher machine
1472 The oldest bank still in existence founded, Banca Monte dei Paschi di Siena, headquartered in Siena, Italy
1494 Double-entry bookkeeping system codified by Luca Pacioli
1535 Wampum, a form of currency used by Native Americans, a string of beads made from clamshells, is first document.
1553 Vigenere Cipher
1557 Phillip II of Spain managed to burden his kingdom with so much debt (as the result of several pointless wars) that he caused the world's first national bankruptcy — as well as the world's second, third and fourth, in rapid succession.
1577 Newspaper in Korea
1586 The Babington Plot
1590 Cabinet Noir was established in France. Its mission was to open, read and reseal letters, and great expertise was developed in the restoration of broken seals. In the knowledge that mail was being opened, correspondents began to develop systems to encrypt and decrypt their letters. The breaking of these codes gave birth to modern systematic scientific code breaking.
1600s Promissory banknotes began in London
1600s By the early 17th century banking begins also to exist in its modern sense - as a commercial service for customers rather than kings. – Late 17th century we see cheques slowly gains acceptance
The total of the money left on deposit by a bank's customers is a large sum, only a fraction of which is usually required for withdrawals. A proportion of the rest can be lent out at interest, bringing profit to the bank. When the customers later come to realize this hidden value of their unused funds, the bank's profit becomes the difference between the rates of interest paid to depositors and demanded from debtors.
The transformation from moneylenders into private banks is a gradual one during the 17th and 18th centuries. In England it is achieved by various families of goldsmiths who early in the period accept money on deposit purely for safe-keeping. Then they begin to lend some of it out. Finally, by the 18th century, they make banking their business in place of their original craft as goldsmiths.
1605 Newspaper in Straussburg
c1627 Great Cipher
1637 Wampum is declared as legal tender in the U.S. (where we got the slang word “clams” for money)
1656 Johan Palmstruch establishes the Stockholm Banco
1661 Paper Currency reappears in Europe, soon became common - The goldsmith-bankers of London began to give out the receipts as payable to the bearer of the document rather than the original depositor
1661 Palmstruch issues credit notes which can be exchanged, on presentation to his bank, for a stated number of silver coins
1666 Stockholms Banco, the predecessor to the Central Bank of Sweden issues the first paper money in Europe. Soon went bankrupt for printing too much money.
1667 He issues more notes than his bank can afford to redeem with silver and winds up in disgrace, facing a death penalty (commuted to imprisonment) for fraud.
1668 Bank of Sweden – today the 2nd oldest surviving bank
1694 First Central Bank established in the UK was the first bank to initiate the permanent issue of banknotes
Served as model for most modern central banks.
The modern banknote rests on the assumption that money is determined by a social and legal consensus. A gold coin's value is simply a reflection of the supply and demand mechanism of a society exchanging goods in a free market, as opposed to stemming from any intrinsic property of the metal. By the late 17th century, this new conceptual outlook helped to stimulate the issue of banknotes.
1700s Throughout the commercially energetic 18th century there are frequent further experiments with bank notes - deriving from a recognized need to expand the currency supply beyond the availability of precious metals.
1710 Physiocracy
1712 First commercial steam engine
1717 Master of the Royal Mint Sir Isaac Newton established a new mint ratio between silver and gold that had the effect of driving silver out of circulation (bimetalism) and putting Britain on a gold standard.
1735 Classical Economics – markets regulate themselves when free of intervention
1744 Mayer Amschel Rothschild, Founder of the Rothschild Banking Empire, is Born in Frankfurt, Germany
Mayer Amschel Rothschild extended his banking empire across Europe by carefully placing his five sons in key positions. They set up banks in Frankfurt, Vienna, London, Naples, and Paris. By the mid 1800’s they dominated the banking industry, lending to governments around the world and people such as the Vanderbilts, Carnegies, and Cecil Rhodes.
1745 There was a gradual move toward the issuance of fixed denomination notes in England standardized printed notes ranging from £20 to £1,000 were being printed.
1748 First recorded use of the word buck for a dollar, stemming from the Colonial period in America when buck skins were commonly traded
1757 Colonial Scrip Issued in US
1760s Mayer Amschel Rothschild establishes his banking business
1769 First steam powered car
1775-1938 US Diplomatic Codes & Ciphers by Ralph E Weber used – problems were security and distribution
1776 American Independence
1776 Adam Smith’s Invisible Hand theory helped bankers and money-lenders limit government interference in the banking sector
1781 The Bank of North America was a private bank first adopted created the US Nation's first de facto central bank. When shares in the bank were sold to the public, the Bank of North America became the country's first initial public offering. It lasted less than ten years.
1783 First steamboat
1791 Congress Creates the First US Bank – A Private Company, Partly Owned by Foreigners – to Handle the Financial Needs of the New Central Government. First Bank of the United States, a National bank, chartered for a term of twenty years, it was not renewed in 1811.
Previously, the 13 states had their own banks, currencies and financial institutions, which had an average lifespan of about 5 years.
1792 First optical telegraph invented where towers with telescopes were dispersed across France 12-25 km apart, relaying signals according to positions of arms extended from the top of the towers.
1795 Thomas Jefferson invents the Jefferson Disk Cipher or Wheel Cipher
1797 to 1821 Restriction Period by England of trading banknotes for silver during Napoleonic Wars
1797 Currency Crisis
Although the Bank was originally a private institution, by the end of the 18th century it was increasingly being regarded as a public authority with civic responsibility toward the upkeep of a healthy financial system.
1799 First paper machine
1800 Banque de France – France’s central bank opens to try to improve financing of the war
1800 Invention of the battery
1801 Rotchschild Dynasty begins in Frankfurt, Holy Roman Empire – established international banking family through his 5 sons who established themselves in London, Paris, Frankfurt, Vienna, and Naples
1804 Steam locomotive
1807 Internal combustion engine and automobile
1807 Robert Fulton expands water transportation and trade with the workable steamboat.
1809 Telegraphy
1811 First powered printing press, also first to use a cylinder
1816 The Privately Owned Second Bank of the US was Chartered – It Served as the Main Depository for Government Revenue, Making it a Highly Profitable Bank – charter not renewed in 1836
1816 The first working telegraph was built using static electricity
1816 Gold becomes the official standard of value in England
1820 Industrial Revolution
c1820 Neoclassical Economics
1821 British gov introduces the gold standard - With governments issuing the bank notes, the inherent danger is no longer bankruptcy but inflation.
1822 Charles Babbage, considered the "father of the computer", begins building the first programmable mechanical computer.
1832 Andrew Jackson Campaigns Against the 2nd Bank of the US and Vetoes Bank Charter Renewal
Andrew Jackson was skeptical of the central banking system and believed it gave too few men too much power and caused inflation. He was also a proponent of gold and silver and an outspoken opponent of the 2nd National Bank. The Charter expired in 1836.
1833 President Jackson Issues Executive Order to Stop Depositing Government Funds Into Bank of US
By September 1833, government funds were being deposited into state chartered banks.
1833-1837 Manufactured “boom” created by central bankers – money supply Increases 84%, Spurred by the 2nd Bank of the US
The total money supply rose from $150 million to $267 million
1835 Jackson Escapes Assassination. Assassin misfired twice.
1837-1862 The “Free Banking Era” there was no formal central bank in the US, and banks issued their own notes again
1838 First Telegram sent using Morse Code across 3 km, in 1844 he sent a message across 71 km from Washington DC to Baltimore.
1843 Ada Lovelace published the first algorithm for computing
1844 Modern central bank of England established - meaning only the central bank of England could issue banknotes – prior to that commercial banks could issue their own and were the primary form of currency throughout England
the Bank of England was restricted to issue new banknotes only if they were 100% backed by gold or up to £14 million in government debt.
1848 Communist Manifesto
1850 The first undersea telegraphic communications cable connected France in England after latex produced from the sap of the Palaquium gutta tree in 1845 was proposed as insulation for the underwater cables.
1852 Many countries in Europe build telegram networks, however post remained the primary means of communication to distant countries.
1855 In England fully printed notes that did not require the name of the payee and the cashier's signature first appeared
1855 The printing telegraph made it possible for a machine with 26 alphabetic keys to print the messages automatically and was soon adopted worldwide.
1856 Belgian engineer Charles Bourseul proposed telephony
1856 The Atlantic Telegraph company was formed in London to stretch a commercial telegraph cable across the Atlantic Ocean, completed in 1866.
1860 The Pony Express was founded, able to deliver mail of wealthy individuals or government officials from coast to coast in 10 days.
1861 The East coast was connected to the West when Western Union completed the transcontinental telegraph line, putting an end to unprofitable The Pony Express.
1862-1863 First US banknotes - Lincoln Over Rules Debt-Based Money and Issues Greenbacks to Fund Civil War
Bankers would only lend the government money under certain conditions and at high interest rates, so Lincoln issued his own currency – “greenbacks” – through the US Treasury, and made them legal tender. His soldiers went on to win the war, followed by great economic expansion.
1863 to 1932 “National Banking Era” Commercial banks in the United States had legally issued banknotes before there was a national currency; however, these became subject to government authorization from 1863 to 1932
1864 Friedrich Wilhelm Raiffeisen founded the first rural credit union in Heddesdorf (now part of Neuwied) in Germany. By the time of Raiffeisen's death in 1888, credit unions had spread to Italy, France, the Netherlands, England, Austria, and other nations
1870 Long-distance telegraph lines connected Britain and India.
c1871 Marginalism - The doctrines of marginalism and the Marginal Revolution are often interpreted as a response to the rise of the worker's movement, Marxian economics and the earlier (Ricardian) socialist theories of the exploitation of labour.
1871 Carl Menger’s Principles of Economics – Austrian School
1872 Marx’s Das Capital
1872 Australia becomes the first nation to be connected to the rest of the world via submarine telegraph cables.
1876 Alexander Graham Bell patented the telephone, first called the electric speech machine – revolutionized communication
1877 Thomas Edison – Phonograph
1878 Western Union, the leading telegraph provider of the U.S., begins to lose out to the telephone technology of the National Bell Telephone Company.
1881 President James Garfield, Staunch Proponent of “Honest Money” Backed by Gold and Silver, was Assassinated
Garfield opposed fiat currency (money that was not backed by any physical object). He had the second shortest Presidency in history.
1882 First description of the one-time pad
1886 First gas powered car
1888 Ballpoint pen
1892 Cinematograph
1895 System of wireless communication using radio waves
1896 First successful intercontinental telegram
1898 Polyethylene
1899 Nickel-cadmium battery
1907 Banking Panic of 1907
The New York Stock Exchange dropped dramatically as everyone tried to get their money out of the banks at the same time across the nation. This banking panic spurred debate for banking reform. JP Morgan and others gathered to create an image of concern and stability in the face of the panic, which eventually led to the formation of the Federal Reserve. The founders of the Federal Reserve pretended like the bankers were opposed to the idea of its formation in order to mislead the public into believing that the Federal Reserve would help to regulate bankers when in fact it really gave even more power to private bankers, but in a less transparent way.
1908 St Mary’s Bank – first credit union in US
1908 JP Morgan Associate and Rockefeller Relative Nelson Aldrich Heads New National Monetary Commission
Senate Republican leader, Nelson Aldrich, heads the new National Monetary Commission that was created to study the cause of the banking panic. Aldrich had close ties with J.P. Morgan and his daughter married John D. Rockefeller.
1910 Bankers Meet Secretly on Jekyll Island to Draft Federal Reserve Banking Legislation
Over the course of a week, some of the nation’s most powerful bankers met secretly off the coast of Georgia, drafting a proposal for a private Central Banking system.
1913 Federal Reserve Act Passed
Two days before Christmas, while many members of Congress were away on vacation, the Federal Reserve Act was passed, creating the Central banking system we have today, originally with gold backed Federal Reserve Notes. It was based on the Aldrich plan drafted on Jekyll Island and gave private bankers supreme authority over the economy. They are now able to create money out of nothing (and loan it out at interest), make decisions without government approval, and control the amount of money in circulation.
1913 Income tax established -16th Amendment Ratified
Taxes ensured that citizens would cover the payment of debt due to the Central Bank, the Federal Reserve, which was also created in 1913.The 16th Amendment stated: “The Congress shall have power to lay and collect taxes on incomes, from whatever source derived, without apportionment among the several States, and without regard to any census or enumeration.”
1914 November, Federal Reserve Banks Open
JP Morgan and Co. Profits from Financing both sides of War and Purchasing Weapons
J.P. Morgan and Co. made a deal with the Bank of England to give them a monopoly on underwriting war bonds for the UK and France. They also invested in the suppliers of war equipment to Britain and France.
1914 WWI
1917 Teletype cipher
1917 The one-time pad
1917 Zimmerman Telegram intercepted and decoded by Room 40, the cryptanalysis department of the British Military during WWI.
1918 GB returns to gold standard post-war but it didn’t work out
1919 First rotor machine, an electro-mechanical stream ciphering and decrypting machine.
1919 Founding of The Cipher Bureau, Poland’s intelligence and cryptography agency.
1919-1929 The Black Chamber, a forerunner of the NSA, was the first U.S. cryptanalytic organization. Worked with the telegraph company Western Union to illegally acquire foreign communications of foreign embassies and representatives. It was shut down in 1929 as funding was removed after it was deemed unethical to intercept private domestic radio signals.
1920s Department stores, hotel chains and service staions begin offering customers charge cards
1921-1929 The “Roaring 20’s” – The Federal Reserve Floods the Economy with Cash and Credit
From 1921 to 1929 the Federal Reserve increased the money supply by $28 billion, almost a 62% increase over an eight-year period.[3] This artificially created another “boom”.
1927 Quartz clock
1928 First experimental Television broadcast in the US.
1929 Federal Reserve Contracts the Money Supply
In 1929, the Federal Reserve began to pull money out of circulation as loans were paid back. They created a “bust” which was inevitable after issuing so much credit in the years before. The Federal Reserve’s actions triggered the banking crisis, which led to the Great Depression.
1929 October 24, “Black Thursday”, Stock Market Crash
The most devastating stock market crash in history. Billions of dollars in value were consolidated into the private banker’s hands at the expense of everyone else.
1930s The Great Depression marked the end of the gold standard
1931 German Enigma machines attained and reconstructed.
1932 Turbo jet engine patented
1933 SEC founded - passed the Glass–Steagall Act, which separated investment banking and commercial banking. This was to avoid more risky investment banking activities from ever again causing commercial bank failures.
1933 FM Radio
1933 Germany begins Telex, a network of teleprinters sending and receiving text based messages. Post WWII Telex networks began to spread around the world.
1936 Austrian engineer Paul Eisler invented Printed circuit board
1936 Beginning of the Keynesian Revolution
1937 Typex, British encryption machines which were upgraded versions of Enigma machines.
1906 Teletypewriters
1927 Founding of highly secret and unofficial Signal Intelligence Service, SIS, the U.S. Army’s codebreaking division.
1937 Made illegal for Americans to own gold
1938 Z1 built by Konrad Zuse is the first freely programmable computer in the world.
1939 WWII – decline of the gold standard which greatly restricted policy making
1939-45 Codetalkers - The Navajo code is the only spoken military code never to have been deciphered - "Were it not for the Navajos, the Marines would never have taken Iwo Jima."—Howard Connor
1940 Modems
1942 Deciphering Japanese coded messages leads to a turning point victory for the U.S. in WWII.
1943 At Bletchley Park, Alan Turing and team build a specialized cipher-breaking machine called Heath Robinson.
1943 Colossus computer built in London to crack the German Lorenz cipher.
1944 Bretton Woods – convenient after the US had most of the gold
1945 Manhattan Project – Atom Bomb
1945 Transatlantic telephone cable
1945 Claude E. Shannon published "A mathematical theory of cryptography", commonly accepted as the starting point for development of modern cryptography.
C1946 Crypto Wars begin and last to this day
1946 Charg-it card created by John C Biggins
1948 Atomic clock
1948 Claude Shannon writes a paper that establishes the mathematical basis of information theory
1949 Info theorist Claude Shannon asks “What does an ideal cipher look like?” – one time pad – what if the keys are not truly random
1950 First credit card released by the Diners Club, able to be used in 20 restaurants in NYC
1951 NSA, National Security Agency founded and creates the KL-7, an off-line rotor encryption machine
1952 First thermonuclear weapon
1953 First videotape recorder
1953 Term “Hash” first used meaning to “chop” or “make a mess” out of something
1954 Atomic Energy Act (no mention of crypto)
1957 The NSA begins producing ROMOLUS encryption machines, soon to be used by NATO
1957 First PC – IBM
1957 First Satellite – Sputnik 1
1958 Western Union begins building a nationwide Telex network in the U.S.
1960s Machine readable codes were added to the bottom of cheques in MICR format, which speeded up the clearing and sorting process
1960s Financial organizations were beginning to require strong commercial encryption on the rapidly growing field of wired money transfer.
1961 Electronic clock
1963 June 4, Kennedy Issued an Executive Order (11110) that Authorized the US Treasury to Issue Silver Certificates, Threatening the Federal Reserve’s Monopoly on Money
This government issued currency would bypass the governments need to borrow from bankers at interest.
1963 Electronic calculator
1963 Nov. 22, Kennedy Assassinated
1963 Johnson Reverses Kennedy’s Banking Rule and Restores Power to the Federal Reserve
1964 8-Track
1964 LAN, Local Area Networks adapters
1965 Moore’s Law by CEO of Intel Gordon Moore observes that the number of components per integrated circuit doubles every year, and projected this rate of growth would continue for at least another decade. In 1975 he revised it to every two years.
1967 First ATM installed at Barclay’s Bank in London
1968 Cassette Player introduced
1969 First connections of ARPANET, predecessor of the internet, are made. started – SF, SB, UCLA, Utah (now Darpa) – made to stay ahead of the Soviets – there were other networks being built around the world but it was very hard to connect them – CERN in Europe
1970s Stagflation – unemployment + inflation, which Keynesian theory could not explain
1970s Business/commercial applications for Crypto emerge – prior to this time it was militarily used – ATMs 1st got people thinking about commercial applications of cryptography – data being sent over telephone lines
1970s The public developments of the 1970s broke the near monopoly on high quality cryptography held by government organizations.
Use of checks increased in 70s – bringing about ACH
One way functions...
A few companies began selling access to private networks – but weren’t allowed to connect to the internet – business and universities using Arpanet had no commercial traffic – internet was used for research, not for commerce or advertising
1970 Railroads threatened by the growing popularity of air travel. Penn Central Railroad declares bankruptcy resulting in a $3.2 billion bailout
1970 Conjugate coding used in an attempt to design “money physically impossible to counterfeit”
1971 The US officially removes the gold standard
1971 Email invented
1971 Email
1971 First microcomputer on a chip
1971 Lockheed Bailout - $1.4 billion – Lockheed was a major government defense contractor
1972 First programmable word processor
1972 First video game console
1973 SWIFT established
1973 Ethernet invented, standardized in ‘83
1973 Mobile phone
1973 First commercial GUI – Xerox Alto
1973 First touchscreen
1973 Emails made up more than ¾ of ARPANET’s packets – people had to keep a map of the network by their desk – so DNS was created
1974 A protocol for packet network intercommunication – TCP/IP – Cerf and Kahn
1974 Franklin National Bank Bailout - $1.5 billion (valued at that time) - At the time, it was the largest bank failure in US history
1975 New York City Bailout - $9.4 billion – NYC was overextended
1975 W DES - meant that commercial uses of high quality encryption would become common, and serious problems of export control began to arise.
1975 DES, Data Encryption Standard developed at IBM, seeking to develop secure electronic communications for banks and large financial organizations. DES was the first publicly accessible cipher to be 'blessed' by a national agency such as the NSA. Its release stimulated an explosion of public and academic interest in cryptography.
1975 Digital camera
1975 Altair 8800 sparks the microprocessor revolution
1976 Bretton Woods ratified (lasted 30 years) – by 80’s all nations were using floating currencies
1976 New Directions in Cryptography published by Diffie & Hellman – this terrified Fort Meade – previously this technique was classified, now it’s public
1976 Apple I Computer – Steve Wozniak
1976 Asymmetric key cryptosystem published by Whitfield Diffie and Martin Hellman.
1976 Hellman and Diffie publish New Directions in Cryptography, introducing a radically new method of distributing cryptographic keys, contributing much to solving key distribution one of the fundamental problems of cryptography. It brought about the almost immediate public development of asymmetric key algorithms. - where people can have 2 sets of keys, public and private
1977 Diffie & Hellman receive letter from NSA employee JA Meyer that they’re violating Federal Laws comparable to arms export – this raises the question, “Can the gov prevent academics from publishing on crypto?
1977 DES considered insecure
1977 First handheld electronic game
1977 RSA public key encryption invented
1978 McEliece Cryptosystem invented, first asymmetric encryption algorithm to use randomization in the encryption process
1980s Large data centers began being built to store files and give users a better faster experience – companies rented space from them - Data centers would not only store data but scour it to show people what they might want to see and in some cases, sell data
1980s Reaganomics and Thatcherism
1980 A decade of intense bank failures begins; the FDIC reports that 1,600 were either closed or received financial assistance from 1980 to 1994
1980 Chrysler Bailout – lost over $1 billion due to major hubris on the part of its executives - $1.5 billion one of the largest payouts ever made to a single corporation.
1980 Protocols for public key cryptosystems – Ralph Merkle
1980 Flash memory invented – public in ‘84
1981 “Untraceable Electronic Mail, Return Addresses and Digital Pseudonumns” – Chaum
1981 EFTPOS, Electronic funds transfer at point of sale is created
1981 IBM Personal Computer
1982 “The Ethics of Liberty” Murray Rothbard
1982 Commodore 64
1982 CD
1983 Satellite TV
1983 First built in hard drive
1983 C++
1983 Stereolithography
1983 Blind signatures for untraceable payments
Mid 1980s Use of ATMs becomes more widespread
1984 Continental Illinois National Bank and Trust bailed out due to overly aggressive lending styles and - the bank’s downfall could be directly traced to risk taking and a lack of due diligence on the part of bank officers - $9.5 billion in 2008 money
1984 Macintosh Computer - the first mass-market personal computer that featured a graphical user interface, built-in screen and mouse
1984 CD Rom
1985 Zero-Knowledge Proofs first proposed
1985 300,000 simultaneous telephone conversations over single optical fiber
1985 Elliptic Curve Cryptography
1987 ARPANET had connected over 20k guarded computers by this time
1988 First private networks email servers connected to NSFNET
1988 The Crypto Anarchists Manifesto – Timothy C May
1988 ISDN, Integrated Services Digital Network
1989 Savings & Loan Bailout - After the widespread failure of savings and loan institutions, President George H. W. Bush signed and Congress enacted the Financial Institutions Reform Recovery and Enforcement Act - This was a taxpayer bailout of about $200 billion
1989 First commercial emails sent
1989 Digicash - Chaum
1989 Tim Berners-Lee and Robert Cailliau built the prototype system which became the World Wide Web, WWW
1989 First ISPs – companies with no network of their own which connected people to a local network and to the internet - To connect to a network your computer placed a phone call through a modem which translated analog signals to digital signals – dial-up was used to connect computers as phone lines already had an extensive network across the U.S. – but phone lines weren’t designed for high pitched sounds that could change fast to transmit large amounts of data
1990s Cryptowars really heat up...
1990s Some countries started to change their laws to allow "truncation"
1990s Encryption export controls became a matter of public concern with the introduction of the personal computer. Phil Zimmermann's PGP cryptosystem and its distribution on the Internet in 1991 was the first major 'individual level' challenge to controls on export of cryptography. The growth of electronic commerce in the 1990s created additional pressure for reduced restrictions.[3] Shortly afterward, Netscape's SSL technology was widely adopted as a method for protecting credit card transactions using public key cryptography.
1990 NSFNET replaced Arpanet as backbone of the internet with more than 500k users
Early 90s Dial up provided through AOL and Compuserve
People were leery to use credit cards on the internet
1991 How to time-stamp a digital doc - Stornetta
1991 Phil Zimmermann releases the public key encryption program Pretty Good Privacy (PGP) along with its source code, which quickly appears on the Internet. He distributed a freeware version of PGP when he felt threatened by legislation then under consideration by the US Government that would require backdoors to be included in all cryptographic products developed within the US. Expanded the market to include anyone wanting to use cryptography on a personal computer (before only military, governments, large corporations)
1991 WWW (Tim Berners Lee) – made public in ‘93 – flatten the “tree” structure of the internet using hypertext – reason for HTTP//:WWW – LATER HTTPS for more security
1992 Erwise – first Internet Browser w a graphical Interface
1992 Congress passed a law allowing for commercial traffic on NSFNET
1992 Cpherpunks, Eric Hughes, Tim C May and John Gilmore – online privacy and safety from gov – cypherpunks write code so it can be spread and not shut down (in my earlier chapter)
1993 Mosaic – popularized surfing the web ‘til Netscape Navigator in ’94 – whose code was later used in Firefox
1993 A Cypherpunks Manifesto – Eric Hughes
1994 World’s first online cyberbank, First Virtual, opened for business
1994 Bluetooth
1994 First DVD player
1994 Stanford Federal Credit Union becomes the first financial institution to offer online internet banking services to all of its members in October 1994
1994 Internet only used by a few
1994 Cybercash
1994 Secure Sockets Layer (SSL) encryption protocol released by Netscape. Making financial transactions possible.
1994 One of the first online purchases was made, a Pizza Hut pepperoni pizza with mushrooms and extra cheese
1994 Cyphernomicon published – social implication where gov can’t do anything about it
1994-1999 Social Networking – GeoCities (combining creators and users) – had 19M users by ’99 – 3rd most popular after AOL and Yahoo – GeoCities purchased by Yahoo for $3.6B but took a hit after dotcom bubble popped and never recovered – GC shut down in ‘99
1995-2000 Dotcom bubble – Google, Amazon, Facebook: get over 600M visitors/year
1995 DVD
1995 MP3 term coined for MP3 files, the earlier development of which stretches back into the ‘70s, where MP files themselves where developed throughout the ‘90s
1995 NSFNET shut down and handed everything over to the ISPs
1995 NSA publishes the SHA1 hash algorithm as part of its Digital Signature Standard.
1996, 2000 President Bill Clinton signing the Executive order 13026 transferring the commercial encryption from the Munition List to the Commerce Control List. This order permitted the United States Department of Commerce to implement rules that greatly simplified the export of proprietary and open source software containing cryptography, which they did in 2000 - The successful cracking of DES likely helped gather both political and technical support for more advanced encryption in the hands of ordinary citizens - NSA considers AES strong enough to protect information classified at the Top Secret level
1996 e-gold
1997 WAP, Wireless Access Point
1997 NSA researchers published how to mint e cash
1997 Adam Back – HashCash – used PoW – coins could only be used once
1997 Nick Szabo – smart contracts “Formalizing and Securing Relationships on Public Networks”
1998 OSS, Open-source software Initiative Founded
1998 Wei Dai – B-money – decentralized database to record txs
1998 Bitgold
1998 First backdoor created by hackers from Cult of the Dead Cow
1998 Musk and Thiel founded PayPal
1998 Nick Szabo says crypto can protect land titles even if thugs take it by force – said it could be done with a timestamped database
1999 Much of the Glass-Steagal Act repealed - this saw US retail banks embark on big rounds of mergers and acquisitions and also engage in investment banking activities.
1999 Milton Friedman says, “I think that the Internet is going to be one of the major forces for reducing the role of government. The one thing that's missing, but that will soon be developed, is a reliable e-cash - a method whereby on the Internet you can transfer funds from A to B without A knowing B or B knowing A.”
1999 European banks began offering mobile banking with the first smartphones
1999 The Financial Services Modernization Act Allows Banks to Grow Even Larger
Many economists and politicians have recognized that this legislation played a key part in the subprime mortgage crisis of 2007.
1999-2001 Napster, P2P file sharing – was one of the fastest growing businesses in history – bankrupt for paying musicians for copyright infringement

submitted by crypto_jedi_ninja to Bitcoin [link] [comments]

So you’ve got your miner working, busy hashing away … but what is it really doing?

Posted for eternity @ https://vertcoin.easymine.online/articles/mining
Your miner is repeatedly hashing (see below for detail about a hash) a block of data, looking for a resulting output that is lower than a predetermined target. Each time this calculation is performed, one of the fields in the input data is changed, and this results in a different output. The output is not able to be determined until the work is completed – otherwise why would we bother doing the work in the first place?
Each hash takes a block header (see more below, but basically this is a 80-byte block of data). It runs this through the hashing function, and what comes out is a 32-byte output. For each, we usually represent that output in hexadecimal format, so it looks something like:
5da4bcb997a90bec188542365365d8b913af3f1eb7deaf55038cfcd04f0b11a0 
(that’s 64 hexadecimal characters – each character represents 4-bits. 64 x 4 bits = 256bit = 32 bytes)
The maximum value for our hash is:
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 
And the lowest is:
0000000000000000000000000000000000000000000000000000000000000000 
The goal in Proof-of-Work systems is to look for a hash that is lower than a specific target, i.e. starts with a specific number of leading zeros. This target is what determines the difficulty.
As the output of the hash is indeterminate, we look to statistics and probability to estimate how much work (i.e. attempts at hashing) we need to complete to find a hash that is lower than a specific target. So, we can therefore assume that to find a hash that starts with a leading zero will take, on average, 16 hashes. To find one that will start with two leading zeros (00), we’re looking at 256 hashes. Four leading zeros (0000) will take 65,536 hashes. Eight leading zeros (00000000) takes 4,294,967,296 hashes. So on and so on, until we realize that it will take 2 ^ 256 (a number too big for me to show here) attempts at hitting our minimum hash value.
Remember – this number of hashes is just an estimate. Think of it like rolling a dice. A 16-sided dice. And then rolling it 64 times in a row. And hoping to strike a specific number of leading zeros. Sometimes it will take far less than the estimate, sometimes it will take far more. Over a long enough time period though (with our dice it may take many billions of years), the averages hold true.
Difficulty is a measure used in cryptocurrencies to simply show how much work is needed to find a specific block. A block of difficulty 1 must have a hash smaller than:
00000000FFFF0000000000000000000000000000000000000000000000000000 
A block of difficulty 1/256 (0.00390625) must have a hash lower than:
000000FFFF000000000000000000000000000000000000000000000000000000 
And a block of difficulty 256 must have a hash lower than:
0000000000FFFF00000000000000000000000000000000000000000000000000 
So the higher the difficulty, the lower the hash must be; therefore more work must be completed to find the block.
Take a recent Vertcoin block – block # 852545, difficulty 41878.60056944499. This required a hash lower than:
000000000001909c000000000000000000000000000000000000000000000000 
The achieve finding this, a single miner would need to have completed, on average 179,867,219,848,013 hashes (calculated by taking the number of hashes needed for a difficulty 1 block - 4,294,967,296 or 2 ^ 32 or 16 ^ 8 – and multiplied by the difficulty). Of course, our single miner may have found this sooner – or later – than predicted.
Cryptocurrencies alter the required difficulty on a regular basis (some like Vertcoin do it after every block, others like Bitcoin or Litecoin do it every 2016 blocks), to ensure the correct number of blocks are found per day. As the hash rate of miners increases, so does the difficulty to ensure this average time between blocks remains the same. Likewise, as hash rate decreases, the difficulty decreases.
With difficulties as high as the above example, solo-mining (mining by yourself, not in a pool) becomes a very difficult task. Assume our miner can produce 100 MH/s. Plugging in this into the numbers above, we can see it’s going to take him (on average) 1,798,673 seconds of hashing to find a hash lower than the target – that’s just short of 21 days. But, if his luck is down, it could easily take twice that long. Or, if he’s lucky, half that time.
So, assuming he hit’s the average, for his 21 days mining he has earned 25 VTC.
Lets take another look at the same miner, but this time he’s going to join a pool, where he is working with a stack of other miners looking for that elusive hash. Assume the pool he has joined does 50 GH/s – in that case he has 0.1 / 50 or 0.2% of the pool’s hash rate. So for any blocks the pool finds he should earn 0.2% of 25 VTC = 0.05 VTC. At 50 GH/s, the pool should expect to spend 3,597 seconds between finding blocks (2 ^ 32 * difficulty / hashrate). So about every hour, our miner can expect to earn 0.05 VTC. This works out to be about 1.2 VTC per day, and when we extrapolate over the estimated 21 days of solo mining above, we’re back to 25 VTC.
The beauty of pooled-mining over solo-mining is that the time between blocks, whilst they can vary, should be closer to the predicted / estimated times over a shorter time period. The same applies when comparing pools – pools with a smaller hash rate will experience a greater variance in time between blocks than a pool with a greater hash rate. But in the end, looking back over a longer period of time, earnings will be the same.
Hashes
A Hash is a cryptographic function that can take an arbitrary sized block of data and maps it to a fixed sized output. It is a one-way function – only knowing the input data can one calculate the output; the reverse action is impossible. Also, small changes to the input data usually result in significant changes to the output value.
For example, take the following string:
“the quick brown fox jumps over the lazy dog” 
If we perform a SHA256 hash of this, it results in:
05c6e08f1d9fdafa03147fcb8f82f124c76d2f70e3d989dc8aadb5e7d7450bec 
If we change a single character in the input string (in this case we will replace the ‘o’ in ‘over’ to a zero), the resulting hash becomes:
de492f861d6bb8438f65b2beb2e98ae96a8519f19c24042b171d02ff4dfecc82 
Blocks
A block is made up of a header, and at least one transaction. The first transaction in the block is called the Coinbase transaction – it is the transactions that creates new coins, and it specifies the addresses that those coins go to. The Coinbase transaction is always the first transaction in a block, and there can only be one. All other transactions included in a block are transactions that send coins from one wallet address to another.
The block header is an 80-byte block of data that is made up of the following information in this order:
  • Version – a 32-bit/4-byte integer
  • Previous Block’s SHA256d Hash – 32 bytes
  • Merkle Hash of the Transactions – 32 bytes
  • Timestamp - a 32-bit/4-byte integer the represents the time of the block in seconds past 1st January 1970 00:00 UTC
  • nBits - a 32-bit/4-byte integer that represents the maximum value of the hash of the block
  • Nonce - a 32-bit/4-byte integer
The Version of a block remains relatively static through a coin’s lifetime – most blocks will have the same version. Typically only used to introduce new features or enforce new rules – for instance Segwit adoption is enforced by encoding information into the Version field.
The Previous Blocks’ Hash is simple a doubled SHA256 hash of the last valid blocks header.
The Merkle Hash is a hash generated by chaining all of the transactions together in a hash tree – thus ensuring that once a transaction is included in a block, it cannot be changed. It becomes a permanent record in the blockchain.
Timestamp loosely represents the time the block was generated – it does not have to be exact, anywhere within an hour each way of the real time will be accepted.
nBits – this is the maximum hash that this block must have in order to be considered valid. Bitcoin encodes the maximum hash into a 4-byte value as this is more efficient and provides sufficient accuracy.
Nonce – a simple 4-byte integer value that is incremented by a miner in order to find a resulting hash that is lower than that specified by nBits.
submitted by nzsquirrell to VertcoinMining [link] [comments]

Blockchain & mining - my attempt to explain it

There are so many people invested in crypto now, but there are still quite a lot of people who don’t actually know what a “Blockchain” really is, nor do they truly understand its usefulness.
 
People hear these phrases like “digital ledger secured using cryptography” and think it sounds cool, but what exactly does that mean?
 
There are literally tons of informational resources on the net, but most of them fly straight over the heads of the average Joe. I thought it would be worth breaking down the concept of “Blockchain” to make it easy for anyone to understand.
 
So first and foremost, what is a “block” in a Blockchain? Well a block is a bunch of transactions grouped together. When I say “transactions”, I am referring to a ledger or list of transactional information.
 
Let me offer an example of a “transaction”:
 
Joe has $1000
Joe’s bank account is 1234-5678 @ HSBC
Joe sends Sarah $200
Sarah has $2000
Sarah’s bank account is 8765-4321 @ Bank of China
The time of the transaction is 12:47pm 20th Feb 2018
Joe’s account will now be $800
Sarah’s bank account is $2200
 
This is a simple example, but fundamentally this short list of information pertaining to a single transaction. This transferral of money ($200 from one person to another) is added to a “block” alongside a whole bunch of other transactions from other people.
 
Let’s use Bitcoin for the remaining examples. Each “block” on the bitcoin blockchain is 1mb in length. So what exactly is 1mb? Well 1mb or “mega-byte”, represents one million bytes of information. Now one “byte” of information represents a single ascii character. Every single character I am typing right now represents one byte. So “Hello” (without the quotations) represents 5 bytes of information.
 
So if we go back to my example transaction above, the number of bytes that this transaction took up is 246 bytes. This is just a fraction of 1mb, so you can see a lot of transactions of this size could be stored in a 1mb block.
 
OK so hopefully you understand what a “block” at least represents. So the next question would be, how do you ensure this “block” of information has not been tampered with? After all, it would be utterly disastrous if someone were to access a block of information and change some of the information. Imagine changing the destination bank address, or the amounts involved!
 
In order to secure a “block” we use cryptography. Specifically we use something called a “hash”. A hash essentially takes a bunch of data, applies a fixed set of mathematical operations to the data, and the eventual output is a “hash” of the data.
 
Let me give you an example of an ultra-basic “hash algorithm” -
 
Step 1. Take a number and double it
Step 2. Add 6
Step 3. Divide it by 2
 
That’s it…. A basic hash algorithm!
 
Let’s take a couple of numbers and apply the hash algorithm to the numbers.
 
First we’ll start with 20
 
Step 1. 20 x 2 = 40
Step 2. 40 + 6 = 46
Step 3. 46 / 2 = 23
 
So in this example, the “hash” of the original number (20) is 23
 
Let’s apply it to another number….This time 22
 
Step 1. 22 x 2 = 44 Step 2. 44 + 6 = 50 Step 3. 50 / 2 = 25
 
So the “hash” of the original number (22) is now 25
 
Now any different number you try as your input will always produce a different number as your hashed output. However, if you apply my hashing algorithm to the number 20, the “hash” will always be 23, and if you apply it to the number 22, the “hash” will always be 25.
 
If we take the numbers I used in the above examples (20 & 22) as “inputs”, then the “output” (the hash) will always produce the same result, but any changes to the input will always affect the output.
 
Ok so that’s applying a hash to a number…..what about text? How do we “hash” a string of text?
 
Well that’s where something called the “Ascii Table” comes in. The Ascii Table offers a unique code for every alphanumeric character. This allows us to convert a string of text into a number. Let’s take the word “Hello” (without the quotes) and convert it to a number using the Ascii table.
 
Ascii Table : https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html
 
Capital H is represented as 72
Lower case e is represented as 101
Lower case l is represented as 108
Lower case l is represented as 108
Lower case o is represented as 111
 
If we concatenate these numbers we’d get 72101108108101
 
So we have a number…..lets apply my basic hashing algorithm to this number
 
Step 1. 72101108108101 x 2 = 144202216216202
Step 2. 144202216216202 + 6 = 144202216216208
Step 3. 144202216216208 / 2 = 72101108108104
 
So in this example, the “hash” of the word Hello is 72101108108104
 
If I changed any letter, the hash would be different. If I even changed the Captial H to a lower case h, the hash would be different. If anything at all changes the hash would be different.
 
So hopefully you understand the concept of hashing….. Now I should state that my example hashing algorithm is painfully simple. If would be trivial to reverse engineer this, simply by reversing the steps. However this is my example hash.
 
Let’s compare this to the SHA256 hash.
 
The SHA256 “hash” of the word “welcome” (without the quotes) is 280D44AB1E9F79B5CCE2DD4F58F5FE91F0FBACDAC9F7447DFFC318CEB79F2D02
 
If you apply the SHA256 hash algorithm to the word welcome, the hash will ALWAYS be 280D44AB1E9F79B5CCE2DD4F58F5FE91F0FBACDAC9F7447DFFC318CEB79F2D02
 
Try it yourself on a few different online SHA256 calculators:
 
http://www.xorbin.com/tools/sha256-hash-calculator
https://passwordsgenerator.net/sha256-hash-generato
http://www.md5calc.com/
 
So we know that if we apply the SHA256 hashing algorithm to the word welcome, we will of course always get the same result, because the steps involved in “hashing” data using SHA256 algorithm are publicly documented, albiet very complex.
 
However, the steps are far from the simple 3-step process I gave in my example…..Sha256 uses 64 steps, and none of them are as basic as the 3-step example I included of using plus, minus, multiply and divide.
 
I won’t go into the entire 64-step process (There are plenty of resources out there if you are interested) but just to give you an idea of the complexity of the hashing algorithm, I’ll go through the first few steps. But before we do this, we need to “prepare” the input.
 
To do this we first split the word into 4-byte chunks starting from the first character. The word "welcome" (without the quotes) contains 7 characters, so it is split into two chunks
 
Chunk A – welc
Chunk B - ome
 
Ok, now for each chunk, we convert this to ascii
 
Chunk A – welc = 119 101 108 99
Chunk B – ome = 111 109 101
 
Now we convert these values to a HEX value (for information on hex, take a look here : http://whatis.techtarget.com/definition/hexadecimal)
 
Chunk A – 119 101 108 99 = 77 65 6c 63
Chunk B – 111 109 101 = 6f 6d 65
 
Now any Chunk that is not a complete 4-bytes, needs to be “padded” to make it a complete 4-byte chunk. This padding always represents “80” in hex
 
Chunk A is fine….it's 4-bytes, so does not require any padding. Chunk B is only 3 bytes, so it needs an extra byte of padding. To do this we simply append hex 80 to the end.
 
So Chunk B becomes 6f 6d 65 80
 
The two binary values are now concatenated back together and padded out to create a 56 byte data string. They are padded out with zeros. Hex characters are represented with two characters, so 0 in hex is 00
 
So the two strings go together and lots of hex value zeros go on the end to make 56 bytes
 
77 65 6C 63 6F 6D 65 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 
We now calculate the length of the actual message in bytes including the padding (77 65 6C 63 6F 6D 65 80) and this is a total of 8 bytes, so this value of 8 (The number 8 is represented as 38 in hex) is appended to the very end of the 56 bytes to create a complete 64-byte string.
 
So the total 64-byte string has become:
 
77 65 6C 63 6F 6D 65 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 38
 
The 64 byte string is then converted to binary….
 
01110111 01100101 01101100 01100011 01101111 01101101 01100101 10000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00111000
 
In the data section (the first 56 bytes) the first byte of data (01110111 in binary) represents 77 in hex, which in turn represents the decimal value of 119, which is the ascii value of w
 
The second byte of data (01100101 in binary) represents 65 in hex, which in turn represents the decimal value of 101, which is the ascii value of e
 
In the final section, the very last byte of data (00111000 in binary) represents 38 in hex, which in turn represents the decimal value of 56, which is the ascii value of 8, which represents the length of the padded data string. This value will always be a multiple of 4.
 
Ok so now we’ve got that 64-byte data stream, we now apply some other things to it.
 
At this point Sha256 does some "shifting" of the data.
 
"Shifting" is when you move data around – So for example if we “shift” every square on the grid backwards 7 places, then this is what would happen.
 
10000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00111000 01110111 01100101 01101100 01100011 01101111 01101101 01100101
 
Ok so Sha256 does a few more rounds of shifting until eventually, the data has been moved around and looks completely different on the grid to what it started with.
 
After all this is done, only then is the data “prepared” and ready to be manipulated through the 64 steps to create the hash! Now on the face of things at first glance, this actually looks complicated, but for a computer to hash data using Sha256, it’s actually fairly simple. It can do it extremely quickly! A human being could in fact do the complete SHA256 hash with enough patience. Somewhere actually did this with a pen and paper and it took them a little over a day.
 
After the 64 rounds of adjustment, the final hashed value of welcome comes to 280D44AB1E9F79B5CCE2DD4F58F5FE91F0FBACDAC9F7447DFFC318CEB79F2D02 and providing that you used sha256 to hash it, the word welcome will always hash to this value. If I change the anything in the input, the output hash changes dramatically.
 
For example, if I change welcome to Welcome (capital W), the Sha256 hash becomes 0E2226B5235F0FF94A276EB4D07A3BFEA74B7E3B8B85E9EFCA6C18430F041BF8 As you can see it’s totally unrecognisable compared to the previous hash.
 
So hopefully now you have an understanding of hashing, you can see that the data stored in a block can be hashed, and it will generate a hash value.
 
Copy the following section of transaction text into any online SHA256 calculator:
 
Joe has $1000
Joe’s bank account is 1234-5678 @ HSBC
Joe sends Sarah $200
Sarah has $2000
Sarah’s bank account is 8765-4321 @ Bank of China
The time of the transaction is 12:47pm 20th Feb 2018
Joe’s account will now be $800
Sarah’s bank account is $2200
 
You should get the following hash value:
 
F4162A24257D3D2995E80B8FB08F43A9F029CC951F8C103051EAD30BFCDCC63F
 
Now this is just one transaction, but the point is that you will never see that same hash value again, unless the EXACT same transaction information is hashed with SHA256. If you change anything at all, the hash value will change completely.
 
Now I won’t go into why this is virtually impossible to reverse engineer, but suffice to say the estimates of computing power required to reverse a SHA256 hash are as follows:
 
Based on current computing power, brute-forcing SHA256 would take a powerful modern PC approximately 71,430,540,814,238,958,387,154 years. Some scientists believe the sun will “extinguish” in about 5,000,000,000 years.
 
For now, SHA256 is pretty secure!
 
So if we have a “hashed block”, suffice to say it is pretty much impossible to break.
 
So there we have it...a block!
 
OK so what does the word “chain” in blockchain mean?
 
Simple….. you take the hash value of the first block, and stick it into the very next block as the first part of data, just before you start adding your new transactions. Can you see what effect this has?
 
If my first block hash is:
 
F4162A24257D3D2995E80B8FB08F43A9F029CC951F8C103051EAD30BFCDCC63F
 
If I put this just in front of all my new transactional data, then the total data in the new block (including the hash of the previous block) all gets hashed as one to create a new hash for the second block. If anyone tampers with the first block, the hash changes, and therefore won’t match with the hash put into the second block. This has a knock-on effect to all subsequent blocks.
 
So if you have a block-chain full of nodes (servers) and node A is reporting a cumulative hash of all blocks on the latest block on the chain to be XXXXXX but node B, node C, and node D are reporting the cumulative hash for all blocks to be YYYYYYYY, then it’s immediately obvious that node A has been compromised, and needs to be removed….after all, the entire block chain of entries ultimately ends up with an up-to-date hash of all the previous blocks, and if anything changes…..literally one single character in any single block changes…..then hash proves that the chain has been compromised!
 
So what exactly is mining? Mining is simply re-running the hash over and over and over again onto a block, until you reach a constant…..What I mean by a constant is as follows:
 
  1. You take your block of data
  2. You hash it to get a hash value
  3. You check to see if the hash begins with four zeros 0000
  4. If it doesn’t you now add 1 to the data and re-hash
  5. You check to see if the hash begins with four zeros 0000
  6. If it doesn’t you now increment the number by one and re-hash
 
You now repeat steps 5 & 6 over and over and over again, until eventually, at some point, you will see 4 zeros.
 
This extra value you are adding is what is known as a “nonce” and is actually short for the word nonsense! It basically means that you are adding a number that increments in the block, whilst everything else in the block remains constant.
 
Let’s take a simple transaction to use as an example:
 
Fred has $200
Claire has $300
Joe sends Claire $50
Fred now has $150
Claire now has $350
 
Ok nice and simple….. Let’s use a great website resource to demonstrate mining this data.
 
Copy this basic transaction into the “data” section of this web page and delete any visible “nonce” value (if there is one there) - https://anders.com/blockchain/block.html
 
(NOTE: when you copy/paste from reddit it might also copy the spaces between the lines, so you would need to remove them, as a space is also a valid ascii character.)
 
If done correctly, you should see a hash value at the bottom of f710ba16e8b987575a23ce0fe13a4dfbd3e72676c65890a7b8acab421748195b
 
Now this doesn’t begin with 0000, so now let’s click on the "mine" button, and the page will keep incrementing the nonce value until eventually the hash will begin with 0000.
 
The process should take around 5-10 seconds, and eventually the hash will be displayed as 00009db80aa366297984130a3f2b74b4f3a6eb044df24de700a616ca9e6aacb6
 
This does begin with 0000 and it took 15,708 “hashes” to reach it. You have reached a constant!
 
This block would now be deemed as a valid block, and the hash of this block is what is passed onto the next block! This is basically mining!
Mining is necessary to ensure that all blocks on the block chain are valid and accurate. Obvioulsy doing this requires computational power, which requires equipment (computers) and energy (electricity) which must be paid for, hence the reason that "miners" are compensated with coins for their efforts.
 
So hopefully you now have a better understanding of block chains and mining :-)
submitted by jpowell79 to u/jpowell79 [link] [comments]

Verify hash of block manually (serializing to little-endian)

Hi guys,
I'm trying to manually verify a bitcoin blocks hash since I think it's a good way to educate myself and others. I've found this old post which was very helpful: https://www.reddit.com/Bitcoin/comments/6gl8ol/how_to_manually_verify_a_hash_from_a_block/ (posts from exmachinalibertas)
I understand everything in the post and can follow the thoughts. But I'm having a lot of trouble with changing all the strings to "little endian format" (reverse the order of the bytes) when trying to do it on a new block. I've been searching a lot but can't seem to find any converter that does this. I've found some that works on version, date and nonce because they are shorter (https://www.scadacore.com/tools/programming-calculators/online-hex-converte). But it doesn't work on the hashes.
Is there any easy way to solve this without programming? Excel is fine and in worst case an easy line of code. But I wan't to do as much as possible with calculators online.
Thanks!
submitted by Eken1388 to BitcoinBeginners [link] [comments]

Has the Bitcoin Hash Rate Peaked? Comparisons with Oil Show Interesting Findings

Has the Bitcoin Hash Rate Peaked? Comparisons with Oil Show Interesting Findings

https://preview.redd.it/85lpl2md4e221.png?width=690&format=png&auto=webp&s=2d3bab69f0570a96f55d790d25f1b1ab08c0a49b
https://cryptoiq.co/the-bitcoin-mining-hash-rate-has-similarities-to-peak-oil/
The Bitcoin mining hash rate had been exponentially increasing on average since the genesis block in 2009, from MH/s, to GH/s, to TH/s, to PH/s, to EH/s, and it reached an all-time record high of 62 EH/s on 26 August 2018. Since this peak was reached, the Bitcoin mining hash rate gradually plateaued and has now decreased. The chart of Bitcoin mining hash rate actually looks quite similar to a peak oil chart except on a much faster time-scale, as can be seen in the comparison between Bitcoin’s hash rate over the course of 2 years from Blockchain.com and North Sea oil production from an article in The Oil Drum: Europe by Euan Mearns. As explained below, the dynamics between peak oil and peak Bitcoin mining are similar, with the key difference that Bitcoin mining is decentralized and oil is not.

https://preview.redd.it/op5ept1g4e221.png?width=512&format=png&auto=webp&s=2b3b35eb631f31a64ed7beb01f283832bd231e4c

https://preview.redd.it/nfyhlf4h4e221.png?width=678&format=png&auto=webp&s=46a0ca7e11f274c5678f6421b1eebb788eab5197
Geologist M. King Hubbert is the founder of the peak oil theory, which states that there is a point when the maximum extraction rate of petroleum is reached, after which a terminal decline in production ensues. The peak rate of extraction of Bitcoin of course occurred during the period after the genesis block and before the first block halving, when the block reward was at its maximum of 50 Bitcoins. However, this is not the peak rate of mining profitability, since Bitcoin increased in price by orders of magnitude through the year 2017. The peak rate of Bitcoin mining profits undoubtedly was simultaneous with Bitcoin’s all-time record high of USD 20,000 in December 2017.
The reason the peak hash rate did not coincide with the peak rate of Bitcoin mining profits is because the rally happened so quickly that mining operations were not able to add rigs fast enough, so there was a lag effect. Even for mining operations with large amounts of capital it can take months to obtain the amount of mining equipment that they want, and for other mining operations it took even longer because they had to obtain investors, buy land, build infrastructure, and only then could they install the rigs and begin hashing.
The Bitcoin mining hash rate chart implicitly indicates that 30 EH/s of Bitcoin mining equipment has been taken offline due to lack of profitability, which represents tens of billions of USD of wasted rigs. This suggests that Bitcoin miners were caught by surprise by the decline in Bitcoin’s price from USD 20,000 to less than USD 4,000 as of 4 December 2018.
Coming back to the peak oil comparison, the current Bitcoin mining scene is like a rapid version of peak oil, combined with lack of coordination. Oil mining is a centralized and coordinated activity, where the oil is prospected, land is leased out and then an appropriate number of wells are drilled. With oil mining, companies cannot drill as many wells as they want, or drill wells on someone else’s lease, since this is all closely controlled by contractual agreements. Bitcoin mining is decentralized, and no one has a lease or contract to only mine with a certain amount of hash rate. Anyone in the world can run as much Bitcoin mining rigs as they can afford. The effect is that people all around the world are sticking their straws into the Bitcoin mining network all at the same time, and they sucked it dry. Essentially, so many people started up new mining operations at once without coordination, that the Bitcoin mining hash rate went way past its equilibrium, which hurt everyone involved. This is akin to if oil drilling was a decentralized process, and anyone who wanted to drill for oil could drill in the same field. The oil field would be sucked dry really quick, and then most of the drills would be shut down due to lack of profits.
There is hope for Bitcoin miners however. The price of Bitcoin simply has to rally, and all of the disenfranchised miners could restart their rigs, and then it would be back to the races and new rigs could begin being added. However, due to the decentralization of Bitcoin mining, the network hash rate will likely periodically rise past its equilibrium point, leading to catastrophic conditions for miners like we are experiencing today at points in the future. The only thing that could prevent the scenario we are experiencing today is a Bitcoin rally that lasts forever, which is obviously not possible.
James McAvity tweeted that Bitcoin mining is still profitable in the current environment, and does some simple linear calculations to prove this point. He also argues that miners are forced to keep mining due to business agreements, choose to HODL in expectation of a rally, and continue mining in expectation of a downward difficulty adjustment as other miners go offline.
https://twitter.com/jamesmcavity/status/1069669073552736256
Some of what McAvity says is true, but the reality is that Bitcoin mining is a highly non-linear system, and calculating the support level for mining is somewhat pointless, since it is different for every miner. Bitcoin mining profitability depends on Bitcoin’s price, the Bitcoin network hash rate which is directly correlated to mining difficulty, and the technological efficiency of Bitcoin mining rigs. These 3 factors are related in a non-linear and ever-changing way.
Instead of trudging away at trying to develop a set of equations that determine mining hash rate behavior, one could simply look at the Bitcoin mining hash rate chart at the beginning of this article to understand what is going on. Bitcoin mining profitability is different for each individual miner, and the hash rate has trended downwards as individual miners have made the decision to shut down rigs. Clearly there was a fundamental mining profitability support level in the USD 6,000-7,000 range, since that is where Bitcoin’s price was when mining peaked and plateaued. There are clearly numerous miners who became unprofitable on the descent from that level to less than USD 4,000 today, and now approximately 50% of the Bitcoin mining equipment that exists cannot profitably mine. The decrease in Bitcoin’s mining difficulty of 15% on 3 December 2018 could help bring some of those miners back online, at least if the price stays at current levels around USD 4,000, but this will not change the overall trend.
When it comes down to it, Bitcoin’s price is in control of Bitcoin mining profitability, and if the price goes up we could see a reversal of the hash rate downtrend and eventually a 2nd peak in Bitcoin’s network hash rate. However, if price continues to go down, the Bitcoin mining hash rate chart will follow a similar pattern to peak oil charts. The reality will likely be a combination of both. Bitcoin bear markets tend to last years, and get more severe, but eventually the rally comes and then Bitcoin exceeds its all-time record high. This would lead to a steady decrease in Bitcoin’s mining hash rate like the peak oil chart, followed by a rapid re-engagement of old mining rigs that have been taken offline, and then the addition of new generation Bitcoin mining rigs once the equilibrium hash rate exceeds 60 EH/s.
submitted by turtlecane to Bitcoin [link] [comments]

AMA Recap: DBCrypto and 8BTC

AMA Recap: DBCrypto and 8BTC
AMA Recap: DBCrypto and 8BTC
by bloXroute Team (Original post here)
https://preview.redd.it/wofpz6u4s4m21.png?width=1200&format=png&auto=webp&s=130a488552c9485affdc14a08f8f8a49c6b48cb8
This past month the bloXroute team participated in 2 AMA’s. Our Co-Founder Professor Emin Gün Sirer synced up with our Chinese-speaking community on the 8BTC Forum, and our Co-Founder and Chief Architect Professor Aleksandar Kuzmanovic, Strategy & Operations Manager Eleni Steinman, and Marketing Associate Brooke Walter connected with blockchain enthusiasts on the DBCrypto Telegram group.
There were many great questions asked so we wanted to share our answers with the rest of our community on Medium. For some of the questions, we expanded upon our answers and edited for clarity and brevity.
The questions are organized into four sections: Tech, BLXR, General, and the Blockchain Ecosystem.

Tech

Can someone explain the “magic gateways” a little more? Is this patented and closed source tech?
  • “Magic gateway” is a small piece of code that sits on a machine running a blockchain node with one side speaking the blockchain “language” with the node, and on the other side speaking bloXroute “language” with our Relays. It also shrinks blocks from the nodes to the Relays, propagates transactions etc. Yes this has been patented for a simple reason — the work was initially done at a University, hence we had to license (our own work) from the University. That’s how it works. While we patented the system, we are going to open source the Gateways.
When will the source code be released?
  • The source code for the Gateway software will become available from Day 1, i.e., as soon as we start testing with miners. The source code for the rest of the system, i.e., Relays, will become available soon after.
From reading the whitepaper it seems as though on-boarding bloXroute can take a bottom up approach. I.e. it sounds like crypto miners can start using the bloXroute network right away, without needing to integrate software into the bloXroute servers or get any approval from the developers of the crypto project? Is this right?
  • That’s right! Any miner can start using bloXroute on its own without any approval. We will provide open source code that miners download, we call magic gateways, that is run on the same machine they mine on. Miners send blocks to the gateway like they would any other peer node. And that’s it. Since bloXroute BN lets you hear about and send blocks faster, miners who use it are obviously at an advantage.
Will the blockchain be able to test bloXroute’s net neutrality? If yes, how? Will bloXroute’s net neutrality testing ability be on the developer or miner level?
  • Certainly! Net neutrality is at the heart of bloXroute, and something I am personally passionate about. Net neutrality mechanisms (please see the WP for details) will be enabled from day one. Everyone, including miners and developers, will be able to test, in real time, bloXroute’s network and its behavior.
How can bloXroute be decentralized and trustless? Does it rely on servers? If we can’t find a better way to solve block propagation problems other than bloXroute, then obviously nodes (especially mining nodes)have to completely rely on bloXroute. If bloXroute has any problems, the whole network will be at risk.
  • Excellent question that gets to the heart of bloXroute’s core contribution. bloXroute is a unique solution that is *centralized yet trustless*. It consists of a network of servers operated very efficiently by a centralized entity — this is how it achieves its high performance. At the same time, the technology is constructed such that these servers *cannot* misbehave. They cannot discriminate on the basis of transaction content, and they cannot selectively censor. So, the overall network is efficient because it’s centralized, like Akamai’s content distribution network, and it’s also trustless, like Bitcoin’s underlying network. Also, by open-sourcing our entire codebase (once the system reaches some maturity) we enable everyone to run a backup network to take over in case bloXroute is shut down by any means, preventing it from becoming a single-point-of-failure.
Also, I remember that ‘bloXroute will keep neutrality by encrypting blocks’, but what if somebody uses bloXroute to send spam? Will it be a problem?
  • Indeed, we have implemented various measures to handle the spam issue. In particular, the bloXroute network keeps and propagates provenance information, allowing the system to limit the traffic a node sends based on their usage of the system. Keep in mind that all large networks, whether it’s Google’s, Facebook’s or Akamai’s, are under constant spam attacks. We use well-established techniques from that domain to ensure that spammers can be efficiently identified and limited.
What is a sufficient number of servers?
  • Our V1 is going to have around 15 servers on 5 continents, roughly. Blockchain traffic currently isn’t particularly large. We hope to change that!
Is it advantageous for miners to be in relative close proximity to a BloXroute server?
  • Yes. But the difference is very small. A really dramatic difference will be between bloXroute-enabled vs. non-bloXroute enabled miners.
Could you elaborate on the servers a bit more? I heard Uri talking about utilizing trusted organisations to do this. I know my concern is that this may create some level of centralised power.
  • We are fully aware of this concern. This is why we are making sure to utilize a large number of independent providers. This is creating a lot of operational issues on our end (because different providers use different software environments) but this is a top priority for us.
How quickly will idle backup networks be operational/online in the case of a main bloxroute network fatal failure? Does this backup network set-up require some work/adjustments on the client/nodes side?
  • The backup will be automatic, such that the effects of a possible failure on the mainnet is minimized. Given that the process will be automatic, no adjustments will be needed on the client side.
Have you established an “ideal” number of independent providers to reduce such concerns? Or is this something still being established?
  • There’s no magic number, the more the better!
I assume having servers in different geographical regions is important. The EU for example could outlaw BloXroute servers. I assume it would be way too expensive for a regular person to setup a BloXroute server?
  • I am hopeful the EU would not do that! :) But the point is that even in absence of servers in a particular region, things can still work pretty well for users in that region.
If that was the case, will they be disadvantaged as the message will need to be relayed further?
  • Necessarily so. But the system would still be operational, and would be able to operate at a fairly high TPS rate.
From both a tech and adoption level, what are some of the biggest difficulties bloXroute faces?
  • Technical difficulties are present on a daily basis, but we are coping with them. As a technical person, I simply know we will resolve them all. I am also convinced that a number of blockchain communities will adopt our system. But if you ask what a bigger challenge is, I think adoption.

BLXR

Does bloXroute have native tokens? If yes, when will the tokens be released? Is it an ERC20 token? Will it be listed on exchanges? What can the tokens do on your network?
  • Yes, bloXroute will have BLXR tokens, which will be listed on exchanges. The BLXR tokens are security tokens that entitle the holder to a share of the revenues of the company. Of every future dollar that bloXroute makes, a proportion goes into a pot, and this pot is divided among the BLXR holders. Think of it as instant, auditable dividends in perpetuity. And BLXR tokens thus act like a fund, where the fund’s contents change over time to track whichever coins are using bloXroute more. If BCH miners use bloXroute, BLXR will have more BCH in it; if ETH adopts bloXroute, then it’ll swing towards ETH, etc. So the tokens can serve as a blanket bet on adoption and use of cryptocurrencies, kind of like how Akamai was a play on Internet content being in demand. I will leave it up to the company to announce its projected dates. I’m focusing mainly on the technology behind the scenes.
Is it correct that you plan to go down the STO path or simply the security token path and the BLXR will be a security token?
  • Yes, BLXR is a security token. The good thing is that we’re clear about this from the very beginning. Hence we were able to cope with regulations on time.
When do you plan to do the STO?
  • Our team of lawyers is working very closely with the SEC to take all of the required steps to ensure everything we do is in compliance with regulations. We hope to have all necessary approvals for an STO in Q3 / Q4 2019.
That’s really great that you’ve been working with the SEC. Does that mean you plan to sell the BLXR token to American citizens?
  • We hope that to do as wide of a sale as possible, so not just Americans.
How does this work? What jurisdiction have you chosen to setup this token etc? Or is this all still being figured out?
  • It has to do with the regulation you file under. Some regulations require that you only raise from accredited investors and others let you raise from anyone.
Will accredited investors only be able to participate in the the BLXR token sale or is there a plan to try an include non-accredited investors as well?
  • The plan is to make it as wide of a sale as regulation allows. We (our lawyers) are working hard so it’s not just accredited investors.
You have recently changed your BLXR security token from 50% revenue reserve model to 100% revenue direct dividend model. How direct will it be? In what time frame or frequency will BLXR token holders will receive their pro rata share of collected revenues to their wallets?
  • 100% of the fees associated with the cryptocurrencies using bloXroute’s BDN become immediately available for withdrawal by BLXR token holders. Right now the plan is for a calculation to run once every 24-hours to update what we call an “Owner balance” — this is how much crypto is available for withdrawal for a given BLXR holder based on their pro-rata share. To withdraw one’s dividends, a BLXR holder must provide a wallet address in the same currency as the crypto they wish to withdraw. The owner balance will then instantly update to reflect this outflow.
How will bloXroute operations be covered in this new direct dividend model?
  • In the new model 100% of the revenues will go to token holders. bloXroute, as a token holder, can use the revenues it receives for its ownership portion to fund operations.
With BLXR being an ERC-20 token, does Bloxroute plan to set up the benefits of the token (accumulation of relative % of fees for projects using the network) so that it can be accumulated by the owner whilst also possibly locking BLXR in a MarkerDao CDP?
  • Dividends will accumulate in a reserve account and be available for withdraw. Our current plan is for Owner Balances to be updated every 24 hours. BLXR holders can transfer their dividends to their wallets and use them as they wish. :)

General

I understand that one of the benefits of bloxroute for the ecosystem is users will have a much lower fee to pay for their transactions. Will users be able to get this much-lower-fee benefit from bloxroute only through wallet(s) they use by choosing to pay a *tiny* fee to bloxroute instead of a *large* fee to miners or can they also get that benefit in some other way?
  • To start, users can use bloXroute immediately as the first 100 TPS are always free. Only after 100 TPS can a user choose to pay bloXroute a tiny fee to reduce her overall fee (albeit a user would only choose to pay bloXroute if this is true). All users benefit from bloXroute on day one as the first 100 TPS are always free. Users do not have to use wallets that partner with bloXroute to take advantage of the fee reduction service, but it’ll certainly be the most streamlined method. Any user that knows bloXroute’s public address can include in their transaction an additional output that pays bloXroute’s public address to reduce her overall fee.
Typically, how many X tps improvement should we see for the various major blockchains that bloXroute will target?
  • We are targeting approximately 3,000 TPS for Bitcoin and Ethereum.
In terms of technology, what is bloXroute’s core competitiveness? How many people are on your team?
  • Our core competencies are as follows: (1) we have some of the world’s foremost experts on blockchain and network scaling, (2) we have innovated across all aspects of the emerging blockchain stack in the past and bring that experience to bear on the chain scaling problem, and (3) we are the first group to identify Layer-0 as a scalability bottleneck, the first to apply network neutrality techniques to blockchains, and thus the group with the most extensive track record on how to build efficient and trustless systems. The team is just over 20 employees, it is hard to keep track now because, in addition to our headquarters in Chicago, we also have a satellite office in Tel Aviv, Israel and two need employees start this week. We are currently building our platform. Though the core of the platform has been in operation for 2.5 years already on the BTC and BCH networks, we are extending it to other systems, e.g. ETH, and adding new features.
How does bloXroute’s solution work on different blockchain networks?
  • bloXroute’s solution has been operating continuously for the last 2.5 years. In that time frame, it has been deployed on Bitcoin (BTC) and Bitcoin Cash (BCH). It has ferried every transaction and every block found in that time frame. To this, we recently added the ability to support Ethereum. And we recently announced a partnership with a large miner. In all of these cases, bloXroute provides an additional fast-path to existing coins for the delivery of financial data, just like Akamai added a fast path for the delivery of regular content on the Internet. It’s optional, opt-in, and completely voluntary. It’s just a faster way to deliver blocks and transactions. In return for ferrying this financial data, bloXroute collects transaction fees, and BLXR tokens receive these collected feeds.
With bloXroute already forming a partnerships with mining companies, do you plan to establish more relationships with similar organisations? If so, given the obvious concerns about the environmental impact of traditional mining, does bloXroute aim to establish/support relationships with mining companies who utilise renewable and sustainable energy?
  • We hope to establish relationships with all miners :) In regards to environmental concerns, our BDN actually helps miners more efficiently utilize their power consumption. Since miners hear about blocks sooner, they can immediately start mining the next block, and thus more efficiently utilizing their resources.
When will you start v1 testing with miners?
  • Early to mid March.
Will the v1 testing be predefined (for preselected miners/mining pools) or it will be possible to join the testing on the go? How can a miner apply for the testing?
  • Yes, the V1 testing will happen with a predefined group of miners. If you’d like to join, please send me an email ([[email protected]](mailto:[email protected])) and I’ll follow up.
Will the v1 testing be with one or with multiple blockchains? Will there be BTC and/or ETH miners in the v1 test pool?
  • It will be with multiple blockchains and yes, we connect with both BTC and ETH (and BCH) miners in V1.
Will bloXroute produce better results (TPS) for PoW or for PoS consensus protocols?
  • We are currently working with PoW and we are seeing some great results (still can’t share publicly). We should definitely see a comparable performance with PoS, but we currently have no empirical data.
Are there any difficulties you faced trying to convince major blockchains like btc, eth etc to increase block size?
  • We view ourselves as providers of networking that removes the scalability bottleneck. It is up to each community to take advantage of that efficiency how they see fit. That said, we already know some communities want scale. For example BCH has 32 MB blocks because after 32MB the thing breaks (i.e. they hit the scalability bottleneck). With bloXroute, I’d expect them to increase their blocksize.
Which pipelines of blockchains likely to come on board 1st on bloXroute in 2019?
  • In V1 we will provide support for BTC, ETH, and BCH. We are talking to many other blockchain communities, and will provide an open API allowing any blockchain to use bloXroute.
If 10% of the blockchain miners/pool have 10% of the hash power (which results in approximately a 10% probability of mining a block) and they start using bloxroute while the other 90% of miners/hash power do not use bloxroute yet (gradual deployment), how does the usage of bloxroute benefit the 10% of miners vs. the other 90%?
  • Good question. The benefits for early-adopting miners start to kick in immediately. In your example, the probability of the 10% of miners that use bloXroute increases above 10% the probability to win a mining round. This is because they “waste” (much) less time on mining blocks that will not eventually get “on chain”.
Does the TPS order of improvement through bloxroute depend on the network size and distribution of nodes (decentralization level) of particular blockchain?
  • It necessarily does. The larger and more decentralized a network is, the TPS rate decreases. The big difference is that without bloXroute, the TPS decreases exponentially, i.e., very quickly. With bloXroute, we are seeing sublinear, i.e., marginal, degradation in TPS as the network size increases.
Are you partnering already with some wallets? If yes, with which ones? If not, is it too early to disclose?
  • Our first goal is to gain adoption. Once we have adoption, we plan on working with wallets to add in an option to streamline the process of including a bloXroute fee. We expect wallets to include such a fee to have an advantage because it offers their users lower overall fees compared to competitors. It would be up to the wallet to decide to show an “bloXroute transaction” feature or simply show lower fees. That said, we are very well connected to some of the most successful wallets in the crypto ecosystem, and have already discussed the matter with some of them.
Do you foresee users migrating to wallets that partner with bloXroute from the ones that don’t?
  • Users do not have to use wallets that partner with bloXroute to take advantage of the fee reduction service, but it’ll certainly be the most streamlined method. Any user that knows bloXroute’s public address can include in their transaction an additional output that pays bloXroute’s public address to reduce her overall fee. Our first goal is to gain adoption. Once we have adoption, we plan on working with wallets to add in an option to streamline the process of including a bloXroute fee. We expect wallets to include such a fee to have an advantage because it offers their users lower overall fees compared to competitors. It would be up to the wallet to decide to show an “bloXroute transaction” feature or simply show lower fees.
Will it be easy for a wallet to integrate bloXroute or it will require deeper dive?
  • Integration with wallets should be equally straightforward, from the technical point of view. We plan to actively work with open-sourced wallets to help them implement the change. The change includes a UI update to prompt the user and ask if they want to use bloXroute or not, and if they do, update the transaction to commit a tiny fee to a publicly-known bloXroute address.
Are you on track with your roadmap?
  • We are only a few weeks behind on our roadmap (we wanted to do our miner test for end of Feb and now it is early march) but I think for the tech world that’s still pretty good!
Did crypto winter changed your roadmap in certain aspects?
  • The crypto winter I think actually helped us. We are a free service to make miners more money. That has to be appealing in this environment.
When will the Proof of Concept be released?
  • The PoC should come at a similar time like V1, maybe a couple of weeks later, we’ll see.
What is the biggest challenge you’ve encountered after starting the company? What has helped you overcome challenges and stick to your goals?
  • Biggest challenge we have faced is finding talented individuals who understand this technology. The area is brand new, and it’s difficult to find qualified engineers, builders, and business folks. What makes me really motivated every morning is looking at the world and noticing just how antiquated our current systems are, how much they operate based on trust, and how much better they would be if they were open to all and auditable by anyone.
The white paper doesn’t give a full description of bloXroute’s tech, instead it gives a very simple explanation. Do you have concrete plans on how your project will be applied?
  • Our technology has been in operation for 2.5 years. Writing a whitepaper is a difficult task, trying to make a complex technology accessible to the masses. That said, I am pretty sure that we covered the core of our plans, and we have more papers in the pipeline describing the operation of the system for an academic audience. [Check out our resources page for detailed explanations about our technology]

Blockchain Ecosystem

People are talking a lot about Layer-2 scaling solutions in recent years. Compared with layer-0, will layer-2 be a better scaling choice? Or does it depend on different scenarios?
  • When it comes to scaling, there is no “one good layer to scale.” To reach really large numbers of transactions per second, one needs to tackle the bottlenecks at all levels. And Layer-2 cannot actually be made secure unless Layer-1 has enough space to on-board new users, as well as settle the transactions from existing channels. This all cannot be done at 3 tps. To support 1,000,000 tps and above, the underlying chain has to offer high throughput. So it’s absolutely essential to examine Layer-0 solutions.
You said currently there’s no crypto that can be truly decentralized. You also believe PoS is better than PoW. Does that mean that you think bitcoin is not decentralized? What’s the problem with bitcoin’s PoW mechanism?
  • Bitcoin’s blockchain today is created by around 19 mining entities. Some of these are pools, but nevertheless, these are individuals that came together and are operating in unison towards a common aim — they may not have corporate paperwork filed, but they are indistinguishable from any other corporate entity at this point. Just 4 of these command the majority of the hashpower. That’s it, the sum total of Bitcoin’s decentralization. EOS has 21 block producers. Ethereum has 11 miners now, and will reach around 60 with Casper. These are all tiny numbers. The big elephant in the room that no one dares to talk about is precisely how centralized most coins are today.
Do you find there is enough awareness about the block propagation as one of the major (if not the major) scalability bottlenecks within the crypto community/blockchains?
  • The short answer is no. Many people have heard about scalability being a hot topic in crypto/blockchain, but almost no one knows exactly what or where the bottleneck is. That’s why one of the most important parts of telling our story is educating at the same time. The blockchain community has many different types of people with varying levels of knowledge, so it’s a balance to develop a voice that speaks to everyone. In response to this challenge we have developed an educational Youtube series where we give detailed explanations about topics in crypto and blockchain. We hope it will provide tools to have more technical understanding and meaningful conversations about our product and the ecosystem in general.
During the BCH Hash War there was a block propagation bottleneck real case scenario on the mainnet when BSV tried to mine large blocks — something like 40MB and later 64 MB, but at both trials they failed on block propagation as it took too long and forks occurred. The large blocks were orphaned so the experiment clearly failed. As bloXroute’s focus is on this exact scalability bottleneck, block propagation, you came out as a *winner* from the hash war according to Professor Sirer. Have you experienced some benefits of being a winner, such as a larger awareness and interest in your project within the crypto and blockchain community?
  • We are having a lot of communication and open discussion with a lot of blockchain projects out there. We did indeed notice an increased interest after the events that you mention above.
What if industrial giants launched their own public chains one after another, what do you think the community should do?
  • This is exactly what we are going to see, with Facebook leading the way. I’m not too worried about these corporate approaches. While these companies have immense resources, they are starting quite late and do not have the kinds of thought leadership we possess on building peer-to-peer systems. All of these big behemoths are experts at building centralized client-server systems, which are the exact antithesis of what we are building with cryptocurrencies. So I don’t think we should be worried or do much: let them build out, welcome their efforts, and treat them the same way we treat every other altcoin. They will play a big role in onboarding new users into crypto, and they will help make the space more healthy and exciting for all of us.
What different scaling challenges are Ethereum and Bitcoin facing now? What do you think of these challenges?
  • The scaling problems faced by these two systems are slightly different. Bitcoin is a payments system. As such, it is concerned primarily with point-to-point value transfers. And it is facing a basic capacity problem: if everyone in Venezuela were to switch to Bitcoin today, every adult would get to transact only once per month! That’s clearly nowhere near the dream that has been sold to the masses. And it’s not clear what Layer-2 can achieve, because its capacity depends on the emergent network. At the moment, most attempts to send $1000 over LN fail. The challenge in Bitcoin and similar systems is to retain the security of the underlying protocol, avoid forks, and at the same time, increase the number of transactions per second. Naive attempts to do this, for instance, by arbitrarily increasing the block size to really large numbers, are not a good idea. We have seen that BSV is going down this route, and it is leading to excess centralization. bloXroute can help avoid centralization, and help drive protocol scales up by orders of magnitude. The challenges faced by Ethereum are slightly different. The interactions with smart-contracts tend to be multi-point to multi-point, that is, they involve multiple parties. So we see a different, more difficult problem emerge. And Ethereum is driving its network to its limits at the moment. The Ethereum mining network is beginning to show signs of centralization. ETH’s current set of block size and block frequency parameters are a little bit aggressive, and we are seeing signs that would indicate an advantage for mining centralization. bloXroute can help reverse this process and enable the protocol to be driven even more aggressively.
Ethereum researchers claim that their sidechain snark handles 17,000 TPS, do you think we can achieve higher capacity while the network is absolutely safe?
  • We can, and need to, achieve far higher numbers if the blockchain revolution is going to be anywhere near as big as it can be. If IoT devices go online, we will need 1M tps. On the other hand, I’m highly skeptical of all performance claims. BTC achieves around 4tps today, while ETH achieves 15 on a good day. Achieving 100–500, sustained in the real world, is actually very difficult. Any time I hear a number in excess of 10,000 tps, and the technology involved still uses LevelDB, I know that the numbers are obtained in laboratory conditions. That said, I believe this announcement was referring to a sidechain with a small number of trusted peers. In such a setting, sure, one can do anything because the trustlessness is not an issue. I’m concerned about public blockchains, where the nodes do not and cannot trust each other. We can only get to 10,000tps and above by re-thinking Layer-1, as we are doing with Avalanche, and re-doing Layer-0, as we are doing with bloXroute.
Thank you again to everyone who participated ! If you have more questions for our team, feel free to ask us on the bloXroute Telegram channel or ourReddit page.
— — —
We’re always looking for good people!
If you’re equally excited to solve the scalability bottleneck for all blockchains, consider joining our team! We are always looking for passionate partners to help us on this important journey. Check out our available positions to work with us in our Chicago offices.
Learn more
submitted by brooke_bloXroute to bloXrouteLabs [link] [comments]

Smilo explained — 51% attacks

Smilo explained — 51% attacks
In this article of Smilo Explained we are going to explain more about the infamous 51% attacks of the blockchain space. We decided to create a separate article on this matter since it is one of the most impactful attacks in the blockchain space and very topical over the last few weeks with several attacks happening.
https://preview.redd.it/lsnwjlmr7o221.png?width=1920&format=png&auto=webp&s=aad5525a6181288287829d89d87feb416f028f31
Some blockchain projects are more prone to 51% attacks than others, this is especially true for blockchains using the popular Proof of Work (PoW) consensus mechanism. This PoW algorithm is an economic measure to deter various attacks on the network by requiring some work from the service requester, usually in the form of processing time by a computer. However, it is possible to attack PoW blockchains when you control more than 51% of the total hashing power.
Considering this, smaller blockchains with a relatively low total hashing power combined with the PoW consensus mechanism could easily fall victim to this attack. Take Bitcoin as an example, in the first few years when Bitcoin (and blockchain) was less popular, it was relatively easy to buy more than 51% of the total hashing power and attack the network. However, due to the fact that no individual really paid attention to this flaw, Bitcoin was able to slowly grow a considerable amount of relatively decentralised hashing power over time, thus securing the network.
Nowadays, this flaw is quite well-known and due to this there is a rising amount of attackers who try to better themselves by attacking other blockchains. There are even websites giving rough estimates of the costs involved in creating a 51% attack such as https://www.crypto51.app/.
Let’s take a closer look at some of the projects which have suffered from a 51% attack lately.

Vertcoin

The first specific case of a 51% attack which we are going to discuss is the one that took place this week, the 2nd of december, on the cryptocurrency called Vertcoin. During the attack, the attackers tried to double spend the currency to better themselves.
Coinbase engineer Mark Nesbitt stated that the double spending amounted could have resulted to over a $100,000 loss on the Vertcoin network.
“Vertcoin (VTC) experienced 22 deep chain reorganizations, 15 of which included double spends of VTC. We estimate that these attacks could have resulted in theft of over $100,000. The largest reorganization was over 300 blocks deep.”
According to the Crypto 51 webapp, the attack would only cost about 125 dollar per hour at the time of the attack. With an average block time of 2m and 40s this means the attack took approximately 14 hours and would only cost about 1750 dollars.

AurumCoin

A few weeks ago, AurumCoin also fell victim to a 51% attack. During the attack, one of the few cryptocurrency exchanges who had listed AurumCoin, Cryptopia, lost more than 15 million Aurum coins (which was worth over half a million USD at the time of the attack). AurumCoin claims not to be responsible for the attack and they shifted the blame to Cryptopia, insisting it was hacked. Cryptopia, on the other hand, has not yet acknowledged that they have been hacked.

Easy prey

With a market cap of around 10 million USD, AurumCoin was definitely one of the easier targets. The attacker sent over 500.000 USD worth of AurumCoin to cryptopia to exchange them for another cryptocurrency. Once this transaction went through, the attacker allegedly used more than 51% of the hashing power to reverse the transaction as though it never really happened.
Besides, the last commit on AurumCoin’s Github originates from 2015, which indicates that the developers might have abandoned their project. Moreover, having an average hashrate of just about 80PH/s didn’t help them either. For about 800 USD per hour, one can easily rent more than enough mining power on NiceHash to attack AurumCoin’s network.

Confirmations

According to various reports, it seems like AurumCoin needed twenty confirmations at the time of the attack to send or receive any funds. So, could Cryptopia be responsible for this hack? Well, Cryptopia stated that they do not have any control over the time in which these confirmations are completed. Meaning that, Cryptopia does not seem to have any influence on AurumCoin transactions.
According to the exchange, they are unable to reverse or alter these kind of confirmations, and thus the transactions. In their support section they make the following statement;
“Cryptopia does not perform these ‘Confirmations’ or have any control over the time in which these Confirmations are completed. The Confirmations are completed by miners on the Blockchain. Transactions with higher fees will are far more likely to be added to a block first.”
AurumCoin’s case is just one of the examples which shows the negative consequences for both the coin and the exchange hosting them.

Bitcoin Gold

Bitcoin Gold suffered from a similar attack, though on a larger scale. An amount of 12.239 BTG was deposited to an account on the crypto exchange Bittrex, which was according to the online publication Bitcoinist around 18 million USD at the time of the attack.

Technical background

To go more in depth on how the attacker proceeded with his attack, the following information was posted by BitcoinGold as a statement on their website.
“The attackers address is known by this transaction: ee798dd31beda909c9ca7f843bc58b48dfb40b0f6db83ccd10e892e9c3154ce7 (Originally marked as Confirmed, now marked as Unconfirmed)
The deposit was made as part of this block #529022(Originally marked as mainchain, now marked as Orphaned. It was mined by honest miners.) and was confirmed over the course of nearly six hours on mainchain with 21 additional blocks mined, up to and including this block #529043. (Originally marked as mainchain, now marked as Orphaned. It was mined by honest miners.)
Some time after the 20th block, which satisfied the 20-confirmation requirement for Bittrex, the attacker was able to trade their BTG on Bittrex and withdraw other crypto.
The attacker then released 23 (or more) secretly mined blocks to the mainchain, superseding the existing 22 blocks, and replacing their previous transfer of 12.239 BTG to Bittrex with a transfer of those same 12.239 BTG to themselves.
Below is the new transaction (double-spend) of the original 12239 BTG, sent to their own address instead of Bittrex: 8b8ad1deb88c9b9e36c62e96ff52833d4ca1632076b1092a5848de788181aaaf
It was included in this block #529022, which was first mined by the attackers in secret and not broadcast to the network until nearly 6 hours later. When it was finally broadcast along with 22 or more other secretly-mined blocks, for a total of over 23 blocks, it established the “longest chain” and took over as mainchain, causing the previously seen blocks to become “Orphaned.”
Bittrex delisted Bitcoin Gold shortly afterwards. As a result Bitcoin Gold was forced to upgrade their proof of work to make it, according to them, a less attractive and harder to attack network, even though the possibility to become victim of such an attack still lingers. Besides, they advised all exchanges to raise their confirmation requirements to give time to react on unusually large deposits of BTG — the double-spend attacks were clear outliers in size.

Expenses for the attack

Husam Abboud, a managing partner and co-founder at Brazil-based PDB Capital, has calculated that an average investment of 200.000 USD respectively is necessary for a 51% attack on bitcoin gold.
“Bitcoin Gold, a much smaller network (1/20 the size of Bitcoin Cash network), since the fork, has switched to become ASIC resistant hashing with Equihash algorithm, — same as zCash — It is currently more secure against 51% attack from Bitcoin miners, but vulnerable to attacks from Zcash and other Equihash miners.”
As researched by Investopedia, if for example a zCash miner with +8% of Nethash would switch to mine BitcoinGold, he is already at +51% BTG nethash. This would brings the cost of 51% attack on BTG to 580 ZEC/day which equals around 200.000 USD

A common attack

Similar situations occurred this year with Monacoin and Verge among others, showing that these attacks are not uncommon. Counter measures are being taken by exchanges and networks alike such as increasing the number of confirmations required for making a transaction and ASIC resistant networks. Nevertheless, exchanges have very few defences to this attack, as no number of confirmations can make receiving deposits of the network under attack fully safe, when the attacker has over 51% of the hashing power. Some of the measures might reduce the risk of such an attack, though seem not as efficient as hoped, as even networks that have implemented them, are still being attacked.
‘As long as exchanges are willing to provide customers with assets in response to the deposit of a reversible currency, there’s no reason for attackers to stop this behavior. Expect to see more of these attacks.
Exchanges that support these assets will continue to suffer losses, with the ultimate result that exchanges will be forced to delist these assets. In such an environment, it’s hard to find a compelling argument for why these assets should have value.’
Mark Nesbitt

Smilo’s solution

The Smilo network solves this problem with its Smilo BFT+ consensus mechanism. This consensus mechanism circumvents 51% attacks by having one valid blockchain and one valid block created by one chosen speaker. Next to 51% attacks, Smilo’s consensus is also far less vulnerable to a number of other attacks, making it a saver option for both users and exchanges.
Smilo will always require more than 66% consensus with the Smilo BFT+ algorithm, a node will never add a block to his chain when this block has been declined. Moreover, even when more than 66% of the nodes approve a block, but Node A declined the block, Node A will not add the block to his chain, nor will the follow up blocks add this block to the chain.
All Smilo Clients (like the API, full wallets, etcetera) are able to verify both blocks and transactions, providing a two-factor authentication for light clients. Clients can validate if it is connected to “Good actors” or “Bad actors”, depending on the blockchain hash, and therefore decide to send a transaction to a Good or Bad actor.
Since Smilo BFT+ Blacklists ‘Bad actors’, each Bad Actor will become an orphan/bad chain (fork). Besides, considering the fact you need 10.000 Smilo to act as a node, an attacking entity needs to own an immense amount of Smilo to start with, which makes it impractical as it will prove a great financial loss for the attacker. This makes Smilo 99.9% secure against sibling attacks.
For example: 250 nodes are securing the network: - 84 nodes are ok! - 166 nodes are bad! 166 * 10.000 = 1.66 million Smilo (>66% of the actors)
Even if the attacker pulls it off to create a bad block, the 84 good nodes will not add this block (because it is invalid). The next speaker in line (or the third, or the fourth, or the fifth) will create a correct block which will be added to the nodes. Since our full-clients validate nodes and blocks by themselves, they will not send any transactions to the wrong fork. This results in a fork which will only survive for as long as the bad actors are turned on.
Be part of the Smilo hybrid blockchain movement!
Join our Telegram, Twitter and follow us on other social media for the latest updates! Medium | LinkedIn | Facebook | Reddit
For more information about the Smilo Platform check out our; Website | Video | Whitepaper | Onepager | Whitelist
submitted by Smilo-platform to SmiloPlatform [link] [comments]

Bitcoin Origins

Afternoon, All.
Today marks the eighth anniversary of the publication of the Bitcoin white paper.
As a special tribute, I will provide you with a short story on the origins of the Bitcoin tech.
I've been out of the game for many years, however now I find myself drawn back - in part due to the energy that's being added by the incumbents, in part due to information that's become public over the past year.
I haven't followed the Bitcoin and alt coin tech for the past five or six years. I left about six months before (2).
My last communication with (2) was five years ago which ended in my obliteration of all development emails and long-term exile. Every mention of Bitcoin made me turn the page, change the channel, click away - due to a painful knot of fear in my belly at the very mention of the tech.
As my old memories come back I'm jotting them down so that a roughly decent book on the original Bitcoin development may be created.
The following are a few of these notes.
This is still in early draft form so expect the layout and flow to be cleaned up over time.
Also be aware that the initial release of the Bitcoin white paper and code was what we had cut down to from earlier ideas.
This means that some of the ideas below will not correspond to what would end up being made public.
Bitcoin Logo
BitCoin Origins
Six Months In A Leaky Boat
Introduction
I have always found that there’s a vast gulf between knowledge and understanding.
Wherever I looked I’ve found very intelligent folks who had immense knowledge in their subject but with little understanding of what to do with it, how to mould it, how to create something new.
They could only ever iterate incrementally to improve the knowledge in their given field.
Understanding comes from experiences outside of knowledge in a particular subject.
The following story is about a most unique project and the understanding that was used and applied to the e-cash problem which resulted in the experiment called Bitcoin.
It is to show the thought process, stream of consciousness, arguments, examples, concerns and fears that went through our minds has we tussled with this beast and hammered out something that may actually work.
There is no verification of truth here. There is absolutely no evidential proof that I had any part in the project. All evidence was purged in late 2011 - the reason will become apparent. Only (2) should know of my involvement (until now). Take this as just a fictional story if you wish.
Who am I ? I went by the ‘net handle Scronty back then.
scrontsoft.com
I have always been interested in computer and electronic technology since the age of eleven. Seeing what others had made these machines do, and then trying to push it a little bit further out.
Whenever there was a problem to be figured out I would always begin with what the current state of knowledge was - after all, we all stand on the shoulders of all those who have gone before.
Quite often I found that the assumptions folks hold for a particular problem are the things that are holding them back from figuring out a new solution.
So I would begin by questioning peoples basic assumptions on various subjects
This usually resulted in annoying all of these knowledgable folks.
You get the idea.
You see it on every single message board since the mid-nineties onwards.
There’re also a lot of egotistical chips on folks shoulders where you’d find that they’d look down on others and belittle them on topics that they themselves had only just learned a few weeks earlier.
This is particularly true in programming and crypto forums.
Start
A couple of guys worked with an online betting company.
They had a problem.
For punters to use their service they had to provide credit card details and pay for chip tokens.
However, many times a punter would play the online pokey machines, lose all of their money and then reverse the credit card charge saying “It’s unauthorised. It wasn’t me”.
Sometimes the company’s network would not record the funds transfer correctly and so the punters funds were removed from their credit account into the company’s account but no record of it was made on the company’s end - so the punter didn’t receive any play tokens and, again, tried to reverse the charges.
The large credit card issuing companies also actively stopped allowing credit cards to be used for online gambling and began refusing to reverse the charges.
What these guys needed was a way to transfer funds between punters and the online betting companies so that both parties could trust that everything was above board.
That a payment could not be made by mistake and once a payment went through it was unchangeable, irreversible.
(2) had been on the periphery of the cypherpunks group since the mid 1990’s. When I entered the project in early 2008 he had been working on the problem part-time over the past five years. Over the previous year or so he’d been working on the problem full-time. He was writing a white paper for an e-cash system for the online betting/gambling company to use ( or to license out the solution to multiple companies ) plus writing the code for it.
He was attempting to implement a working example of electronic cash.
There were other cryptographers who he was communicating with however it just wouldn’t “work”. There were always too many attack vectors with the solution and even though, from a cryptographic point-of-view, the white paper and code was appropriate, he found it unsatisfactory.
After talking to his friend (3) it was decided that maybe they had their noses too close to the grindstone and that they should find someone who wasn’t a cryptographer to look over the ideas.
The problem is that to find such a person is very difficult. He’d have to be smart enough to understand cryptography (or learn it), also be interested in the subject but also not currently be a cryptographer.
Usually the folks who were smart enough and had an interest were already cryptographers.
Through various IRC (Internet Relay Chat) channels (3) came across me and I ended up being put in touch with (2).
With my work in the Win32 Asm community I’d shown I was smart enough and could figure out the solutions to difficult problems.
Plus I’d made sure my public profile was always dealing with grey-to-white topics (no online gambling stuff).
Request For Help
I was asked to take a look over what had been written in the white paper and see what needed to be changed as the code implementing it just wasn’t working - the pieces wouldn’t fit together or the whole thing would fail if certain pre-conditions in the network weren’t met.
(2) wanted to publish the white paper before the end of the year (2008).
I began reading through the document - understanding very little.
Hashing and encrypting and decrypting and private keys and public keys.
Different types of hashing algorithms, encrypting then hashing and hashing then encrypting.
Oh my!
“Just tell me what I need to change to make it work” - (2) kept asking me.
“I dunno what the [redacted] I’m reading here” - I replied.
(2) thought that maybe he’d made a mistake and he’ll just try and find someone else.
I told him that he’s going about fixing it the wrong way.
“How should it be fixed ?”, he asked.
“Well, first I need to know what I’m reading. So you’re going to have to give me info on the various crypto stuff in here”, I said.
“No no no”, he said. “ If you learn the meaning of the cryptographic jargon you will be influenced by it and would no-longer be the “non-cryptographer” that we need to look over the white paper”.
I told him that without learning the jargon I cannot read the paper in the first place.
Also - as I learn I will understand more and will be able to tell you what you need to change.
If or when it got to the stage that I’d learned too much and also had my nose too close to the grindstone then I could leave the project and he could find someone else to replace me.
He agreed that having me learn a bit about cryptography may be a good idea (:roll-eyes:).
He told me to get started.
I asked where the information was.
He said “Google it”.
I said “Nope. You’ve been working in this area for the past few years so you can give me a link to the websites with the info."
He returned with a list of website links and said to go through that and look at the white paper.
The list had about 109 links in it - bloody [redacted].
One-by-one I began going through the information.
After a few weeks I’d gone through about half-a-dozen papers/websites which hadn’t cleared up anything.
Once three or four weeks had gone by I threw my hands up in disgust and told him “At this rate I’ll be here all year and still not understand all the pieces. You’ve got to filter this down for me. You’ve already read all of these documents and websites so give me a list of the most important docs/websites you think would be helpful in understanding your white paper”.
He came back with a list of about 23 white papers and websites.
“Now list them in the order you think I should read them in”.
He came back with a sorted and filtered list of crypto-docs and websites.
I began reading through them - starting at the first.
Transactions
Given a computer network there had to be transactions sent to a recipient.
The initial white paper was pretty much a shuffling of the various cryptographic e-cash white papers at the time. We knew that when someone wanted to send a payment to another person it would have to be transmitted across a network securely.
But how to solve the double-spend problem ?
A piece of physical paper cash can only be in one place at a time - you cannot double-spend a physical currency note. All current electronic cash solutions relied upon a central server to control the allocation of coin and to make sure no coin could be double-spent.
But if that server went down, or was unaccessible due to a DDOS attack or government intervention ( or someone just tripping over a power cord ) then no more money.
We knew that a coin would initially be minted somehow.
I found most of the methods written in white papers and on websites were rubbish ( Personal opinion here. No disrespect to those who wrote those white papers ).
They either tried to pretend to act as central banks or tried to allow a “mates club” whereby they all agreed who's going to get coin at a particular time.
Kind of like politicians using an "independent" third party to give themselves a pay rise.
We knew that a piece of electronic cash would be minted somehow, however once it was minted how could it be sent to someone else ?
(2) and I went back and forth with a few ideas, going through the physical process of different transaction types one by one and adjusting how a transaction data package would look like.
We began with a single piece of e-cash.
Like a piece of gold, it should be able to cut smaller pieces off of it.
That means by starting with one item we’d end up with two - the piece going to the recipient and the change coming back to the original owner.
I told (2) that when drawn into a diagram it looks like electronic or computer logic gates.
Logic Gates
Except sometimes there can be more outputs than inputs. And in the end it looks like a neural network.
If we had a large piece and were paying that entire amount to someone then the input and output pieces would be the same.
If we had a large piece and were paying a small amount to someone then the input would be the large piece and the outputs would be the amount being paid plus a small piece as change.
As more people are paid we’d end up with a lot of small pieces in our wallet.
If we had a small piece and needed to pay someone a large amount then we could combine multiple small pieces to be equal or larger than the amount to be paid, and refund back to ourselves any change left over.
This means a transaction would have to allow multiple inputs and multiple outputs, with each input signed by the current owners private key and the outputs being the new owners public key.
Transaction Types
One day he came back to me saying his friend (3) wanted to communicate directly with me but he was a super-paranoid fella and I had to encrypt any messages using private/public keys.
It was a [redacted] nightmare.
I had to:
This was all so he could confirm that the message was indeed from me and had not been intercepted or changed.
Then he decided that I’d also have to generate new private/public keys for every single email just in case a previous email had been intercepted.
I told (2) that this just wasn’t going to happen.
I’ve always disliked using command line programs directly and always thought that they should always be executed from a GUI ( Graphical User Interface).
I said “You’re going to be my filter for this project and main conduit in this team. I send emails to you, you communicate with whoever you need to and send their replies back to me. Or you send their requests to me and I reply back through you.
And what’s this annoying command line proggy anyway? What the [redacted] is it doing?
(2) gave me the link to the information - it was in that list of 109 docs/websites but not in the filtered list of 23.
It was to Hal's website where he very clearly explained how something called "Hashcash" worked.
Hals RPOW
From there I went on to Adam's site:
Hashcash
(which was not even in the original list at all).
I read the Hashcash white paper sections until I hit the calculations and my eyes begun to glaze over.
Hashcash
I read the first few paragraphs and knew this was something interesting.
I asked (2) if he could check whether this document was the final version or if there had been improvements/ amendments/ updates to it.
He said he thought I was wasting my time with this and I should continue with the other docs/websites in the list he’d provided me.
I told him that I’m the only one who would know what info is important and to look into the Hashcash origin for me. He came back a couple of days later and said it was confirmed that the public document linked was the final version of the Hashcash paper.
I asked how he could confirm it?
He told me that he’d contacted the original website author Hal and asked him for any updated document and Hal had replied back with the exact same public link.
He’d even copy/pasted Hal’s reply in the email to me.
I said “Wait… What ? …”
“You actually contacted the original author of the reference material ?”
He said “Yep. Who else would I go to to confirm the document, except to the author themselves ?”
I told him it was really quite rare to have someone check with the original author or sources. Most folks read something and take that as fact, or read the reference documents and take those as fact.
If someone read about the Boyer-Moore search algorithm they take it as fact that what they’ve read is the official final solution. I haven’t heard of anyone contacting Boyer or Moore to check for any updates/ improvements/ amendments.
The Boyer-Moore search algorithm is something that went through the rounds on the Win32Asm community forum for a while.
I found this quite intriguing. Even with (2)’s occasional grating personality it would be very useful to have someone who’s prepared to hunt down the original authors like this.
I asked him if he'd contacted the Hashcash author and he said he'd sent emails to every single author of all of the websites/ white papers and only about a dozen or so had ever replied back to him.
I had begun to write up a list of what the various problems were for creating an e-cash system from the other e-cash system white papers and websites I had been studying.
I was still referring back to the white paper (2) had supplied me however it was really just a mishmash of what everyone else had been doing over the years.
Hence why it failed like all of the others.
One of the problems was a trusted time stamp so that folks would know that funds hadn’t been double-spent. Another was the minting of the tokens in the system and trusting the minting source.
If I recall - practically every single white paper out there ( including the one suppled to me ) used a trusted third party as the source for a time stamp and a convoluted method to check it hadn’t been tampered with.
And the minting either used a trusted third party to generate coins on a regular basis or had a network of nodes agree on how many tokens to generate and give to each other.
(2) said that we need to use the trusted third parties because how else can we trust the time stamp and the minting of the tokens.
I told him he was thinking of it in the wrong way.
You’re assuming a trusted third party is needed, just because every single other cryptographic white paper says that’s how you do it.
But you’re also saying that you can’t rely on a trusted third party because that makes a single point attack vector that can bring the whole system down to its knees.
“Remember Sherlock Holmes” I said. “ ‘When you have eliminated the impossible, whatever remains, however improbable, must be the truth ?’.
The assumption of a trusted third party in an functioning e-cash system must be eliminated as impossible for this to work.
So if we cannot have a trusted third party for this, what are our other options ?”
“I have no idea”, (2) replied. “Do you believe this proof-of-work thing you’re looking into can be used for this somehow ?”.
“I dunno. It definitely has some possibilities. It’s made for making sure the data being sent and received comes from a known trusted source and that it hasn’t been tampered with”.
It forces the user computer to generate a hash of the data to find a hash with a prepended number of zeroes. If the hash isn’t found it increments a value and hashes again. It just keeps repeating until a hash is found with the correct number of prepended zeroes.
This means that the user computer has to spend time working on the hashes until it finds one and only then can it stop.
It was designed to eliminate the email spam problem that we all have because a spam-sender would need to use a lot of computing resources to generate hashes for all the emails sent out ( the data that’s hashed includes the recipients email address so a new hash is required for every single email recipient ).
It also has a throttle so that the difficulty in generating a hash can be increased over time as the general computing hardware improves.
The minting problem is also sorted due to the electricity used in generating a hash can be used to mint the e-cash and put it into circulation.
Effectively - the real fiat-currency cost (via electricity consumed) of generating the valid hash is how much e-cash is given to that minter.
It also sets what the price of the minted e-cash should be, as there is a direct correlation between a real-world electricity bill and the digital e-cash amount minted.
Taking the time used to generate the hash with how much energy the cpu used during the generation ( only the time spent on hashing - not other computing resources ) with the local electricity costs of the suburb/county/province/state/nation the minter resides within, then each minter could have a locally-adjusted e-cash value added to their account.
It would mean that someone minting in a country with cheap electricity due to state-subsidised support would receive less e-cash because less real-world fiat currency was expended in the generation of the hash.
So now we had a mechanism in which this e-cash would work.
I'll stop this story here for now and post a follow-up depending upon its reception.
The follow-up will contain some of the details of how the idea of a chain of blocks came about, plus some of the tech that was left out of the initial white paper and public code release ( it was, after all, just the first experiment to check whether this tech would actually work ).
Bitcoin Origins - part 2
As a side-note:
When you read the Bitcoin white paper again, the Introduction, Calculation, Conclusion and References sections were written and edited by (2) and (3).
The Transactions, Timestamp Server, Proof-of-Work, Network, Incentive, Reclaiming Disk Space, Simplified Payment Verification, Combining and Splitting Value and Privacy sections were from text copy/ pasted from emails from me to (2) explaining how each part worked as they were being figured out.
I wrote the Abstract text when (2) asked me to write the Introduction. (2) used it as the Abstract section because he found it too terse for an introduction.
(2) and (3) edited the entire document and removed any double-spaces from it, adding titles to the various sections and adjusting between 2% and 5% for spelling errors and gramma sentence structure.
You can see the original Abstract with double-spacing here: Public Mailing-list Posting
There was a huge misunderstanding between us all during the formation of the white paper which I'll mention next time.
Cheers,
Phil
(Scronty)
vu.hn
submitted by Scronty to Bitcoin [link] [comments]

Proof-of-key blockchain

Hello everyone. I've been thinking about a light alternative proof-of-(work/stake) algorithm for blockchains that doesn't imply hardware/electricy race. I'd like to request for your comments about it.
The reason why such exponential investment is made into this hardware/energy is because it is proportional to the chances of winning the proof-of-* race. The proposed algorithm to avoid such a race is to determine the winner before the race starts, with almost zero CPU power needed to discover its identity.
Let's consider that an arbitrary amount of coins have been pre-mined and sold to fund the development (e.g. 5%). In order to get a chance to be rewarded with newly mined coins and fees for discovering a new block, a node needs to have one or more reward-keypair(s). Such reward-keys can only be buyed/registered on the blockchain, its price must be set to at least the current number of coins rewarded for discovering a new block, let's say 50 coins for the first years, like for Bitcoin (1).
Buying/registering a new reward-key on the blockchain is like buying new rig hardware, the more you have on your node, the more you increase your chances to win the race (2). For every node to unanimously agree on the winner, they all need to work on the very same block of transactions, I explain later how I think this goal can be achieved. Then, a simple checksum hash needs to be computed by every nodes on the new block, it is made of the previous head block's nonce appended by the ordered sum of outgoing transactions' addresses (3), it must have the same length in bits as the pubic-reward-keys (e.g. 256 bits), the public-reward-key that is the closest to this hash is the winner (nearest neighbor matching like with LSH). The node that happens to be the winner (who owns the corresponding private-reward-key) has to claim the block by signing the totality of its data (block's head index on the chain, ordered transactions in full, plus its reward transaction) and broadcast its claim for other nodes to validate and add it to their blockchain's head (4). If the block is not claimed, it can be for multiple reasons, blockchain fork (nodes not working on the very same block of transactions because of accidental or malicious cacophony), network latency, or simply the wining node being down. But I think these cases can be dealt with securely, as explained below.
In order to be sure that every node of the network is working on the very same block of transactions at the very same time, some rigorous synchronization has to be set up, with carrot and stick for the participating nodes. First thing is to prevent transactions from being constantly broadcast, otherwise because of propagation delay the data of the new block would always be in an inconsistent state among the different nodes. As the delay for having data propagated to 99% of a P2P network (Bitcoin) appears to be about 40 seconds (4), I propose an arbitrary "pulse window" of 20 seconds for nodes to initiate the broadcast of their transactions (they need to synchronize at startup via NTP), followed by 40 seconds of retention of new transactions (meanwhile new transactions are being queued in each node, waiting for the next pulse), for letting the time of all the transactions to reach the totality of the network. So, there is one broadcast pulse every minute (20+40), as well as one new block. If any node do not play the game (wrongdoing, miss-configuration, bad QoS, etc.) that triggers cacophony, the network will have to identify and ban them (5) at the next pulse. On the other hand, nodes that provide good synchronization, QoS, etc. will be rewarded by receiving a part of the fees of the transactions that they have initially broadcast. To do so, transactions and their entry node need to identify each other reciprocally. Each transaction identifies the entry node chosen for broadcast, as well as the node signs the transaction (or preferably a whole transactions' batch in a single network packet). Node identification is done via one of its reward-key(s).
If some transactions are sent too late, not reaching the totality (99.9%) of the network (likely to be initially broadcast around the 55th second, just before the end of the 20+40 seconds pulse (4), instead of the dedicated initial 20 seconds pulse window, because of intentional cacophony malice, or miss-configuration, bad QoS being more unlikely for such a long lag), then the blockchain's working head will be forked into multiple heads. Therefore, the probability of finding the next block will be divided by the number of different forked heads (proportionally to the respective number of nodes working on each forked head). Let's take an arbitrary case scenario where the blockchain gets forked into 3 equally distributed heads, each representing 33.3% of the nodes, the respective chances to find each of these 3 different forked blocks is divided by 3 (for each forked head block there is a 66.6% chance that the winning reward-key is working on another block, therefore won't claim it). Thus, after 2 or 3 iteration pulses (or even only one), the entirety of the network will find the block discovery/validation rate dramatically drop, which will trigger nodes to enter "cacophony mode", stopping to emit transactions, and broadcast the blocks they are working on after the cacophony was detected (and maybe one or two blocks before that as an uncertainty margin), as well as the signature of the block's hash by the node (6). After few seconds/minutes, all the nodes will have gathered a reference copy of all different versions of blocks being worked on, along with the number of times they have been signed (a.k.a in which proportions a specific version of a block were spread amongst the network). All nodes now have an accurate snapshot of the total topology and consistency the network, few blocks backward from the blockchain's head, before the fork happened. Then nodes can independently compare blocks, whitelisting every nodes that had their transactions registered on every blocks (meaning they were broadcast on time), baning those that are on some blocks but not other popular ones (7), therefore the network self-heals by purging bad nodes, and resume mining by rolling back to the last block that was mined before the cacophony started.
In the case of a node suspecting cacophony because being in the fringe of the network or out-of-sync (thus not receiving transactions on proper time), other nodes won't be in "cacophony mode", so the node will find itself lonely by not receiving any/enough different block versions (along with their signed hashes), therefore it will know that there is no cacophony, but bad QoS or configuration, this will need to be fixed by resync NTP, re-configure, change peers, sys-admin intervention, etc. They'll have to catch up quickly not to miss the race/reward.
In the case of a block not being claimed because of the winner node being down, the network would enter in "cacophony mode" as well, but figure out that it is consistent, therefore simply blacklisting the winning public-reward-key of the unclaimed block, until it gets unlocked by a dedicated "unlock message", signed with its corresponding private-reward-key when the node gets back online.
There might be plenty of smallebigger flaws that I did not think about, I'd like to request for your help in identifying and hopefully fixing them. I've been thinking that rich wrongdoers could escape the carrot and stick policy constraint by buying reward-keys with the only goal to prevent the network from taking off, provoking endless cacophony. I think this can be fixed by adjusting the price of the reward-keys over time (1), or even using a non-mandatory collaborative blacklist system for the early stage of network growth, until the price of reward-keys becomes dissuasive for a performing real prejudicial sabotage, even for rich wrongdoers. Also, because there is no CPU constraint for calculating blocks, it would be easy for anyone to forge a longer chain, however I'm not sure that the longer chain policy is the best here, and such forged chains could be easily detected because of a too much redundant winners' identity (not representative of the global reward-key pool), and not to mention that it cannot be broadcast as nodes do not get new blocks from the network but calculate them internally.
What do you think?
Thanks,
Camille.
(1) Price for buying/registering a new reward-key cannot be lower to the number of coins rewarded for finding a block to prevent their number to be exponential, but it could/should be higher to prevent rich wrongdoers to buy many and use them to disturb the network, it could also maintain the size of the network to a consistent state. Here we take the example of 50 coins per reward-key, which means one every minute, one every few hours sounds more reasonable and manageable, but this is outside of the scope of this post.
(2) A special transaction has to be done for purchasing a reward-key, unlike when simply spending coins with outgoing/incoming wallet address, here you send your self-generated public-reward-key (needless to say while keeping the private key private) along with your 50 coins, in return the network makes the 50 coins available again to miners as a reward for the next block discovery, and register your public-reward-key on the blockchain. The reverse operation to destroy the reward-key for getting the 50 coins reimbursed should be possible, as well a replacing a reward-key by a new one if suspected by the owner of being corrupted/stolen. The 50 coins given when finding a new block (or being reimbursed) are made available again from a previous purchase(s), or newly created if this coin reserve is empty. The available monetary mass may inflate or shrink depending of the market demand for reward-keys (mining) or liquidity, this policy can be discussed and algorithmically adjusted/limited in the specs (e.g. coins made available again after buying rewards-keys cannot represent more than 10% of the minted coins).
(3) We use outgoing transaction's addresses because they cannot be forged on-the-fly to alter the resulting hash. If we use the full transaction for calculating the "winning hash", nodes could try to forge and inject one transaction at the last second, playing with decimals to get the closest result to one of their public-reward-key, which would incite again for a hardware/electricity race.
(4) http://www.tik.ee.ethz.ch/file/49318d3f56c1d525aabf7fda78b23fc0/P2P2013_041.pdf
(5) Quarantine duration should be incremental for each ban, e.g.: 3h, 12h, 72h, 2 weeks, 4 months, one year, etc.
(6) Any node signing more than one different block for the same head number will be banned (5) and its data ignored.
(7) In "cacophony mode" marginal blocks that are not widespread and lacking transactions number should be ignored, they are more likely to be on the fringe of the network, not having received some transactions on time because of QoS-like issues.
submitted by mammique to crypto [link] [comments]

Online CryptoCurrency Calculator with multi-Cryptocurrencies Simple Bitcoin Converter BITCOIN  The Best HYIP  How to COMPOUND BITCOIN Bitcoin: How Cryptocurrencies Work - YouTube How to Mine Bitcoins Using Your Own Computer - YouTube NiceHash Profitability Calculator Review

World's simplest hash calculator. Just paste your text in the form below, press Calculate Hashes button, and you get dozens of hashes. Press button, get hashes. No ads, nonsense or garbage. Announcement: We just added another two new tools categories – PNG Tools and UTF8 Tools. Check them out! NTLM . MD2. MD4. MD5. MD6-128. MD6-256. MD6-512 ... Online Hash Calculator lets you calculate the cryptographic hash value of a string or file. Multiple hashing algorithms are supported including MD5, SHA1, SHA2, CRC32 and many other algorithms. Hash Calculator; Testimonials; Hash string. Encode new lines as \r\n (Windows style), otherwise \n (Linux, MacOS style) is used by default Calculate string hash values. Hash hex bytes e.g. "DEADBEEF ... Hash texts and reverse hashes instantly and easily ! Dehash.me This website was created to raise awareness on basic hashing weaknesses. This website own and generate its own dictionary. Some tips to developers if you don't want critical data being revealed (and/or dehashed): 1) Hash your critical data (like passwords), and all data needed to check forms and not needed as is. 2) Use multiple ... Generate a SHA-256 hash with this free online encryption tool. To create a SHA-256 checksum of your file, use the upload feature. To further enhance the security of you encrypted hash you can use a shared key. As you probably know — the decryption of a "hash" is impossible, but we offer reverse lookup (unhash; decryption) via our database (~2000M records and counting). Calculate a hash digest. Text. Store result. Store hash and value in our DB, so other fellows can search for it. Hash it! Hash reverse lookup, unhash, decrypt, search . Hash type. Hash String. Enable mass-decrypt mode. Google ...

[index] [11890] [16040] [8329] [37740] [36398] [37187] [38454] [48384] [10445] [23855]

Online CryptoCurrency Calculator with multi-Cryptocurrencies Simple Bitcoin Converter

Whether or not it's worth investing in, the math behind Bitcoin is an elegant solution to some complex problems. Hosted by: Michael Aranda Special Thanks: Da... We are miners from 2013 looking to create community and help train and learn together as blockchain tech changes so quickly. Leave your thoughts in the comme... How can companies store passwords safely and keep them away from hackers? Well let's find out! With all the data breaches lately, it's likely that the passwo... Start trading Bitcoin and cryptocurrency here: http://bit.ly/2Vptr2X IMPORTANT!! This method only illustrates how mining works. You will not make any money f... This video looks at the electric costs and profits estimated by the NiceHash Profitability Calculator to see how accurate they are based on my actual system watts used when runing NiceHash Miner ...

#