Byeman Control System

The BYEMAN Control System, or simply BYEMAN (designated BYE, or B), was a security control system put in place to protect information about the National Reconnaissance Office and its operations.

BYEMAN coversheet

History

The BYEMAN Control System was put in place in 1961 by the Central Intelligence Agency.

Discussions regarding BCS retirement were held as early as 2003. NRO Director Peter B. Teets spoke at a 2003 NRO Town Hall meeting, mentioning that retiring the BCS would remove barriers that prevented the NRO and U.S. Intelligence Community from working together as a team.[1]

The use of BCS was so prevalent throughout the U.S. Intelligence Community, that a handful of websites were set up to direct users through the retirement process.[2]

Origin of name

An individual inside the CIA's Special Security Center chose the name from a random list of four words drawn from the CIA's codeword file. A byeman is a man who works underground; it is unknown if the individual knew the word's meaning before its selection.[3]

Programs within BYEMAN

This is a small list of the publicly acknowledged programs that were held within the BCS:

  • CORONA (declassified 1995)[4]
  • ARGON (declassified 1995)[4]
  • LANYARD (declassified 1995)[4]
  • GAMBIT (declassified 2011)
  • HEXAGON (declassified 2011)
  • GRAB (declassified 1998)
  • POPPY (declassified 2004)
  • QUILL (declassified 2012)
  • DORIAN (partial declassification 2012)
  • MELVIN (declassified 2011)
  • UPWARD (declassified 2012)

While many other NRO programs resided within the BCS, their codenames have not been made public through proper disclosure or official declassification.

Retirement

By order of the Director of Central Intelligence (DCI), BYEMAN was retired on 20 May 2005.[5] Most information held within the BCS was transitioned into the Talent Keyhole Control System.[6]

In the 1998 blockbuster movie Armageddon, a misspelling of the word, (i.e. "BYMAN") is used on a cover sheet protecting photos of the incoming asteroid. (the correct spelling, BYEMAN, was still classified "Confidential" at that time.)

gollark: Honestly that's entirely unnecessary and I would probably only need simple splitting into lines and label handling, but you know.
gollark: That's how you would do it in my thing, using a somewhat insane S-expression assembly-ish language.
gollark: Using hypothetical assembly syntax I haven't actually implemented:```# start of memory to add kittens to(add r1 r0 0x1000) # maybe there would be nice dedicated syntax for "set register" actually# end of kittenized region(add r2 r0 0x1600)(label loop (add r3 r0 40) (poke r3 r1 0) (add r3 r0 94) (poke r3 r1 1) # and so on (add r1 r1 8) (jlt r1 r2 loop))```
gollark: To create RAM kittens, all you need to do is `ADD` the ASCII value of each character into a temporary register, `POKE` them into the right memory location (using the per-instruction `POKE` offset, probably), and then do that in a loop.
gollark: I should probably implement arithmetic instructions then a basic assembler, I guess, because hand-writing machine code is unpleasant.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.