On this page · 6 sections

The editions

Scada Studio is licensed per developer and per station, perpetually: a developer seat for each person who uses the designer, a station licence for each agent, each bought once and run for as long as you like, with a year of maintenance (updates and support) that can be renewed.

EditionWhat it licensesWhat it allows
Developer seatOne named developer using the designerThe designer, its samples and its exports; publishing to licensed stations. A seat does not license a station.
StationOne agent, bound to that stationEvery source and driver, unlimited browser clients and tags, the flows on the agent, the audit trail. Bound to the station's fingerprint at activation.
EnterpriseStations and seats for a site, quotedEverything, plus the features of the Enterprise edition: users from the company's identity provider (OpenID Connect), the OPC UA server on the agent, the audit trail's CSV export - and the long-term support line, the validation pack and priority support of the Enterprise terms.
CommunityNon-commercial useOne station with 200 tags, and the designer; the evaluation line stays on the apps.
Trial30 daysEverything of Enterprise, on five stations and five seats, for the days on the token.

Without a licence the software runs as an evaluation: everything works, the Project menu and the apps say so, and the terms say what an evaluation may be used for. A licence never cuts the software down below that; it removes the evaluation line and, for a Station or a Community token, names what the Enterprise edition has that the token does not.

Perpetual, with maintenance

A perpetual token carries maintenanceUntil, a date: every build of Scada Studio released up to that date runs licensed with it, forever. A build released after it runs as an evaluation and says so (this build is newer than the maintenance of this licence): stay on the build you validated, or renew the maintenance and get a token with a later date. A trial or a subscription carries expires instead. Each build knows its own release date; nothing is looked up anywhere.

Activation, offline

A station licence is bound to one station. On that station:

node agent.js --activation-request

prints the activation request - the station's fingerprint (its host name and first hardware address, hashed), its host name and operating system in clear so that the licence can name the station, the agent's version and the date - nothing else about the machine; node agent.js --activation-request prints it, and the line is base64url-encoded JSON, so what it carries can be read before it is sent - as one line to send to your supplier by mail or any other way. The token that comes back goes into "licence" in the agent's configuration and is valid on that station; on another it reads Evaluation (licensed for another station). A renamed host or a replaced network card is a new station and asks for a new token: say so to support. Nothing calls anywhere, in either direction.

A developer seat goes into the designer's Licence dialog (Project › Licence) of that developer's browser. An Enterprise token goes into both.

Two keys

Scada Studio uses two keys, entered once in the designer's Licence dialog:

  • The Scada Studio licence, above.
  • The Smart UI key licenses the components the screens are made of. The designer applies it on its next load and writes it into every app it publishes or exports; an agent can also carry it in its configuration as "smartLicense" for the apps it publishes.

The token

A licence token is base64url(payload).base64url(signature): the payload is plain JSON - product, holder, edition, seats, stations, station, features, issued, expires or maintenanceUntil, id - and the signature is ECDSA P-256 over it, verified against the public key built into studio-licence.js with WebCrypto in the browser and Node's crypto on the agent. The private key is the publisher's alone: a token cannot be made or altered without it, and it can be read by anyone, so it carries nothing private. A token the publisher has withdrawn (a chargeback, a leak) is refused by every build from then on, and by a station given the publisher's revoked.json.

/api/status on an agent shows the edition, the features it refuses, the fingerprint and the build date; scripts/studio-licence.js verify <token> says what a token is.

Terms and prices

The licence terms are published at htmlelements.com/license, together with those of the component library; prices are quoted on request at sales@jqwidgets.com. Support is at support@jqwidgets.com.