Skip to content

Cyrof/GoVault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoVault

A simple, secure CLI-based password vault written in Go.
GoVault stores and retrieves secrets locally using AES-GCM encryption and Argon2id key derivation


Features

  • Secure storage with AES-GCM and Argon2id
  • Master password verification
  • CLI interface for managing secrets
  • Fuzzy search for easier key lookups
  • Import/export of encrypted vault data
  • Password generator (standalone or integrated into add)
  • Encrypted local file storage

Prerequisites

  • Go 1.20 or higher (if building from source)

Installation

Download the latest binary from the Releases page for your OS.
Or build from source:

go build -o govault ./cmd/govault

Usage

First-time run will:

  • Prompt you to set a master password
  • Generate a salt and hash for verification
  • Create an encrypted vault file (vault.enc) and metadata file (meta.json)

Command Overview

You can view all available commands and flags by running:

govault --help

To view details for a specific command:

govault <command> --help

Example:

govault add --help

Example Screenshot

GoVault Help Screenshot


Directory Structure

.
├── assets
├── cmd
│   └── govault
├── internal
│   ├── backup
│   ├── crypto
│   ├── fileIO
│   ├── generator
│   ├── logger
│   ├── model
│   └── vault
└── pkg
    ├── cli
    └── cobraCLI

Future Plans

  • Migrate to SQL database for scalable storage
    • Switch from whole vault encryption to per-row encryption
  • Tagging system for secrets to enable filtered listing
  • Potential future CLI enhancements

License

This project is licensed under the Apache 2.0.

About

A simple password manager built using golang.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages