Review
Secwin header


Reviewed by Tom Hebenstreit

     
This review first appeared in Clarion Online and is reproduced with permission.
[Note : This review first appeared in the August 1998 edition of Clarion Online and some of the specifics are out of date.
However the review is still fundamentally correct ]
 

Review : Secwin Licensing by Tom Hebenstreit

The full commercial package of Secwin from CapeSoft retails for $249, and is available direct from CapeSoft (email sales at capesoft dot com). Demos can be downloaded from the CapeSoft web site at: http://www.capesoft.com

Secwin is unusual in this round up for a couple of reasons. First, it is a full-blown application security package, which also happens to include some copy protection and licensing capabilities. Second, the 16-bit version is free (love that price!). The release used for this round up, though, was the commercial 32-bit version.

Note: We will not be discussing Secwin's many security features here at all, except as they pertain to protection and licensing. (For a complete review of an earlier version of Secwin, see Volume 1, Issue 2 of Clarion Online.)

What it has: Branding, multiple levels (e.g. Demo, Lite, Standard, Pro, Enterprise), optional modules (up to 15 max), run counters, expire dates, single code activations, DLL support, developer ID. Access can be controlled for procedures or multiple controls within a procedure based on the current program mode. Secwin's network concurrency checking is also very strong, and includes functions for listing currently logged in users, etc.

What is doesn't have: Ability to arbitrarily set a Demo time limit via the templates (it is fixed at 30 days), automatic warnings of a pending expire, record limiting, ability to change the look of its messages (text can be changed, of course, and you can also set a default font which applies to all Secwin screens). Copy protection (i.e., tying to hardware) is minimal.

Installation

A simple installer walks you through the process of installing the Secwin templates and support files. One thing it does which I like is to display the readme file for the product right up front so that you know what is going to happen during the install. It also tells you the name of the file that contains the documentation, and suggests printing it out (I concur). No modification of the Clarion4.RED file is required. As to improvements, well, it could display the doc file, find the Clarion4 directory automatically and register the templates (my usual wishes).

Implementation

Secwin is not quite as plug and play as some of the other products in this round up, but it is also designed from a fundamentally different perspective (that of a security system, not a protection tool). This means you will see more templates, more functions and a bigger manual, but you'll also find that most of that is related to the security portions of Secwin. Additionally, it is not necessary to implement security in order to use Secwin's protection and network concurrency features (it's there if you want it, but not required). In other words, no login screens, no user administration and so forth.

Implementing Secwin in my test application was straightforward. Following the instructions provided by CapeSoft, I added a global extension to the app and activated the licensing functions. I then added two procedure extensions to my main procedure, one to handle Secwin login (which I bypassed using the template options), and one to implement the licensing features I wanted to test (run counters, expiration dates, program modes, etc.).

For any procedure that needed special handling based on the program mode, I had to add another extension that took care of those details; e.g., refusing access in demo mode or enabling special features in 'Enterprise' mode. This is also where you can enable or disable individual controls, as in hiding the 'OK' button on a form in a demo.

Utilities are provided to create the file that contains your Secwin protection and licensing information, and which you ship with your app. You can also 'stamp' the file with an individual number known only to you, thus preventing anyone else with Secwin from compromising your system. Your programs will only work with security files created by you.

Performance

Like the other products reviewed here, Secwin did a good job in catching all of the common methods of circumventing its protections. Expired demos could not be faked out by date changes, etc., and after re-installing a demo it was still expired.

Secwin in action is very quiet about protecting your apps. There are no automatic nag or warning screens which pop up to tell the user about, for example, an impending demo expire date, nor do the templates provide options for that. When a run counter ran out, the app simply reverted to demo mode without a warning message. Templates are provided to help you create your own logo and/or nag screens to clue the user in, but that does require more effort on your part. The messages it does display to notify of problems or expirations are very simple, with nothing other than the message itself and an Ok button.

To create unlock codes, CapeSoft provides a combination demo/utility called Register. There is no documentation on how to use it, so I found myself stumbling around in it before I caught on to the way things HAD to be done. For example, if I had entered "CPTEST" in the template prompts when building the app, I had to enter it that way in Register when filling in the form for its application database. Entering "CPTest" (as I did at first) resulted in the generation of invalid activation codes, which my compiled application then rejected (doh!).

Note: Secwin does time limit its activation codes - they are only valid for 7 days from the date they are issued.

A cool touch - when information is entered on the Secwin registration form (both yours and the customers), it automatically generates and displays a checksum number next to the field. This makes it easy to catch situations where typos or mismatched case would result in the generation of an invalid unlock code. With Secwin, you just compare your number with the customers.

Documentation

Secwin includes a printable manual in Window Write format (yes!), but no online help file (sigh). The manual totals around 66 pages, and includes sections on Installation, the Templates, a Technical Reference for all Secwin functions and finally, a general User Guide which provides details on the terms and concepts used by Secwin.

Additionally, eight sample apps are provided, two of which relate to the protection and licensing features. An additional and very useful demo is available direct from CapeSoft, which details how to implement the Secwin licensing features without using security login screens, which is, of course, just what I wanted to do for this review.

They are planning to incorporate this demo in with the rest in the standard Secwin install, but couldn't say exactly when that will happen. Just ask them for LICENSE.ZIP if you acquire Secwin and don't see a demo directory for it.

Technical Support

For most of us, technical support from CapeSoft is via email (unless you live in South Africa, in which case there are phone and fax numbers, as well). For myself, they normally respond within 24 hours, with the delay being primarily caused by the time difference (I am in California). In my experience, they have never failed to answer a question thoroughly or fix a problem quickly.

Other Goodies

As mentioned above, Secwin is also a full-fledged security package for controlling user access to your application forms, fields and data. The Register app, while basic, could form the basis for a reasonable customer tracking system. Since you get the app and dictionary, you can customize or expand it any way you wish. If you already have a customer system, you can incorporate the generation of unlock codes into it by adding a call to one Secwin function.

Summary

Secwin is a powerful package at a good price (a fabulous price for 16-bit), but if all you need is to protect your applications, it may be more complicated than you need. I found that it wasn't quite as easy to implement as the other packages, but then, they don't include a complete security system, either. CapeSoft does a good job of providing step-by-step instructions on how to accomplish tasks, though, so it can probably be classified simply as more time consuming than difficult. I also like the way they implemented their network concurrency checking - it has virtually no impact on network performance and seems very adept at handling orphaned licenses without requiring user intervention.

To sum up: For protection alone, Secwin offers some compelling features and certainly deserves a look. If you need both security and protection at a reasonable price, this package is a hard one to beat.

Category

Product Score

Ability to do the task

Very Good

Ease of use

Very Good

Ease of Installation

Good

Documentation

Very Good

Technical Support

Very Good

Modifies Shipping Templates

No

Black-Box DLLs/LIBs

Yes



© 1998 Online Publications, Inc. Reproduced with permission.
© 2012 CapeSoft Software CC