Bilgisayar Olimpiyatı 2017, 1. Aşama, Soru 27

### [27 – 29] Sorular İçin Açıklama
Şifreleme Algoritması:
Şifrelenecek metin ve şifrelenmiş metin uzaylarının (mod 26)'da tanımlı olduğunu düşünelim. (mod 26) uzayı, elemanları aşağıdaki harflerin sayısal karşılığı olacak şekilde verilsin.
<table><tr><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td><td>F</td><td>G</td><td>H</td><td>I</td><td>J</td><td>K</td><td>L</td><td>M</td></tr><tr><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td></tr></table>
<table><tr><td>N</td><td>O</td><td>P</td><td>Q</td><td>R</td><td>S</td><td>T</td><td>U</td><td>V</td><td>W</td><td>X</td><td>Y</td><td>Z</td></tr><tr><td>13</td><td>14</td><td>15</td><td>16</td><td>17</td><td>18</td><td>19</td><td>20</td><td>21</td><td>22</td><td>23</td><td>24</td><td>25</td></tr></table>
Şifreleme işleminde kullanılacak anahtar kümemiz de (mod 26)'da tanımlı K = (a, b) olsun. b değeri (mod 26)'da tüm değerleri alabilirken, a ise sadece OBEB(a, 26) = 1 sonucunu sağlayan değerleri alabilmektedir. x; şifrelenecek değer, y de şifreleme sonucunda elde ettiğimiz değer olsun.
Şifreleme kuralımız: y = e<sub>k</sub>(x) ≡ (a·x + b) (mod 26).
Şifre çözme kuralımız ise: x = d<sub>k</sub>(y) ≡ a<sup>-1</sup>·(y - b) (mod 26).
Örneğin; Şifrelenecek metin "AD" olsun. Yukarıda verilen koşullara bağlı olarak K = (7, 3) olsun. A'nın sayısal karşılığı O, D'nin sayısal karşılığı 3'tür. Bu durumda Şifreli metin şifreleme kuralına bağlı olarak:
\[y_1 = e_k(x) \equiv (a \cdot x + b) \pmod{26}, y_1 = e_k(A) = e_k(O) = (7 \cdot O + 3) \equiv 3 \pmod{26} (3 = D),\]
\[y_2 = e_k(x_2) \equiv (a \cdot x_2 + b) \pmod{26}, y_2 = e_k(D) = e_k(S) = (7 \cdot 3 + 3) \equiv 24 \pmod{26} (24 = Y) \text{ çıkar.}\]
Böylece Şifreli metin: "DY" olarak hesaplanmış olur. Şifreli metni alan kişi de anahtar kümesine sahiptir ve bu anahtar kümesini kullanarak şifre çözme kuralına bağlı olarak "AD" elde edecektir. 7-1 ≡ 15 (mod 26).
\[x_1 = d_k(y_1) \equiv a^{-1} \cdot (y_1 - b) \pmod{26}, x_1 = d_k(D) = d_k(3) = 7^{-1} \cdot (3 - 3) \pmod{26} = 15 \cdot O \equiv O \pmod{26} (O = A),\]
\[x_2 = d_k(y_2) \equiv a^{-1} \cdot (y_2 - b) \pmod{26}, x_2 = d_k(Y) = d_k(24) = 7^{-1} \cdot (24 - 3) \pmod{26} = 15 \cdot 21 \equiv 3 \pmod{26} (3 = D).\]

---

Verilen şifreleme kuralına bağlı olarak (mod 26) uzayında K = (4, 3) anahtar kümesi ile gönderici tarafından "CIPHER" kelimesi şifrelenerek alıcıya gönderilmek isteniyor. Gönderen güvenli bir şekilde anahtar kümesini de alıcı ile paylaşıyor. Gönderici, alıcının orijinal metni anahtar kümesine bağlı olarak çözebileceği şekilde şifrelemek istiyor. Bu veriler çerçevesinde gönderici tarafından şifreleme işlemi yapılabilir ise aşağıdakilerden hangisi şifreli metnin sonucu olur?

Şıklar:
A) "LJLFTR" | B) "TRFLJL" | C) "REHPIC" | D) "PICREH" | E) Şifreleme yapılamaz.

Cevap: E Şifreleme yapılamaz.

Çözüm:
K = (a, b) cinsinden bir anahtar kelimesi olması lazım. Yani bu örnekte a=4, b=3 olur. OBEB(a, 26) = 1 özelliği burada sağlamadığından şifreleme yapılamaz. Bu şartın koşulma sebebiyse, özelliğin sağlamama durumunda farklı harflerin aynı harfe şifrelenebilmesidir. Mesela "CIPHER" kelimesinin son iki harfine bakacak olursak:
- E ⇒ E=4, e<sub>k</sub>(2) = (4*4+3) ≡ 19 (mod 26), 19=T
- R ⇒ R=17, e<sub>k</sub>(2) = (4*17+3) ≡ 19 (mod 26), 19=T
- Aynı çıktığını görürüz.