Giter Club home page Giter Club logo

blockchain's Introduction

Blockchain

This is an example blockchain project written in Java.

Blocks are created and given a hash identifier, using a randomly generated magic number and hashing algorithm. A block also contains the hash of the previous block, so altering the blockchain becomes harder as anyone attempting to do so needs to generate a new magic number and hash but not only for the current block but all previous blocks, otherwise the blockchain becomes invalid.

To create a proof of work concept, a magic number is generated before the Block object is hashed, and a condition of n zeroes prefixed to the hash must be met before the hash is accepted. This in effect means it is impossible to alter a block in the Blockchain as new blocks are added faster than it would be possible to alter the entire blockchain if tampering with a individual block.

Blockchain Messenger

A Java Swing GUI client that sends transactions to a server, using a Socket endpoint, which is generating blocks for the blockchain. This messenger uses digital signatures to authenticate communication. Public and private keys are generated using RSA cryptosystem. The public key is sent to the server, which it uses to decrypt the private key encrypted transaction before adding the transaction to the block being generated.

Coin Messenger

blockchain's People

Contributors

siaust avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.