AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung SQLite iOS encrypt password klappt nicht
Thema durchsuchen
Ansicht
Themen-Optionen

SQLite iOS encrypt password klappt nicht

Ein Thema von schotti65 · begonnen am 24. Jan 2014 · letzter Beitrag vom 26. Jan 2014
 
schotti65

Registriert seit: 3. Sep 2010
Ort: Berlin
53 Beiträge
 
Delphi XE5 Enterprise
 
#1

SQLite iOS encrypt password klappt nicht

  Alt 24. Jan 2014, 21:21
Ich verwende eine SQLite Datenbank.
Das "Backend" (Windows VCL) pflegt diese, die iOS-App (FMX mobile) (iPad iOS7) liest diese.
Die *.sdb für die App wird beim deployen mitverteilt und später via FTP aktualisiert.
Alles hat im Prinzip schon funktioniert.

Jetzt habe ich die *.sdb verschlüsselt, im Backend unter Windows:
Delphi-Quellcode:
  FDSQLiteSecurity1.Database := FDConnection1.Params.Values['Database'];
  FDSQLiteSecurity1.Password := constCryptDatabasePassword;
  FDSQLiteSecurity1.SetPassword;
Im Backend alles schön, das Öffnen geht danach wie folgt:
Delphi-Quellcode:
function openDb(cPath : string; db : TFDConnection) : boolean;
begin
  if cPath <> 'then begin
    db.Params.Values['Database'] := cPath;
  end;

  db.Params.Values['LockingMode'] := 'normal';
  db.Params.Values['Password'] := constCryptDatabasePassword; // ohne diese Zeile hatte alles funktioniert...

  db.Connected := true;

  ...

  result := true;
end;
Im Backend geht das auch wunderbar.
ABER in der App kommt die Fehlermeldung

"...file is encrypted or is not a database"

Als Gegenprobe habe ich die PW-Konstante geändert und bekomme dann im Backend "...invalid password is specified or db is corrupted".
In der App wie oben.
(D.h. in der App wird das PW nicht falsch interpretiert (könnte ja sein, das iOS automatisch ein "aesXYZ-" davor setzt o.ä.) - denn dann käme ja auch in der App diese Fehlermeldung, sondern einfach nicht beachtet)

Der obige Code zum Öffnen wird gleichermassen von der App und vom Backend benutzt.
(Ich hab also keinen Schreibfehler gemacht)

Es ist, als ob die SQLite-Bibliothek (sagt man unter iOS so?) sich gar nicht für den Parameter "Password" interessieren würde... ("password" mit kleinem "p" hab ich auch probiert)

Hat jemand eine Idee?

PS: in der Doku http://docwiki.embarcadero.com/RADSt...te_mit_FireDAC liest sich das für mich so, als ob "Password" unter iOS auch funzen sollte...

Geändert von schotti65 (24. Jan 2014 um 21:24 Uhr) Grund: was vergessen
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz