No project description provided
Project description
correcthorsebatterystaple
this: http://xkcd.com/936/
You can try it out at https://correcthorsebatterystaple.waynewerner.com
I don't log which passwords I generate, but if you're paranoid about security you probably should just generate the passwords locally.
This project started off using Flask. Then I realized that was overkill. I decdied to make this server be able to run with pure Python, because there's literally no reason not to.
The easiest way to try it out for yourself:
python3 -m pip install --user chbs
Then you can run:
chbs -h
And that should tell you everything you need to know.
Or, clone this repo and run:
python3 chbs/server.py
And then connect to it:
$ curl localhost:8000
correct horse battery staple$
Yeah. It won't return an ending newline. That's intentional.
I also decided that for funsies I should make this into a test. What is the difference between just:
- Single threaded server.
- A server using
select
. - A server using
epoll
. - A multithreaded server.
- A server using asyncio.
- A server using an aiohttp server.
My theory is that a single threaded server should be about as good as it gets. Or possibly using epoll or select? Given the size of the data that we're returning, I don't think that I'll get a lot of difference between any of these servers. We shall see.
The first server that I will produce will be just a single threaded server
using raw sockets and listen(20)
. That seems like a reasonably large queue?
To be honest, I'm not entirely certain how that works - in the past I've used
huge numbers or smaller numbers and didn't really see a difference.
CHANGELOG
0.2.2 - 2021-11-05
Fixed
- Moved wordlists to the server.py because pip installs weren't working right.
0.2.0 - 2020-10-28
Added
--one
flag for creating a single passphrase on the command line.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file chbs-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: chbs-0.2.2-py3-none-any.whl
- Upload date:
- Size: 48.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e48b4111499f3fc1417606827fcd74c595fcc889920788a7e71b5914879df12e |
|
MD5 | e9c4a235f2e132117db2b67d7c29db68 |
|
BLAKE2b-256 | 283677437c548276e9a4eda67c538c31b4e992d5d30e3cb44545ab1418f8fa44 |