Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   SQLite 3 Datenbank nachträglich verschlüsseln (https://www.delphipraxis.net/184869-sqlite-3-datenbank-nachtraeglich-verschluesseln.html)

RWarnecke 27. Apr 2015 05:56

Datenbank: SQLite • Version: 3 • Zugriff über: was auch immer

SQLite 3 Datenbank nachträglich verschlüsseln
 
Hallo zusammen,

ich habe eine Anwendung draussen, die einen Zugriff auf eine SQLite Datenbank beinhaltet. Das funktioniert auch soweit alles sehr gut. Jetzt hat mich jemand auf eine Idee gebracht, die aber eine Verschlüsselung der SQLite Datenbank voraussetzt. Welche Idee das ist spielt keine Rolle, da die Bedingung zu der Idee eine Verschlüsselung der Datenbank als Voraussetzung hat.

Kann ich die SQLite Datenbank durch irgendeinen Befehl nachträglich verschlüsseln ?

Dejan Vu 27. Apr 2015 06:33

AW: SQLite 3 Datenbank nachträglich verschlüsseln
 
Natürlich, aber woher soll die fremde Anwendung wissen, wie man das entschlüsselt?

mkinzler 27. Apr 2015 06:41

AW: SQLite 3 Datenbank nachträglich verschlüsseln
 
Neue Datenbank mit Verschlüsselung erzeugen, Daten transferieren. Alte Datenbank löschen. (Neue Datenbank umbenennen)

RWarnecke 27. Apr 2015 07:05

AW: SQLite 3 Datenbank nachträglich verschlüsseln
 
Zitat:

Zitat von Dejan Vu (Beitrag 1299353)
Natürlich, aber woher soll die fremde Anwendung wissen, wie man das entschlüsselt?

Das ganze soll in einem Update passieren.

Zitat:

Zitat von mkinzler (Beitrag 1299354)
Neue Datenbank mit Verschlüsselung erzeugen, Daten transferieren. Alte Datenbank löschen. (Neue Datenbank umbenennen)

Das war nicht ganz die Antwort, die ich hören wollte :(, aber sei es drum wenn es nicht anders geht.

Darlo 27. Apr 2015 07:49

AW: SQLite 3 Datenbank nachträglich verschlüsseln
 
Ja das geht. Habe ich selber schon gemacht. benutze dabei die Unidac's.
Delphi-Quellcode:

  uniConnection1.SpecificOptions.Values['EncryptionKey'] := 'NEUES_PASSWORT';
  try
    uniConnection1.Connect;
  except
    uniConnection1.Connected:= false;
    uniConnection1.SpecificOptions.Values['EncryptionKey'] := '';
    uniConnection1.Connect;
    TLiteUtils.EncryptDatabase(UniConnection1, 'NEUES_PASSWORT';
  end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz