Building a Block Chain and Peer Network

Project

Amidst our mid semester break, came the news of the international breakout of the Corona Virus. Many of us were wasting their time in useless activites. Soon the SnT Council announced the Summer Projects of various clubs and societies. I chose Advanced Competitve Programming and Block Chain. We leave the first for another time.

In the beginning I started coding in Python , the simple mining assignment that were given to us as subtasks. However, slowly I realised I must choose a Language and stick. I felt an innate dispositon to Java. Java;s rigid structure appeals to me more than the structure of python. It just is amazing to code and implement OOP programs in. The project lasted for around 3 months and taught me a lot of things.

  1. It is diffcult to implement RSA PSS Signature in Java (One must use external BouncyCastle Dependecy.)
  2. Concurrency causes a lot of problems in case of shared data.
  3. Multithreading is a very deep and interesting topic.
  4. Synchronized keyword usage in Java to lock variables while changing them.
  5. I learnt how to implement a Http Server in Java and use it to do almost anything that I want
  6. I learnt to use ngrok to tunnel myself to the internet.
  7. Real meaning of throw, throws, try and catch
  8. Also learned how to make a maven jar of a Java Project with a particular main class and all dependecies in the jar included.
  9. Learned how to delete folder on a github project.
  10. I leanrnt a lot about Block Chains and how they function.
comments powered by Disqus