Metadata-Version: 2.1
Name: libkosciuszko
Version: 0.1.0
Summary: Library for managing kosciuszko vaults
Home-page: https://git.sr.ht/~happy_shredder
Author: happy_shredder
Author-email: contact@etage.io
License: UNKNOWN
Description: # libkosciuszko
        
        kosciuszko is a simple vault for storing secrets on GNU/Linux. It is heavily inspired by [encnote](https://git.sr.ht/~shakna/encnote).
        
        This lib implements all basic features. See also [kosciuszko-utils](https://git.sr.ht/~happy_shredder/kosciuszko-utils) for CLI interfaces.
        
        # Rationale
        
        All existing approaches to storing arbitrary secrets on Linux are shit. kosciuszko is a general purpose vault which supercedes all existing approaches. It uses standard technologies and so can easily be implemented in e.g. shell or any arbitrary language.
        
        ## Method
        Unsecured secrets are stored in a directory. This directory is then folded into a squashfs, and then encrypted with a GPG key.
        To access secrets, the process is simply reversed.
        
        # Usage
        
        Import with `python3 -m pip install --user libkosciuszko`. Create a kosciuszko object with
        
        ```{.python}
        gpg_id = "example@example.com"	# Email, key name, key ID etc
        store = "example.kos"			# Filename
        kosciuszko = Kosciuszko(gpg_id, store)
        ```
        
        There are several core methods.
        
        ```{.python}
        kosciuszko.new() 					# Initialise a new store
        ls = kosciuszko.list() 				# List contents of a store, either in machine friendly or user-friendly formats (detailed=True flag)
        kosciuszko.addfile(filename, data) 	# Add a file called filename, containing data `data` (bytes)
        kosciuszko.getfile(filename) 		# Retrieve file called filename
        ```
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Operating System :: POSIX :: Linux
Classifier: Topic :: Security :: Cryptography
Requires-Python: >=3.7
Description-Content-Type: text/markdown
