||This article has multiple issues. Please help improve it or discuss these issues on the talk page.
A virtual keyboard is a software component that allows a user to enter characters. A virtual keyboard can usually be operated with multiple input devices, which may include a touchscreen, an actual Computer keyboard and a computer mouse.
On a desktop PC, one purpose of a virtual keyboard is to provide an alternative input mechanism for users with disabilities who cannot use a physical keyboard. Another major use for an on-screen keyboard is for bi- or multi-lingual users who switch frequently between different character sets or alphabets. Although hardware keyboards are available with dual keyboard layouts (e.g. Cyrillic/Latin letters in various national layouts), the on-screen keyboard provides a handy substitute while working at different stations or on laptops which seldom come with dual layouts.
The standard on-screen keyboard utility on most touch screen systems allows [hot key] switching between layouts from the physical keyboard (typically alt-shift but this is user configurable), simultaneously changing both the hardware and the software keyboard layout. In addition, a symbol in the Systray alerts the user to the currently active layout.
Although Linux supports this fast manual keyboard-layout switching function, many popular Linux on-screen keyboards such as gtkeyboard, Matchbox-keyboard or Kvkbd do not react correctly. Kvkbd for example defines its visible layout according to the first defined layout in Keyboard Preferences rather than the default layout, causing the application to output incorrect characters if the first layout on the list is not the default. Activating a hot-key layout switch will cause the application to change its output according to another keyboard layout, but the visible on-screen layout doesn't change, leaving the user blind as to which keyboard layout he is using. Multi-lingual, multi-alphabet users should choose a linux on-screen keyboard that support this feature instead, like Florence.
Virtual keyboards are commonly used as an on-screen input method in devices with no physical keyboard, where there is no room for one, such as a pocket computer, personal digital assistant (PDA), tablet computer or touchscreen equipped mobile phone. It is common for the user to input text by tapping a virtual keyboard built into the operating system of the device. Virtual keyboards are also used as features of emulation software for systems that have fewer buttons than a computer keyboard would have.
Virtual keyboards can be categorized by the following aspects:
- physical keyboards with distinct keys comprising electronically changeable displays integrated in the keypads
- virtual keyboards with touchscreen keyboard layouts or sensing areas
- optically projected keyboard layouts or similar arrangements of "keys" or sensing areas
- optically detected human hand and finger motions
- virtual keyboards to allow input from a variety of input devices, such as a computer mouse, switch or other assistive technology device.
An optical virtual keyboard was invented and patented by IBM engineers in 2008. It optically detects and analyses human hand and finger motions and interprets them as operations on a physically non-existent input device like a surface having painted keys. In that way it allows to emulate unlimited types of manually operated input devices such as a mouse or keyboard. All mechanical input units can be replaced by such virtual devices, optimized for the current application and for the user's physiology maintaining speed, simplicity and unambiguity of manual data input.
Virtual keyboards may be used in some cases to reduce the risk of keystroke logging. For example, Westpac’s online banking service uses a virtual keyboard for the password entry, as does TreasuryDirect (see picture). It is more difficult for malware to monitor the display and mouse to obtain the data entered via the virtual keyboard, than it is to monitor real keystrokes. However it is possible, for example by recording screenshots at regular intervals or upon each mouse click.
The use of an on-screen keyboard on which the user "types" with mouse clicks can increase the risk of password disclosure by shoulder surfing, because:
- An observer can typically watch the screen more easily (and less suspiciously) than the keyboard, and see which characters the mouse moves to.
- Some implementations of the on-screen keyboard may give visual feedback of the "key" clicked, e.g. by changing its colour briefly. This makes it much easier for an observer to read the data from the screen. In the worst case, the implementation may leave the focus on the most recently clicked "key" until the next virtual key is clicked, thus allowing the observer time to read each character even after the mouse starts moving to the next character.
- A user may not be able to "point and click" as fast as they could type on a keyboard, thus making it easier for the observer.
- EP application 546704 Thomas H. Speeter/AT&T: "Intelligent work surfaces" priority date 13.12.1991
- DE application 19734511 B. Kämmerer, C, Maggioni, H. Röttger/SIEMENS AG: "Kommunikationseinrichtung" filing date 08.08.1997
- WO 0003348 C. Maggioni, B. Kämmerer/SIEMENS AG: "Projection Device / Vorrichtung zur Projektion" priority date 10.07.1998
- EP 0554492 Hans E. Korth: "Method and device for optical input of commands or data" filing date 07.02.1992
- "ASETNIOP concept designed to make touch typing on a touchscreen a mite easier". Gizmag.com.
- "ASETNIOP invisible keyboard aims to get you touch-typing on the iPad". todaysiphone.com.
- Lake Software: Does not defeat keyloggers!
- Smith, David A. (2006-06-21), Outsmarting Keyloggers, PC Magazine, retrieved 2009-11-16
- Microsoft Codeplex: An open source on-screen keyboard
|Wikimedia Commons has media related to: Virtual keyboards|
- Microsoft: Using On–Screen Keyboard