09-13-2020 08:33 PM
Solved! Go to Solution.
09-14-2020 05:16 PM
Do you use LabVIEW 2020? If so check for TLS in the example finder. If not, upgrade!
09-15-2020 10:50 AM
LabVIEW2020 is not friendly to Linux,I need a native https library, which is implemented through tcp basic functions,But I did not find a similar library!
09-15-2020 11:40 AM - edited 09-15-2020 11:45 AM
@mybook wrote:
But I did not find a similar library!
That’s because it may not really exist. Almost all the alternative LabVIEW libraries out there use .Net which is of course is not an option on Linux.
I did work on a cross platform library years ago, which used OpenSSL for the TSL functionality but it never got in a released state for many reasons, OpenSSL’s security problems were only one of them, their version incompatible API changes another one. But when I got to know about the plans for native support in LabVIEW 2020, that was the final nail in the coffin for this.
I know that the LabVIEW Encryption Compendium got released code and the guy was even working on cross platform support. Maybe you want to ping them.
09-16-2020 11:01 AM - edited 09-16-2020 11:02 AM
Rolf,
Even if the OP isn't running LV 2020, wouldn't the existing HTTP VIs support what he needs? I was transacting with a secure web server using them back in LV 2014. The trick seemed to be to get the appropriate certificate(s) into the certificate storage (NOT the Windows cert store) on the client PC. I forget the details, but I had to do some export/import task (one-time).
And my recollection was that the HTTP VIs were available cross-platform, based on an NI .dll or .so further based on libCURL and OpenSSL.
Dave
09-16-2020 04:58 PM - edited 09-16-2020 05:00 PM
If you only want to do http(s), you definitely should be using the HTTP VIs, which are available multi-platform since at least around LabVIEW 2014. While it’s possible to do HTTP on top of the LabVIEW native TCP/lP nodes, this quicly will turn into a time sink as you try to support more and more features, web server intrinsicacies and other difficulties.
I was under the, possibly false, assumption that the OP wanted to do TSL socket. communication.
09-16-2020 06:54 PM
My iPhone makes a request through request. My computer can accept this request. This is my practical application. I am developing now, no matter what, it is difficult for me to get this data through https.
@DavidBoyd 已写:
Rolf,
Even if the OP isn't running LV 2020, wouldn't the existing HTTP VIs support what he needs? I was transacting with a secure web server using them back in LV 2014. The trick seemed to be to get the appropriate certificate(s) into the certificate storage (NOT the Windows cert store) on the client PC. I forget the details, but I had to do some export/import task (one-time).
And my recollection was that the HTTP VIs were available cross-platform, based on an NI .dll or .so further based on libCURL and OpenSSL.
Dave
09-16-2020 07:04 PM
Because it is a small application, I want to use LabVIEW to implement https requests on my mobile phone, and I don’t want to use other web servers.
09-17-2020 08:03 AM
@mybook wrote:
Because it is a small application, I want to use LabVIEW to implement https requests on my mobile phone, and I don’t want to use other web servers.
I'm feeling a little confused. LabVIEW does not run on a mobile phone!
If you mean that you have a web interface and want to make HTTPS requests from that to the LabVIEW application you could do that with web services (which also work on Linux systems). The LabVIEW app on your Linux platform contains a web service that your mobile phone interacts with.
Technically the web service works through a web server on the LabVIEW system. This can be either the NI embedded web server or in recent LabVIEW versions it can also be delegated to an Apache web server. The web server then sends the request to the LabVIEW web service which can react on it. While it is possible to build your own web server in LabVIEW this also quickly gets worrysome as HTTP is a pretty complicated standard to implement fully.
10-21-2020 04:13 AM
I developed a library that use LibreSSL for OSX, here https://labview.epfl.ch
See the provided examples (web server, web socket server, etc) and let me know if it is what you need. If yes I can provide you with the source code in c.
Chris