2023-04-28 00:27:22 +02:00
< div align = "center" style = "text-align:center" >
< picture >
2024-08-30 17:41:50 +02:00
< source media = "(prefers-color-scheme: light)" srcset = "docs/contego-light.png" >
< img src = "docs/contego-dark.png" width = "800" >
2023-04-28 00:27:22 +02:00
< / picture >
< / div >
2022-07-16 21:09:28 +02:00
2023-04-28 00:27:22 +02:00
## Cryptographic specifications
The initial key exchange is performed with elliptic-curve Diffie-Hellman. General data exchange is encrypted with AES-GCM. During regular communication payloads are Base64 encoded before being encrypted to prevent delimiter conflicts. SHA-256 hashes of files are compared to ensure data integrity.
## Usage
2024-08-30 17:32:05 +02:00
Build the optimized binary with `cargo build --release` .
2023-04-28 00:27:22 +02:00
2023-05-29 16:52:51 +02:00
### Server
```
Usage: contego host [OPTIONS] --key < KEY > < --source < SOURCE > |--files < FILES > ...>
Options:
-k, --key < KEY > Access key
-s, --source < SOURCE > Path to a source file (alternative to --files)
-f, --files < FILES > ... Paths to shareable files (alternative to --source)
-p, --port < PORT > Host port [default: 8080]
-6, --ipv6 IPv6 instead of IPv4
-c, --chunksize < CHUNKSIZE > Transmit chunksize in bytes [default: 8192]
-l, --local Host locally
-h, --help Print help
```
### Client
```
Usage: contego connect --addr < ADDR > --out < OUT > --key < KEY >
Options:
-a, --addr < ADDR > IP address of the instance
-o, --out < OUT > Path to an output folder
-k, --key < KEY > Access key
-h, --help Print help
2023-04-28 00:27:22 +02:00
```