---
title: SAIF.NetCore.SystemHash dependencies
summary: Internal and external dependencies for this library.
status: draft
owner: SAIF Platform Team
last_reviewed: 2026-10-02
library: SAIF.NetCore.SystemHash
reference_type: package
---

# SAIF.NetCore.SystemHash dependencies

SAIF.NetCore.SystemHash takes two internal NuGet package dependencies — the foundation package `SAIF.NetCore.ServiceContracts` and, as one of the three documented implementation-to-implementation exceptions in `Architecture.md`, `SAIF.NetCore.HashUtil` — and has no external package dependencies and no outbound API calls; its single public type performs only in-process cryptographic computation.

## Internal dependencies

| Dependency | Reference Type | Usage |
| --- | --- | --- |
| [SAIF.NetCore.ServiceContracts](../saif-netcore-servicecontracts/overview.md) | NuGet Package (same-repo) | Supplies the `ISystemHashService` contract implemented by `SystemHashService` and the `SystemType` enum used as its primary input. |
| [SAIF.NetCore.HashUtil](../saif-netcore-hashutil/overview.md) | NuGet Package (same-repo) | Documented implementation-to-implementation exception (`Architecture.md` "Notable exceptions"); supplies `SaltShaker`, which `SystemHashService` constructs directly to salt and de-salt the issued credential, and `SystemHashExpiredException`, which `SystemHashService` throws on expiry. |

## Dependency risks and notes
- This library has no external (non-Framework.NCore) package dependencies; its `.csproj` references only `SAIF.NetCore.ServiceContracts` and `SAIF.NetCore.HashUtil`.
- **Version skew on the inspected salting dependency.** This library pins `SAIF.NetCore.HashUtil` at `8.2023.319.2`, while the repository's current feed-latest version for that same package is `10.2026.26267.1` and `SAIF.NetCore.ServiceContracts` is pinned at the current `10.2026.26267.1`. The salting/de-salting mechanics documented throughout this library (constructor split, 42-character map, hex encoding, culture-sensitive date parsing — [BR-SH-03](business-rules.md#br-sh-03-credential-embeds-creation-time), [BR-SH-08](business-rules.md#br-sh-08-credential-lifetime-window), [BR-SH-09](business-rules.md#br-sh-09-malformed-credential-raises-bcl-exceptions)) were read from the `HashUtil` **source** as it exists in this repository today, which may differ from the `8.2023.319.2` **binary** this library actually consumes at build/runtime. Whether that pinned `8.2023.319.2` package ships a `net10.0` asset, or resolves via a lower-TFM compatibility asset, is not determinable from this repository.** Consumers should verify the installed `HashUtil` package version matches the behavior documented here before relying on exact byte-level details (map width, date-part order, exception types).
- No type in this repository takes a package reference to `SAIF.NetCore.SystemHash` except `SAIF.NetCore.ServiceExtensions`; `SAIF.NetCore.EnvironmentClient` and `SAIF.NetCore.OIDC` consume only the `ISystemHashService` interface from `SAIF.NetCore.ServiceContracts` and are not dependents of this package*.
- This library performs no outbound network calls of any kind; the "API dependencies" section is omitted because both of its operations (`Get`/`ComputeHash` and `RemoveSystemHashSaltAndValidateLifetime`) are pure in-process computation backed by `SAIF.NetCore.HashUtil`.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Security and authorization](security-authorization.md)
- [API reference](api/index.md)

> **Note:** Statements marked with `*` were inferred from code structure, naming
> conventions, or contextual evidence where direct confirmation was not available
> in source artifacts. Statements marked with `**` could not be confirmed; treat
> as unknown until verified.

## Sources
- `src/SAIF.NetCore.SystemHash/SAIF.NetCore.SystemHash/SAIF.NetCore.SystemHash/SAIF.NetCore.SystemHash.csproj`
- `src/SAIF.NetCore.SystemHash/SAIF.NetCore.SystemHash/SAIF.NetCore.SystemHash/SystemHashService.cs`
- `Architecture.md`
