[4104] in cryptography@c2.net mail archive
Re: Pop Count Instruction and cryptoanalysis
daemon@ATHENA.MIT.EDU (Axel H. Horns)
Sat Jan 30 13:00:45 1999
To: cryptography@c2.net
Date: Sat, 30 Jan 1999 14:39:10 +0100
Reply-To: axel.horns@fitug.de
In-reply-to: <00a701be4bcc$7c9f9f80$f804b381@jitze.svl.cdc.com>
From: Horns@t-online.de (Axel H. Horns)
On 29 Jan 99 at 13:15, Jitze Couperus wrote:
> John Young wrote -
> >
> >In it the CDC 7600 is cited as having the pop-count
> >"facility for nuclear physics applications programming,
> >etc." That "etc." is provocative in the light of what Jitze
> >and Steve have written.
Inspired by this thread I remember that in the late 70ies I attended
a lecture on "COMPASS", the assembler language for CDC Computers, at
the University of Hannover (Germany), the computing center of which
being equipped with two CDC 6600 and one CYBER 76 mainframes in
those days. The professor had explicitely noticed that there was no
obvious use for a hardware-accelerated poupulation count opcode but
he had not suggested to look on utilization for cryptography.
>From this lecture I own a copy of "CONTROL DATA CYBER 70 SERIES -
6000 SERIES - 7600 COMPUTER SERIES" pocket manual "COMPASS VERSION
3" printed in 1973.
This document clearly states that in the CYBER 70 Models 74 and 6600
Computers, the opcode "47" for "population count" was executed by the
DIVIDE UNIT. Contrary, the CYBER 70 Models 76 and 7600 Computers had
a separete POPULATION COUNT UNIT.
If I understood the opcode table correctly the respective opcode was
executed in one or two clock cycles (very fast; the same as shift
opcodes).
Hence, it looks like as if there has been some kind of evolution.
The NSA first had demanded the implementation of the "population
count" opcode and they got it in a more economical way by using the
hardware of the divide unit. The NSA software using this opcode must
have been very successfull; otherwise they would not have been able
to require to be provided with a separate hardware unit which I
think was *very* expensive in those days (The core CPU of said CYBER
model was made up of modularized and encapsulated printed circuit
boards equipped with discrete transistors, AFAIK).
Axel H Horns