AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Nullterminierten String aus MSSQL nvarchar auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Nullterminierten String aus MSSQL nvarchar auslesen

Ein Thema von norwegen60 · begonnen am 26. Sep 2010 · letzter Beitrag vom 27. Sep 2010
Antwort Antwort
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Nullterminierten String aus MSSQL nvarchar auslesen

  Alt 27. Sep 2010, 09:19
...
Die Verschlüsselung (RC4) kann auch das Zeichen #0 erzeugen. ... Wenn ich per SQL Server Management Studio den Wert ansehe, ist er komplett abgespeichert.
Zufall das dies Klappt. Da auch der MS SQL Server viel C/C++-Code beinhaltet könnte sich das mit jedem Hotfix ändern.

Ein #0 ist nunmal für ein Zeichnkette der Kennzeichner für ein Ende der Zeichenkette (Jedenfalls wenns C/C++ betrifft). Und mir ist keine String-Datentyp bekannt in der das #0 einen gültigen Zeichenwert definiert.


Bei Delphi2010 muss man achtgeben, dass die Hexumwandlung auch wirklich
funktionert - evtl. muss Datentyp string durch AnsiString ersetzt werden.
Da sollte man dann die Funktion anpassen. Auf DB-Seite wird mit nvarchar schon Wide/UTF16-String verwendet. D2010 hat auch als Standard-Stringtyp einen Wide/UTF16-String. Deshalb soltle die Hexwandlung ebenfalls damit zurecht kommen!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
522 Beiträge
 
Delphi 12 Athens
 
#2

AW: Nullterminierten String aus MSSQL nvarchar auslesen

  Alt 27. Sep 2010, 17:29
Hallo zusammen,

danke für die Feedbacks.
Zitat:
Ein #0 ist nunmal für ein Zeichnkette der Kennzeichner für ein Ende der Zeichenkette (Jedenfalls wenns C/C++ betrifft). Und mir ist keine String-Datentyp bekannt in der das #0 einen gültigen Zeichenwert definiert.
Ich weiß. Von daher hat es mich etwas gewundert, dass ein String den Wert überhaupt richtig an die DB übergeben kann.

Zufall scheint es nicht zu sein, denn ich habe es mehrmals ausprobiert und das Schreiben in die DB (auch unterschiedlicher Werte) hat immer geklappt. Nur beim Lesen wurden sie konsequent abgeschnitten. Als ich es dann mit text in der DB probiert habe, hat auch das sicher geklappt. Dafür aber andere Dinge nicht, die ich sonst noch benötige

Falls keine anderen Lösungen kommen probiere ich es mal mit Base16

Grüße
Gerd
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Nullterminierten String aus MSSQL nvarchar auslesen

  Alt 27. Sep 2010, 17:47
Zufall scheint es nicht zu sein, denn ich habe es mehrmals ausprobiert ...
Und du hast jedesmal unterschiedliche MSSQL-Versionen mit unterschliedlichen Patch-Leveln probiert (Da auch der MS SQL Server viel C/C++-Code beinhaltet könnte sich das mit jedem Hotfix ändern.)?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
522 Beiträge
 
Delphi 12 Athens
 
#4

AW: Nullterminierten String aus MSSQL nvarchar auslesen

  Alt 27. Sep 2010, 19:28
Hallo Bernhard,

da hast du natürlich recht. Das habe ich nicht. Aber ich habe eine andere Idee. Da nur bei ca jeder 5. Generierung ein String mit #0 erzeugt wird, rufe ich die Funktion so lange auf, bis im String kein #0 mehr enthalten ist. Ich verwende den Code aus http://www.delphipraxis.net/26732-rc...uesselung.html wo noch eine zusätzlicher Zufallsstring hinzuaddiert wird wodurch sich der verschlüsselte String immer wieder ändert. Einzige Unsicherheit ist, dass es Passwort/Schlüsselkombinationen gibt, wo #0 öfter vorkommt.

Gerd
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:13 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