Implementation of the PRESENT lightweight block cipher algorithm in Rust
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This small library implements the PRESENT lightweight block cipher. The algorithm was first presented in this paper. Although the cipher is designed to be implemented directly on hardware, this project aims to provide it in software, which can be used e.g. for testing purposes.

This project is independent of the original paper and not affiliated with the authors of that paper in any way.


The algorithm should, according to the original authors, not be used in environments where a high security level is required. This is caused by the high priority on performance, which entails relatively small keys (80 bit). This implementation, however, should not be used in any environment where security is important, because I do not guarantee that the algorithm is implemented in a secure manner (it most likely is not).


The code is licensed under the terms of the GNU Lesser General Public License (LGPL) Version 3. For more information, please see the file.