{"id":15443816,"url":"https://github.com/zanderlewis/laq-fort","last_synced_at":"2025-09-02T12:32:38.599Z","repository":{"id":257789919,"uuid":"860955262","full_name":"zanderlewis/laq-fort","owner":"zanderlewis","description":"v2: https://github.com/zanderlewis/laqf-2","archived":true,"fork":false,"pushed_at":"2025-01-28T15:29:05.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-17T17:14:32.809Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://crates.io/crates/laqfort","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zanderlewis.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}},"created_at":"2024-09-21T16:00:32.000Z","updated_at":"2025-06-04T17:53:33.000Z","dependencies_parsed_at":"2024-09-22T01:12:41.748Z","dependency_job_id":"11002cf2-e7aa-4219-bb3c-ca6ab868f7e4","html_url":"https://github.com/zanderlewis/laq-fort","commit_stats":null,"previous_names":["zanderlewis/laq-fort"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zanderlewis/laq-fort","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zanderlewis%2Flaq-fort","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zanderlewis%2Flaq-fort/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zanderlewis%2Flaq-fort/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zanderlewis%2Flaq-fort/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zanderlewis","download_url":"https://codeload.github.com/zanderlewis/laq-fort/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zanderlewis%2Flaq-fort/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273285632,"owners_count":25078413,"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","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-10-01T19:37:00.818Z","updated_at":"2025-09-02T12:32:38.321Z","avatar_url":"https://github.com/zanderlewis.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LAQ-Fort\nEncryption for the mighty.\n\nLAQ-Fort (Lattice Authenticated Quantumn Fortress) is a ultra secure encryption algorithm that is quantum resistant. It is based on the Kyber lattice-based algorithm along with AES-256 encryption with a custom multiplier for amount of AES layers. LAQ-Fort also utilizes a fractal encryption method to further secure the data with a custom depth level. The algorithm is designed to be quantum resistant and secure against all known attacks.\n\nYou can try LAQ-Fort on the web [here!](https://api.zanderlewis.dev/laq-fort)\n\n## Installation\nAdd the following to your `Cargo.toml` file:\n```toml\n[dependencies]\nlaqfort = \u003claqfort-version\u003e\n```\n\n## Example Usage\n```rs\nuse laqfort::*;\nuse zeroize::Zeroize;\nuse std::str;\nuse clap::Parser;\nuse pqc_kyber::{keypair, Keypair};\n\n#[derive(Parser, Debug)]\n#[clap(author, version, about, long_about = None)]\npub struct Args {\n    #[clap(short, long, default_value_t = 3)]\n    pub depth: usize,\n\n    #[clap(short, long, default_value_t = 8)]\n    pub mult: usize,\n\n    // Data to be encrypted\n    #[clap(long)]\n    pub data: Option\u003cString\u003e,\n}\n\nfn main() {\n    let args = Args::parse();\n    let mut rng = rand::thread_rng();\n    let Keypair { public, mut secret } = keypair(\u0026mut rng).unwrap();\n    let (ciphertexts, mut shared_key) = triple_encapsulation(\u0026public, \u0026mut rng).unwrap();\n    triple_decapsulation(\u0026secret, \u0026ciphertexts).unwrap();\n    let key = \u0026shared_key;\n    let depth = args.depth;\n    let mult = args.mult;\n    let mle_key = \"mle_key\";\n    let data = args.data;\n    let encrypted_data = laqf_encrypt(depth, mult, data, mle_key, key).unwrap();\n    let decrypted_data = laqf_decrypt(depth, mult, Some(encrypted_data.clone()), mle_key, key).unwrap();\n    println!(\"Encrypted data: {}\", encrypted_data);\n    println!(\"Decrypted data: {}\", str::from_utf8(\u0026decrypted_data).unwrap());\n\n    // MLE wrong key decrypt\n    let wrong_mle_key = \"wrong_mle_key\";\n    let decrypted_data = laqf_decrypt(depth, mult, Some(encrypted_data.clone()), wrong_mle_key, key).unwrap();\n    println!(\"Wrong MLE key decrypted data: {}\", str::from_utf8(\u0026decrypted_data).unwrap());\n\n    // Zeroize the shared key after use\n    shared_key.zeroize();\n\n    // Zeroize the secret key after use\n    secret.zeroize();\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzanderlewis%2Flaq-fort","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzanderlewis%2Flaq-fort","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzanderlewis%2Flaq-fort/lists"}