SHA-256 Merkle tree: Difference between revisions

no edit summary
m (→‎{{header|Factor}}: Add 'works with' template; solution uses some new-fangled words.)
No edit summary
Line 98:
a4f902cf9d51fe51eda156a6792e1445dff65edf3a217a1f3334cc9cf1495c2c
</pre>
 
=={{header|Julia}}==
<lang julia>using SHA
 
function merkletree(filename="title.png", blocksize=1024)
bytes = codeunits(read(filename, String))
len = length(bytes)
hsh = [sha256(bytes[i:min(i+blocksize-1, len)]) for i in 1:1024:len]
while true
len = length(hsh)
hsh = [i == len ? hsh[i] : sha256(vcat(hsh[i], hsh[i + 1])) for i in 1:2:len]
length(hsh) == 1 && break
end
return bytes2hex(hsh[1])
end
 
println(merkletree())
</lang>{{out}}
<pre>a4f902cf9d51fe51eda156a6792e1445dff65edf3a217a1f3334cc9cf1495c2c</pre>
 
=={{header|Phix}}==
4,105

edits