{"id":16022116,"url":"https://github.com/scrogson/lockbox","last_synced_at":"2025-10-23T22:44:38.231Z","repository":{"id":256871705,"uuid":"856678356","full_name":"scrogson/lockbox","owner":"scrogson","description":"Lockbox is a Rust library that provides easy-to-use, secure, and efficient encryption and decryption using the AES-GCM (Galois/Counter Mode) algorithm.","archived":false,"fork":false,"pushed_at":"2024-09-13T13:30:49.000Z","size":10,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-02T16:07:01.832Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","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/scrogson.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":"2024-09-13T02:06:03.000Z","updated_at":"2025-04-10T23:48:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"70637c5a-9881-48bf-b2eb-4d0ec09856de","html_url":"https://github.com/scrogson/lockbox","commit_stats":null,"previous_names":["scrogson/cloak"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/scrogson/lockbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scrogson%2Flockbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scrogson%2Flockbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scrogson%2Flockbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scrogson%2Flockbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scrogson","download_url":"https://codeload.github.com/scrogson/lockbox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scrogson%2Flockbox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263484426,"owners_count":23473756,"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-08T18:21:14.189Z","updated_at":"2025-10-23T22:44:33.187Z","avatar_url":"https://github.com/scrogson.png","language":"Rust","readme":"# Lockbox\n\n`Lockbox` is a Rust library that provides easy-to-use, secure, and efficient\nencryption and decryption using the AES-GCM (Galois/Counter Mode) algorithm.\n\nIt ensures data integrity and confidentiality while offering flexibility for\nvarious use cases.\n\n## Features\n\n- Simple and intuitive API for encrypting and decrypting data.\n- Support for customizable tags, Additional Authenticated Data (AAD), and Initialization Vectors (IV).\n- Secure default settings to avoid common cryptographic pitfalls.\n- Error handling with detailed, meaningful messages.\n\n## Installation\n\nTo use `Lockbox` in your Rust project, add the following to your `Cargo.toml`:\n\n```toml\n[dependencies]\nlockbox = \"0.1\"\n```\n\n## Getting Started\n\nHere’s a quick example to get you started with `Lockbox`:\n\n```rust\nuse lockbox::Vault;\n\nfn main() -\u003e Result\u003c(), Box\u003cdyn std::error::Error\u003e\u003e {\n    // Generate a random key\n    // This is for demo purposes. In a real situation you'll want to\n    // use a stable key.\n    let key = lockbox::generate_key();\n\n    // Initialize a vault with the key and a tag\n    let vault = Vault::new(\u0026key, \"AES.GCM.V1\");\n\n    // Encrypt some plaintext\n    let plaintext = b\"Hello, secure world!\";\n    let encrypted = vault.encrypt(plaintext)?;\n    println!(\"Encrypted: {:?}\", encrypted);\n\n    // Decrypt the ciphertext\n    let decrypted = vault.decrypt(\u0026encrypted)?;\n    println!(\"Decrypted: {}\", String::from_utf8(decrypted)?);\n\n    Ok(())\n}\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrogson%2Flockbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscrogson%2Flockbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrogson%2Flockbox/lists"}