{"id":24564811,"url":"https://github.com/uzziellite/encryption_service","last_synced_at":"2025-03-17T01:44:27.651Z","repository":{"id":273322960,"uuid":"919319287","full_name":"uzziellite/encryption_service","owner":"uzziellite","description":"Encrypt all data for enhanced security","archived":false,"fork":false,"pushed_at":"2025-01-20T07:21:02.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-20T08:26:17.130Z","etag":null,"topics":["encryption-decryption","python","security"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uzziellite.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-20T07:12:10.000Z","updated_at":"2025-01-20T07:22:07.000Z","dependencies_parsed_at":"2025-01-20T08:36:40.495Z","dependency_job_id":null,"html_url":"https://github.com/uzziellite/encryption_service","commit_stats":null,"previous_names":["uzziellite/encryption_service"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzziellite%2Fencryption_service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzziellite%2Fencryption_service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzziellite%2Fencryption_service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzziellite%2Fencryption_service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uzziellite","download_url":"https://codeload.github.com/uzziellite/encryption_service/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243960440,"owners_count":20375101,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["encryption-decryption","python","security"],"created_at":"2025-01-23T11:29:34.237Z","updated_at":"2025-03-17T01:44:27.634Z","avatar_url":"https://github.com/uzziellite.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Secure Messages\n\nA secure and versatile encryption package for Python applications, including Django support, providing robust 4096-bit RSA encryption and AES-256 for secure message encryption.\n\n## Installation\n\nInstall the package via pip:\n\n```bash\npip install git+https://github.com/uzziellite/encryption_service.git\n```\n\n## Quick Start\n\n### Encrypt and Decrypt Messages\n\n```python\nfrom encryption_service import EncryptionService\n\n# Initialize the encryption service\nencryption_service = EncryptionService()\n\n# Encrypt a message\nencrypted_data = encryption_service.encrypt_message(\"Secret message\")\n\n# Decrypt the message\ndecrypted_message = encryption_service.decrypt_message(encrypted_data)\n\nprint(\"Encrypted:\", encrypted_data)\nprint(\"Decrypted:\", decrypted_message)\n```\n\n### Key Management Example\n\n```python\nfrom encryption_service.key_manager import KeyManager\n\n# Initialize the key manager\nkey_manager = KeyManager()\n\n# Generate and save new keys\nprivate_key = key_manager.load_private_key()\npublic_key = key_manager.load_public_key()\n\nprint(\"Private Key:\", private_key)\nprint(\"Public Key:\", public_key)\n```\n\n## Features\n\n- **4096-bit RSA Encryption**: Asymmetric encryption for secure key exchanges.\n- **AES-256 Symmetric Encryption**: Ensures fast and secure data encryption.\n- **Secure Key Management**: Handles key generation, storage, and retrieval securely.\n- **Environment-Based Configuration**: Flexible configuration for diverse environments.\n- **Broad Compatibility**: Works seamlessly with any Python module or framework, including Django.\n\n## Configuration\n\n### Environment Variables\n\n- **`ENCRYPTION_KEY_PATH`**: Directory path to store encryption keys (default: `~/.secure/django_keys`).\n- **`ENCRYPTION_KEY_PASSWORD`**: Password for encrypting private keys (optional).\n\n### Django Integration\n\nIf using Django, add the following to your `settings.py`:\n\n```python\nimport os\n\nBASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))\n\nENCRYPTION_SERVICE_SETTINGS = {\n    'KEY_PATH': os.path.join(BASE_DIR, 'keys'),\n    'KEY_PASSWORD': os.environ.get('ENCRYPTION_KEY_PASSWORD', None),\n}\n```\n\n## Installation Requirements\n\n- Python 3.8+\n- `cryptography` library (automatically installed with this package)\n\nOptional:\n- Django 3.2+ for Django-specific features.\n\n## Testing\n\nRun unit tests using:\n\n```bash\npytest\n```\n\n## Contributing\n\nContributions are welcome! Please follow these steps:\n\n1. Fork the repository.\n2. Create a new feature branch.\n3. Commit your changes with clear messages.\n4. Submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.\n\n## Support\n\nFor questions or support, contact [Uzziel Kibet](mailto:uzzielkk@gmail.com).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuzziellite%2Fencryption_service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuzziellite%2Fencryption_service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuzziellite%2Fencryption_service/lists"}