Forging algorithm: why hash the signature?

From the whitepaper:

To participate in the block forging process, an active account cryptographically signs the generation signature of the previous block with its own public key. This creates a 64-byte signature, which is then hashed using SHA256. The first 8 bytes of the resulting hash gives a number, referred to as the account’s hit.

Why do we need to hash the signature before taking the first 8 bytes?
-The output of a signature function is already 'random'
-It's not to make it more 'random', since if the signature output isn't random enough, the hash afterwards won't help
-It's not to adjust for length, since we only need 8 bytes

So why?

Hi, the paper is ambiguous or wrong. The generation signature of the previous block is concatenated to the public key of the current block generator and the 64-byte result of the concatenation is hashed to produce the generation signature of the current block. There is no asymmetric cryptography involved.

I find the text you quoted here - Nxt Whitepaper - Introduction: Nxt Whitepaper . Please let us know if you read it somewhere else so that we can correct it there too.

1 Like

Thanks so very much!

The text I quoted is also present on the pdf of the whitepaper, which you can find here (among other places): https://www.jelurida.com/sites/default/files/NxtWhitepaper.pdf