SkillAgentSearch skills...

Cryptofrog

🐸 CryptoFrog is a secure, GTK-powered file encryption app using ECCFrog512CK2, AES-GCM-256, and Argon2ID β€” all wrapped in a retro hacker style.

Install / Use

/learn @victormeloasm/Cryptofrog
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

CryptoFrog πŸΈπŸ”

CryptoFrog Logo

Overview

License C++20 GTK3 Ubuntu

CryptoFrog is a robust, secure, and user-friendly encryption application developed for Linux Ubuntu. Built with modern C++20 standards, CryptoFrog utilizes a custom elliptic curve (ECCFrog512CK2) alongside powerful cryptographic algorithms such as AES-GCM-256 and Argon2ID for secure, reliable, and efficient file encryption and decryption. Its graphical interface is powered by GTK3, offering a sleek, retro-inspired hacker aesthetic.

CryptoFrog extends the concept from its predecessor project, OpenFrogget, introducing enhanced security, an improved user interface, and more efficient encryption methods.


Table of Contents

  1. Features
  2. Screenshots
  3. Installation
  4. Usage
  5. Technical Details
  6. Project Structure
  7. License

Features

  • Hybrid Encryption: Combines custom elliptic curve cryptography (ECCFrog512CK2) with AES-GCM-256 symmetric encryption.
  • Secure Key Derivation: Utilizes Argon2ID, winner of the Password Hashing Competition, for secure key generation.
  • User-Friendly GUI: Sleek, intuitive GTK3 interface.
  • Efficient: Optimized binary using UPX compression.
  • Retro Hacker Aesthetic: Unique user interface inspired by classic hacking tools.

Screenshots

CryptoFrog Interface


Installation

Dependencies

CryptoFrog requires several libraries and tools. Ensure you have the following installed:

  • C++20 Compiler (g++)
  • GTK3 Development Libraries
  • libsodium (Cryptographic library)
  • GMP (GNU Multi-Precision Arithmetic Library)
  • UPX (Ultimate Packer for eXecutables)

Install dependencies using the provided script:

sudo apt update
sudo apt install -y g++ libgtk-3-dev libsodium-dev libgmp-dev upx

Building from Source

Clone this repository and navigate into the directory:

git clone https://github.com/yourusername/cryptofrog.git
cd cryptofrog

Compile the project using Make:

make

Upon successful compilation, the binary will be located in the build/ directory.


Usage

Run CryptoFrog using the following command:

./build/cryptofrog

Encrypting Files

  1. Open CryptoFrog.
  2. Select the file you wish to encrypt using the "Choose File" button.
  3. Enter a strong password in the provided input field.
  4. Click "Encrypt". CryptoFrog will output an encrypted file with the .ecc extension in the same directory.

Decrypting Files

  1. Select an encrypted file (with .ecc extension).
  2. Enter the password used for encryption.
  3. Click "Decrypt". CryptoFrog will decrypt the file, restoring the original contents.

Technical Details

Encryption Method

CryptoFrog uses a hybrid encryption method:

  • ECCFrog512CK2: Custom elliptic curve cryptography for secure key exchange.
  • AES-GCM-256: Advanced Encryption Standard in Galois/Counter Mode for symmetric encryption.
  • Argon2ID: Secure key derivation from user passwords.

Custom Elliptic Curve

ECCFrog512CK2 is a custom-developed elliptic curve designed for high security, rigorously tested to resist known vulnerabilities. This curve represents a substantial upgrade from its predecessor implemented in OpenFrogget.

Compression with UPX

The final binary is compressed using UPX, reducing the file size significantly without compromising execution speed or security.


Project Structure

cryptofrog/
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ crypto.png     (Logo)
β”‚   └── print.png      (Screenshot)
β”œβ”€β”€ build/             (Compiled binary location)
β”œβ”€β”€ data/              (Test files)
β”œβ”€β”€ src/               (Source code)
β”‚   β”œβ”€β”€ main.cpp
β”‚   β”œβ”€β”€ encrypt.cpp
β”‚   β”œβ”€β”€ decrypt.cpp
β”‚   β”œβ”€β”€ eccfrog512ck2.cpp
β”‚   β”œβ”€β”€ splash.cpp
β”‚   └── utils.h
β”œβ”€β”€ Makefile
└── README.md

License

CryptoFrog is released under the GNU General Public License v3.0.

Copyright (C) 2025 Your Name

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

Acknowledgments

Inspired by and based upon the initial work done in OpenFrogget. Special thanks to the open-source community for the incredible tools and libraries used in CryptoFrog.

View on GitHub
GitHub Stars6
CategoryDevelopment
Updated4mo ago
Forks1

Languages

C++

Security Score

82/100

Audited on Nov 19, 2025

No findings