HexaEight.Bridge
1.0.0-preview9
Prefix Reserved
dotnet add package HexaEight.Bridge --version 1.0.0-preview9
NuGet\Install-Package HexaEight.Bridge -Version 1.0.0-preview9
<PackageReference Include="HexaEight.Bridge" Version="1.0.0-preview9" />
<PackageVersion Include="HexaEight.Bridge" Version="1.0.0-preview9" />
<PackageReference Include="HexaEight.Bridge" />
paket add HexaEight.Bridge --version 1.0.0-preview9
#r "nuget: HexaEight.Bridge, 1.0.0-preview9"
#:package HexaEight.Bridge@1.0.0-preview9
#addin nuget:?package=HexaEight.Bridge&version=1.0.0-preview9&prerelease
#tool nuget:?package=HexaEight.Bridge&version=1.0.0-preview9&prerelease
HexaEight.Bridge
Universal integration layer for HexaEight cryptographic identity and Dead Drop Encryption. One small .NET assembly that lets any language (Node.js, Python, .NET native — Go, Rust coming) consume the HexaEight platform with the same API surface.
The Bridge is the layer every HexaEight SDK is built on top of.
Install
dotnet add package HexaEight.Bridge --prerelease
Multi-targets net8.0, net9.0, net10.0. NuGet picks the right one for your host.
Five-line example
using HexaEight.Bridge;
var client = new Client();
string envelope = await client.EncryptEnvelopeAsync("alice.example.com", "Hello Alice!");
var msg = await client.DecryptEnvelopeAsync(envelope);
Console.WriteLine($"{msg.From}: {msg.Body}");
No key exchange. No PKI. No prior provisioning of the recipient. Just send.
API cheat sheet
| Method | What it does |
|---|---|
new Client() |
Loads your identity from env-file + hexaeight.mac (or hexaeightkeys.db on Azure). |
client.Name, client.SourceId |
Your fully-qualified identity and login-token prefix. |
EncryptEnvelopeAsync(recipient, body, kgt?, pinAsk?, sessionId?) |
Returns a single envelope string. Variant A by default; Variant B if sessionId is set. |
DecryptEnvelopeAsync(envelope, pinAsk?) |
Auto-detects variant. Returns DecryptedEnvelope { From, Body, Kgt, Kind, SessionId }. |
Client.InspectEnvelope(envelope) (static) |
Parses public metadata without decrypting — for deny-list filtering. |
FetchAskAsync(recipient, kgt) |
Pre-warm the ASK cache. |
PinAsk(recipient, kgt) / PinAskForSession(sessionId, ask) |
Mark a cache entry as preferred. |
UnpinAsk(...) / UnpinAskForSession(...) |
Remove the preference. |
HasAsk(...) / HasAskForSession(...) |
Test cache presence without fetching. |
ClearAskCache(recipient?, sessionId?) |
Remove entries. No args = clear all. |
SaveAskCacheAsync(path) / LoadAskCacheAsync(path) |
JSON persistence. |
EnableAutoPersist(path, interval?) |
Flush cache every N seconds. Cancels on Dispose(). |
For the full reference — parameters, return types, error semantics, performance numbers, wire format spec, and conceptual guides — see hexaeight.com/docs/reference/bridge.
Wire format
Envelope strings come in two variants:
Standard: {sourceId}|{kgt}|{ciphertext}
Sessioned: hsha:{sha256(sessionId)}|{ciphertext}
Full spec at hexaeight.com/docs/reference/wire-format.
Identity load order
The Bridge looks for credentials in this order, stopping at the first hit:
- Azure mode —
hexaeightkeys.db(SQLite) in the current working directory. - Environment variable —
HEXAEIGHT_MACHINETOKEN. - Env-file —
env-filein the current working directory with aHEXAEIGHT_MACHINETOKEN=…line.
The Bridge is read-only with respect to your environment — it never sets environment variables.
Cross-language use
The same Client class is reachable from:
- Node.js via
node-api-dotnetunderdotnet.HexaEight.Bridge.Client— packaged as@hexaeight/sdk. - Python via
pythonnetin theHexaEight.Bridgenamespace — packaged ashexaeight-sdk(in progress).
Method names, parameters, and return shapes are identical across languages. Each SDK exposes the surface in idiomatic style (camelCase for JS/TS, snake_case for Python).
For AI agents
A flat-text mirror of the full API reference is at hexaeight.com/llms-full.txt. The site-wide index follows the llms.txt convention at hexaeight.com/llms.txt.
Links
- Documentation — https://hexaeight.com/docs
- API Reference — https://hexaeight.com/docs/reference/bridge
- Quickstart — https://hexaeight.com/docs/quickstart
- Wire format spec — https://hexaeight.com/docs/reference/wire-format
- Pricing & licensing — https://hexaeight.com/pricing
- Status — https://status.hexaeight.com
- Support — support@hexaeight.com
License
Apache License 2.0. The Bridge is open-source plumbing; the underlying HexaEight cipher implementation (Dead Drop Encryption) is delivered as closed-source NuGet packages (HexaEightASKClientLibrary, HexaEightJWTLibrary) and is patent-pending.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Azure.Identity (>= 1.13.1)
- Azure.ResourceManager (>= 1.13.0)
- Azure.ResourceManager.Network (>= 1.10.0)
- ConsoleTools (>= 1.1.1)
- HexaEightASKClientLibrary (>= 1.9.143)
- HexaEightJWTLibrary (>= 1.9.287)
-
net8.0
- Azure.Identity (>= 1.13.1)
- Azure.ResourceManager (>= 1.13.0)
- Azure.ResourceManager.Network (>= 1.10.0)
- ConsoleTools (>= 1.1.1)
- HexaEightASKClientLibrary (>= 1.9.143)
- HexaEightJWTLibrary (>= 1.9.287)
-
net9.0
- Azure.Identity (>= 1.13.1)
- Azure.ResourceManager (>= 1.13.0)
- Azure.ResourceManager.Network (>= 1.10.0)
- ConsoleTools (>= 1.1.1)
- HexaEightASKClientLibrary (>= 1.9.143)
- HexaEightJWTLibrary (>= 1.9.287)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-preview9 | 55 | 6/6/2026 |
| 1.0.0-preview7 | 65 | 6/5/2026 |
| 1.0.0-preview6 | 68 | 5/26/2026 |
| 1.0.0-preview5 | 54 | 5/26/2026 |
| 1.0.0-preview18 | 39 | 6/12/2026 |
| 1.0.0-preview17 | 39 | 6/12/2026 |
| 1.0.0-preview16 | 41 | 6/12/2026 |
| 1.0.0-preview15 | 45 | 6/11/2026 |
| 1.0.0-preview13 | 43 | 6/9/2026 |
| 1.0.0-preview12 | 46 | 6/8/2026 |
| 1.0.0-preview11 | 61 | 6/7/2026 |
| 1.0.0-preview10 | 48 | 6/6/2026 |