LNet TCP+SSL (OpenSSL), wie nutzen?

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

Hallo Leute,

wie ich bereits vor ein/zwei Monaten gefragt habe, brauche ich eine Möglichkeit, Nachrichten in Form von Strings von A nach B durchs Internet zu senden.
Mir wurde dort die TCP-Komponente aus LNet empfohlen, diese funktioniert auch perfekt...
Nur halt unverschlüsselt... Meine Frage ist nun, wie kann ich eine TCP-Verbindung der TCP-Komponente verschlüsseln lassen (zB.: SSL/TLS)
Ich habe bereits einige Zeit auf google verbracht, aber leider kein passendes Thema/Tutorial/How to/whatever gefunden, dass mir da helfen könnte...


Ich hoffe ich bekomme hier, wie sonst auch ;) eine gute und verständliche antwort aus der Lazarus-Community

Danke schonmal im Voraus,


MfG

mark332
Zuletzt geändert von mark332 am Mi 25. Dez 2013, 18:21, insgesamt 1-mal geändert.
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1627
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: LNet TCP+SSL, wie nutzen?

Beitrag von corpsman »

Servus,

Mein Send_Get_File nutzt Lnet mit SSL. In dem Sample siehst du, dass da gar nicht viel zu tun ist. Lediglich die TLSSLSessionComponente mit dazu und irgendwo die notwendigen Parameter mit angeben. Fertig.

Gruß

Corpsman
--
Just try it

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL, wie nutzen?

Beitrag von mark332 »

Danke für die AW, leider kann ich weder deins, noch mein Programm ausführen ?!

"unable to initialize OpenSSL library, please check your OpenSSL installation"

Ich habe LNet und damit logischerweise auch OpenSSL schon mehrmals neu installiert, ohne erfolg :(
Ebenfalls ist mir aufgefallen, dass der Compiler einen Fehler ausgibt, wenn dieser Lazarus zur instalation von LNetVisual.lpk neu compilieren muss;
"Can't find unit ComponentTreeView used by ObjectInspector"

Kann es sein, dass bei mir irgendwie lazarus beschädigt ist?


MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL, wie nutzen?

Beitrag von mark332 »

Hmm... habe jetzt gerade das hier gefunden:

http://forum.lazarus.freepascal.org/ind ... ic=12593.0

allerdings finde ich die Idee, dass jeder user sich OpenSSL manuell installieren muss ziemlich (nicht so prickelnd).

Hat jmd. eine Alternative, oder einen Vorschlag ?

MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1627
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von corpsman »

Naja,

Also unter Linux ist OpenSSL standardmäßig dabei (zumindest bei meinem Kubuntu)
und unter Windoof kopierst du nur die "libeay32.dll" und "libssl32.dll" in das Verzeichniss deiner Anwendung und hast OpenSSL "installiert".
--
Just try it

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

corpsman hat geschrieben:Naja,

Also unter Linux ist OpenSSL standardmäßig dabei (zumindest bei meinem Kubuntu)
und unter Windoof kopierst du nur die "libeay32.dll" und "libssl32.dll" in das Verzeichniss deiner Anwendung und hast OpenSSL "installiert".
Hmm... okay,

dann ist da nur die Frage, darf ich das einfach so, ohne irgendwelche Rechte zu verletzen?
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1627
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von corpsman »

--
Just try it

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

corpsman hat geschrieben:http://www.openssl.org/support/faq.html#LEGAL1

ich denke ja.

hmm.... okay,
aber durch den Link blick ich nicht durch :oops:
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?


mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

creed steiger hat geschrieben:http://de.wikipedia.org/wiki/Openssl

---> Lizenz
bzw
http://en.wikipedia.org/wiki/OpenSSL

--> Licensing
Okay, danke :)
Hab ich das richtig verstanden, dass in erster Linie die nutzung davon erlaubt ist, ich aber um Erlaubnis bitten muss, bevor ich werbung für das/mein Programm mache ?

MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

#REVIVE


Hallo Leute,

ich habe gerade das Problem, dass ich mein Programm auf einem anderen Rechner nicht ausführen kann; "Unable to initialize OpenSSL-Library"
weder das einfügen der beiden DLLs in den Programmordner, noch die installation von OpenSSL haben hier geholfen :\

Hat jemand eine Idee, wie ich OpenSSL sonst nutzen soll/eine Alternative zu OpenSSL ?


Danke schonmal im Voraus und MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1627
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von corpsman »

hast du evtl. eine 32-Bit version der DLL's und nutzt eine 64-Bit Anwendung ?
Versuche anhand der Fehlermeldung in der Anwendung (mit debugger) raus zu bekommen, wo es genau liegt.

Evtl. ist auch deine DLL version zu alt / zu neu. Normalerweise wird sowas geprüft und dann auch als "kann nicht initialisieren" ausgegeben.
--
Just try it

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

corpsman hat geschrieben:hast du evtl. eine 32-Bit version der DLL's und nutzt eine 64-Bit Anwendung ?
Versuche anhand der Fehlermeldung in der Anwendung (mit debugger) raus zu bekommen, wo es genau liegt.

Evtl. ist auch deine DLL version zu alt / zu neu. Normalerweise wird sowas geprüft und dann auch als "kann nicht initialisieren" ausgegeben.
Danke für deine AW,

ich werde die Möglichkeiten nochmal ausprobieren, sollte aber eig nicht daran liegen :\

MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

mark332
Beiträge: 202
Registriert: Do 16. Mai 2013, 13:49
OS, Lazarus, FPC: Windows 10 H.P. (x64) / Ubuntu 14.04.X
CPU-Target: AMD Octacore 4.0GHz

Re: LNet TCP+SSL (OpenSSL), wie nutzen?

Beitrag von mark332 »

mark332 hat geschrieben:
corpsman hat geschrieben:hast du evtl. eine 32-Bit version der DLL's und nutzt eine 64-Bit Anwendung ?
Versuche anhand der Fehlermeldung in der Anwendung (mit debugger) raus zu bekommen, wo es genau liegt.

Evtl. ist auch deine DLL version zu alt / zu neu. Normalerweise wird sowas geprüft und dann auch als "kann nicht initialisieren" ausgegeben.
Danke für deine AW,

ich werde die Möglichkeiten nochmal ausprobieren, sollte aber eig nicht daran liegen :\

MfG

mark332
Okay, danke :) hat geklappt.

Ich stelle mir nun leider die Frage, wie genau ich mit 'keyFile' und 'CAFile' arbeiten soll :S
Ich habe mir zum Testen einfach die files aus dem Beispiel, das in lnet implementiert ist genommen, allerdings würde ich für mein Programm, schon gerne verstehen, wie das genau funktioniert/wie ich diese Dateien 'generieren' kann, damit das
nicht immer die gleichen sind, ansonsten hätte ich hier ja eine Sicherheitslücke :S

MfG

mark332
------------------------------------------------------------
Warum gibt es hier eigentlich kein [SPOILER][/SPOILER] ?

Antworten