DSInternals.Common 6.3.0

Prefix Reserved
dotnet add package DSInternals.Common --version 6.3.0
                    
NuGet\Install-Package DSInternals.Common -Version 6.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DSInternals.Common" Version="6.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DSInternals.Common" Version="6.3.0" />
                    
Directory.Packages.props
<PackageReference Include="DSInternals.Common" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DSInternals.Common --version 6.3.0
                    
#r "nuget: DSInternals.Common, 6.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DSInternals.Common@6.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DSInternals.Common&version=6.3.0
                    
Install as a Cake Addin
#tool nuget:?package=DSInternals.Common&version=6.3.0
                    
Install as a Cake Tool

DSInternals Common Library

Introduction

The DSInternals.Common package is the foundational library shared between other DSInternals packages. It provides core cryptographic functionality and utilities for working with Active Directory security data.

As this library uses Windows-specific cryptographic APIs (P/Invoke), it is only supported on Windows.

Key Features

  • Password Hash Computation: Calculate NT hash, LM hash, and OrgId hash values
  • Kerberos Key Derivation: Generate Kerberos keys from passwords
  • Key Credential Parsing: Parse and create NGC, FIDO2, and STK key credentials
  • Active Directory Credential Extraction: Decrypt password hashes, LAPS passwords, DPAPI certificates, and DNSSEC keys stored in Active Directory

Usage Examples

Computing NT Hash

using DSInternals.Common.Cryptography;

// Compute NT hash from a plain-text password
byte[] ntHash = NTHash.ComputeHash("MyPassword123");
Product Compatible and additional computed target framework versions.
.NET net8.0-windows7.0 is compatible.  net9.0-windows was computed.  net9.0-windows7.0 is compatible.  net10.0-windows was computed. 
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on DSInternals.Common:

Package Downloads
DSInternals.Replication

DSInternals Replication implements a client for the Active Directory Replication Service Remote Protocol (DRS-R). It can be used to remotely extract password hashes from domain controllers.

DSInternals.DataStore

DSInternals DataStore is an advanced framework for offline ntds.dit file manipulation. It can be used to extract password hashes from Active Directory backups or to modify the sIDHistory and primaryGroupId attributes.

DSInternals.SAM

DSInternals SAM implements a client for the Security Accounts Manager Remote Protocol (SAM-R) and Local Security Authority Remote Protocol(MS-LSAD or LSARPC). It can be used to import password hashes into Active Directory or to query and modify LSA Policy.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on DSInternals.Common:

Repository Stars
CICADA8-Research/RemoteKrbRelay
Remote Kerberos Relay made easy! Advanced Kerberos Relay Framework

- Improved generation of NGC keys to meet January 2026 Windows validation changes.
 - Removed Azure AD Graph API-related code.