Streaming Hub 0.2

Plugin signing and security

Distinguish official signatures, community keys and local consent.

Alpha
Developer referenceUpdated 2026-10-22

Current Core accepts official signed plugins and community-signed plugins approved by the user. Unsigned or invalid packages are blocked.

Community signing

Generate an author key, sign the complete package and verify it using the repository signer:

dotnet run --project StreamingHub.PluginSigner -- generate-key --out <private-key.json> --key-id example-author-v1
dotnet run --project StreamingHub.PluginSigner -- sign --plugin <plugin-folder> --key <private-key.json> --include-all
dotnet run --project StreamingHub.PluginSigner -- verify --plugin <plugin-folder>

Distribute the public publisher-key material included by signing; never distribute the private key. A community signature proves key possession, not official status or independently verified real-world identity.

Consent and execution

Users can allow the exact package or trust a publisher key within reviewed capabilities. A changed key/additional capability needs renewed consent. Update-source approval and API pairing are separate decisions.

Plugins execute in Core with the Windows user's access. Declared capabilities and cooperative cancellation are not an OS security sandbox. See Publishers & Trust.