Name | pysqlcipher3static JSON |
Version |
2.0.1
JSON |
| download |
home_page | None |
Summary | Python 3 bindings for SQLCipher with SQLite statically linked |
upload_time | 2024-08-01 23:00:12 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | zlib/libpng |
keywords |
sqlite
encryption
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# pysqlcipher3static
This is a fork of [pysqlcipher3](https://github.com/rigglemania/pysqlcipher3) that includes statically
linked binary wheel distributions to make it easier to install.
Install with:
```bash
pip install pysqlcipher3static
```
**Note: this project is no longer being actively maintained. Security vulnerabilities may exist in this code. Use at your own risk.**
This library is a fork of pysqlcipher targeted for use with Python 3.
It is still in the beta state, although this library contains minimal
new code and instead heavily pulls from the core Python sqlite source
code while linking against libsqlcipher.
- Small modifications for static build (c) 2024 Chris Arderne
- Python 3 packaging for SQLCipher (c) 2015 David Riggleman
- Packaging for SQLCipher (c) 2013-2014 Kali Kaneko
- Original code (c) 2004-2007 Gerhard Häring
## Usage
You have to pass the ``PRAGMA key`` before doing any operations::
```python
from pysqlcipher3 import dbapi2 as sqlite
conn = sqlite.connect('test.db')
c = conn.cursor()
c.execute("PRAGMA key='password'")
c.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')
c.execute("""insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)""")
conn.commit()
c.close()
```
## Windows build
Follow the same instructions as above except for the following:
1. Make sure that you are using OpenSSL-Win64
2. Set the PATH to the Win64 environment
3. Copy the OpenSSL folder
4. Build the amalgamation and install with the latest Python x64
## SQLCipher compatibility issues
The encryption has default compatibility with the SQLCipher version installed on your machine.
You have to execute ``PRAGMA cipher_compatibility = 3`` before doing any operations on a database encrypted with SQLCipher version 3 when a newer version is installed.
Keep in mind, you have to add ``PRAGMA cipher_compatibility`` after ``PRAGMA key``::
```python
from pysqlcipher3 import dbapi2 as sqlite
conn = sqlite.connect('test.db')
c = conn.cursor()
c.execute("PRAGMA key='password'")
c.execute("PRAGMA cipher_compatibility = 3")
c.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')
c.execute("""insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)""")
conn.commit()
c.close()
```
Raw data
{
"_id": null,
"home_page": null,
"name": "pysqlcipher3static",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "sqlite, encryption",
"author": null,
"author_email": "Chris Arderne <chris@rdrn.me>",
"download_url": "https://files.pythonhosted.org/packages/e7/ec/de7e9c3a4ffb0c7e9c6f678c3ea14e1c26bbb6bdc824f9adfcc07dfa8786/pysqlcipher3static-2.0.1.tar.gz",
"platform": null,
"description": "# pysqlcipher3static\n\nThis is a fork of [pysqlcipher3](https://github.com/rigglemania/pysqlcipher3) that includes statically\nlinked binary wheel distributions to make it easier to install.\n\nInstall with:\n```bash\npip install pysqlcipher3static\n```\n\n**Note: this project is no longer being actively maintained. Security vulnerabilities may exist in this code. Use at your own risk.**\n\nThis library is a fork of pysqlcipher targeted for use with Python 3.\nIt is still in the beta state, although this library contains minimal\nnew code and instead heavily pulls from the core Python sqlite source\ncode while linking against libsqlcipher.\n\n- Small modifications for static build (c) 2024 Chris Arderne\n- Python 3 packaging for SQLCipher (c) 2015 David Riggleman\n- Packaging for SQLCipher (c) 2013-2014 Kali Kaneko\n- Original code (c) 2004-2007 Gerhard H\u00e4ring\n\n## Usage\nYou have to pass the ``PRAGMA key`` before doing any operations::\n\n```python\nfrom pysqlcipher3 import dbapi2 as sqlite\nconn = sqlite.connect('test.db')\nc = conn.cursor()\nc.execute(\"PRAGMA key='password'\")\nc.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')\nc.execute(\"\"\"insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)\"\"\")\nconn.commit()\nc.close()\n```\n\n## Windows build\nFollow the same instructions as above except for the following:\n1. Make sure that you are using OpenSSL-Win64\n2. Set the PATH to the Win64 environment\n3. Copy the OpenSSL folder\n4. Build the amalgamation and install with the latest Python x64\n\n## SQLCipher compatibility issues\nThe encryption has default compatibility with the SQLCipher version installed on your machine.\nYou have to execute ``PRAGMA cipher_compatibility = 3`` before doing any operations on a database encrypted with SQLCipher version 3 when a newer version is installed.\nKeep in mind, you have to add ``PRAGMA cipher_compatibility`` after ``PRAGMA key``::\n\n```python\nfrom pysqlcipher3 import dbapi2 as sqlite\nconn = sqlite.connect('test.db')\nc = conn.cursor()\nc.execute(\"PRAGMA key='password'\")\nc.execute(\"PRAGMA cipher_compatibility = 3\")\nc.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')\nc.execute(\"\"\"insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)\"\"\")\nconn.commit()\nc.close()\n```\n",
"bugtrack_url": null,
"license": "zlib/libpng",
"summary": "Python 3 bindings for SQLCipher with SQLite statically linked",
"version": "2.0.1",
"project_urls": {
"homepage": "https://github.com/carderne/pysqlcipher3static",
"repository": "https://github.com/carderne/pysqlcipher3static"
},
"split_keywords": [
"sqlite",
" encryption"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5fd6b6d7c7f85fa22387c3dcbf0d2bdc2580a29d4043e9e0fce9d1a802b1df95",
"md5": "139dc3ea48b2fdbbe6fff8b439b956b6",
"sha256": "06fe2929c0b96aa8ab9bc738d7a58a6aef4a34e652ae4ca9f604d6f825342fb5"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp310-cp310-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "139dc3ea48b2fdbbe6fff8b439b956b6",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 5493823,
"upload_time": "2024-08-01T22:59:55",
"upload_time_iso_8601": "2024-08-01T22:59:55.678211Z",
"url": "https://files.pythonhosted.org/packages/5f/d6/b6d7c7f85fa22387c3dcbf0d2bdc2580a29d4043e9e0fce9d1a802b1df95/pysqlcipher3static-2.0.1-cp310-cp310-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3ccc22312e81fd0db85dc818a3c3cfe568eb3357718c5922cb9e451bb4f0c0a4",
"md5": "0ae157b8ecc05f045f13794f5584de60",
"sha256": "ac861f3e1cc1131321cbed0c32577b9529a54db861c659d5cd031989a0c09d69"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "0ae157b8ecc05f045f13794f5584de60",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 7446744,
"upload_time": "2024-08-01T22:59:58",
"upload_time_iso_8601": "2024-08-01T22:59:58.522065Z",
"url": "https://files.pythonhosted.org/packages/3c/cc/22312e81fd0db85dc818a3c3cfe568eb3357718c5922cb9e451bb4f0c0a4/pysqlcipher3static-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "700a9531bf336c3d288980ea83982b9c993988bae919c50e365bce6dad908227",
"md5": "d44d6558513b5a566daee9125f3552e5",
"sha256": "547383eec98616c6ffb7e0edb07cf88066c975e6c43819721c22a1cefd07fb13"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp311-cp311-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "d44d6558513b5a566daee9125f3552e5",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 5493827,
"upload_time": "2024-08-01T23:00:00",
"upload_time_iso_8601": "2024-08-01T23:00:00.803114Z",
"url": "https://files.pythonhosted.org/packages/70/0a/9531bf336c3d288980ea83982b9c993988bae919c50e365bce6dad908227/pysqlcipher3static-2.0.1-cp311-cp311-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "117a836b844bacfe1be82f6f0d2074801440a474b6711e065ec6ea19d53b19c8",
"md5": "37bed95680cadcb3e2af0d7894a12525",
"sha256": "66e7231e05229627ac311b89b1d6d1288c3a105e2d7bae2cf45bb5163713a78a"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "37bed95680cadcb3e2af0d7894a12525",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 7452985,
"upload_time": "2024-08-01T23:00:02",
"upload_time_iso_8601": "2024-08-01T23:00:02.786537Z",
"url": "https://files.pythonhosted.org/packages/11/7a/836b844bacfe1be82f6f0d2074801440a474b6711e065ec6ea19d53b19c8/pysqlcipher3static-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "87f43d55d97e55659a64225dfae0408a0a40075dd842f9359f098fd532b19c70",
"md5": "34dc7b04101f3259db5dc6f9f65bde4b",
"sha256": "dafb5202f17197c90f25c7129f3bee3cd1e38b0baabcd376c2cab8be6086bb81"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp312-cp312-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "34dc7b04101f3259db5dc6f9f65bde4b",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 5494259,
"upload_time": "2024-08-01T23:00:04",
"upload_time_iso_8601": "2024-08-01T23:00:04.655521Z",
"url": "https://files.pythonhosted.org/packages/87/f4/3d55d97e55659a64225dfae0408a0a40075dd842f9359f098fd532b19c70/pysqlcipher3static-2.0.1-cp312-cp312-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "26fdc3b57e9f1e258973d5fbb1a6b3cc9e6e2c8c414c142a8824d09ebe08e514",
"md5": "cd2502729ddffdd3f05efc6638b77fd6",
"sha256": "6009cef15300dd58033e54ce1d2d0a7b0c8f552d116380aa4adb72a9aa766905"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "cd2502729ddffdd3f05efc6638b77fd6",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 7459147,
"upload_time": "2024-08-01T23:00:06",
"upload_time_iso_8601": "2024-08-01T23:00:06.473732Z",
"url": "https://files.pythonhosted.org/packages/26/fd/c3b57e9f1e258973d5fbb1a6b3cc9e6e2c8c414c142a8824d09ebe08e514/pysqlcipher3static-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1a1bf711c64252851fa48cfde6bd37769545bcbdfb00f8300925842e2358a07f",
"md5": "87dea49d63341dbd134aae367fe88da1",
"sha256": "14861b79a9dc522e19cf9da9a891511ba7647db730c78fa8c3e6181ac19c04d9"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp39-cp39-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "87dea49d63341dbd134aae367fe88da1",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 5493806,
"upload_time": "2024-08-01T23:00:08",
"upload_time_iso_8601": "2024-08-01T23:00:08.751674Z",
"url": "https://files.pythonhosted.org/packages/1a/1b/f711c64252851fa48cfde6bd37769545bcbdfb00f8300925842e2358a07f/pysqlcipher3static-2.0.1-cp39-cp39-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d72667ac6885b38f4cc0319c62dcacb446f2fc54a78c3513dffa3eaba802dfe1",
"md5": "075afefc52606f1807b156102d843875",
"sha256": "325fb224eaffbb010c09e27f5eeef3fd35dc1c099d662a719c333f9beaa414cd"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "075afefc52606f1807b156102d843875",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 7445491,
"upload_time": "2024-08-01T23:00:10",
"upload_time_iso_8601": "2024-08-01T23:00:10.711366Z",
"url": "https://files.pythonhosted.org/packages/d7/26/67ac6885b38f4cc0319c62dcacb446f2fc54a78c3513dffa3eaba802dfe1/pysqlcipher3static-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e7ecde7e9c3a4ffb0c7e9c6f678c3ea14e1c26bbb6bdc824f9adfcc07dfa8786",
"md5": "a5975c77e6df5f9a08ff10880a6538e9",
"sha256": "0f5d17766cd0427b3d5288572f9dc6594fed02cbef5562144381fb5dcab37697"
},
"downloads": -1,
"filename": "pysqlcipher3static-2.0.1.tar.gz",
"has_sig": false,
"md5_digest": "a5975c77e6df5f9a08ff10880a6538e9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 2556627,
"upload_time": "2024-08-01T23:00:12",
"upload_time_iso_8601": "2024-08-01T23:00:12.578923Z",
"url": "https://files.pythonhosted.org/packages/e7/ec/de7e9c3a4ffb0c7e9c6f678c3ea14e1c26bbb6bdc824f9adfcc07dfa8786/pysqlcipher3static-2.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-01 23:00:12",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "carderne",
"github_project": "pysqlcipher3static",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pysqlcipher3static"
}