ZcapLd.Core
5.0.0
dotnet add package ZcapLd.Core --version 5.0.0
NuGet\Install-Package ZcapLd.Core -Version 5.0.0
<PackageReference Include="ZcapLd.Core" Version="5.0.0" />
<PackageVersion Include="ZcapLd.Core" Version="5.0.0" />
<PackageReference Include="ZcapLd.Core" />
paket add ZcapLd.Core --version 5.0.0
#r "nuget: ZcapLd.Core, 5.0.0"
#:package ZcapLd.Core@5.0.0
#addin nuget:?package=ZcapLd.Core&version=5.0.0
#tool nuget:?package=ZcapLd.Core&version=5.0.0
ZcapLd.Core
.NET 10 library for the supported ZCAP v0.4.0 profile: root and delegated capabilities, Ed25519/P-256 proofs, controller authorization, replay protection, and signed revocation. Proofs use RDFC-1.0 through DataProofs and NetCrypto.
Provide an IDidSigner and IDidResolver; no private-key store is installed by default.
DidKeyResolver handles did:key. For several DID methods, register one adapter per method
in a CompositeDidResolver (full prefixes such as "did:web:"): it routes key resolution
and controller authorization to the adapter for the controller's method, so each adapter should
also implement NetDid's IVerificationRelationshipResolver. Key-only adapters fail closed.
var signing = new SigningService(didSigner, didResolver);
var capabilities = new CapabilityService(signing);
var root = await capabilities.CreateRootCapabilityAsync(ownerDid, "https://example.com/reports");
var child = await capabilities.DelegateCapabilityAsync(root, agentDid, new[] { "read" },
DateTime.UtcNow.AddDays(1));
var verifier = new VerificationService(didResolver);
var invocation = capabilities.CreateInvocation(child, "read");
invocation.Proof = await signing.SignInvocationAsync(invocation, agentDid);
bool authorized = await verifier.VerifyInvocationAsync(invocation, child, root);
Supply the root explicitly as above, or configure IRootCapabilityResolver.
For cross-stack invocation use SignCapabilityInvocationAsync and
VerifyCapabilityInvocationAsync; the relying party supplies its expected action
and target. The root is referenced by ID; a delegated invocation embeds the zcap.
Version 5 removes all typed caveat APIs and invocation-context property overloads.
Incoming caveat fields are rejected even when null or empty. Use expires,
allowedAction, and an optional delegation invocationTarget instead.
Equivalent IRI/prefixed keys and nested restrictions are rejected throughout
capability/proof JSON. Their contexts must be zcap/v1 or a supported proof-suite
context; inline aliases and unrelated vocabularies are unsupported.
VerificationPolicy.AllowTargetAttenuation defaults to false; explicitly enable
it for path/query narrowing. The target API must enforce parameter semantics.
Use IRevocationStore and signed revocation requests. Replicated verifiers must
share authoritative revocation state; there is no automatic polling of a URI
supplied by a capability holder. INonceStore must likewise be shared when replay
protection spans verifier instances.
See the repository for the full guide, policy options, examples and live JavaScript interoperability tests.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- DataProofsDotnet.Core (>= 1.3.0)
- DataProofsDotnet.Legacy (>= 1.3.0)
- DataProofsDotnet.Rdfc (>= 1.3.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.13)
- NetCrypto (>= 1.7.1)
- NetDid.Core (>= 3.1.0)
- NetDid.Method.Key (>= 3.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on ZcapLd.Core:
| Package | Downloads |
|---|---|
|
ZcapLd.AspNetCore
ASP.NET Core endpoint adapter for ZCAP-LD revocation workflows with pluggable revocation storage backends. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.0.0 | 214 | 10/25/2026 |
| 4.2.0 | 988 | 7/28/2026 |
| 4.1.0 | 4,148 | 7/14/2026 |
| 4.0.0 | 262 | 6/19/2026 |
| 3.0.0 | 158 | 6/6/2026 |
| 2.1.1 | 188 | 5/2/2026 |
| 2.1.0 | 133 | 5/2/2026 |
| 2.0.0 | 153 | 4/29/2026 |
| 1.2.0 | 378 | 3/27/2026 |
| 1.1.0 | 329 | 3/18/2026 |
| 1.0.0 | 145 | 3/9/2026 |
| 0.3.3 | 668 | 3/4/2026 |
| 0.3.2 | 227 | 3/1/2026 |
| 0.3.1 | 143 | 3/1/2026 |
| 0.3.0 | 148 | 2/28/2026 |
| 0.2.1 | 214 | 2/26/2026 |
| 0.2.0 | 148 | 2/26/2026 |
| 0.1.1 | 156 | 2/24/2026 |
| 0.1.0 | 150 | 2/20/2026 |