LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Has anyone used the new version 4.0.0.23 of Encryption Compendium for LabVIEW to implement IPv6 communications?

I am considering purchasing the add on package mentioned above (Encryption Compendium For LabVIEW ) to implement TCP and UDP communications using the IPv6 protocol? I know this version was only released a few months ago but thought maybe someone has already had experience using it for that. I also wondered about how easy it is to use in general and how good are the many other functions in this package because even though I don't need them now I might in the future 😊.

 

Thanks,

Rob

0 Kudos
Message 1 of 3
(766 Views)

Hello Rob , as i am computer engineer and have master degree in cryptography i see that this library and toolkit is good for applying many enryption techniques ,, i do not have it in my hand but the protocols they use i know them very well so .. if uou need help in them you are welcome

CLA
0 Kudos
Message 2 of 3
(731 Views)

I haven't really used this toolkit myself yet, but have been in contact with the author about it and helped him with some of the trouble to implement some low level issues about DLL interfacing,

 

In a long ago past I was working on a similar library that was much less complete but in potential similar. It was using some C programming to interface to the Windows BSD style socket to provide IPv6 and using the OpenSSL in a pre 1.0 version (I believe I was going for 0.9.8 at that time, so if you are curious you can go and figure out how long ago that library was) for the TLS part. I had not bothered about bringing out the cryptography functionality of OpenSSL as an independent set of functions beyond what was needed for TLS and DTLS support for the network transport functionality.

 

From what I have seen, this library is very extensive and quite well developed, even though I would have approached it in some points a little differently, but that are more cosmetics than anything that would fundamentally hamper the library as is.

 

The only warning I can give is that cryptography in itself is quite challenging and some of the things may not really seem logical to a casual programmer. That has nothing to do with this particular implementation but is a fundamental feature of cryptography that you will run into with any library and interface. In that respect I think this library makes it cleaner to use, the OpenSSL API can be really a difficult mess to figure out at times with old, older and newer APIs going all through each other and sometimes doing the same thing in similar ways, and sometimes you have to mix and match those APIs to get a particular functionality. The Encryption Compendium may not support every possible OpenSSL cryptography function but what it supports it does provide in a clean and concise API to the user.

 

If you want to do IPv6 network communication in LabVIEW, it is second to none for the moment (NI is working on it but if it will make it into the LabVIEW 2022 network functions will have to be seen. I would not hold my breath for it for sure 😁 ).

 

TLS support for network communication is since LabVIEW 2020 also with the native network functions possible but this toolkit offers certainly more options whereas the NI developers choose to not bother the user with to many options and only provide the absolutely necessary things to influence.

 

DTLS (for UDP network communication) is not yet supported, although the underlying OpenSSL library has support for it. It is a bit of a tricky beast to support and back in my own library the OpenSSL support for it was still kind of flaky.

 

One point that may be also interesting to point out in this world of LabVIEW add-ons: The Encryption Compendium library has been around for a long time already and has not been left as abandonware. The author still actively supports it and has recently (last year) released a new version that added support for IPv6, SFTP, and more TLS support options. It is an attest that there is some commitment behind it, that has been lacking from many other (commercial) LabVIEW libraries in the past.

 

Creating a LabVIEW library is fun, making it a product that is worth being sold is however rather hard, and maintaining it after that a totally unsexy act. And in most cases it is a totally not rewarding activity, which is where it usually goes wrong. After the initial excitement many user will see "not free" (as in free beer) and leave it at that without looking further. By doing so they also discourage any more development of such libraries.

Rolf Kalbermatter
My Blog
Message 3 of 3
(706 Views)