Kriptografijoje visada buvo siekiama sukurti "nenulaužiamą' šifravimo algoritmą. Įdomu, kad šis tikslas buvo realizuotas jau prieš 100 metų.
Tai One Time Pad (OTP) algoritmas, užtikrinantis pilną užšifruotos informacijos saugumą. Būtina, kad šifravimo procese būtų išpildytos šios
trys sąlygos:
1. Šifravimo raktas turi būti netrumpesnis už pranešimo tekstą.
2. Šis raktas turi būti generaujamas atsitiktinai ir nepriklausomai nuo pranešimo.
3. Nei viena šifravimo rakto dalis negali būti panaudota antrą kartą.
Claude Shannon 1949 metais paskelbė svarbų matematinį darbą, kuriame pateikė įrodymą, jog esant išpildytoms šioms trims
sąlygoms, OTP algoritmas garantuotai yra saugus. O su matematinėmis teoremomis nepasiginčysi.
Aš "netyčia" užšifravau du pranešimus su lobio koordinatėmis panaudodamas tą patį raktą. Šifruotojų bendruomenė tvirtina, kad tada iššifruoti tokius tekstus yra visai nesudėtinga. Pabandykite tai padaryti.
EN
In cryptography, the one-time pad (OTP) is an encryption technique that cannot be cracked, but requires the use of a single-use pre-shared key. The resulting ciphertext will be impossible to decrypt or break if the following three conditions are met:
1. The key must be at least as long as the plaintext.
2. The key must be randomly distributed in the set of all possible keys and independent of the plaintext.
3. The key must never be reused in whole or in part.
In 1949 the famous information theorist Claude Shannon published a paper, where he proved that the one-time pad system can't be cracked if all
conditions given above are satisfied. You won't argue with mathematical theorems.
I "accidentally" encrypted two messages with the cache coordinates using the same key. Thus the protocol of OTP algorithm
was seriously violated. A popular claim states that in this situation it is quit easy to decrypt the given messages. Try to solve this task.
Užšifruotas pranešimas / Encrypted message 1
8c1ad4e2c35d05b0063b5933ab5cd8aecf43d27d0fff7d136632c21babd7a57fc898a6604278d8f1a96ef1dc8cc1fe404769f994
e726c9d786c29294d7d25e20552afc22b0d408ded7d8
Užšifruotas pranešimas / Encrypted message 2
e230c7e5df5d43ad172a4e6ab41ecbb59942977e18fd6a0523278d0fb6c8fc6ec584e3750d61d9ece76eb9dd8cd2bb46126fe88
8e6308cd2c8d5db89cacc1b271c3fb521acce18d9928b