關於將錯誤用作程式碼的一部分
是否可以開發一種程式碼,其中使用英語中的故意錯誤作為要編碼的文本?例如,某人可能有一條消息“特工 X 必須向 5 號站報告”。這可能會被扭曲為“A Gentex Missed repaired 2 stationS”。然後對失真的消息進行編碼。如果 deiferer 可以辨識出扭曲,這可能會阻止任何嘗試的攔截。解碼方法通常不是基於“正常”使用英語(如果正在使用英語)嗎?我從未聽說過有人試圖在程式碼中故意使用錯誤。這個想法有用嗎?
這個問題已經回答了,但讓我補充一些歷史例子。
Enigma 運算符經常犯拼寫錯誤;這對他們的事業沒有幫助。另一方面,即使密碼被破解,納瓦霍密碼說話者也是一個很好的衡量標準。
你所描述的非常接近一種秘密語言。90 年代在希臘活動的某個恐怖組織使用了這樣的語言,例如他們會使用“籃子”這個詞而不是“炸彈”(你不會在 Wiki 文章中找到,我是憑記憶報告的)。我敢肯定,一些粗略的探勘會發現其他做過同樣事情的組織——恐怖分子和其他組織。
所以它本質上是一個帶有一些拼寫噪音的單詞替換密碼。尋找自然語言的解析器會標記它。字典解析器會在它下面加下劃線,而密碼破譯者會摸摸頭,最終弄明白。
也就是說,假設您正在使用某種手動密碼並且沒有讀過密碼學書籍(如上面的恐怖分子)。幸運的是,我們有更好的選擇。關於您的評論:
…
$$ … $$對帶有各種錯誤的文本進行編碼以偽裝內容,然後獲取生成的文本並使用加密。消息的大多數解密方法(一旦解碼為英語)是否基於消息的語言使用方式?
簡單的答案是否定的。一個好的密碼是與語言無關的(實際上是與模式無關的)。這意味著精心挑選的明文(或其中的一些)不會破壞協議的安全性(參見CPA)。例如,紙牌密碼旨在與一副紙牌一起使用,其中每張紙牌對應於拉丁字母表中的一個字母。但它沒有任何地方假設它正在改變一種自然語言,更不用說英語了。每張卡片都有一定的數值;操作員如何感知這些值不是密碼的關注點。