# SentinelMFT
AI-powered secure managed file transfer for Google Cloud — with AES-256-GCM encryption, resilient transfers, and anomaly detection.
## Features
- AES-256-GCM encrypt/decrypt files
- Google Cloud Storage uploads/downloads (resumable)
- Isolation Forest anomaly detection on transfer logs
- CLI for transfer, encrypt/decrypt, train/score
## Install
```bash
pip install sentinelmft
# Quick Start
# Encrypt a file
sentinelmft encrypt --keyfile ./aes.key --src input.bin --dst input.bin.enc
# Transfer local→GCS (configure project/bucket in config)
sentinelmft transfer --config ./config.yaml --src ./input.bin.enc --dst gs://my-bucket/secure/input.bin.enc
# Train anomaly model
sentinelmft ai-train --logfile transfers.csv
Config.yml
```
gcs:
project: my-gcp-project
bucket: my-bucket
security:
keyfile: ./aes.key
allow_ips: ["203.0.113.10"]
Raw data
{
"_id": null,
"home_page": null,
"name": "sentinelmft",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "mft, gcp, gcs, encryption, aes-gcm, anomaly-detection, devsecops",
"author": "Raghava Chellu",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/3d/b5/6b95b5e71eed7283f26b0202017163621466c84c2f7428256732c91c8f20/sentinelmft-0.1.4.tar.gz",
"platform": null,
"description": "# SentinelMFT\n\nAI-powered secure managed file transfer for Google Cloud \u2014 with AES-256-GCM encryption, resilient transfers, and anomaly detection.\n\n## Features\n- AES-256-GCM encrypt/decrypt files\n- Google Cloud Storage uploads/downloads (resumable)\n- Isolation Forest anomaly detection on transfer logs\n- CLI for transfer, encrypt/decrypt, train/score\n\n## Install\n```bash\npip install sentinelmft\n\n# Quick Start\n\n# Encrypt a file\nsentinelmft encrypt --keyfile ./aes.key --src input.bin --dst input.bin.enc\n\n# Transfer local\u2192GCS (configure project/bucket in config)\nsentinelmft transfer --config ./config.yaml --src ./input.bin.enc --dst gs://my-bucket/secure/input.bin.enc\n\n# Train anomaly model\nsentinelmft ai-train --logfile transfers.csv\n\nConfig.yml\n```\ngcs:\n project: my-gcp-project\n bucket: my-bucket\nsecurity:\n keyfile: ./aes.key\n allow_ips: [\"203.0.113.10\"]\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "AI-powered secure managed file transfer (GCS + AES-256-GCM + anomaly detection)",
"version": "0.1.4",
"project_urls": {
"Documentation": "https://github.com/RaghavaCh440/sentinelmft#readme",
"Homepage": "https://github.com/RaghavaCh440/sentinelmft",
"Issues": "https://github.com/RaghavaCh440/sentinelmft/issues",
"Source": "https://github.com/RaghavaCh440/sentinelmft"
},
"split_keywords": [
"mft",
" gcp",
" gcs",
" encryption",
" aes-gcm",
" anomaly-detection",
" devsecops"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "c2b9b3b2b0ac6a8043078df79e5ecd33cf8b380a0899fe60877fc5137a115383",
"md5": "d7bf5172a9c336f099d1a5f30dde5890",
"sha256": "e2fb3ff6a1a003b5edf1d03fbdf02eaba23afa87cc050426708e2ceac05dc968"
},
"downloads": -1,
"filename": "sentinelmft-0.1.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d7bf5172a9c336f099d1a5f30dde5890",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 6485,
"upload_time": "2025-09-14T20:13:37",
"upload_time_iso_8601": "2025-09-14T20:13:37.125841Z",
"url": "https://files.pythonhosted.org/packages/c2/b9/b3b2b0ac6a8043078df79e5ecd33cf8b380a0899fe60877fc5137a115383/sentinelmft-0.1.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3db56b95b5e71eed7283f26b0202017163621466c84c2f7428256732c91c8f20",
"md5": "4444e87a5a8c7aa770b728fcbf21dbcf",
"sha256": "c98fa3b8101f9a81d1241e51cb35e5d8de9d597afd624e7201d9da11d5ac7a3a"
},
"downloads": -1,
"filename": "sentinelmft-0.1.4.tar.gz",
"has_sig": false,
"md5_digest": "4444e87a5a8c7aa770b728fcbf21dbcf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 6001,
"upload_time": "2025-09-14T20:13:38",
"upload_time_iso_8601": "2025-09-14T20:13:38.389890Z",
"url": "https://files.pythonhosted.org/packages/3d/b5/6b95b5e71eed7283f26b0202017163621466c84c2f7428256732c91c8f20/sentinelmft-0.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-14 20:13:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "RaghavaCh440",
"github_project": "sentinelmft#readme",
"github_not_found": true,
"lcname": "sentinelmft"
}