Metadata-Version: 2.1
Name: armour
Version: 1.3.2
Summary: password securing, management and generation tools
Home-page: https://ari-web.xyz/gh/armour
Author: Ari Archer
Author-email: ari.web.xyz@gmail.com
License: GPLv3+
Project-URL: Bug Tracker, https://ari-web.xyz/gh/armour/issues
Project-URL: Documentation, https://ari-web.xyz/gh/armour/tree/main/doc
Project-URL: Source Code, https://ari-web.xyz/gh/armour
Keywords: password,pwd,zstd,cryptography,crypto,hash,hashing,sha,blake,struct,md,sha3,rc4,binary,password generator,password manager,password info,entropy,database
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Database
Classifier: Topic :: File Formats
Classifier: Topic :: Security
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cryptography
Requires-Dist: zstd

# armour

> password securing, management and generation tools

# userland tools

see [pwdtools](https://ari.lt/gh/pwdtools)

```sh
pip install pwdtools
````

these tools use the `armour` library for user interaction, armour is just a library,
pwdtools, on the other hand, provides cli interface with this library such as `pwdgen` for
password generation and so on, source

# proof

i've used armour in multiple projects already and i can say that armour is a great library
for generating secure human-readable secrets and stuff like that with high security and entropy,
and also keeping it shorter than just 10000 chars long

it is provably better than cryptographically secure bytes + base85 encoding, b85 has more
characters and cryptographically secure bytes should be very random and unpredictable,
i've even made a script to demonstrate that :

```
armour 1483 72.412109375
b85_shuf 272 13.28125
b85_norm 293 14.306640625

winner is armour with score 1483 or 72.412109375 percent of the wins
```

script is located at [tests/proof.py](/tests/proof.py), it tests password strengths for same length passwords
( by default 2048 runs and 2048 character length passwords )

# magic file

magic file is used by `file` cmd to get metadata about a file, if u want that, use `scripts/gen_magic.py` script

# xdg mime file

located at [/scripts/application-pdb.xml](/scripts/application-pdb.xml)

# documentation

see the [/doc/](/doc/) folder
