ZcapLd.Core 5.0.0

dotnet add package ZcapLd.Core --version 5.0.0
                    
NuGet\Install-Package ZcapLd.Core -Version 5.0.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="ZcapLd.Core" Version="5.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ZcapLd.Core" Version="5.0.0" />
                    
Directory.Packages.props
<PackageReference Include="ZcapLd.Core" />
                    
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 ZcapLd.Core --version 5.0.0
                    
#r "nuget: ZcapLd.Core, 5.0.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 ZcapLd.Core@5.0.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=ZcapLd.Core&version=5.0.0
                    
Install as a Cake Addin
#tool nuget:?package=ZcapLd.Core&version=5.0.0
                    
Install as a Cake Tool

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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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