Prerequisites
Install the .NET 8 SDK before you build. It is the only required dependency.- Linux
- Windows
Follow the .NET 8 SDK installation instructions for Linux on the Microsoft documentation site. Package manager instructions are available for all major distributions (apt, dnf, zypper, and others).
8.x.x or higher.
Building with dotnet build
This method works on both Windows and Linux.Build the solution
Run The build output is placed in each project’s
dotnet build from the root of the repository. This compiles the entire solution including all libraries, tools, and tests:bin/ subdirectory.Building with Visual Studio 2022
Visual Studio 2022 is supported on Windows only.Open the solution
Open
Titanis.sln in the root of the repository. Visual Studio will restore NuGet packages automatically.Release builds and signing
Release builds require a strong-name key file. If
Titanis.snk is not present in the repository root, the Release configuration will fail to build.Titanis.snk). This key is not included in the public repository. If you are building for internal distribution and require signed assemblies, you will need to supply your own key file:
Titanis.snk and are suitable for development and testing.
Project structure
The solution organizes code into the following functional groups:| Group | Description |
|---|---|
| Base | Utilities shared across other components |
| Crypto | Cryptographic algorithm implementations |
| Formats | Readers and writers for formats such as ASN.1 |
| Protocols | Network protocol implementations (SMB2, MSRPC, LDAP) |
| Security | Security protocol implementations (NTLM, Kerberos, SP-NEGO) |
| Tools | Standalone CLI tools |
| Test | Unit tests |
| _Build | Build configuration files |