643 bytes added
, 14:24, 29 August 2022
ConTeXt needs no external programs to generate SHA for text and external files:
<context source="yes">
\ctxlua{require("util-sha")}
\def\shatwo#1{%
\cldcontext{utilities.sha2.hash256("#1")}}
\def\shafive#1{%
\cldcontext{utilities.sha2.hash512("#1")}}
\def\shatwofile#1{%
\cldcontext{utilities.sha2.hash256(io.loaddata("#1"))}}
\def\shafivefile#1{%
\cldcontext{utilities.sha2.hash512(io.loaddata("#1"))}}
\def\testtext{abc}
\def\testfile{\jobname.tex}
\shatwo{\testtext}\\
\shafive{\testtext}
\shatwofile{\testfile}\\
\shafivefile{\testfile}
</context>
It may be even used when embedding external files with {{cmd|attachment}}.