Tamper-evident audit logs
The verifier and logger start with a seed for a forward-secure pseudo-random number generator.

To denote a valid ending of a log, append the string of the next $b$ bits of the PRNG's output

to the end of the log. $\;\;$ To add a log entry, get the next $\:b\hspace{-0.03 in}+\hspace{-0.03 in}k\:$ bits of the PRNG's output,

use the last $k$ of those bits to mac the new content, append the concatenation of the new

content with its mac to the log, and then erase those $\:b\hspace{-0.03 in}+\hspace{-0.03 in}k\:$ bits and the previous PRNG state.

This allows you to replace "The untrusted party publishes the hashes"

with "The untrusted party erases the old PRNG state".