include "constants.circom"; include "sha256compression.circom"; template Sha256(nBits) { signal input in[nBits]; signal output out[256]; var i; var k; var nBlocks; var bitsLastBlock; nBlocks = ((nBits + 64)\512)+1; signal paddedIn[nBlocks*512]; for (k=0; k> k)&1; } component ha0 = H(0); component hb0 = H(1); component hc0 = H(2); component hd0 = H(3); component he0 = H(4); component hf0 = H(5); component hg0 = H(6); component hh0 = H(7); component sha256compression[nBlocks]; for (i=0; i