Skip to content

Commit 9b615d7

Browse files
committed
feat: upgrade to 1.1.5
1 parent a3855f9 commit 9b615d7

File tree

2 files changed

+22
-30
lines changed

2 files changed

+22
-30
lines changed

EccSDK/Services/ChameleonHashService.cs

Lines changed: 21 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,18 @@ namespace EccSDK.Services;
88

99
public class ChameleonHashService : IChameleonHashService
1010
{
11-
private readonly KeyPairDomain _keyPairDomain;
1211
private readonly ChameleonHash _chameleonHash;
12+
private readonly KeyPairDomain _keyPairDomain;
1313

1414
// Kn = public key
1515
// kn = private key
1616
public ChameleonHashService(KeyPairDomain keyPairDomain)
1717
{
1818
_keyPairDomain = keyPairDomain;
19-
_chameleonHash = InitChameleonHash(keyPairDomain);
19+
_chameleonHash = GetChameleonHash ("init chameleon hash");
2020
}
2121

2222

23-
2423
public ChameleonSignature Sign(string message)
2524
{
2625
// sign = (sessionKey - dn) mod n
@@ -38,46 +37,40 @@ public ChameleonSignature Sign(string message)
3837

3938
public bool Verify(ChameleonHashVerifyRequest verifyRequest)
4039
{
41-
var chameleonHashRequest = new ChameleonHashRequest()
40+
var chameleonHashRequest = new ChameleonHashRequest
4241
{
4342
Message = verifyRequest.Message,
4443
KeyPairDomain = verifyRequest.KeyPairDomain,
45-
Signature = new BigInteger(verifyRequest.StrSignature, 16)
44+
Signature = new BigInteger(verifyRequest.StrSignature, 16)
4645
};
47-
46+
4847
var chameleonHashCalculated = CalculateChameleonHashBy(chameleonHashRequest);
49-
48+
5049
return chameleonHashCalculated.Value.Equals(_chameleonHash.Value);
5150
}
5251

53-
public ChameleonHash CalculateChameleonHashBy(ChameleonHashRequest request)
52+
public ChameleonHash GetChameleonHash(string message)
53+
{
54+
var signature = Sign(message);
55+
return CalculateChameleonHashBy(new ChameleonHashRequest
56+
{
57+
Message = message,
58+
KeyPairDomain = _keyPairDomain,
59+
Signature = new BigInteger(signature.Value, 16)
60+
});
61+
}
62+
63+
private ChameleonHash CalculateChameleonHashBy(ChameleonHashRequest request)
5464
{
5565
// chameleonHash = [Kn x H(m)] + [P x signature]
5666
var hashedMessage = HashHelper.Sha256(request.Message);
5767
var knHash = request.KeyPairDomain.PublicKey.Q.Multiply(hashedMessage);
58-
var pSignature =request.KeyPairDomain.PublicKey.Parameters.G.Multiply(request.Signature);
68+
var pSignature = request.KeyPairDomain.PublicKey.Parameters.G.Multiply(request.Signature);
5969

60-
return new ChameleonHash()
70+
return new ChameleonHash
6171
{
6272
Value = knHash.Add(pSignature)
6373
};
6474
}
65-
66-
public ChameleonHash GetChameleonHash()
67-
{
68-
return _chameleonHash;
69-
}
70-
71-
private ChameleonHash InitChameleonHash(KeyPairDomain keyPairDomain)
72-
{
73-
var signature = Sign("init chameleon hash");
74-
return CalculateChameleonHashBy(new ChameleonHashRequest()
75-
{
76-
Message = "init chameleon hash",
77-
KeyPairDomain = keyPairDomain,
78-
Signature = new BigInteger(signature.Value, 16)
79-
});
80-
}
81-
82-
75+
8376
}

EccSDK/Services/Interfaces/IChameleonHashService.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,5 @@ public interface IChameleonHashService
88
{
99
ChameleonSignature Sign(string message);
1010
bool Verify(ChameleonHashVerifyRequest verifyRequest);
11-
ChameleonHash CalculateChameleonHashBy(ChameleonHashRequest request);
12-
ChameleonHash GetChameleonHash();
11+
ChameleonHash GetChameleonHash(string message);
1312
}

0 commit comments

Comments
 (0)