Metadata-Version: 2.4
Name: diamondcrypt
Version: 0.1.0
Summary: A utility library for password generation, encryption, decryption, and secure file handling.
Author-email: Graham <nametakenbroemail@proton.me>
License: DiamondCrypt License v1.0
        
        Copyright (c) 2026 Graham
        
        Permission is hereby granted to the original owner (Graham) to use,
        modify, and build upon this software for personal or private projects.
        
        The following actions are strictly prohibited:
        
        1. Selling this software or any modified version of it.
        2. Distributing this software publicly, whether for free or for profit.
        3. Hosting this software in any public repository or package index.
        4. Using this software in any commercial product or service.
        
        This software is provided "as is" without warranty of any kind,
        express or implied. The author is not liable for any damages arising
        from the use of this software.
        
        By using this software, you agree to the terms above.
        
Project-URL: homepage, https://example.com
Project-URL: repository, https://example.com
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cryptography>=42.0.0
Dynamic: license-file

```markdown

\# DiamondCrypt



DiamondCrypt is a private-use cryptography toolkit designed for secure password generation, file encryption, byte-level encryption, and general-purpose security utilities. This project is intended for personal use only and may not be sold, redistributed, or hosted publicly.



\## Features



\### Secure Password Generation

DiamondCrypt includes a strong password generator that produces 20-character passwords by default. Generated passwords include uppercase letters, lowercase letters, digits, and symbols. The generator uses Python's `secrets` module for cryptographically secure randomness.



\### Key Generation

The library provides a simple interface for generating Fernet-compatible symmetric keys. These keys can be used for both file and byte-level encryption.



\### File Encryption and Decryption

DiamondCrypt can encrypt any file into a secure binary format and decrypt encrypted files back to their original form. The encryption system is based on AES-backed Fernet encryption.



\### Byte-Level Encryption

Raw bytes can be encrypted and decrypted using the same key system. This is useful for custom data pipelines or secure in-memory operations.



\### Utility Helpers

The library includes helper functions for loading and saving raw bytes, making file operations straightforward and consistent.



\## Installation



To install DiamondCrypt locally:



```

pip install diamondcrypt

```



To build a wheel:



```

python -m build

```



\## Usage Examples



\### Generate a secure password



```python

import diamondcrypt as dc



pw = dc.generate\_password()

print(pw)

```



\### Encrypt and decrypt bytes



```python

import diamondcrypt as dc



key = dc.generate\_key()

data = b"hello world"



encrypted = dc.encrypt\_bytes(key, data)

decrypted = dc.decrypt\_bytes(key, encrypted)



print(decrypted)

```



\### Encrypt and decrypt files



```python

import diamondcrypt as dc



key = dc.generate\_key()



dc.encrypt\_file(key, "secret.txt", "secret.bin")

dc.decrypt\_file(key, "secret.bin", "secret\_out.txt")

```



\## License Notice



DiamondCrypt is licensed under a custom private-use license. You may not sell this software, distribute it, host it publicly, or use it commercially. See the LICENSE file for full details.



\## Future Plans



Planned additions include password strength scoring, hashing utilities, secure temporary file handling, optional command-line tools, and key storage helpers.



\## Author



Created by Graham, 2026.

```

