CommutativeSchemeConformanceSuite

Conformance TCK for CommutativeScheme. Validate a new scheme by subclassing this suite and overriding newScheme:

class MySchemeConformanceTest : CommutativeSchemeConformanceSuite() {
override fun newScheme() = MyScheme()
}

The suite verifies the commutative-encryption laws the card-deal protocol relies on (round-trip, commutativity, multi-layer strip-order independence, key distinctness). It tests the raw CommutativeScheme contract on in-domain byte messages — plaintext domain encoding (e.g. SRA's marker codec) is a scheme-layer concern and is out of scope here; override validPlaintexts if your scheme's valid domain differs from short ASCII.

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
Link copied to clipboard

A fresh scheme instance under test.

Link copied to clipboard

Sample messages guaranteed to lie in the scheme's valid input domain.

Link copied to clipboard

Honest-path verification: an CommutativeScheme.encrypt/CommutativeScheme.strip transition that the scheme itself produced must verify. Current schemes stub the verify methods to true, so this pins the baseline a future (e.g. ZK-proof) implementation must also satisfy — honest transitions are always accepted.