From 004ea06b80fdcf47990b8ff20f37935f352e76c7 Mon Sep 17 00:00:00 2001 From: Etan Kissling Date: Thu, 21 Oct 2021 09:43:14 +0200 Subject: [PATCH] fix big-endian merkleization for UintN arrays (#412) UintN arrays were incorrectly merkleized on big-endian. This was fixed by making sure to use the correct buffer to store the final chunk. --- eth/ssz/merkleization.nim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eth/ssz/merkleization.nim b/eth/ssz/merkleization.nim index bf672a5..5d6a982 100644 --- a/eth/ssz/merkleization.nim +++ b/eth/ssz/merkleization.nim @@ -486,7 +486,7 @@ func chunkedHashTreeRootForBasicTypes[T](merkleizer: var SszMerkleizerImpl, if remainingValues > 0: var lastChunk: array[bytesPerChunk, byte] for i in 0 ..< remainingValues: - chunk.writeBytesLE(i * sizeof(T), arr[writtenValues + i]) + lastChunk.writeBytesLE(i * sizeof(T), arr[writtenValues + i]) merkleizer.addChunk lastChunk getFinalHash(merkleizer)