aboutsummaryrefslogtreecommitdiff
path: root/nizk/commit_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'nizk/commit_test.go')
-rw-r--r--nizk/commit_test.go48
1 files changed, 48 insertions, 0 deletions
diff --git a/nizk/commit_test.go b/nizk/commit_test.go
new file mode 100644
index 0000000..32d337b
--- /dev/null
+++ b/nizk/commit_test.go
@@ -0,0 +1,48 @@
+package nizk
+
+import (
+ "testing"
+
+ . "kesim.org/seal/common"
+)
+
+func TestStatement(t *testing.T) {
+ id := Curve.RandomScalar()
+ Id := G.Exp(id)
+
+ st1, st2 := NewBid(true), NewBid(false)
+ c1, p1 := st1.Commit(Id)
+ c2, p2 := st2.Commit(Id)
+ if !c1.Verify(p1) {
+ t.Fatal("Could not verify st1 with c1, plus=true case")
+ }
+ if !c2.Verify(p2) {
+ t.Fatal("Could not verify st2 with c2, plus=false case")
+ }
+
+ // Use the wrong proof
+ if c2.Verify(p1) {
+ t.Fatal("Verify with wrong proof should have failed!")
+ }
+}
+
+func TestStatementFromScalar(t *testing.T) {
+ var α, β, id = Curve.RandomScalar(), Curve.RandomScalar(), Curve.RandomScalar()
+
+ Id := G.Exp(id)
+
+ st1, st2 := NewBidFromScalars(true, α, β), NewBidFromScalars(false, α, β)
+ c1, p1 := st1.Commit(Id)
+ c2, p2 := st2.Commit(Id)
+ if !c1.Verify(p1) {
+ t.Fatal("Could not verify st1 with c1, plus=true case")
+ }
+ if !c2.Verify(p2) {
+ t.Fatal("Could not verify st2 with c2, plus=false case")
+ }
+
+ // Use the wrong proof
+ if c2.Verify(p1) {
+ t.Fatal("Verify with wrong proof should have failed!")
+ }
+}