{"id":16413470,"url":"https://github.com/noblemajo/vault","last_synced_at":"2025-04-09T19:19:49.713Z","repository":{"id":247041413,"uuid":"824876790","full_name":"NobleMajo/vault","owner":"NobleMajo","description":"File encryption and decryption cli tool written in go.","archived":false,"fork":false,"pushed_at":"2024-12-13T12:52:32.000Z","size":125,"stargazers_count":79,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-09T19:19:44.363Z","etag":null,"topics":["aes","aes-256","api-tokens","cli","encryption","encryption-decryption","fileencryptor","fileextension","go","go-cli","golang","golang-cli","password-store","passwordencryptor","rsa","rsa-cryptography","x509"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NobleMajo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-06T07:36:01.000Z","updated_at":"2025-01-08T13:36:07.000Z","dependencies_parsed_at":"2024-10-11T06:51:42.943Z","dependency_job_id":"41429abc-2d58-4954-8ac5-1f4ecd1368cb","html_url":"https://github.com/NobleMajo/vault","commit_stats":null,"previous_names":["noblemajo/vault"],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NobleMajo%2Fvault","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NobleMajo%2Fvault/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NobleMajo%2Fvault/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NobleMajo%2Fvault/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NobleMajo","download_url":"https://codeload.github.com/NobleMajo/vault/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248094991,"owners_count":21046770,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aes","aes-256","api-tokens","cli","encryption","encryption-decryption","fileencryptor","fileextension","go","go-cli","golang","golang-cli","password-store","passwordencryptor","rsa","rsa-cryptography","x509"],"created_at":"2024-10-11T06:51:35.758Z","updated_at":"2025-04-09T19:19:49.685Z","avatar_url":"https://github.com/NobleMajo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vault\n![CI/CD](https://github.com/noblemajo/vault/actions/workflows/go-bin-release.yml/badge.svg)\n![CI/CD](https://github.com/noblemajo/vault/actions/workflows/go-test-build.yml/badge.svg)  \n![MIT](https://img.shields.io/badge/license-MIT-blue.svg)\n![](https://img.shields.io/badge/dynamic/json?color=green\u0026label=watchers\u0026query=watchers\u0026suffix=x\u0026url=https%3A%2F%2Fapi.github.com%2Frepos%2Fnoblemajo%2Fvault)\n![](https://img.shields.io/badge/dynamic/json?color=yellow\u0026label=stars\u0026query=stargazers_count\u0026suffix=x\u0026url=https%3A%2F%2Fapi.github.com%2Frepos%2Fnoblemajo%2Fvault)\n![](https://img.shields.io/badge/dynamic/json?color=navy\u0026label=forks\u0026query=forks\u0026suffix=x\u0026url=https%3A%2F%2Fapi.github.com%2Frepos%2Fnoblemajo%2Fvault)\n\nVault is a minimalistic CLI tool that encrypts and decrypts plain files into Vault files. (`.vt`).\n\nThe idea behind this tool is to have a CLI utility that can quickly and easily encrypt individual files, allowing users to securely store API tokens, secrets, credentials, or any private data on their own disk.\n\n# Table of Contents\n- [Vault](#vault)\n- [Table of Contents](#table-of-contents)\n  - [Advertising](#advertising)\n  - [Encryption](#encryption)\n- [Getting Started](#getting-started)\n  - [Requirements](#requirements)\n  - [Install via go](#install-via-go)\n  - [Install via wget](#install-via-wget)\n- [Build](#build)\n  - [Build requirements](#build-requirements)\n- [Usage](#usage)\n  - [Help](#help)\n    - [init](#init)\n    - [lock](#lock)\n    - [unlock](#unlock)\n    - [temp](#temp)\n    - [print](#print)\n  - [Other filename](#other-filename)\n  - [Build](#build-1)\n- [Development](#development)\n  - [Install go](#install-go)\n- [Contributing](#contributing)\n- [License](#license)\n- [Disclaimer](#disclaimer)\n\n## Advertising\n*Are you also just a normal software developer or admin with lots of API keys, encryption keys or other secrets and credentials?*\n*Or do you simply have logs or plain text files that you want to send to someone securely?*\n**Then I have exactly what you are looking for today!**\n\n*Hold on tight and take a closer look at this command line interface tool because it might meet your exact needs.*\n\n## Encryption\nVault uses asymmetric RSA encryption and symmetric AES-256 encryption to keep your data as secure as possible.\nTo do this, vault uses private and public key on disk (default: `~/.ssh/id_rsa.pub`) and also asks you for a password.\n\nCurrently no elliptic curve support! Just rsa.\n\n# Getting Started\n\n## Requirements\nNone windows system with `go` or `wget \u0026 tar` installed.\n\n## Install via go\n###### *For this section go is required, check out the [install go guide](#install-go).*\n\n```sh\ngo install https://github.com/NobleMajo/vault\n```\n\n## Install via wget\n```sh\nBIN_DIR=\"/usr/local/bin\"\nVAULT_VERSION=\"1.3.3\"\n\nrm -rf $BIN_DIR/vault\nwget https://github.com/NobleMajo/vault/releases/download/v$VAULT_VERSION/vault-v$VAULT_VERSION-linux-amd64.tar.gz -O /tmp/vault.tar.gz\ntar -xzvf /tmp/vault.tar.gz -C $BIN_DIR/ vault\nrm /tmp/vault.tar.gz\n```\n\n# Build\n## Build requirements\nTo build, you need to install go. \nThe required go version is in the `go.mod` file.\n\n# Usage\nVault operations are sub commands defined via the first command line argument.\n\n## Help\nThe following block is the main help output if you do not use a subcommand or use help:\n```ts\nVault is a file encryption and decryption cli tool written in go.\nFor more help, visit https://github.com/NobleMajo/vault\n\nUsage:\n  vault [flags]\n  vault [command]\n\nAvailable Commands:\n  completion  Generate the autocompletion script for the specified shell\n  help        Help about any command\n  init        Create a initial encrypted vault file for default text\n  lock        Locks your plain file into a vault file\n  passwd      Changes the password of your vault file\n  print       Prints the decrypted content of your vault file\n  temp        Temporary unlocks your vault file into a plain file\n  unlock      Unlocks your vault file into a plain file\n  version     Prints version message\n\nFlags:\n  -h, --help      help for vault\n  -b, --verbose   enable verbose mode (VAULT_VERBOSE)\n  -v, --version   prints version\n\nUse \"vault [command] --help\" for more information about a command.\n```\n\n\n### init\nCreate a new locked vault file:\n```sh\nvault init\n```\n\n**OR**\n\n### lock\nAdd some content to your `vault.txt` and lock it:\n```sh\nvim vault.txt\nvault lock\n```\n\n### unlock\nUnlock the vault as plain `.txt` file:\n```sh\nvault unlock\n```\n\n### temp\nUnlock the file for 5 seconds as `.txt`.\nIn this time you can open it with an editor.\n```sh\nvault temp\n```\n\n### print\nPrint the locked content in console:\n```sh\nvault print\n```\n\n## Other filename\nTo choose a other file then the `vault.txt` use the second argument without extensions:\n(`test` for `test.txt` and `test.vt`)\n ```sh\nvault lock \u003cfilename\u003e\nvault temp \u003cfilename\u003e\nvault unlock \u003cfilename\u003e\nvault init \u003cfilename\u003e\nvault print \u003cfilename\u003e\n```\n\n## Build\n###### *For this section go is required, check out the [install go guide](#install-go).*\n\nClone the repo:\n```sh\ngit clone https://github.com/NobleMajo/vault.git\ncd vault\n```\n\nBuild the vault binary from source code:\n```sh\nmake build\n./vault\n```\n\n# Development\n###### *For this section go is required, check out the [install go guide](#install-go).*\n\nThis part is work in process, i want use 'AIR' as autoreload tool:\n```sh\nmake dev #WIP\n```\n\n## Install go\nThe required go version for this project is in the `go.mod` file.\n\nTo install and update go, I can recommend the following repo:\n```sh\ngit clone git@github.com:udhos/update-golang.git golang-updater\ncd golang-updater\nsudo ./update-golang.sh\n```\n\n# Contributing\nContributions to this project are welcome!  \nInterested users can refer to the guidelines provided in the [CONTRIBUTING.md](CONTRIBUTING.md) file to contribute to the project and help improve its functionality and features.\n\n# License\nThis project is licensed under the [MIT license](LICENSE), providing users with flexibility and freedom to use and modify the software according to their needs.\n\n# Disclaimer\nThis project is provided without warranties.  \nUsers are advised to review the accompanying license for more information on the terms of use and limitations of liability.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoblemajo%2Fvault","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnoblemajo%2Fvault","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoblemajo%2Fvault/lists"}