Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/degaart/emocrypt
Encrypts data into emojipastas
https://github.com/degaart/emocrypt
emoji encryption steganography
Last synced: 5 days ago
JSON representation
Encrypts data into emojipastas
- Host: GitHub
- URL: https://github.com/degaart/emocrypt
- Owner: degaart
- License: mit
- Created: 2022-02-09T20:09:00.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-04-27T20:00:41.000Z (over 2 years ago)
- Last Synced: 2024-08-02T14:05:05.033Z (3 months ago)
- Topics: emoji, encryption, steganography
- Language: C++
- Homepage: https://degaart.github.io/emocrypt
- Size: 176 KB
- Stars: 37
- Watchers: 4
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
# emocrypt
## Encrypts data into emojipastas
This program encrypts arbitrary data into emojipastas.
It uses XSalsa20 stream cipher with Poly1305 MAC encryption, and Argon2id key derivation.## Example output
```
I'd just like ๐to interject for๐ a moment. ๐จWhat you're refering๐ต to as
๐Linux, is in๐ fact, GNU/Linux, or๐ฑ as I've ๐ฉrecently taken to๐ calling
it, ๐ชGNU plus Linux.๐ Linux is ๐not an operating๐ system unto itself,๐
but rather ๐another free component๐ of a ๐ fully functioning GNU๐ก system
made ๐useful by the๐ GNU corelibs, shell๐ utilities and ๐ธvital system
components๐ก comprising a ๐full OS as๐ defined by ๐POSIX.Many computer ๐users run a๐ธ modified version ๐of the GNU๐ system every
๐พday, without realizing๐ธ it. Through ๐กa peculiar turn ๐of events, the๐
version of โGNU which isโ widely used ๐today is often๐ called Linux, ๐
and many of ๐ฐits users are๐ฏ not aware ๐ that it is๐ basically the ๐GNU
system, developed๐ฆ by the GNU๐ Project.There ๐really is a๐ฐ Linux, and ๐นthese people are๐ง using it, ๐but it is
๐ just a part๐ of the ๐system they use.๐ฌ Linux is ๐ถthe kernel: the๐
program in ๐the system that๐ allocates the machine's๐ resources to ๐the
other programs๐ that you ๐ณrun. The kernel๐ฐ is an ๐ฉessential part of ๐กan
operating system,๐ but useless ๐ดby itself; it๐ can only ๐function in
the๐ context of ๐งa complete operating ๐ซsystem. Linux is๐ฅ normally used
๐in combination with๐ the GNU ๐ฝoperating system: the๐ whole system ๐is
basically GNU ๐บwith Linux added,๐ or GNU/Linux. ๐ All the so-called๐
Linux distributions ๐ฑare really distributions๐ of GNU/Linux!๐ฑ
```The above ciphertext can be decrypted using the password 'hunter2'.
It's also possible to just encrypt into a simple emoji soup:```
๐ฒ๐ฃ๐ฉ๐๐ค๐ฒ๐ฝ๐น๐ ๐๐๐ฏ๐ท๐พ๐ฉ๐๐๐๐๐
๐ด๐๐๐๐๐๐๐ฏ๐๐๐ ๐๐ฐ๐๐ ๐บ๐๐ซ๐ป๐ณ
๐ผ๐ฐ๐๐ฎ๐ ๐ต๐ท๐ท๐ฃ๐๐๐น๐๐ท๐จ๐๐๐๐๐ฅ
๐ซ๐ ๐๐ณ๐๐๐ฐ๐น๐ธ๐๐๐๐ซ๐ฏ๐๐๐๐น๐ข๐ญ
๐๐ฒ๐ฃ๐ข๐๐บ๐
```## Online version
https://degaart.github.io/emocrypt/
## Usage - command line client
### Encrypt a file
```
emocrypt -i -o
```### Encrypt then conceal a file
```
emocrypt -i -o -c
```### Decrypt file
```
emocrypt -d -i -o
```## Building
Requirements:
- c++ compiler with c++14 support
- cmake >= 3.15
- libsodium### Unix/macOS
Build commands:
```
cmake -DCMAKE_BUILD_TYPE=Release -B Build -DCMAKE_INSTALL_PREFIX=/opt/emocrypt
cmake --build Build
cmake --build Build --target install
```### Windows (Visual Studio)
- Download and extract libsodium from https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
- Open libsodium.sln and build the Debug (or the Release) configuration
- Open emocrypt's source code folder in Visual Studio
- Open menu: Project > CMake Settings for emocrypt
- Tweak "CMake command arguments": ```-Dlibsodium_INCLUDE_DIR=C:\some-path\libsodium\include -Dlibsodium_LIBRARY=C:\some-path\libsodium-stable\Build\Debug\x64\libsodium.lib -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded```
- Build the solution