Nilsimsa uses eight sets of character separations (character,
character, etc.
) and takes the three characters
and performs a computation on them:
(((tran[((a)+(n))&255]^tran[(b)]*((n)+(n)+1))+tran[(c)^tran[n]])&255),
where a, b, and c are the characters,
n is 0-7 indicating which separation, and tran
is a permutation of [0-255]. The result is a byte, and nilsimsa
throws all these bytes from all eight separations into one histogram
and encodes the histogram.