Virtual keyboard
|
|
This article's lead section may not adequately summarize its contents. Please consider expanding the lead to provide an accessible overview of the article's key points. (October 2011) |
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 keyboard and a computer mouse.
Contents |
[edit] Types
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. The standard on-screen keyboard utility on most windowing 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. 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.
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.
On the Internet, various JavaScript virtual keyboards have been created, allowing users to type their own languages on foreign keyboards, particularly in Internet cafes.
[edit] Security considerations
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 http://www.r4isdhc.dk ). 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.
To be of any use, these virtual keyboards must be an integral part of an application or web page. A generic virtual keyboard—which will work with any program, including those that are not explicitly written for it—will not defeat a key logging program because the virtual keyboard will generate the same keyboard events as a real keyboard, and those events can be trapped and logged just as real keyboard inputs can.[1][2]
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.
[edit] Notes
- ^ Lake Software: Does not defeat keyloggers!
- ^ Smith, David A. (2006-06-21), Outsmarting Keyloggers, PC Magazine, http://www.pcmag.com/article2/0,2817,1978513,00.asp, retrieved 2009-11-16
[edit] External links
| Wikimedia Commons has media related to: Virtual keyboards |
- Global Assistive Technology Wiki: On Screen Keyboards
- Adaptive Technology Resource Centre (University of Toronto): On-Screen Keyboards.
- GNOME On-Screen Keyboard (gok).
- The GNOME Project: Caribou (an alternative for gok, with word prediction).
- Florence (another open-source alternative for gok).
- Kalpanik (a virtual keyboard for Indian languages).
- Microsoft: Using On–Screen Keyboard
- Button Board (an online keyboard for surfing with a mouse).
- Translate and Back - with virtual keyboards Free translation between 37 languages with language special virtual keyboards.