vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Verschlüsselung mit AES 
Autor: ModeratorDaveS (Moderator)
Datum: 12.03.09 08:50

Bitte den Php Code für die Verschlüsselung posten. Wichtig sind u.a. welche Php Funktion, woher du IV hast, in welchem Format die Dateien geschrieben werden, Blocklänge und welche Optionen wie ECB verwendet wurden. Jede Kleinigkeit muss bei der Entschlüsselung genau passen. (AES hat Blocklänge 128, aber man spricht oft relativ locker von Aes wenn man eigentlich Rijndael meint). Php arbeitet ausserdem hauptsächlich mit Strings, was zu Problemen führen kann weil alle Cryptoalgorithmen Bytes bearbeiten. Da es oft nicht ausreichend dokumentiert ist wie Php die Strings in Bytes umwandelt (oder zurück) muss man oft einfach experimentieren um alles richtig zu reproduzieren. Die Datenlänge muss übrigens ein Mehrfach der Blocklänge sein, wobei Paddingalgorithmus auch stimmen muss (bei dem Beispiel hier .Zeros, was nicht üblich ist weil nicht eindeutig rückgängig zu machen).

Wenn man das Beispiel von dieser Seite nimmt was die Php mcrypt Funktion verwendet
http://www.chilkatsoft.com/p/php_aes.asp
und alles entsprechend anpasst klappt die Entschlüsselung einwandfrei.
    Private Sub PhpAesDecryption()
 
        Dim rd As New RijndaelManaged
        Dim sIV As String = "1234567890123456"
        '  (hex: 31323334353637383930313233343536)
        Dim sKey As String = "1234567890123456"
        '  (hex: 31323334353637383930313233343536)
 
        'PlainText:
        '  "The quick brown fox jumped over the lazy dog"
        ' CipherText von Php (hex):
        Dim encdata As Byte() = {&HF7, &H81, &H76, &HAE, &H8D, &HFE, &H84, _
          &H57, &H85, &H29, &H20, &H8D, &H30, &HF4, &H46, &HBB, &HB2, &H9A, _
          &H64, &HDC, &H38, &H8B, &H5C, &HB, &H63, &H14, &HA, &H4F, &H31, &H6B, _
          &H3F, &H34, &H1F, &HE7, &HD3, &HB1, &HA3, &HCC, &H51, &H13, &HC8, _
          &H1E, &HF8, &HDD, &H71, &H4A, &H1C, &H99}
 
        Dim ivdata() As Byte = Encoding.ASCII.GetBytes(sIV)
        Dim keydata() As Byte = Encoding.ASCII.GetBytes(sKey)
        Dim ms As New IO.MemoryStream(encdata)
 
        rd.IV = ivdata
        rd.Key = keydata
        rd.Mode = CipherMode.CBC
        rd.Padding = PaddingMode.Zeros
 
        Dim cs As New CryptoStream(ms, rd.CreateDecryptor, _
          CryptoStreamMode.Read)
 
        Dim data(encdata.Length - 1) As Byte
        Dim i As Integer = cs.Read(data, 0, encdata.Length)
 
        Dim cleartext As String = Encoding.ASCII.GetString(data, 0, i)
 
        'Ergebnis = "The quick brown fox jumped over the lazy dog 
        ' (+ 4 Nullbytes) Yay! 
 
        cs.Close()
        rd.Clear()
 
    End Sub

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Verschlüsselung mit AES2.642Borsti11.03.09 15:15
Re: Verschlüsselung mit AES2.107RobBash11.03.09 15:40
Re: Verschlüsselung mit AES2.067ModeratorDaveS11.03.09 15:43
Re: Verschlüsselung mit AES2.865Borsti11.03.09 16:40
Re: Verschlüsselung mit AES2.114RobBash11.03.09 16:45
Re: Verschlüsselung mit AES2.098Borsti11.03.09 16:53
Re: Verschlüsselung mit AES2.169RobBash12.03.09 07:44
Re: Verschlüsselung mit AES2.442ModeratorDaveS12.03.09 08:50
Re: Verschlüsselung mit AES2.104Borsti18.03.09 00:00

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel