# False Bottom: A deniable encryption scheme False Bottom is a [deniable encryption](https://en.wikipedia.org/wiki/Deniable_encryption) scheme. As such, unlike traditional encryption algorithms, False Bottom allows for the encryption and decryption of multiple messages to and from a single ciphertext. Each message gets a corresponding key which can only be used to decrypt it. Link to Technical Paper: [here](https://doi.org/10.1109/ACCESS.2023.3288285) **Security Note:** This library has not been audited. Use it at your own risk. ## Usage and Documentation To use this library in your Rust program, add the following line under your `Cargo.toml` dependencies: ```toml [dependencies] false-bottom = "0.2.0" ``` Check out the [crates.io](https://crates.io/crates/false-bottom) page to check the latest version of this library. Refer to the documentation at [docs.rs](https://docs.rs/false-bottom). ## Run the examples Refer to the [examples](./examples) directory. You can run the provided examples using the following command: ```sh cargo run --example ``` ## Todo - Add more block sizes. ## License Copyright © 2024 K Shiva Kiran <*shiva_kr at riseup dot net*>. This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ## Credits This algorithm has been designed by Shahzad Ahmad <*shahzad dot ahmad at jku dot at*>. The technical paper can be obtained [here](https://doi.org/10.1109/ACCESS.2023.3288285).