What is Kiosk Software?

Kiosk software running on a kioskKiosk software is a security application specifically designed to transform a PC or tablet into a self-service kiosk.  The kiosk software is also responsible for locking down your kiosks operating system to prevent malicious user tampering, which is why kiosk software is often referred to as “kiosk lockdown software.”

Some common features of kiosk software include:

Ensures that your kiosk application is always running

In most cases the kiosk operator will desire to deliver their content in the form of a website or native application running on their kiosk.  An example of a native application for a kiosk running Microsoft Windows would be a .NET WPF application.  For the sake of brevity, for the remainder of this article I’m going to refer to the website or native application running on your kiosk as “your kiosk application.”

The kiosk software provides a means to “lockdown” your kiosk application so it’s always accessible to your users.  At no time should a user be able to close your kiosk application or prevent it from running.  In the case of a reboot, the kiosk software will restart your kiosk application automatically.

Touchscreen keyboard

A touchscreen keyboard, also referred to as a “virtual keyboard” or “onscreen keyboard”, is a popular and cost-effective alternative to including a physical keyboard on your kiosk.  Kiosk software will typically either overlay or resize your kiosk application to display the touchscreen keyboard.

Touchscreen keyboards work great when the user doesn’t need to enter a lot of input.  For example, a touchscreen keyboard would not be desirable on a job application kiosk where the applicant has to perform a lot of data entry.Kiosk software touchscreen keyboard

Keystroke filtering

Kiosk software keystroke filteringIn order to prevent malicious users from closing your kiosk application or tampering with the operating system the kiosk software must filter out system keystrokes like Ctrl-Alt-Del.  The filtering of keystrokes is more critical if a physical keyboard is attached to your kiosk since the physical keyboard contains the modifier keys necessary to enter system keystrokes.

Most kiosk software will include a touchscreen keyboard that is neutered to only include non-modifier keys, so the potential for users to enter system keystrokes is greatly reduced.  If a malicious user can attach a physical keyboard via an exposed USB port on your kiosk then there is still a potential for hacking your kiosk application.

Restricts web browser access

Kiosk software website filteringIn the case where your kiosk application is a website users should be restricted to only access certain URLs.  This prevents users from viewing websites that have nothing to do with the primary purpose of your kiosk, or potentially compromising the security of your kiosk.  A common way to accomplish this is through the use of a URL whitelist and regular expressions.

Prevents users from accessing the desktop or file system

Kiosk software for WindowsThe kiosk software should prevent the user from closing your kiosk application and accessing the desktop or file system.  Most kiosk software includes a software watchdog which is a service running in the background that ensure that your kiosk application is always running.  In the case where your kiosk application encounters an error the watchdog will restart the kiosk software and prevent the user from accessing the desktop.

Support for accepting payments and controlling other user input devices

Kiosk software payment device supportRetail and bill payment kiosks are common place today.  Kiosk software will often include support for easily integrating popular payment devices like bill acceptors and credit card readers.  Other user input devices you might see on a kiosk could include a webcam or biometrics.

Kiosk software will typically provide a kiosk SDK for abstracting the complexities of the device and exposing it’s interfaces via JavaScript or C#.  Well designed interfaces make it possible to easily swap between devices with little to no code rework.

Other useful resources on kiosk application design

Andrew Savala
Follow me

Author: Andrew Savala

Andrew Savala is the CEO of RedSwimmer, with a background in designing and deploying complex payment kiosk systems. Andrew offers high-value, strategic consulting services to companies looking to develop their payment kiosks.