{"id":16733125,"url":"https://github.com/quchen/vsafe","last_synced_at":"2025-03-15T19:45:40.103Z","repository":{"id":66327280,"uuid":"191757481","full_name":"quchen/vsafe","owner":"quchen","description":"vsafe - Very Simple Asymmetric File Exchange","archived":false,"fork":false,"pushed_at":"2020-03-04T09:13:54.000Z","size":21,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-22T09:09:14.166Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/quchen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2019-06-13T12:19:55.000Z","updated_at":"2020-03-04T09:13:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"fcbd423f-2ef0-43dc-9350-ea7dc5659beb","html_url":"https://github.com/quchen/vsafe","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quchen%2Fvsafe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quchen%2Fvsafe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quchen%2Fvsafe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quchen%2Fvsafe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/quchen","download_url":"https://codeload.github.com/quchen/vsafe/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243784099,"owners_count":20347409,"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":[],"created_at":"2024-10-12T23:48:44.710Z","updated_at":"2025-03-15T19:45:40.087Z","avatar_url":"https://github.com/quchen.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"vsafe - Very Simple Asymmetric File Exchange\n============================================\n\nWorkflow\n--------\n\n*Alice* wants to send *Bob* a file.\n\n  1. *Bob* generates a keypair.\n     ```sh\n     vsafe keygen bobs-key\n     ```\n\n  2. *Bob* sends *Alice* his pubkey (bobs-key.pub), e.g. via email.\n\n  3. *Alice* encrypts her data using *Bob*’s pubkey.\n     ```sh\n     vsafe encrypt bobs-key.pub alice-secret.txt \u003e encrypted.txt\n     ```\n\n  4. *Alice* sends the encrypted file to *Bob* (encrypted.txt).\n\n  5. *Bob* decrypts the file using his pubkey. He can do so by following the\n     instructions contained in the file, or by simply running it as a script,\n     since it is a runnable decryption program.\n\n     ```sh\n     chmod +x encrypted.txt\n     ./encrypted.txt bobs-key \u003e alice-secret.txt\n     ```\n\nCommand overview\n----------------\n\n  - vsafe help\n  - `vsafe encrypt PUBKEY FILE` – Encrypt FILE to stdout using PUBKEY file\n  - `vsafe keygen FILE` – Generate keypair: FILE.PRIVATE, FILE.pub\n  - `vsafe test` – Run the roundtrip test\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquchen%2Fvsafe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fquchen%2Fvsafe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquchen%2Fvsafe/lists"}