Verschlüsselung: Wohin mit den Keys?



  • Hallo zusammen,

    ich habe ein Chat Programm geschrieben in welchem die Nachrichten über die Instanz des Programms hinaus in einer XML serialisiert werden. Diese Daten will ich verschlüsseln, dabei habe ich jedoch ein Problem: Egal welche Verschlüsselungsmethode ich benutze, brauche ich einen Schlüssel zum ver- und entschlüsseln der Daten. Aber wohin damit? 😕 Hart einkodieren ist weder sicher noch schön. Aber ich wüsste nicht, wo ich die Schlüssel sicher speichern kann.
    Das selbe Problem habe ich auch bei einer Website mit Datenbankzugriffen: Dabei möchte ich ungern die Zugriffsdaten (Datenbankserver, User, ggf. Passwort) der Datenbank im PHP Code stehen haben.

    Ich hoffe ihr könnt mir helfen. Und schon einmal vielen Dank im voraus 🙂



  • SSL benutzen?



  • RedLeprechaun schrieb:

    Ich hoffe ihr könnt mir helfen.

    Glaub nicht dass dir jemand helfen kann. Wie soll das auch gehen? Unlösbare Probleme sind halt unlösbar.
    Klar gibt es Mechanismen mittels derer man die Sache etwas verbessern kann. Im Endeffekt bleibt aber: Wenn jemand Zugriff auf den Code hat und die Möglichkeit etwas unter deinem Userkonto laufen zu lassen, dann kann er auch an deine Daten rankommen. Je nachdem wie gut man die Credentials/Keys/... versteckt ist das dann mehr oder weniger kompliziert, aber möglich ist es immer.



  • RedLeprechaun schrieb:

    Das selbe Problem habe ich auch bei einer Website mit Datenbankzugriffen: Dabei möchte ich ungern die Zugriffsdaten (Datenbankserver, User, ggf. Passwort) der Datenbank im PHP Code stehen haben.

    Datenbank auf einem zweiten, unabhängigen server einrichten.
    Seite so sicher programmieren, dass du nicht für SQLi, LFI oder ähnliches anfällig bist.
    Du wirst aber nicht darum herumkommen die Daten im php-code stehen zu haben und wenn ich da rankomme bist du verloren.



  • Private Schlüssel bleiben lokal, oder auf einem portablen aber privaten Medium (USB-Stick, CD, Diskette usw.).

    Es gibt ja auch keinen Grund den privaten Key woanders hin zu schicken? Der ist ja nur für den Verschlüsseler gedacht.

    Wenn du jemandem was verschlüsselt verschicken willst, kommst du mit einem Symetrischen Schlüssel nicht weiter. Da brauchst du asymetrische Schlüssel bzw. asymetrische Verschlüsselung. D.h. einen öffentlichen Schlüssel, den man bendenkenlos rum schicken und überall ablegen kann.

    Der private Schlüssel bleibt aber weiter privat.


Log in to reply