# Send 2 Air-Gap
[![codecov](https://codecov.io/gh/poing/Send2AirGap/branch/0.0.3/graph/badge.svg?token=LTQYLRKJ6M)](https://codecov.io/gh/poing/Send2AirGap)
[![CI](https://github.com/poing/Send2AirGap/actions/workflows/main.yml/badge.svg)](https://github.com/poing/Send2AirGap/actions/workflows/main.yml)
This is a project to provide data to an air-gapped system.
The air-gapped system uses a camera to receive unidirectional communication. Creating a "data diode" that can be used to provide data **to** systems in a high security environment.
The *unsecure* system will display the `data` using qr-codes, that are decoded on the secure air-gapped system.
There's even a method to *acknowledge* receipt of the `data`. The method *involves* inputing an associated timestamp on the *unsecure* system. This would *typically* be a manual operation, but **does** provide *possible* ways to automate the acknowledgement.
## Install it from PyPI
```bash
pip install send2airgap
```
## Usage
```py
from send2airgap import BaseClass
from send2airgap import base_function
BaseClass().base_method()
base_function()
```
```bash
$ python -m send2airgap
#or
$ send2airgap
```
## Development
Read the [CONTRIBUTING.md](CONTRIBUTING.md) file.
Raw data
{
"_id": null,
"home_page": "https://github.com/poing/Send2AirGap/",
"name": "send2airgap",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.13",
"maintainer_email": null,
"keywords": "air gap, air gapped, air gapping, air wall, air-gap, air-gapping, air-wall, airgap, airgapped, airgapping, airwall, camera, communication security, communicationsecurity, cybersecurity, data transmission, datatransfer, disconnected network, hardwaresecurity, isolatednetwork, network security, networking, networksecurity, physically isolated, qr-code, qrcode, receive data, recvdata, secure computer network, securecomputing, send data, senddata",
"author": "Brian LaVallee",
"author_email": "brian.lavallee@invite-comm.jp",
"download_url": "https://files.pythonhosted.org/packages/be/17/2de025b4fe8ee37a11ccdea57f8594e81140982b85bd1345124caf90ce16/send2airgap-0.0.3.tar.gz",
"platform": null,
"description": "# Send 2 Air-Gap\n\n[![codecov](https://codecov.io/gh/poing/Send2AirGap/branch/0.0.3/graph/badge.svg?token=LTQYLRKJ6M)](https://codecov.io/gh/poing/Send2AirGap)\n\n[![CI](https://github.com/poing/Send2AirGap/actions/workflows/main.yml/badge.svg)](https://github.com/poing/Send2AirGap/actions/workflows/main.yml)\n\nThis is a project to provide data to an air-gapped system.\n\nThe air-gapped system uses a camera to receive unidirectional communication. Creating a \"data diode\" that can be used to provide data **to** systems in a high security environment.\n\nThe *unsecure* system will display the `data` using qr-codes, that are decoded on the secure air-gapped system.\n\nThere's even a method to *acknowledge* receipt of the `data`. The method *involves* inputing an associated timestamp on the *unsecure* system. This would *typically* be a manual operation, but **does** provide *possible* ways to automate the acknowledgement. \n\n\n\n\n\n## Install it from PyPI\n\n```bash\npip install send2airgap\n```\n\n## Usage\n\n```py\nfrom send2airgap import BaseClass\nfrom send2airgap import base_function\n\nBaseClass().base_method()\nbase_function()\n```\n\n```bash\n$ python -m send2airgap\n#or\n$ send2airgap\n```\n\n## Development\n\nRead the [CONTRIBUTING.md](CONTRIBUTING.md) file.\n",
"bugtrack_url": null,
"license": null,
"summary": "A Python package enabling the secure transfer of data from an insecure sender to an air-gapped computer equipped with a camera.",
"version": "0.0.3",
"project_urls": {
"Bug Tracker": "https://github.com/poing/Send2AirGap/issues/",
"Documentation": "https://poing.github.io/Send2AirGap",
"Homepage": "https://github.com/poing/Send2AirGap/",
"Source": "https://github.com/poing/Send2AirGap"
},
"split_keywords": [
"air gap",
" air gapped",
" air gapping",
" air wall",
" air-gap",
" air-gapping",
" air-wall",
" airgap",
" airgapped",
" airgapping",
" airwall",
" camera",
" communication security",
" communicationsecurity",
" cybersecurity",
" data transmission",
" datatransfer",
" disconnected network",
" hardwaresecurity",
" isolatednetwork",
" network security",
" networking",
" networksecurity",
" physically isolated",
" qr-code",
" qrcode",
" receive data",
" recvdata",
" secure computer network",
" securecomputing",
" send data",
" senddata"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c6f9a1287a566ae9ed4aa872c38f85e24707cec997e3a90ca2d02e5066ba3908",
"md5": "609052576d2c4f0181e1eb287c915ade",
"sha256": "d92fd5e417f400e8ee6e0989745340315ee4c73bbf23a3a2d54fa6f71a124d6e"
},
"downloads": -1,
"filename": "send2airgap-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "609052576d2c4f0181e1eb287c915ade",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.13",
"size": 10860,
"upload_time": "2025-01-15T01:49:10",
"upload_time_iso_8601": "2025-01-15T01:49:10.065379Z",
"url": "https://files.pythonhosted.org/packages/c6/f9/a1287a566ae9ed4aa872c38f85e24707cec997e3a90ca2d02e5066ba3908/send2airgap-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "be172de025b4fe8ee37a11ccdea57f8594e81140982b85bd1345124caf90ce16",
"md5": "b370848afc250939123b5f9dbc5c0f6c",
"sha256": "4df4e21da34efd4c19f9d45e4c2fc19eff69d5ecdf34fbb98079bce6acabf4ff"
},
"downloads": -1,
"filename": "send2airgap-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "b370848afc250939123b5f9dbc5c0f6c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.13",
"size": 13010,
"upload_time": "2025-01-15T01:49:12",
"upload_time_iso_8601": "2025-01-15T01:49:12.305633Z",
"url": "https://files.pythonhosted.org/packages/be/17/2de025b4fe8ee37a11ccdea57f8594e81140982b85bd1345124caf90ce16/send2airgap-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-15 01:49:12",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "poing",
"github_project": "Send2AirGap",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "opencv-python",
"specs": []
},
{
"name": "pillow",
"specs": []
},
{
"name": "python-barcode",
"specs": []
},
{
"name": "qrcode",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "types-requests",
"specs": []
},
{
"name": "opencv-python",
"specs": []
},
{
"name": "tqdm",
"specs": []
}
],
"lcname": "send2airgap"
}