# SecureCredentials
SecureCredentials is a lightweight Python package designed to securely store key-value pairs, such as passwords
or other sensitive information, on disk. By leveraging strong encryption, the package ensures that your sensitive
data remains safe while providing convenient access for everyday use.
## Why SecureCredentials Was Created
This package was created to address two common challenges faced by developers:
1. **Avoid storing sensitive credentials in plaintext:** It is unsafe for developers to store credentials such as
database passwords, Active Directory passwords, and API keys in plaintext within their scripts or configuration files.
2. **Eliminate the need to repeatedly enter passwords:** Developers often have to enter their credentials every
time they run a script, which can be cumbersome and error-prone. SecureCredentials allows for automatic retrieval
of encrypted credentials, eliminating the need to type them each time.
## Key Features
- **AES-128 Encryption**: Leverages the industry-standard 128-bit AES algorithm to ensure your data is encrypted
and safe.
- **Local Security**: The AES key and encrypted data is stored locally, ensuring that no sensitive data leaves
your system.
- **Convenience**: The package streamlines the process by enabling automated, secure access to credentials, so
you do not have to store them in plaintext or type them in each time you run your scripts.
## Installation
To install SecureCredentials, run:
```bash
pip install securecredentials
```
## Usage
Below is a basic usage example:
```python
from securecredentials import SecureCredentials
# Generate & store the unique master key - This needs to be done only once.
master_key = SecureCredentials.generate_master_key()
SecureCredentials.store_master_key(unique_key=master_key)
# Encrypt and store the key-value pair on the disk for later retrieval.
SecureCredentials.set_secure(field='field_name', plaintext='my plaintext string')
# Retrieve the encrypted field as needed.
my_secure_string = SecureCredentials.get_secure(field='field_name')
print(my_secure_string)
```
## Dependencies
SecureCredentials requires the following Python libraries:
- **cryptography:** For encryption and decryption.
- **python-dotenv:** To manage environment variables.
## License
SecureCredentials is licensed under the Apache License Version 2.0. See the [LICENSE](LICENSE) file for details.
## Contributing
Contributions are welcome! Feel free to open an issue or submit a pull request for improvements or feature requests.
## Support
If you encounter issues or have questions, please open an issue in the [GitHub repository](https://github.com/rohitlal125555/securecredentials/issues).
Raw data
{
"_id": null,
"home_page": null,
"name": "securecredentials",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.4",
"maintainer_email": null,
"keywords": "authentication, credential encryption, credential manager, cryptography, data security, encrypted credentials, encrypted store, encryption, key-value store, local encryption, password encryption, password store, python security, secure environment, secure key store, secure password management, secure storage, securecredentials, security",
"author": null,
"author_email": "Rohit Lal <rohitlal.125555@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/97/33/b22c7e0cf62fc516f5399cc05c968ba456b280e106f85d0f68c7f2958ec8/securecredentials-1.2.tar.gz",
"platform": null,
"description": "# SecureCredentials\n\nSecureCredentials is a lightweight Python package designed to securely store key-value pairs, such as passwords \nor other sensitive information, on disk. By leveraging strong encryption, the package ensures that your sensitive \ndata remains safe while providing convenient access for everyday use.\n\n## Why SecureCredentials Was Created\nThis package was created to address two common challenges faced by developers:\n\n1. **Avoid storing sensitive credentials in plaintext:** It is unsafe for developers to store credentials such as \ndatabase passwords, Active Directory passwords, and API keys in plaintext within their scripts or configuration files.\n2. **Eliminate the need to repeatedly enter passwords:** Developers often have to enter their credentials every \ntime they run a script, which can be cumbersome and error-prone. SecureCredentials allows for automatic retrieval \nof encrypted credentials, eliminating the need to type them each time.\n\n## Key Features\n\n- **AES-128 Encryption**: Leverages the industry-standard 128-bit AES algorithm to ensure your data is encrypted \nand safe.\n- **Local Security**: The AES key and encrypted data is stored locally, ensuring that no sensitive data leaves \nyour system.\n- **Convenience**: The package streamlines the process by enabling automated, secure access to credentials, so \nyou do not have to store them in plaintext or type them in each time you run your scripts.\n\n## Installation\n\nTo install SecureCredentials, run:\n\n```bash\npip install securecredentials\n```\n\n## Usage\n\nBelow is a basic usage example:\n\n```python\nfrom securecredentials import SecureCredentials\n\n# Generate & store the unique master key - This needs to be done only once. \nmaster_key = SecureCredentials.generate_master_key()\nSecureCredentials.store_master_key(unique_key=master_key)\n\n# Encrypt and store the key-value pair on the disk for later retrieval.\nSecureCredentials.set_secure(field='field_name', plaintext='my plaintext string')\n\n# Retrieve the encrypted field as needed.\nmy_secure_string = SecureCredentials.get_secure(field='field_name')\nprint(my_secure_string)\n```\n\n## Dependencies\n\nSecureCredentials requires the following Python libraries:\n\n- **cryptography:** For encryption and decryption.\n- **python-dotenv:** To manage environment variables.\n\n## License\n\nSecureCredentials is licensed under the Apache License Version 2.0. See the [LICENSE](LICENSE) file for details.\n\n## Contributing\n\nContributions are welcome! Feel free to open an issue or submit a pull request for improvements or feature requests.\n\n## Support\n\nIf you encounter issues or have questions, please open an issue in the [GitHub repository](https://github.com/rohitlal125555/securecredentials/issues).\n\n",
"bugtrack_url": null,
"license": null,
"summary": "SecureCredentials is a lightweight Python package that encrypts and securely stores key-value pairs on disk, enabling easy and secure retrieval.",
"version": "1.2",
"project_urls": {
"Homepage": "https://github.com/rohitlal125555/securecredentials",
"Issues": "https://github.com/rohitlal125555/securecredentials/issues"
},
"split_keywords": [
"authentication",
" credential encryption",
" credential manager",
" cryptography",
" data security",
" encrypted credentials",
" encrypted store",
" encryption",
" key-value store",
" local encryption",
" password encryption",
" password store",
" python security",
" secure environment",
" secure key store",
" secure password management",
" secure storage",
" securecredentials",
" security"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c0b575221384bba8baba47df0f54e8a9e2b19a4de51d45593748fe462bbaa7a0",
"md5": "897870e700f7d86673de607bb32f1a19",
"sha256": "2ef4f1df9f6c637d8d76a9eeaa5354d1b5b8ea1cce24d7cff61609bf5bea5d97"
},
"downloads": -1,
"filename": "securecredentials-1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "897870e700f7d86673de607bb32f1a19",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.4",
"size": 9327,
"upload_time": "2025-01-11T13:56:57",
"upload_time_iso_8601": "2025-01-11T13:56:57.557564Z",
"url": "https://files.pythonhosted.org/packages/c0/b5/75221384bba8baba47df0f54e8a9e2b19a4de51d45593748fe462bbaa7a0/securecredentials-1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9733b22c7e0cf62fc516f5399cc05c968ba456b280e106f85d0f68c7f2958ec8",
"md5": "90c48f776b9e1516e15a0c6898641053",
"sha256": "636336bb1f3793664a2c12c6e0b34941250a17e5abf5c568296a4c7ebb68a99c"
},
"downloads": -1,
"filename": "securecredentials-1.2.tar.gz",
"has_sig": false,
"md5_digest": "90c48f776b9e1516e15a0c6898641053",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.4",
"size": 8823,
"upload_time": "2025-01-11T13:57:00",
"upload_time_iso_8601": "2025-01-11T13:57:00.018594Z",
"url": "https://files.pythonhosted.org/packages/97/33/b22c7e0cf62fc516f5399cc05c968ba456b280e106f85d0f68c7f2958ec8/securecredentials-1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-11 13:57:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "rohitlal125555",
"github_project": "securecredentials",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "securecredentials"
}