Coder Social home page Coder Social logo

distributed-cracker's Introduction

Distributed Hash Cracker

Distributed password cracker written in Golang, inspired by one of the CMU's Distributed systems course assignment. It was mainly a project to gain experience with golang.

The whole app is distributed in 3 modules:

  • Request Client: It makes hashing requests to central server.
  • Central Server: Central server handles all the main tasks, managing workers and distributing jobs.
  • Worker Client: Worker nodes perform the main computation and execute jobs received from central server.

NOTE: The project is still not complete and has some rough edges. I will try to smoothen them out as soon as possible!

How to run

Generate Binaries for all three modules by running either(in respective directory):

go build

or

go install

Running central server

./server [TCP(or Request Server) PORT] [UDP(or Worker Server) PORT]

Running request client

./requestClient [Server IP Address] [Request Server PORT] [HASH] [Length of Password]

Running worker node

./workerClient [Server IP Address] [Worker Server PORT]

Contributing

Contributions are always welcome! I will try to look at them as soon as I can. Ping me once I forget to reply. Thanks! ๐Ÿ˜„

PS: If someone has experience with distributed computing or testing apps for concurrency issues and have a minute to spare, please shoot me an email! I would love some advice!

License

This project is licensed under MIT license. View License

References

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.