secure-memory: Securely allocated and deallocated memory.
Securely allocated and deallocated memory.
When handling sensitive data in your program, you want to be extra careful and make sure that it is gone as soon as you are done working with it. In a garbage-collected language like Haskell this is not so easy, since the garbage collector can move your bytes around and create copies of it. In addition to that, even if the memory gets eventually deallocated, it is not guaranteed that the data will actually be zeroed-out or overriden.
To make matters even worse, if the operating system runs out of RAM while your sensitive data remains in the memory, the page that contains your data can get swapped out and, thus, end up on the disk, which you, of course, absolutely want to never happen.
This library provides a (relatively) easy to use interface for working with data allocated in a secure memory location that is guaranteed to never end up on the disk and that will be zeroed-out as soon as you finish using it.
[Skip to Readme]
|Versions [RSS]||0.0.0.1, 0.0.0.2|
|Dependencies||base (>=4.10 && <4.16), bytestring (>=0.9 && <0.11), libsodium (>=126.96.36.199 && <2), memory (>=0.14.15 && <0.17), reflection (>=188.8.131.52 && <2.2), safe-exceptions (>=0.1 && <0.2), secure-memory, text (>=0.7 && <1.3), unix (>=2.0 && <2.8) [details]|
|Author||Kirill Elagin <email@example.com>|
|Source repo||head: git clone https://github.com/serokell/haskell-crypto|
|Uploaded||by kirelagin at 2021-11-22T17:47:23Z|
|Downloads||186 total (4 in the last 30 days)|
|Rating||(no votes yet) [estimated by Bayesian average]|
|Status||Docs uploaded by user [build log]
All reported builds failed as of 2021-11-22 [all 2 reports]