Нередко среди, казалось бы, совершенно разных по виду и смыслу слов одного языка мы обнаруживаем такие, которые имеют общее происхождение, но попали в язык разными путями. Такое явление называется этимологическим дублетом. К таким причисляют русские слова цифра и шифр.
Слово цифра в русском языке возникло из польск. суfrа или нем. Ziffer. Очевидно, ранние формы цифирь и цыфарь являются немецкими. Далее слова восходят к ср.-лат. cifra и к андалузск. араб. صفر (ṣifr) «ноль» (также – صَفِرَ, ṣafira «пустой»). Того же происхождения болг. цифра, сербохорв. ци̏фра, чешск. cifra, англ. cipher, нидерл. cijfer, швед. siffra, норв. siffer, фр. chiffre, итал. cifra, исп. cifra, ивр. ספרה (sifra) и др.
Слово шифр заимствовано из фр. chiffre, откуда происходят также нем. Chiffre, швед. chiffer, сербохорв. ши̏фра, чешск. šifra, польск. szyfr. Данное слово, повторно заимствованное в русский язык, и является дублетом слова цифра. В ряде других языков используется одно слово для выражения обоих значений (англ. cipher, фр. chiffre, исп. cifra).
В английском языке для слова cipher также обнаруживается дублет, однако уже совсем иной, чем в русском. От того же араб. صفر (ṣifr) «ноль» через лат. zephirum, далее итал. zero и фр. zéro в английский пришло количественное числительное zero «ноль». Того же происхождения исп. cero, порт. zero, арм. զրո (zro), перс. صفر (sefr), урду صفر (sifar; в хинди - शून्य, śūnya) венг. zéró (наряду с nulla), тур. sıfır, узб. sifr (наряду с nol), яп. ゼロ(zero; наряду с 零, rei) и др.