Skip to content
This repository has been archived by the owner on Aug 19, 2023. It is now read-only.

04 Distributed Cracking

i128 edited this page Oct 20, 2017 · 1 revision

WIP

Distributed Cracking

Warning! distributed support is very ALPHA

Hashview supports chunking based off of given keyspace interval (chunk size) that the user sets in the settings menu (default is 500,000). Currently Hashview makes static chunks and does not scale chunk size per performance or number of agents.

When a new task is created the keyspace is calculated. If the chunk size is less than the keyspace the task will be chunked when placed on the queue.

Networking Requirements

Agents heartbeat to the master server where your full install of Hashview is located. You'll need inbound port 4567 traffic for agents to communicate.

Deploying Agents

  1. Clone the hashview-agent repo

    git clone https://github.com/hashview/hashview-agent

  2. Install gems

    gem install bundler bundle install

  3. Provision the agent

    RACK_ENV=production rake provision_remote_agent

    A new configuration file will be generated at config/agent_config.json. Note the UUID for the agent is generated at this time. This UUID should be treated similar to an API key.

  4. Define your master server by IP (where the full install of Hashview is located) and path to your hashcat binary. Example config below:

{
  "master_ip": "192.168.1.1",
  "port": "4567",
  "uuid": "31c4ec48-e7b1-1af9-b1b0-7e1d77c57928",
  "hc_binary_path": "/home/meatball/hashcat-3.30/hashcat64.bin"
}
  1. Start the agent

    RACK_ENV=production ruby agent.rb

  2. Verify you see the hearbeats on your master instance under the "Agents" menu. A status of 'Pending' will exist until you've authorized the agent to join the cluster. Once Authorized, the agent will take tasks off the queue and hearbeat with its hashcat status.

Happy Cracking!