Table of Contents

Namespace EncDotNet.S100.ExchangeSets.Protection

Classes

DataPermit

A single datasetPermit record from a PERMIT.XML file: the wrapped (encrypted) cell key for one product file, together with the licensing metadata that scopes it.

DatasetDecryptionException

The exception thrown when a protected dataset's permit authorized it, but the cell key unwrapped from that permit could not decrypt the dataset.

DatasetPermitException

The exception thrown when a protected dataset cannot be opened under its Part 15 permit.

DecryptingAssetSource

An IAssetSource decorator that transparently decrypts (and optionally decompresses) the protected files of an S-100 Part 15 exchange set as they are read, so downstream dataset readers and the ExchangeSetVerifier can consume plaintext through the ordinary IAssetSource contract.

HardwareId

A 16-byte (128-bit) hardware identifier (HW_ID) assigned by an OEM to an end-user system. The hardware id is the key with which a Data Server wraps the per-product cell keys delivered in a DataPermit.

Part15SignatureContentResolver

Resolves raw, compressed, and unencrypted resource representations for S-100 Part 15 signature verification.

Part15Signer

Produces Part 15 digital signatures with a data server's (or other signing authority's) ECDSA P-384 key.

PermitAuthenticationResult

The result of authenticating and parsing a Part 15 permit.

PermitEvaluationResult

The result of evaluating a dataset against its Part 15 permit.

PermitFile

A parsed PERMIT.XML file: the licensing document a Data Server issues to a Data Client conveying the (encrypted) cell keys for the products it has licensed.

PermitFileWriter

Writes PERMIT.XML files, and signs them as PERMIT.SIGN: the data-server side of the Part 15 permit exchange.

PermitGroup

One header/products pair within a PermitFile (ยง15-7.4.3).

PermitHeader

The header section of a PERMIT.XML file: provenance and addressing metadata that applies to the permits that follow it.

PermitKeyProvider

An IDatasetKeyProvider backed by a parsed PermitFile and a Data Client hardware id. It locates the permit for a requested dataset and unwraps its cell key with the hardware id.

PermitSignatureVerificationResult

The result of authenticating a PERMIT.XML file with its PERMIT.SIGN signature.

PermitSignatureVerifier

Authenticates PERMIT.XML content with its Part 15 PERMIT.SIGN file.

S100Cipher

Implements the symmetric (confidentiality) cryptography of the S-100 Part 15 Data Protection Scheme: AES-128 in CBC mode with the modified initialization vector handling, plus the single-block key-wrapping used for cell keys and hardware identifiers.

StandaloneDigitalSignature

A parsed Part 15 standalone signature document used by PERMIT.SIGN and CATALOG.SIGN.

StandaloneDigitalSignatureReader

Reads Part 15 standalone digital-signature documents.

StandaloneDigitalSignatureWriter

Writes Part 15 standalone digital-signature documents, the form of PERMIT.SIGN and CATALOG.SIGN.

UserPermit

A parsed or constructed S-100 Part 15 user permit: the 46-character token an OEM issues to a Data Client that conveys the system's hardware id in an encrypted form, together with a checksum and the manufacturer identifier.

Interfaces

IDatasetKeyProvider

Resolves the S-100 Part 15 cell (product) key needed to decrypt a given dataset file.

Enums

PermitEvaluationOutcome

Describes whether a dataset permit authorizes a catalogue dataset.