Some python scrips for demonstrating chap protocol
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
dragonskills99 a90a9f9d4b Adding readme file 5 лет назад
.gitignore Initial commit 5 лет назад
LICENSE Initial commit 5 лет назад
README.md Adding readme file 5 лет назад
chap-client.py client workflow can now work with session-ids 5 лет назад
chap-server.py client workflow can now work with session-ids 5 лет назад

README.md

CHAP

This are two little python scripts to demonstrate the CHAP workflow. One script is serving and the other fetching.

Presets

  • Python 3

Usage

To use just first start the server and then the client script

Internal workings

The server script will the serve a XMLRPC server with 4 endpoints on Port 8000 at localhost (the local machine) :

  • init(): [ session_id: uuid, seed: uuid ]

This endpoint will start a new session and send you the id and seed of this new session

  • auth( session_id: uuid, password_hash: string): bool

This endpoint requires the session id and your password hash generated from the password concatenated with the seed and hashed using sha256 It will return whether the password is correct and you are authorized and set you as authorized in the server instance

  • logout( session_id: uuid, password_hash: string): bool

This endpoint requires the session id and your password hash generated from the password concatenated with the seed and hashed using sha256 It will destroy the session and return you if it worked (should always return true)

  • hello(): string

This endpoint will return a string with a hello message if you are authorized and a denial message otherwise

Note: uuid is not a the DataType but a string in uuid format

The client script will then establish a connection, initialize a session, successfully authorize itself, print the return value from hello method and finally destroy the session.