Stop people from prying around in your process's memory!
- Cross platform memory protection providing low and high level access to protected memory using DPAPI on Windows NT and platform idependent memory protection on UNIX systems using a custom BLAKE3-based stream cipher to keep your passwords and sensitive data safe from memory dumps and snooping.
- Simple managed and unmanaged debugger detection and mitigation, thread hiding, etc ...
- Resource protection - protect your application resources in compressed and encrypted key-value binary blobs.
- High performance cryptography library (AES, SHA family hashes, Scrypt, BLAKE2, BLAKE3, ...) operating completely on protected memory, allowing you to use your protected secrets without compromising them (unlike
SecureStringfor example).- SHA Family
- SHA-1
- SHA-224
- SHA-256
- SHA-384
- SHA-512
- SHA-3
- BLAKE2
- BLAKE3
- AES-256
- Scrypt
- SHA Family
- Unified high and low level interfaces for all cryptographic functions for protected and unprotected memory alike.
- Low and high level interfaces for process interop, dll injection, process hollowing and X86 assembly generation.
- Hardware-accelerated hex-decode function that is up 6.5-10 times faster than
Convert.FromHexString()(15.2 GB/s vs. 2.3 GB/s on Intel i9-13900K, 16.5 GB/s vs. 1.6 GB/s on Apple M2 using ARM NEON/AdvSIMD). - Unmanaged memory framework and allocation tracking - prevent memory leaks in your unmanaged code.
- Bit manipulation utilities - easily swap endianness.
- WinAPI data types - Easy .NET to Windows type conversion. Do you miss your
DWORDs,BSTRs andLPCTSTRs? Me neither, but if you have to use them for interop - here you go.