https://github.com/redodo/shipper
Hide encrypted data in files.
https://github.com/redodo/shipper
audio data images python steganography
Last synced: about 1 month ago
JSON representation
Hide encrypted data in files.
- Host: GitHub
- URL: https://github.com/redodo/shipper
- Owner: redodo
- License: mit
- Created: 2017-04-23T10:37:24.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-10-22T14:43:03.000Z (over 5 years ago)
- Last Synced: 2025-01-30T23:16:04.537Z (3 months ago)
- Topics: audio, data, images, python, steganography
- Language: Python
- Homepage:
- Size: 538 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# Shipper
*Ship cargo in containers.*
Installation:
```bash
pip install -e git+https://github.com/redodo/shipper.git
```Example usage:
```bash
$ echo "Hello World" | shipper load example.png > shipment.png
$ shipper unload shipment.png
Hello World
```Or in Python code:
```python
import shippershipment = shipper.shipment('example.png')
shipment.load(b'cargo')
shipment.ship('shipment.png')
```## Securing The Cargo
The cargo that is loaded in the container can be secured using the `--lock`
parameter in the CLI. You will be prompted a password.shipper load --cargo data.txt example.png --lock > shipment.png
Unloading secured cargo can be done by passing the `--unlock` parameter:
shipper unload shipment.png --unlock
## The Shipment Process
The process of preparing a shipment is defined as follows:
1. The cargo is palletized to allow for easy placement in the container
2. The shipping bill is generated and also palletized (don't ask why)
3. The pallets are loaded into the available pallet spots of the container
4. The container is optionally shipped to its destinationUnloading the shipment is the reverse of that process:
1. Search for the palletized shipping bill (this is actually pretty tedious)
2. Unload the pallets from the container
3. Put the cargo back togetherWhile the standard implementation of this package only delivers support for two
types of containers; lossless image containers and WAVE audio file containers,
it is jolly straight forward to create implementations for other types of
containers.