diff options
author | MITSUNARI Shigeo <herumi@nifty.com> | 2017-05-17 04:56:30 +0800 |
---|---|---|
committer | MITSUNARI Shigeo <herumi@nifty.com> | 2017-05-17 04:56:30 +0800 |
commit | 378c191833be2022412cd61d99e613b56e0cbbfb (patch) | |
tree | 2fa4befca694f371560e4da6e25a62f80825933a | |
parent | d4dc458f2e4b11c942f9ebe9b7edd54e3b230641 (diff) | |
download | dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar.gz dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar.bz2 dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar.lz dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar.xz dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.tar.zst dexon-bls-378c191833be2022412cd61d99e613b56e0cbbfb.zip |
change PublicKey::verify(Sign, String)
-rw-r--r-- | ffi/cs/bls256.cs | 16 | ||||
-rw-r--r-- | ffi/cs/bls256_test.cs | 16 |
2 files changed, 16 insertions, 16 deletions
diff --git a/ffi/cs/bls256.cs b/ffi/cs/bls256.cs index b0ba6ce..f39b6f3 100644 --- a/ffi/cs/bls256.cs +++ b/ffi/cs/bls256.cs @@ -242,9 +242,13 @@ namespace mcl { { blsPublicKeyAdd(ref this, ref rhs); } - } - // publicKey = sum_{i=0}^{mpk.Length - 1} mpk[i] * id^i - public static PublicKey SharePublicKey(PublicKey[] mpk, Id id) + public bool Verify(Sign sign, string m) + { + return blsSignVerify(ref sign, ref this, m, (ulong)m.Length) == 1; + } + } + // publicKey = sum_{i=0}^{mpk.Length - 1} mpk[i] * id^i + public static PublicKey SharePublicKey(PublicKey[] mpk, Id id) { PublicKey pub = new PublicKey(); if (blsPublicKeySet(ref pub, ref mpk[0], (ulong)mpk.Length, ref id) != 0) { @@ -286,12 +290,8 @@ namespace mcl { { blsSignAdd(ref this, ref rhs); } - public bool Verify(PublicKey pub, string m) - { - return blsSignVerify(ref this, ref pub, m, (ulong)m.Length) == 1; - } } - public static Sign RecoverSign(Sign[] signs, Id[] ids) + public static Sign RecoverSign(Sign[] signs, Id[] ids) { Sign sign = new Sign(); if (blsSignRecover(ref sign, ref signs[0], ref ids[0], (ulong)signs.Length) != 0) { diff --git a/ffi/cs/bls256_test.cs b/ffi/cs/bls256_test.cs index aff7a44..2eace18 100644 --- a/ffi/cs/bls256_test.cs +++ b/ffi/cs/bls256_test.cs @@ -45,10 +45,10 @@ namespace mcl { SecretKey sec = new SecretKey(); sec.Init(); PublicKey pub = sec.GetPublicKey(); - String s = pub.ToString(); - Console.WriteLine("pub={0}", s); + String sign = pub.ToString(); + Console.WriteLine("pub={0}", sign); PublicKey pub2 = new PublicKey(); - pub2.SetStr(s); + pub2.SetStr(sign); assert("pub.SetStr", pub.IsSame(pub2)); } static void TestSign() @@ -58,9 +58,9 @@ namespace mcl { sec.Init(); PublicKey pub = sec.GetPublicKey(); String m = "abc"; - Sign s = sec.Sign(m); - assert("verify", s.Verify(pub, m)); - assert("not verify", !s.Verify(pub, m + "a")); + Sign sign = sec.Sign(m); + assert("verify", pub.Verify(sign, m)); + assert("not verify", !pub.Verify(sign, m + "a")); } static void TestSharing() { @@ -86,7 +86,7 @@ namespace mcl { string m = "doremi"; for (int i = 0; i < n; i++) { Sign sign = secs[i].Sign(m); - assert("sign.Verify", sign.Verify(pubs[i], m)); + assert("sign.Verify", pubs[i].Verify(sign, m)); } { int[] idxTbl = { 0, 2, 5, 8, 10 }; @@ -106,7 +106,7 @@ namespace mcl { PublicKey pub = RecoverPublicKey(subPubs, subIds); assert("check pub", pub.IsSame(sec.GetPublicKey())); Sign sign = RecoverSign(subSigns, subIds); - assert("sign.verify", sign.Verify(pub, m)); + assert("sign.verify", pub.Verify(sign, m)); } } static void Main(string[] args) |