Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   .NET-Framework (managed code) (https://www.delphipraxis.net/79-net-framework-managed-code/)
-   -   System.Security.Cryptography und Delphi (https://www.delphipraxis.net/211611-system-security-cryptography-und-delphi.html)

Edelfix 12. Okt 2022 13:19

System.Security.Cryptography und Delphi
 
Hallo,

für eine Schnittstelle muss ich mich mit einer Vorgabe aus C# beschäftigen.

Leider fehlt mir der Ansatz das Ganze mit Delphi Bordmitteln zu lösen.

Hier der Quellcode:

Delphi-Quellcode:

        // encode and encrypt secret using .NET classes
        // using System.Security.Cryptography;
        // using System.IO;
        // encode the incremented secret
       
        byte[] encodedSecret = Encoding.UTF8.GetBytes(Convert.ToString(secret));

        // prepare TripleDESCryptoServiceProvider for encryption
        TripleDESCryptoServiceProvider tdes_enc = new TripleDESCryptoServiceProvider();
        tdes_enc.Key = md5PassPhraseHash;
        byte[] cIV_enc = new byte[8];
        Array.Copy(md5PassPhraseHash, cIV_enc, 8);
        tdes_enc.IV = cIV_enc;

        // encrypt secret
        MemoryStream memstream = new MemoryStream();
        CryptoStream cs = new CryptoStream(memstream, tdes_enc.CreateEncryptor(), CryptoStreamMode.Write);
        cs.Write(encodedSecret, 0, encodedSecret.Length);
        cs.FlushFinalBlock();
        cs.Close();
        byte[] encryptedSecret = memstream.ToArray();
        string secret_encrypted = Convert.ToBase64String(encryptedSecret);
Ich habe die Unit Winapi.Security.Cryptography gefunden und in die Uses hinzugefügt.

Es hat etwas mit "TripleDesCbc" zu tun.

Wie bekomme ich folgende Zeile in Delphi hin: "TripleDESCryptoServiceProvider tdes_enc = new TripleDESCryptoServiceProvider();"

Uwe Raabe 12. Okt 2022 13:39

AW: System.Security.Cryptography und Delphi
 
Zitat:

Zitat von Edelfix (Beitrag 1513164)
Leider fehlt mir der Ansatz das Ganze mit Delphi Bordmitteln zu lösen.

Ich glaube nicht, dass das überhaupt geht. Vielleicht wirst du hier fündig: https://github.com/MHumm/DelphiEncryptionCompendium


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:45 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