Ciphers and codes—zeros and naughts

Is there a difference between cipher and code?

I have always considered cipher and code to be synonymous—meaning a message translated into symbols to hide its meaning (indeed this is how a lot of dictionaries define them).

But consider Morse Code—it was designed not to be secret but to be easier to transmit and receive without loss of meaning.

Computer code is a similar thing—it is not written to be secret but rather to translate logic statements into binary from that can be processed by a computer.  The computer definition splits code into “source” where the statements are written in the programming language. The “object” code is the source after it has been processed by a compiler in order to run in the computer (yes, of course I understand but try here). So these examples would suggest that all ciphers are codes, but not all codes are ciphers.

Original meaning of code

The original meaning of code (c1300) was as a systematic compilation of laws from the Latin word, codex. This meaning is still common for instance in a code of conduct. In the early 19th century it was used for the system of symbols and rules that govern how a cipher is written so hence secret code (computer code was first used in 1946).

Original meaning of cipher

The early usage of cipher was as a synonym for zero—the number with no value or the absence of value. While we may take zero for granted, its use revolutionised mathematics making calculus and complicated equations possible.

Original meaning of zero

Many old civilisations had used the concept of zero but it is reasonably established that zero became fully developed in 5th century India. The word zero originates from the Arabic sifr—its parent in Medieval Latin was zephirum meaning the figure which stands for naught in the Arabic notation. The Arabic sifr meaning literally empty or nothing came from safara meaning to be empty and was a loan-translation from the Sanskrit, the ancient Indian language, word sunya-s meaning empty.

Original meaning of naught

English has its own word for zero. Naught (or nought) which derives from Old English nawiht meaning nothing and literally translates from no whit from na from no and wiht for thing.

The meaning of cipher

Although cipher has a similar origin to zero (both coming from the Arab word sifr) it evolved into quite a different meaning. In late 14th century Europe cipher developed from Old French cifre and Italian and Medieval Latin cifra into the modern cipher (and now archaic cypher).

Somehow zero became the more preferred name for naught as cipher came to mean any numeral. It then was used to describe a secret way of writing; or a coded message (first used in English in the 1520s) because early codes often substituted numbers for letters.

A cipher is also the information needed to break a code.

In parallel, as a verb, cipher had meant to do arithmetic and then came to mean writing in code or in occult characters.

There is nothing more I can tell you about cipher.