Einzelnen Beitrag anzeigen

Edelfix

Registriert seit: 6. Feb 2015
Ort: Stadtoldendorf
216 Beiträge
 
Delphi 10.4 Sydney
 
#1

System.Security.Cryptography und Delphi

  Alt 12. Okt 2022, 14:19
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();"
  Mit Zitat antworten Zitat