Is there any significance in being able to find message schedules that result in the same hash but require different initial hash values? Can generate every 5-10~ minutes for any hash. Confirmed message schedule regenerates from first 16 W values, and hash produced is the same when using the new initial hash values when reconstructing. But again, I’m not sure if this is significant in any way. Sample code of what I used to verify it’s a valid message schedule below, this matches the values I generated—the 64 values match. for i in range(16, 64): w_val = (sigma1(W[i-2]) + W[i-7] + sigma0(W[i-15]) + W[i-16]) & 0xFFFFFFFF W.append(w_val) Edit: This might be called a free start collision? I haven’t tried adjusting to try to match the default initial hash values for sha256.