EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Question about license key

Posted: 03/21/2013 16:05:09
by Michael Lovett (Standard support level)
Joined: 03/20/2013
Posts: 28

In eval mode one has to call SetLicenseKey().

Will calling SetLicenseKey be required still once we purchase a license?

If so, can you tell me more about this call? I assume it makes an internet call to verify the value of the key , etc, is that right? Is it bad for performance if this gets called frequently?

I'm asking these questions because the nature of my application is that I don't really have a good place to make a one-time call SetLicenseKey for the overall application.

To fit in better with my current architecture, It would be easier if I could use the components in short interactions like this:

instantiate object (such as SSHSimpleClient)
initialize library (SetLicenseKey)
Open connection
perform operation
close connection
destroy object.

The thing is, my application may do 20 to 40 of these interactions concurrently (on different threads) and repeatedly (every minute or so) and thus it would be doing a lot of calls to SetLicenseKey()..

Any insight would be appreciated!
Posted: 03/21/2013 16:30:08
by Ken Ivanov (Team)

Hello Michael,

Thank you for getting in touch with us.

Yes, you will need to issue the SetLicenseKey() call whenever your product needs to use SecureBlackbox functionality. It is sufficient to run this command once per process - e.g. somewhere within the process' initialization section.

We tried to do our best to prevent SetLicenseKey() from affecting application performance significantly. This method runs fairly fast and does not access network. According to what you've told us about your application, its initialization section is the best place to call SetLicenseKey(). You can then make as many calls to SecureBlackbox components as you need without calling SetLicenseKey() any more.
Posted: 03/21/2013 17:09:49
by Michael Lovett (Standard support level)
Joined: 03/20/2013
Posts: 28

Thanks for your reply.
I guess I wasn't as clear as I'd hoped.

As it stands, I do *not* have a good place to call SetLicenseKey "just one time".

I'd be calling it thousands of times per hour.

I'm trying to understand how much of an affect this would have on overall performance.

Posted: 03/21/2013 17:25:12
by Ken Ivanov (Team)

If you have no possibilities to call SetLicenseKey() from the initialization section of the application, you can allocate a global flag that will indicate whether the SetLicenseKey() has already been called. You will then check that flag before creating SSH components and optionally apply the license key if it hasn't been done yet (and then set the flag).

As a matter of fact, I believe there are only two cases where there is no way to call SetLicenseKey() just once - id est, (a) if your code runs from a different process each time, (b) if it is located in an external module and is loaded and unloaded each time whenever there is a need in it.

Even if you have no other option but to call SetLicenseKey() each time when running your code (i.e. thousands of times per hour), it still won't affect the performance too much. In exact numbers, I would estimate it 20 to 40 per cent of the time of SSH handshake performed in lightning fast network (and much less in real-world networks).



Topic viewed 630 times

Number of guests: 1, registered members: 0, in total hidden: 0


Back to top

As of July 15, 2016 EldoS business operates as a division of /n software, inc. For more information, please read the announcement.

Got it!