Ošetření vstupů VS šifrování vstupů

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Milan Obrtlík
Člen | 50
+
0
-

Dobrý den,
mám hru, u které potřebuju zašifrovat komunikaci (aby to uživatele odradilo od hackování). Šifrování probíhá následovně:

  1. Klient vygeneruje RSA klíče, podepsaný veřejný klíč pošle serveru
  2. Server ověří podpis veřejného klíče a vygeneruje AES klíč, zašifruje ho veřejným klíčem a pošle klientovi
  3. Klient rozšifrováním zprávy získává AES klíč. Dále komunikace probíhá se symetrickým klíčem

Problém je v tom, že nepoužívám certifikační autoritu na podpis veřejného klíče, takže útočník může získat podpis útokem na moji hru. Jakmile získá podpis, může celý autorizační proces nafejkovat a posílat mi do serveru šifrovaný škodlivý kód. Ten bohužel projde bez problémů přes jakékoli ošetření vstupů a „rozbalí“ se až v „srdci“ Nette, takže si vlastně dám šifrováním gól do vlastní branky.

Je možné ošetřit vstupy znovu po otevření zašifrovaného balíčku?