Skip to content

tatlilimon/GPGForce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPGForce

GPGForce is a simple Go application that generates GPG key pairs with custom fingerprint prefixes. It utilizes parallel processing to efficiently search for keys matching the desired prefix pattern.

Demonstration

gpgforce usage

Features

  • Generate GPG key pairs with custom fingerprint prefixes
  • Parallel processing using all available CPU cores
  • Real-time progress monitoring
  • Secure key storage with encryption

Prerequisites

  • Go
  • Environment variables:
    • GPG_KEY_PASSWORD: Required — Password used to encrypt the private key with AES256
    • NAME: Name for the GPG key
    • EMAIL: Email address for the GPG key
    • COMMENT: Comment for key

Installation

git clone https://github.com/tatlilimon/gpgforce.git
cd gpgforce
./install.sh

This will build the binary and install it to /usr/local/bin, making it available as a system-wide command. You'll need sudo privileges for the installation.

Usage

gpgforce <desired-prefix>

Example:

gpgforce AA

This will generate a GPG key pair where the fingerprint starts with "AA" and save the keys in the keys directory:

  • keys/AA_private.gpg: Encrypted private key
  • keys/AA_public.gpg: Public key

Security Considerations

  • Uses 2048-bit RSA keys
  • Private keys are encrypted with GPG_KEY_PASSWORD using AES256 cipher + SHA256 hashing
  • S2K (String-to-Key) iteration count set to 65,011,712 (maximum) for passphrase derivation
  • Uses github.com/ProtonMail/go-crypto — a maintained fork of golang.org/x/crypto/openpgp
  • Private key files are saved with 0600 permissions (owner read/write only)

Uninstallation

pkill gpgforce
sudo rm /usr/local/bin/gpgforce

Todo

  • Implementation to do operations with the GPU and not with the CPU

About

Simple Go application that generates GPG key pairs with custom fingerprint prefixes. It utilizes parallel processing to efficiently search for keys matching the desired prefix pattern.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors