Skip to content

Commit 3e84c99

Browse files
committed
Adding additional docs
1 parent 90d5c8d commit 3e84c99

File tree

6 files changed

+57
-39
lines changed

6 files changed

+57
-39
lines changed

.github/workflows/docs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ jobs:
1818
- name: Install dependencies
1919
run: |
2020
python -m pip install --upgrade pip
21-
pip install mkdocs markdown-callouts mkdocs-material
21+
pip install mkdocs
22+
pip3 install $(mkdocs get-deps)
2223
sudo apt-get update
2324
sudo apt-get install -y lftp
2425

doc/README.md

Lines changed: 15 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,20 @@
1-
# Hashtopolis
1+
# Documentation Development
22

3-
> [!CAUTION]
4-
> This is a new page that will be used for documentation. It is work in progress, so use with care!
3+
This page describes howto use the documentation locally or how to contribute to it.
54

5+
## Setup
66

7+
1. Make sure you are in the root of the server project and setup a virtual enviroment there.
8+
2. Install mkdocs
9+
3. Install required mkdocs extensions
10+
4. Start the server
11+
5. Browse to http://127.0.0.1:8000
712

8-
## Hashtopolis Protocol
9-
10-
The current up-to-date protocol version which Hashtopolis uses to communicate with clients is contained in the `protocol.pdf` file.
11-
The documentation for the User API can be found in `user-api/user-api.pdf`, listing all functions which can be called.
12-
13-
## Generic Crackers
14-
15-
Custom crackers which should be able to get distributed with Hashtopolis need to fulfill some minimal requirements as command line options. Shown here with the help function of a generic example implementation (which is available [here](https://github.com/hashtopolis/generic-cracker)):
16-
17-
```
18-
cracker.exe [options] action
19-
Generic Cracker compatible with Hashtopolis
20-
21-
Options:
22-
-m, --mask <mask> Use mask for attack
23-
-w, --wordlist <wordlist> Use wordlist for attack
24-
-a, --attacked-hashlist <hashlist> Hashlist to attack
25-
-s, --skip <skip> Keyspace to skip at the beginning
26-
-l, --length <length> Length of the keyspace to run
27-
--timeout <seconds> Stop cracking process after fixed amount of time
28-
29-
Arguments:
30-
action Action to execute ('keyspace' or 'crack')
31-
```
32-
33-
`-m` and `-w` are used to specify the type of attack, but these options are not mandatory to look like this.
34-
35-
Please note that not all Hashtopolis clients are compatible with generic cracker binaries (check their README) and if there are slight differences in the cracker compared to the generic requirements there might be changes required on the client to adapt to another handling schema.
36-
37-
## Slow Algorithms
38-
39-
To extract all Hashcat modes which are flagged as slow hashes, following command can be run inside the hashcat directory:
40-
41-
```
42-
grep -Hr SLOW_HASH src/modules/ | cut -d: -f1 | sort | cut -d'.' -f1 | sed 's/src\/modules\/module_[0]\?//g'
13+
``` bash
14+
cd hashtopolis
15+
virtualenv venv
16+
source venv/bin/activate
17+
pip3 install mkdocs
18+
pip3 install $(mkdocs get-deps)
19+
mkdocs server
4320
```

doc/advanced.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Advanced usage
2+
3+
## Generic Crackers
4+
5+
Custom crackers which should be able to get distributed with Hashtopolis need to fulfill some minimal requirements as command line options. Shown here with the help function of a generic example implementation (which is available [here](https://github.com/hashtopolis/generic-cracker)):
6+
7+
```
8+
cracker.exe [options] action
9+
Generic Cracker compatible with Hashtopolis
10+
11+
Options:
12+
-m, --mask <mask> Use mask for attack
13+
-w, --wordlist <wordlist> Use wordlist for attack
14+
-a, --attacked-hashlist <hashlist> Hashlist to attack
15+
-s, --skip <skip> Keyspace to skip at the beginning
16+
-l, --length <length> Length of the keyspace to run
17+
--timeout <seconds> Stop cracking process after fixed amount of time
18+
19+
Arguments:
20+
action Action to execute ('keyspace' or 'crack')
21+
```
22+
23+
`-m` and `-w` are used to specify the type of attack, but these options are not mandatory to look like this.
24+
25+
Please note that not all Hashtopolis clients are compatible with generic cracker binaries (check their README) and if there are slight differences in the cracker compared to the generic requirements there might be changes required on the client to adapt to another handling schema.
26+
27+
## Slow Algorithms
28+
29+
To extract all Hashcat modes which are flagged as slow hashes, following command can be run inside the hashcat directory:
30+
31+
```
32+
grep -Hr SLOW_HASH src/modules/ | cut -d: -f1 | sort | cut -d'.' -f1 | sed 's/src\/modules\/module_[0]\?//g'
33+
```

doc/assets/images/logo.png

54.5 KB
Loading

doc/index.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Hashtopolis documentation
2+
3+
> [!CAUTION]
4+
> This is the new documentation of Hashtopolis. It is work in progress, so use with care!
5+
6+
You can find the old documentation still inside this folder, please check the [Hashtopolis Communication Protocol (V2)](protocol.pdf) docs. The user api documentation can be found here: [Hashtopolis User API (V1)](user-api/user-api.pdf).

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ repo_url: https://github.com/hashtopolis/server
44
docs_dir: doc
55
theme:
66
name: material
7+
logo: assests/images/logo.png
78
edit_uri: blob/docs/doc/ # Edit the URL to the static branch and folder
89
markdown_extensions:
910
- github-callouts # Add the ability of notes, warnings, etc.

0 commit comments

Comments
 (0)