Documentation ¶
Overview ¶
Package schemetest provides functions used for testing both regular and concurrent coconut scheme.
Package schemetest provides functions used for testing both regular and concurrent coconut scheme.
Package schemetest provides functions used for testing both regular and concurrent scheme.
Index ¶
- func RandomInts(q int, max int) []int
- func TestAggregateVerification(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestBlindVerify(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestBlindVerifyTumbler(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestKeyAggregation(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestKeygenProperties(t *testing.T, params coconut.SchemeParams, sk *coconut.SecretKey, ...)
- func TestRandomize(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestSign(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestSignerProof(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestTTPKeygenProperties(t *testing.T, params coconut.SchemeParams, sks []*coconut.SecretKey, ...)
- func TestThresholdAuthorities(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestTumblerProof(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestVerifierProof(t *testing.T, cw *coconutworker.CoconutWorker)
- func TestVerify(t *testing.T, cw *coconutworker.CoconutWorker)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RandomInts ¶
RandomInts returns random (non-repetitive) q ints, > 0, < max
func TestAggregateVerification ¶
func TestAggregateVerification(t *testing.T, cw *coconutworker.CoconutWorker)
TestAggregateVerification checks whether signatures and verification keys from multiple authorities can be correctly aggregated and verified. This particular test does not test the threshold property, it is tested in separate test.
func TestBlindVerify ¶
func TestBlindVerify(t *testing.T, cw *coconutworker.CoconutWorker)
TestBlindVerify checks whether only a valid coconut signature successfully verifies (includes private attributes).
func TestBlindVerifyTumbler ¶
func TestBlindVerifyTumbler(t *testing.T, cw *coconutworker.CoconutWorker)
TestBlindVerifyTumbler tests the blind verification of credentials used in a tumbler system
func TestKeyAggregation ¶
func TestKeyAggregation(t *testing.T, cw *coconutworker.CoconutWorker)
TestKeyAggregation checks correctness of aggregating single verification key. Aggregation of multiple verification keys is implicitly checked in other tests.
func TestKeygenProperties ¶
func TestKeygenProperties(t *testing.T, params coconut.SchemeParams, sk *coconut.SecretKey, vk *coconut.VerificationKey, )
TestKeygenProperties checks basic properties of the Coconut keys, such as whether X = g2^x.
func TestRandomize ¶
func TestRandomize(t *testing.T, cw *coconutworker.CoconutWorker)
TestRandomize checks if randomising a signature still produces a valid coconut signature.
func TestSign ¶
func TestSign(t *testing.T, cw *coconutworker.CoconutWorker)
TestSign verifies whether a coconut signature was correctly constructed
func TestSignerProof ¶
func TestSignerProof(t *testing.T, cw *coconutworker.CoconutWorker)
TestSignerProof tests properties of the appropriate NIZK
func TestTTPKeygenProperties ¶
func TestTTPKeygenProperties(t *testing.T, params coconut.SchemeParams, sks []*coconut.SecretKey, vks []*coconut.VerificationKey, k int, n int, )
TestTTPKeygenProperties checks whether any 2 subsets of keys when multiplied by appropriate lagrange basis converge to the same values
func TestThresholdAuthorities ¶
func TestThresholdAuthorities(t *testing.T, cw *coconutworker.CoconutWorker)
TestThresholdAuthorities checks the threshold property of the appropriate keys, as in whether any subset of t verification keys can be used to verify aggregate credential created out of any different subset of t issued credentials.
func TestTumblerProof ¶
func TestTumblerProof(t *testing.T, cw *coconutworker.CoconutWorker)
TestTumblerProof tests properties of the appropriate NIZK
func TestVerifierProof ¶
func TestVerifierProof(t *testing.T, cw *coconutworker.CoconutWorker)
TestVerifierProof tests properties of the appropriate NIZK
func TestVerify ¶
func TestVerify(t *testing.T, cw *coconutworker.CoconutWorker)
TestVerify checks whether only a valid coconut signature successfully verifies.
Types ¶
This section is empty.