What is the semantic difference between encipher and encrypt?
In French, there are two words, "chiffrer" and "crypter"; theoretically, the latter would mean "to encrypt but without knowledge of the key, i.e. as part of an attack" (it is more often encountered as "décrypter" which means "to decrypt without prior knowledge of the key"). Relatively few French-speaking programmers are even aware of that distinction, and the French translations of many applications (including Outlook Express) use "crypter" in places where they should use "chiffrer".
In English, I do not think that this distinction actually exists. "Encipher" and "chiffrer" both come from the Arabic "sifr" which means "zero", while "encrypt" and "crypter" come from the Greek "kryptos" (hidden, secret). The use of "sifr" can apparently be traced back to Giovan Battista Bellaso, who published in 1553 cryptographic methods in Latin (as was normal at the time) but with Italian titles such as "La Cifra" and "Novi et singolari modi di cifrare". His point was that his cryptographic techniques involved some computations with numbers, and in 16th century Italy, mathematics was still an import from old Greek by way of Arab writers, brought to Christian Europe during the Crusades. Hence the use of the Arabic root.
In that sense, one could say that "to encipher" means "to encrypt, with some mathematics involved in the process". By definition, this covers any encryption in which a computer was used, so the terms "encipher" and "encrypt" are practically synonymous.
There are a number of differences depending on context:
Outside of cryptology decipherment refers to decoding or understanding codes and languages that are not designed to keep secrets but are unknown. For example determining the genetic code or figuring out how to translate mayan.
"If one 'enciphers,' then one is using reversible cryptography. If one 'encrypts,' then one might be using either reversible cryptography or irreversible cryptography".
While cryptology contains reversible function and non-reversible 'one-way' functions, the term encryption/decryption explicitly refers only to reversible functions.
"In cryptography, encryption is the process of transforming information (referred to as plaintext) using an algorithm (called cipher) to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key." - http://en.wikipedia.org/wiki/Encryption
There is not any difference as such, in non-technical usage, a 'cipher' is the same thing as a 'code'; however, the concepts are distinct in cryptography. In classical cryptography, ciphers are distinguished from codes.
Codes generally substitute different length strings of characters in the output, while the ciphers generally substitute the same number of characters as are in the input.
Semantically speaking, the following may be inaccurate. However, I'll leave it here for future reference.
I've worked in a project where to encipher a piece of data, you would actually use the decryption function of the cipher. (The reason was to save on hardware implementation costs.) In order to be clear on the operation you wanted to perform on the data, encipher would mean to transform plaintext into ciphertext and decipher would mean to transform ciphertext into plaintext.
For example, I would encipher a piece of data by decrypting that data with cipher X. I would also decipher a piece of data by decrypting that data with cipher X. (This is possible because the data is exchanged with another device that can only use the encryption function of cipher X.)
Cryptography includes two basic kinds of operations: reversible cryptographic operations and irreversible cryptographic operations. The reversible cryptographic operations are also known as ciphers, while the irreversible cryptographic operations are also known as hash algorithms or digests.
From my own observations on common usage and abusage: If one "enciphers," then one is using reversible cryptography. If one "encrypts," then one might be using either reversible cryptography or irreversible cryptography.
Whether this distinction has any technical merit, and whether this distinction is in fact how the terms are commonly used, are questions that I am unable to answer.