[{"data":1,"prerenderedAt":368},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002Fblockchains-how-and-why":286,"\u002Fblog\u002Fblockchains-how-and-why-surround":361},[4],{"title":5,"path":6,"stem":7,"children":8,"page":285},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273,277,281],{"title":10,"path":11,"stem":12},"2020 - The best Javascript Frameworks","\u002Fblog\u002F2020-the-best-javascript-frameworks","blog\u002F2020 - The best Javascript Frameworks",{"title":14,"path":15,"stem":16},"5 Essential Reasons for E2E Testing","\u002Fblog\u002F5-essential-reasons-for-e2e-testing","blog\u002F5 Essential Reasons for E2E Testing",{"title":18,"path":19,"stem":20},"5 Mistakes Front-end Developers should Avoid","\u002Fblog\u002F5-mistakes-front-end-developers-should-avoid","blog\u002F5 Mistakes Front-end Developers should Avoid",{"title":22,"path":23,"stem":24},"5 Things to motivate you to perform Unit Testing","\u002Fblog\u002F5-things-to-motivate-you-to-perform-unit-testing","blog\u002F5 Things to motivate you to perform Unit Testing",{"title":26,"path":27,"stem":28},"52 Articles, 7 Books and a Pandemic","\u002Fblog\u002F52-articles-7-books-and-a-pandemic","blog\u002F52 Articles, 7 Books and a Pandemic",{"title":30,"path":31,"stem":32},"6 Levels of Autonomous Vehicles","\u002Fblog\u002F6-levels-of-autonomous-vehicles","blog\u002F6 Levels of Autonomous Vehicles",{"title":34,"path":35,"stem":36},"ADAS","\u002Fblog\u002Fadas","blog\u002FADAS",{"title":38,"path":39,"stem":40},"Ambient Intelligence","\u002Fblog\u002Fambient-intelligence","blog\u002FAmbient Intelligence",{"title":42,"path":43,"stem":44},"Best 5 Hybrid Mobile App Development Frameworks","\u002Fblog\u002Fbest-5-hybrid-mobile-app-development-frameworks","blog\u002FBest 5 Hybrid Mobile App Development Frameworks",{"title":46,"path":47,"stem":48},"Best Practices for Code Testing","\u002Fblog\u002Fbest-practices-for-code-testing","blog\u002FBest Practices for Code Testing",{"title":50,"path":51,"stem":52},"Blockchains - How and Why?","\u002Fblog\u002Fblockchains-how-and-why","blog\u002FBlockchains - How and Why",{"title":54,"path":55,"stem":56},"Brain Computer Interfaces","\u002Fblog\u002Fbrain-computer-interfaces","blog\u002FBrain Computer Interfaces",{"title":58,"path":59,"stem":60},"Computational Fluid Dynamics","\u002Fblog\u002Fcomputational-fluid-dynamics","blog\u002FComputational Fluid Dynamics",{"title":62,"path":63,"stem":64},"Computer Vision","\u002Fblog\u002Fcomputer-vision","blog\u002FComputer Vision",{"title":66,"path":67,"stem":68},"Cryptography","\u002Fblog\u002Fcryptography","blog\u002FCryptography",{"title":70,"path":71,"stem":72},"Cyber-Physical Systems: Where Digital Meets Reality","\u002Fblog\u002Fcyber-physical-systems","blog\u002FCyber-Physical Systems",{"title":74,"path":75,"stem":76},"Design Patterns - Why and How?","\u002Fblog\u002Fdesign-patterns-why-and-how","blog\u002FDesign Patterns - Why and How",{"title":78,"path":79,"stem":80},"Edge AI: Revolutionizing Intelligence at the Edge","\u002Fblog\u002Fedge-ai","blog\u002FEdge AI",{"title":82,"path":83,"stem":84},"Edge Computing","\u002Fblog\u002Fedge-computing","blog\u002FEdge Computing",{"title":86,"path":87,"stem":88},"Embracing Decentralized Development","\u002Fblog\u002Fembracing-decentralized-development","blog\u002FEmbracing Decentralized Development",{"title":90,"path":91,"stem":92},"Extended Reality Simplified","\u002Fblog\u002Fextended-reality-simplified","blog\u002FExtended Reality Simplified",{"title":94,"path":95,"stem":96},"Good practices for Git","\u002Fblog\u002Fgood-practices-for-git","blog\u002FGood practices for Git",{"title":98,"path":99,"stem":100},"How do browsers work","\u002Fblog\u002Fhow-do-browsers-work","blog\u002FHow do browsers work",{"title":102,"path":103,"stem":104},"How to be a Full Stack Engineer","\u002Fblog\u002Fhow-to-be-a-full-stack-engineer","blog\u002FHow to be a Full Stack Engineer",{"title":106,"path":107,"stem":108},"How to be an effective Engineer?","\u002Fblog\u002Fhow-to-be-an-effective-engineer","blog\u002FHow to be an effective Engineer",{"title":110,"path":111,"stem":112},"How to choose components for a desktop PC on your own","\u002Fblog\u002Fhow-to-choose-components-for-a-desktop-pc-on-your-own","blog\u002FHow to choose components for a desktop PC on your own",{"title":114,"path":115,"stem":116},"Industry 4.0","\u002Fblog\u002Findustry-4","blog\u002FIndustry 4",{"title":118,"path":119,"stem":120},"Industry 4.0 & Mixed Reality","\u002Fblog\u002Findustry-4-and-mixed-reality","blog\u002FIndustry 4 & Mixed Reality",{"title":122,"path":123,"stem":124},"Internet of Behaviours","\u002Fblog\u002Finternet-of-behaviours","blog\u002FInternet of Behaviours",{"title":126,"path":127,"stem":128},"Internet of Things","\u002Fblog\u002Finternet-of-things","blog\u002FInternet of Things",{"title":130,"path":131,"stem":132},"Let's talk about SOLID Principles","\u002Fblog\u002Flets-talk-about-solid-principles","blog\u002FLets talk about SOLID Principles",{"title":134,"path":135,"stem":136},"LiDAR","\u002Fblog\u002Flidar","blog\u002FLiDAR",{"title":138,"path":139,"stem":140},"Machine Vision -Transforming Industries AI","\u002Fblog\u002Fmachine-vision-transforming-industries-ai","blog\u002FMachine Vision -Transforming Industries AI",{"title":142,"path":143,"stem":144},"Mathematics in Software Engineering","\u002Fblog\u002Fmathematics-in-software-engineering","blog\u002FMathematics in Software Engineering",{"title":146,"path":147,"stem":148},"Micro Frontends - A Modern Approach to Front-End Development","\u002Fblog\u002Fmicro-frontends-a-modern-approach-to-front-end-development","blog\u002FMicro Frontends - A Modern Approach to Front-End Development",{"title":150,"path":151,"stem":152},"Natural Language Processing","\u002Fblog\u002Fnatural-language-processing","blog\u002FNatural Language Processing",{"title":154,"path":155,"stem":156},"Optimizing for Search Engines","\u002Fblog\u002Foptimizing-for-search-engines","blog\u002FOptimizing for Search Engines",{"title":158,"path":159,"stem":160},"Physics Engine","\u002Fblog\u002Fphysics-engine","blog\u002FPhysics Engine",{"title":162,"path":163,"stem":164},"Point cloud","\u002Fblog\u002Fpoint-cloud","blog\u002FPoint cloud",{"title":166,"path":167,"stem":168},"Processes for Better Software Volume 1","\u002Fblog\u002Fprocesses-for-better-software-volume-1","blog\u002FProcesses for Better Software Volume 1",{"title":170,"path":171,"stem":172},"Processes for Better Software Volume 2","\u002Fblog\u002Fprocesses-for-better-software-volume-2","blog\u002FProcesses for Better Software Volume 2",{"title":174,"path":175,"stem":176},"Processes for Better Software Volume 3","\u002Fblog\u002Fprocesses-for-better-software-volume-3","blog\u002FProcesses for Better Software Volume 3",{"title":178,"path":179,"stem":180},"Quantum Computers","\u002Fblog\u002Fquantum-computers","blog\u002FQuantum Computers",{"title":182,"path":183,"stem":184},"Quantum Computing and its Potential Impact on Software Development","\u002Fblog\u002Fquantum-computing-and-its-potential-impact-on-software-development","blog\u002FQuantum Computing and its Potential Impact on Software Development",{"title":186,"path":187,"stem":188},"Quantum Cryptography","\u002Fblog\u002Fquantum-cryptography","blog\u002FQuantum Cryptography",{"title":190,"path":191,"stem":192},"Ray tracing - What you need to know","\u002Fblog\u002Fray-tracing-what-you-need-to-know","blog\u002FRay tracing - What you need to know",{"title":194,"path":195,"stem":196},"Reflections on how we code","\u002Fblog\u002Freflections-on-how-we-code","blog\u002FReflections on how we code",{"title":198,"path":199,"stem":200},"Robotic Process Automation","\u002Fblog\u002Frobotic-process-automation","blog\u002FRobotic Process Automation",{"title":202,"path":203,"stem":204},"Self Driving Cars - A Better Tomorrow","\u002Fblog\u002Fself-driving-cars-a-better-tomorrow","blog\u002FSelf Driving Cars - A Better Tomorrow",{"title":206,"path":207,"stem":208},"Semantic Web - A Smarter Future","\u002Fblog\u002Fsemantic-web-a-smarter-future","blog\u002FSemantic Web A Smarter Future",{"title":210,"path":211,"stem":212},"Sensor Fusion","\u002Fblog\u002Fsensor-fusion","blog\u002FSensor Fusion",{"title":214,"path":215,"stem":216},"Serverless Computing and the Future","\u002Fblog\u002Fserverless-computing-and-the-future","blog\u002FServerless Computing and the Future",{"title":218,"path":219,"stem":220},"Shaders","\u002Fblog\u002Fshaders","blog\u002FShaders",{"title":222,"path":223,"stem":224},"Smart Home Automation","\u002Fblog\u002Fsmart-home-automation","blog\u002FSmart Home Automation",{"title":226,"path":227,"stem":228},"The Horizon of Cybersecurity","\u002Fblog\u002Fthe-horizon-of-cybersecurity","blog\u002FThe Horizon of Cybersecurity",{"title":230,"path":231,"stem":232},"The Perils of Ray-Tracing","\u002Fblog\u002Fthe-perils-of-ray-tracing","blog\u002FThe Perils of Ray-Tracing",{"title":234,"path":235,"stem":236},"The Psychology of Software Bugs Understanding and Preventing Common Mistakes","\u002Fblog\u002Fthe-psychology-of-software-bugs-understanding-and-preventing-common-mistakes","blog\u002FThe Psychology of Software Bugs - Understanding and Preventing Common Mistakes",{"title":238,"path":239,"stem":240},"Top 5 Advantages of MongoDB","\u002Fblog\u002Ftop-5-advantages-of-mongodb","blog\u002FTop 5 Advantages of MongoDB",{"title":242,"path":243,"stem":244},"Top Trends in Augmented Reality","\u002Fblog\u002Ftop-trends-in-augmented-reality","blog\u002FTop Trends in Augmented Reality",{"title":246,"path":247,"stem":248},"Top features of Unreal Engine","\u002Fblog\u002Ftop-features-of-unreal-engine","blog\u002FTop features of Unreal Engine",{"title":250,"path":251,"stem":252},"Unity 3D - Why to go with it?","\u002Fblog\u002Funity-3d-why-to-go-with-it","blog\u002FUnity 3D - Why to go with it",{"title":254,"path":255,"stem":256},"Virtual Reality Advantages","\u002Fblog\u002Fvirtual-reality-advantages","blog\u002FVirtual Reality Advantages",{"title":258,"path":259,"stem":260},"Virtual Test Drive & Autonomous Driving","\u002Fblog\u002Fvirtual-test-drive-and-autonomous-driving","blog\u002FVirtual Test Drive & Autonomous Driving",{"title":262,"path":263,"stem":264},"WebAssembly and Progressive Web Apps","\u002Fblog\u002Fwebassembly-and-progressive-web-apps","blog\u002FWebAssembly and Progressive Web Apps",{"title":266,"path":267,"stem":268},"What are Best Practices?","\u002Fblog\u002Fwhat-are-best-practices","blog\u002FWhat are Best Practices",{"title":270,"path":271,"stem":272},"What are Digital Twins?","\u002Fblog\u002Fwhat-are-digital-twins","blog\u002FWhat are Digital Twins",{"title":274,"path":275,"stem":276},"What makes Mixed Reality the next big thing?","\u002Fblog\u002Fwhat-makes-mixed-reality-the-next-big-thing","blog\u002FWhat makes Mixed Reality the next big thing",{"title":278,"path":279,"stem":280},"Why Game Engines?","\u002Fblog\u002Fwhy-game-engines","blog\u002FWhy Game Engines",{"title":282,"path":283,"stem":284},"Why we need User Experience Design?","\u002Fblog\u002Fwhy-we-need-user-experience-design","blog\u002FWhy we need User Experience Design",false,{"id":287,"title":50,"author":288,"body":292,"date":352,"description":353,"extension":354,"image":355,"meta":356,"minRead":357,"navigation":358,"path":51,"seo":359,"stem":52,"__hash__":360},"blog\u002Fblog\u002FBlockchains - How and Why.md",{"name":289,"avatar":290},"Aghil Jose",{"src":291,"alt":289},"\u002Fassets\u002Fimages\u002Fabout.jpg",{"type":293,"value":294,"toc":346},"minimark",[295,299,302,305,308,311,314,317,320,323,326,329,332,335,338,343],[296,297,298],"p",{},"Blockchains are incredibly popular nowadays. But what is a blockchain? How do\nthey work, what problems do they solve and how can they be used?",[296,300,301],{},"Like the name indicates, a blockchain is a chain of blocks that contains\ninformation. This technique was originally described in 1991 by a group of\nresearchers and was originally intended to timestamp digital documents so that\nit’s not possible to backdate them or to tamper with them. Almost like a\nnotary. However, it went by mostly unused until it was adapted by Satoshi\nNakamoto in 2009 to create the digital cryptocurrency Bitcoin.",[296,303,304],{},"A blockchain is a distributed ledger that is completely open to anyone. They\nhave an interesting property: once some data has been recorded inside a\nblockchain, it becomes very difficult to change it.",[296,306,307],{},"So how does that work?",[296,309,310],{},"Well, let’s take a closer look at a block. Each block contains some data, the\nhash of the block and the hash of the previous block. The data that is stored\ninside a block depends on the type of blockchain.",[296,312,313],{},"The Bitcoin blockchain for example stores the details about a transaction,\nsuch as the sender, receiver and amount of coins.",[296,315,316],{},"A block also has a hash. You can compare a hash to a fingerprint. It\nidentifies a block and all of its contents and it's always unique, just as a\nfingerprint.",[296,318,319],{},"Once a block is created, its hash is being calculated. Changing something\ninside the block will cause the hash to change. So, in other words: hashes are\nvery useful when you want to detect changes to blocks. If the fingerprint of a\nblock changes, it no longer is the same block.",[296,321,322],{},"The third element inside each block is the hash of the previous block. This\neffectively creates a chain of blocks and it’s this technique that makes a\nblockchain so secure.",[296,324,325],{},"Let's take an example. Let’s assume, we have a chain of 3 blocks. Each block\nhas a hash and the hash of the previous block. So, block number 3 points to\nblock number 2 and number 2 points to number 1. Now the first block is a bit\nspecial, it cannot point to previous blocks because it's the first one. We\ncall this the genesis block. Now let's say that you tamper with the second\nblock. This causes the hash of the block to change as well. In turn that will\nmake block 3 and all following blocks invalid because they no longer store a\nvalid hash of the previous block. So, changing a single block will make all\nfollowing blocks invalid.",[296,327,328],{},"But using hashes is not enough to prevent tampering. Computers these days are\nvery fast and can calculate hundreds of thousands of hashes per second. You\ncould effectively tamper with a block and recalculate all the hashes of other\nblocks to make your blockchain valid again. So, to mitigate this, blockchains\nhave something called proof-of-work. It's a mechanism that slows down the\ncreation of new blocks. In Bitcoins case: it takes about 10 minutes to\ncalculate the required proof-of-work and add a new block to the chain. This\nmechanism makes it very hard to tamper with the blocks, because if you tamper\nwith 1 block, you'll need to recalculate the proof-of-work for all the\nfollowing blocks.",[296,330,331],{},"So, the security of a blockchain comes from its creative use of hashing and\nthe proof-of-work mechanism. But there is one more way that blockchains secure\nthemselves and that's by being distributed.",[296,333,334],{},"Instead of using a central entity to manage the chain, blockchains use a\npeer-to-peer network and anyone is allowed to join. When someone joins this\nnetwork, he gets the full copy of the blockchain. The node can use this to\nverify that everything is still in order. Now let's see what happens when\nsomeone creates a new block. That new block is send to everyone on the\nnetwork. Each node then verifies the block to make sure that it hasn't been\ntampered with. If everything checks out, each node adds this block to their\nown blockchain. All the nodes in this network create consensus. They agree\nabout what blocks are valid and which aren't. Blocks that are tampered with\nwill be rejected by other nodes in the network. So, to successfully tamper\nwith a blockchain you'll need to tamper with all blocks on the chain, redo the\nproof-of-work for each block and take control of more than 50% of the\npeer-to-peer network. Only then will your tampered block become accepted by\neveryone else. This is almost impossible to do!",[296,336,337],{},"Blockchains are also constantly evolving. One of the more recent developments\nis the creation of smart contracts. These contracts are simple programs that\nare stored on the blockchain and can be used to automatically exchange coins\nbased on certain conditions.",[339,340,342],"h3",{"id":341},"the-creation-of-blockchain-technology-peaked-a-lot-of-peoples-interest-soon-others-realized-that-the-technology-could-be-used-for-other-things-like-storing-medical-records-creating-a-digital-notary-or-even-collecting-taxes","The creation of blockchain technology peaked a lot of people’s interest. Soon, others realized that the technology could be used for other things like storing medical records, creating a digital notary or even collecting taxes.",[296,344,345],{},"Disclaimer : The views and opinions expressed in the article belong solely to\nthe author, and not necessarily to the author's employer, organisation,\ncommittee or other group or individual.",{"title":347,"searchDepth":348,"depth":348,"links":349},"",2,[350],{"id":341,"depth":351,"text":342},3,"2020-11-22","The basic structure and functioning of the blockchains.","md","\u002Fassets\u002Fimages\u002Fblog\u002F221120\u002Ftitle.jpg",{},5,true,{"title":50,"description":353},"oNUgsH7nomrTTgIpXhTeRnDAy9pTz-NtHl52LrvINaw",[362,365],{"path":63,"title":62,"description":363,"date":364},"How does a computer see the world","2020-11-29",{"path":115,"title":114,"description":366,"date":367},"The fourth industrial revolution.","2020-11-15",1790439209244]