sqlitesec


Namesqlitesec JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummarySecure SQLite databases with AES-256 encryption
upload_time2025-07-27 09:30:44
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords sqlite encryption security database aes
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # SqliteSec

**Secure SQLite databases with AES-256 encryption**

SqliteSec protects your SQLite databases by encrypting them with industry-standard AES-256 encryption. Share sensitive data safely or work with confidential information without compromising security.

## Installation

```bash
pip install sqlitesec
```

## Features

- **AES-256 encryption** - Military-grade security for your databases
- **Seamless integration** - Drop-in replacement for standard SQLite connections
- **Automatic encryption/decryption** - Transparent operation with your existing code
- **Secure file sharing** - Safely send encrypted databases to others

## Quick Start

```python
from sqlitesec import SqliteSec
import os

# Initialize with your encryption key
key = os.urandom(32)  # Generate a secure 256-bit key
sqs = SqliteSec(key)

# Create and use encrypted database
conn = sqs.connect("secure.db")
cursor = conn.cursor()

# Standard SQLite operations work normally
cursor.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cursor.execute('INSERT INTO users (name) VALUES (?)', ('Alice',))
conn.commit()

# Always close properly to ensure encryption
sqs.close(conn, "secure.db")
```

## Reading Encrypted Data

```python
# Reconnect and read data
conn = sqs.connect("secure.db")
cursor = conn.cursor()

cursor.execute('SELECT name FROM users WHERE id = 1')
user_name = cursor.fetchone()[0]
print(f"User: {user_name}")

sqs.close(conn, "secure.db")
```

## API Reference

### `SqliteSec(key)`
Initialize with encryption key (32 bytes for AES-256).

### `connect(database_path)`
Open encrypted database connection. Returns standard SQLite connection object.

### `close(connection, database_path)`
Properly close connection and ensure data is encrypted.

---

**Security Note**: Always use a strong, randomly generated key and store it securely.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "sqlitesec",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "John Doe <pypideveloperaccount.rejoicing466@passmail.net>",
    "keywords": "sqlite, encryption, security, database, aes",
    "author": null,
    "author_email": "John Doe <pypideveloperaccount.rejoicing466@passmail.net>",
    "download_url": "https://files.pythonhosted.org/packages/20/dd/ece590b9d0942ddc86c568b3544ef90b4e0ca4fc1477cc9ef27f03f13a96/sqlitesec-1.0.0.tar.gz",
    "platform": null,
    "description": "# SqliteSec\n\n**Secure SQLite databases with AES-256 encryption**\n\nSqliteSec protects your SQLite databases by encrypting them with industry-standard AES-256 encryption. Share sensitive data safely or work with confidential information without compromising security.\n\n## Installation\n\n```bash\npip install sqlitesec\n```\n\n## Features\n\n- **AES-256 encryption** - Military-grade security for your databases\n- **Seamless integration** - Drop-in replacement for standard SQLite connections\n- **Automatic encryption/decryption** - Transparent operation with your existing code\n- **Secure file sharing** - Safely send encrypted databases to others\n\n## Quick Start\n\n```python\nfrom sqlitesec import SqliteSec\nimport os\n\n# Initialize with your encryption key\nkey = os.urandom(32)  # Generate a secure 256-bit key\nsqs = SqliteSec(key)\n\n# Create and use encrypted database\nconn = sqs.connect(\"secure.db\")\ncursor = conn.cursor()\n\n# Standard SQLite operations work normally\ncursor.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')\ncursor.execute('INSERT INTO users (name) VALUES (?)', ('Alice',))\nconn.commit()\n\n# Always close properly to ensure encryption\nsqs.close(conn, \"secure.db\")\n```\n\n## Reading Encrypted Data\n\n```python\n# Reconnect and read data\nconn = sqs.connect(\"secure.db\")\ncursor = conn.cursor()\n\ncursor.execute('SELECT name FROM users WHERE id = 1')\nuser_name = cursor.fetchone()[0]\nprint(f\"User: {user_name}\")\n\nsqs.close(conn, \"secure.db\")\n```\n\n## API Reference\n\n### `SqliteSec(key)`\nInitialize with encryption key (32 bytes for AES-256).\n\n### `connect(database_path)`\nOpen encrypted database connection. Returns standard SQLite connection object.\n\n### `close(connection, database_path)`\nProperly close connection and ensure data is encrypted.\n\n---\n\n**Security Note**: Always use a strong, randomly generated key and store it securely.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Secure SQLite databases with AES-256 encryption",
    "version": "1.0.0",
    "project_urls": {
        "Documentation": "https://github.com/oyvinrog/sqlitesec#readme",
        "Homepage": "https://github.com/oyvinrog/sqlitesec",
        "Issues": "https://github.com/oyvinrog/sqlitesec/issues",
        "Repository": "https://github.com/oyvinrog/sqlitesec.git"
    },
    "split_keywords": [
        "sqlite",
        " encryption",
        " security",
        " database",
        " aes"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4ba2a4d25be783c9b17b3dd40bcde72a3357a01c14babedc5b9b9492ab367460",
                "md5": "123d7a35526d550740686b8f63e9f169",
                "sha256": "e87e40084e74789576ad54646c62bf1abe008f84a12b4d6093ccb16656cfcd33"
            },
            "downloads": -1,
            "filename": "sqlitesec-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "123d7a35526d550740686b8f63e9f169",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 4489,
            "upload_time": "2025-07-27T09:30:43",
            "upload_time_iso_8601": "2025-07-27T09:30:43.041454Z",
            "url": "https://files.pythonhosted.org/packages/4b/a2/a4d25be783c9b17b3dd40bcde72a3357a01c14babedc5b9b9492ab367460/sqlitesec-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "20ddece590b9d0942ddc86c568b3544ef90b4e0ca4fc1477cc9ef27f03f13a96",
                "md5": "10a40dae0c420eb7e72561f6a2676b65",
                "sha256": "029cbd70c16bfa200eca602797f5cb4c1cce0efdeff638e2e9c539af24e716d3"
            },
            "downloads": -1,
            "filename": "sqlitesec-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "10a40dae0c420eb7e72561f6a2676b65",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 4464,
            "upload_time": "2025-07-27T09:30:44",
            "upload_time_iso_8601": "2025-07-27T09:30:44.504468Z",
            "url": "https://files.pythonhosted.org/packages/20/dd/ece590b9d0942ddc86c568b3544ef90b4e0ca4fc1477cc9ef27f03f13a96/sqlitesec-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-27 09:30:44",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "oyvinrog",
    "github_project": "sqlitesec#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "sqlitesec"
}
        
Elapsed time: 1.43450s