changing the initializing vector to 0

This commit is contained in:
thomaslavaur 2025-08-19 16:00:17 +02:00
parent 7d903540dc
commit 73e5ecb7e7
5 changed files with 5 additions and 9 deletions

View File

@ -177,7 +177,7 @@ def PoseidonSponge(data, capacity, output_len):
for i in range(len(data)+1,padded_len):
padded.append(F(0))
civ = F(2**64 + 256*3 + rate)
civ = F(0)
state = [F(0),F(0),F(civ)]
sorbed = [F(0) for j in range(rate)]

View File

@ -177,7 +177,7 @@ def PoseidonSponge(data, capacity, output_len):
for i in range(len(data)+1,padded_len):
padded.append(F(0))
civ = F(2**64 + 256*3 + rate)
civ = F(0)
state = [F(0),F(0),F(civ)]
sorbed = [F(0) for j in range(rate)]

View File

@ -178,7 +178,7 @@ def PoseidonSponge(data, capacity, output_len):
for i in range(len(data)+1,padded_len):
padded.append(F(0))
civ = F(2**64 + 256*3 + rate)
civ = F(0)
state = [F(0),F(0),F(civ)]
sorbed = [F(0) for j in range(rate)]

View File

@ -178,7 +178,7 @@ def PoseidonSponge(data, capacity, output_len):
for i in range(len(data)+1,padded_len):
padded.append(F(0))
civ = F(2**64 + 256*3 + rate)
civ = F(0)
state = [F(0),F(0),F(civ)]
sorbed = [F(0) for j in range(rate)]

View File

@ -52,13 +52,9 @@ template PoseidonSponge(t, capacity, input_len, output_len) {
signal state [nblocks+nout][t ];
signal sorbed[nblocks ][rate];
// domain separation, capacity IV:
var civ = 2**64 + 256*t + rate;
// initialize state
for(var i=0; i<t-1; i++) { state[0][i] <== 0; }
state[0][t-1] <== civ;
for(var i=0; i<t; i++) { state[0][i] <== 0; }
component absorb [nblocks];
component squeeze[nout-1];