Datenbank Inhalt Entschlüsseln ?

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von kay2k4.

    Datenbank Inhalt Entschlüsseln ?

    Hallo liebe comm

    Da bin ich mal wieder mit einer frage.
    Und zwar, habe ich eine Datenbank, deren inhalt (Text) verschlüsselt ist, ich lade die datenbank mit mein Programm ein, wie entschlüssel ich den jetzt den Text der in der Datenbank abgelegt ist.
    Verschlüsselung ist Rijndael, wie man Ver/Entschlüsselt ist mir klar, nur halt wie wende ich das an einer datenbank an.
    Muss ich die eintrage in einer schleife durchlaufend Ver/Entschlüsseln oder kann ich es auch auf einerm anderen wege, wie z.B Die listview durchlaufen und entschlüsseln.

    Ich hoffe ihr könnt mir wiedermal ein paar tipps geben.

    MFG
    kay2k4
    Okay ich muss mal pushen (Besser als ein neues tehma zu öffnen)
    Da keiner mir eine antwort darauf geben konnte, gibt es den vllt eine möglichkeit, die access datenbank irgendwie nur für mein programm zugänglich zu machen.Sicherlich kann man ein DB-Passwort anlegen, aber mit sicherheit weiß jeder von euch wie schnell das mit spezi tools geknackt ist.Vllt irgendwie die möglichkeit die .mdb in einer anderen datei zu integrieren.Oder ähnichem ???

    Ich wäre sehr sehr dankbar.
    Konnte leider bisher das problem noch nicht lösen.

    MFG
    kay2k4
    Ungeduliger Du!

    Du kannst natürlich noch mit den Access-Arbeitsgruppen arbeiten. (MDW-Datei).

    Du solltest mal überlegen, wieviel Aufwand Du betreiben willst, um wahrscheinlich nicht allzu kritische Daten abzusichern.
    Häufig bieten sich auch eher organisatorische Maßnahmen an, z.B. nur bestimmte Benutzer bekommen die DB überhaupt zu sehen.
    Du kannst natürlich auch die Daten vor dem Schreiben in die DB verschlüsseln und nach dem Lesen entschlüsseln. Aber Du musst auch die Performance im Auge behalten.
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).
    Genau das ist das problem.
    Es sind zum teil sehr sensibele daten.
    Wie auch immer, es geht darum das man die .mdb nicht mit access öffnen kann, sondern nur mit mein programm, was den zugang zur datenbank erhält.
    Ich habe es versucht mit einer Rijndael verschlüsselun, hat auch alles wunderbar geklapt, nur ersten ist die performence im eimer wie du schon sagtes, und vorallem weiß ich nicht wie ich (Da ich die daten in einer listview anzeige) enschlüsseln soll, per form ist das kein tehma, doppelklick auf den eintrag öffnent sich ne neue form wo es entschlüsselt ist, nur wie mache ich es das es auch entschlüsselt in der listview angezeigt wird.

    MFG
    kay2k4
    Ich kenne inzwischen genügt Datenbanken, die sensible Daten enthalten (z.B. medizische Daten), die alle nicht verschlüsselt sind. Man mus hier immer überlegen, ob man nicht mit Kanonen auf Spatzen schießt. Besser ist es von vornherein den Zugriff auf die physikalische Datenbank einzuschränken.

    Zum Entschschlüsseln:
    Die Daten in eine Datatable einlesen. Alle relevanten Daten entschlüsseln und dann erst an das Listview oder was auch immer weitergeben. Beim Speichern in umgekehrter Reihenfolge.
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).
    Wie willst du den eine datenbank einschränken, jeder depp der weiß wie man mit einem pc umgeht, geht im ordner des programms und sucht sich die datenbank raus, oder willst du eine datenbank mit pw sichern, die ist in minuten schnelle geknackt, egal ob es eine access/sql/sqllite/usw... ist.
    Deswegen frage ich ja wie ich es angehen sollte.Eine einfach zugangs kontrolle per paswort reicht mir da überhaupt nicht.
    Wenn später bsp. der user das programm nutzt um sehr senisible daten einzutragen, verlangt er auch nach der entsprechenden sicherheit.
    bsp. KeePass würdes du da deine passwörter eintragen wenn die datenbank iwo offen auf der platte umliegt/ bzw. nur durch ein einfaches pw geschützt ist.wohl ehr nicht.
    Ich habe auch schon eine andere lösung gefunden, die aber nur teilweise sinnvoll ist, die datenbank datei beim schließen mit AES zu verschlüsseln, beim öffnen zu entschlüsseln, macht aber nicht seh viel sinn, wenn das programm gerade offen ist, sind auch die eintrage offen.

    MFG
    kay2k4
    Also meinst du sowas wie Benutzerkonten ?
    Mit Access ansich kenne ich mir eigendlich gut aus, habe auch per VB schon einige datenbank programme erstellt die auf einer .mdb zugreifen, aber mit Arbeitsgruppen kenne ich mich noch nicht aus.

    Ein crash kurs wäre vllt. hilfreich.

    MFG
    kay2k4
    Ja, das ist die in Access eingebaute Bentutzersteuerung. Dabei werden die Benutzerinformationen in einer seraten Datei, der mdw abgelegt. Ohne die gibt es dann keinen Zugriff auf die Datenbank.
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).