Frühere Antworten haben Sie darauf hingewiesen, wie Sie das tun können, wonach Sie gefragt haben.
Ich möchte ein Wort hinzufügen, warum Sie wahrscheinlich nicht tun sollten.
Sie sprechen von "symmetrischer Verschlüsselung" (derselbe Schlüssel wird zum Verschlüsseln und Entschlüsseln verwendet, im Gegensatz zur asymmetrischen Verschlüsselung, bei der alles, was mit einem Schlüssel verschlüsselt wurde, nur von einem bestimmten Gegenstück entschlüsselt werden kann).
Das Zerlegen einer ausführbaren Datei zur Bestimmung eines fest codierten Schlüssels ist neben-trivial. Das bedeutet, dass jeder, der jemals eines seiner ausführbaren Programme in die Hände bekommt, die Verschlüsselung aller jemals getauschten Nachrichten durchbrechen kann.
Sofern die Anwendung, die Sie im Sinn haben, sehr spezifisch ist, bedeutet dies, dass Ihr Setup sicher aussieht, aber nicht. In diesen Fällen ist es normalerweise besser, überhaupt nicht zu verschlüsseln, so dass niemand für dieses falsche Gefühl der Sicherheit fällt ...
Es ist sehr gut, dass Sie nach Standardbibliotheken suchen, um die Verschlüsselung zu tun (statt zu implementieren/Erstellen eines Algorithmus selbst), aber das Protokoll (Wie Anwendungen, Schlüssel und Nachrichten verwendet und ausgetauscht werden) ist mindestens so wichtig wie die Chiffre selbst. Vielleicht möchten Sie Ihre Ideen von jemandem testen lassen, der sich mit Kryptographie beschäftigt, um Ihnen die Schwächen zu erklären. (Ich bin sicher, dass es hier bei StackOverflow genug gibt. ;-))
Eine Frage mit ähnlichem Beispiel http://stackoverflow.com/questions/3141860/aes-ctr-256-encryption-mode-of- operation-on-openssl – enthusiasticgeek
Sie sollten 'EVP_ *' Funktionen verwenden. Die 'EVP_ *' Funktionen verwenden Hardware, wie AES-NI (falls verfügbar). Siehe [Symmetrische Verschlüsselung und Entschlüsselung von EVP] (https://wiki.openssl.org/index.php/EVP_Symmetric_Encryption_and_Decryption) im OpenSSL-Wiki.Tatsächlich sollten Sie eine authentifizierte Verschlüsselung verwenden, da sie * sowohl * Vertraulichkeit als auch Authentizität bietet. Siehe [Authentifizierte Verschlüsselung und Entschlüsselung mit EVP] (https://wiki.openssl.org/index.php/EVP_Authenticated_Encryption_and_Decryption) im OpenSSL-Wiki. – jww