hashing for tree leaves added
Signed-off-by: Uncle Stretch <uncle.stretch@ghostchain.io>
This commit is contained in:
parent
a6bca9e27f
commit
253a6314e0
@ -52,7 +52,10 @@ abstract contract Weaver is IWeaver {
|
||||
bytes32 left = bytes32(_treeNodes[session][j].upperLookup(atBlock));
|
||||
bytes32 right = bytes32(_treeNodes[session][j | 1].upperLookup(atBlock));
|
||||
|
||||
currentLevel[i] = Hashes.efficientKeccak256(left, right);
|
||||
bytes32 leftHash = Hashes.efficientKeccak256(left);
|
||||
bytes32 rightHash = Hashes.efficientKeccak256(right);
|
||||
|
||||
currentLevel[i] = Hashes.efficientKeccak256(leftHash, rightHash);
|
||||
unchecked { ++i; }
|
||||
}
|
||||
|
||||
@ -89,7 +92,8 @@ abstract contract Weaver is IWeaver {
|
||||
uint256 i;
|
||||
|
||||
for (; i < currentLevelCount;) {
|
||||
currentLevel[i] = bytes32(_treeNodes[session][i].upperLookup(atBlock));
|
||||
bytes32 leaf = bytes32(_treeNodes[session][i].upperLookup(atBlock));
|
||||
currentLevel[i] = Hashes.efficientKeccak256(leaf);
|
||||
unchecked { ++i; }
|
||||
}
|
||||
|
||||
@ -144,6 +148,6 @@ abstract contract Weaver is IWeaver {
|
||||
}
|
||||
|
||||
function _computeArgumentsHash(uint256 i, uint256 a, bytes32 r) internal pure returns (bytes32) {
|
||||
return Hashes.efficientKeccak256(bytes32(i), Hashes.efficientKeccak256(bytes32(a), r));
|
||||
return Hashes.efficientKeccak256(Hashes.efficientKeccak256(bytes32(a), r), bytes32(i));
|
||||
}
|
||||
}
|
||||
|
||||
@ -76,6 +76,8 @@ contract GatekeeperVerification is Gatekeeper {
|
||||
unchecked { ++i; }
|
||||
}
|
||||
|
||||
computedHash = Hashes.efficientKeccak256(computedHash);
|
||||
|
||||
i = 0;
|
||||
for (; i < proof.length; ) {
|
||||
if (slotIndex % 2 == 0) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user