{"id":35175345,"url":"https://github.com/nthnn/shitkey","last_synced_at":"2026-05-17T20:37:11.721Z","repository":{"id":307224439,"uuid":"1028772008","full_name":"nthnn/shitkey","owner":"nthnn","description":"Command-line tool for securely encrypting and decrypting files using a password that uses modern cryptographic primitives to ensure the confidentiality and integrity of your data.","archived":false,"fork":false,"pushed_at":"2025-07-30T03:41:40.000Z","size":54,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-30T05:45:00.821Z","etag":null,"topics":["encryption-decryption","encryption-software","encryption-tool","golang-application","golang-tools"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nthnn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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,"zenodo":null}},"created_at":"2025-07-30T03:37:06.000Z","updated_at":"2025-07-30T03:39:24.000Z","dependencies_parsed_at":"2025-07-30T05:45:04.499Z","dependency_job_id":"a8c95bc5-4f7f-496b-8da9-314842c81571","html_url":"https://github.com/nthnn/shitkey","commit_stats":null,"previous_names":["nthnn/shitkey"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/nthnn/shitkey","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nthnn%2Fshitkey","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nthnn%2Fshitkey/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nthnn%2Fshitkey/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nthnn%2Fshitkey/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nthnn","download_url":"https://codeload.github.com/nthnn/shitkey/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nthnn%2Fshitkey/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33154038,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T09:28:26.183Z","status":"ssl_error","status_checked_at":"2026-05-17T09:27:52.702Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["encryption-decryption","encryption-software","encryption-tool","golang-application","golang-tools"],"created_at":"2025-12-28T22:12:12.663Z","updated_at":"2026-05-17T20:37:11.715Z","avatar_url":"https://github.com/nthnn.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shitkey: Simple and Secure File Encryption\n\nShitkey is a command-line tool for securely encrypting and decrypting files using a password. It is written in Go and uses modern cryptographic primitives to ensure the confidentiality and integrity of your data.\n\n- **Simple Interface**: A straightforward command-line interface for encrypting and decrypting files.\n- **Strong Cryptography**: Shitkey uses AES-256 in GCM mode for encryption.\n- **Password-Based Key Derivation**: It uses `scrypt` to derive a strong cryptographic key from your password, making it resistant to brute-force attacks.\n- **Salt and Nonce Generation**: Each encryption operation uses a unique, cryptographically-secure random salt and nonce to protect against common attacks.\n- **Cross-Platform**: The tool is written in Go, which makes it easy to compile and run on various operating systems.\n\n## Installation\n\n### From Source\n\n1. Clone the repository:\n\n    ```sh\n    git clone https://github.com/nthnn/shitkey.git\n    cd shitkey\n    ```\n\n2. Build the executable:\n\n    ```sh\n    go build -o shitkey\n    ```\n\n3. (Optional) Move the executable to your PATH:\n\n    ```sh\n    sudo mv shitkey /usr/local/bin/\n    ```\n\n### Debian/Ubuntu\n\nYou can build a `.deb` package using the provided `build.sh` script.\n\n1. Clone the repository and navigate to the directory:\n\n    ```sh\n    git clone https://github.com/nthnn/shitkey.git\n    cd shitkey\n    ```\n\n2. Run the build script:\n\n    ```sh\n    ./build.sh\n    ```\n\n3. Install the generated `.deb` package:\n\n    ```sh\n    sudo dpkg -i shitkey_1.4_amd64.deb\n    ```\n\n## Usage\n\n### Encrypt a file\n\nTo encrypt a file, use the `encrypt` command followed by the filename. The encrypted file will have a `.sk` extension.\n\n```sh\nshitkey encrypt mysecretfile.txt\n```\n\n### Decrypt a file\n\nTo decrypt a file, use the `decrypt` command followed by the filename. The input file must have a `.sk` extension.\n\n```\nshitkey decrypt mysecretfile.txt.sk\n```\n\n### View version\nTo display the version of Shitkey, use the version command.\n\n```\nshitkey version\n```\n\n## How it works\n\n- **Password Input**: The user is prompted to enter a password, which is read securely without being echoed to the terminal.\n- **Salt Generation**: A cryptographically-secure random salt is generated for each encryption process. The salt has a size of 32 bytes.\n- **Key Derivation**: The scrypt algorithm is used to derive a strong encryption key from the user's password and the generated salt. The key size is 32 bytes.\n- **Encryption**: The derived key is used to create an AES-256 cipher block. An AEAD (Authenticated Encryption with Associated Data) scheme, GCM (Galois/Counter Mode), is used for encryption to ensure both confidentiality and integrity. A unique nonce (12 bytes in size) is also generated for the encryption process.\n- **File Output**: The encrypted data is written to a new file with the .sk extension. This new file contains the salt, the nonce, and the ciphertext in that specific order.\n\n## License\n\nShitkey is free software licensed under the GNU General Public License v3.0 or any later version. You should have received a copy of the GNU General Public License with this program. If not, see https://www.gnu.org/licenses/.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnthnn%2Fshitkey","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnthnn%2Fshitkey","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnthnn%2Fshitkey/lists"}