A Logo
Help Irongeek.com pay for
bandwidth and research equipment:

Web Hosting By:
Dreamhost Logo

Search Irongeek.com:

Affiliates:
ISDPodcast Button
RootSecure Button
Social-engineer-training Button
Irongeek Button

Web Hosting:
Dreamhost Logo
Help Irongeek.com pay for bandwidth and research equipment:

paypalpixle

 

AddThis Feed Button

ALT+NUMPAD ASCII Key Combos: The α and Ω of Creating Obscure Passwords

ALT+NUMPAD ASCII Key Combos: The α and Ω of Creating Obscure Passwords

 

        As some Microsoft Operating System geeks know, you can type many more characters than are on a standard keyboard by using the ALT+NUMPAD combination technique. For example, by holding down the ALT key, typing 234 on the number pad, then releasing ALT gives you the Ω character. I'm writing this article mostly because when I search around for information on the topic of ALT+Number key combos I find pages that are lacking in details. Most of the pages I found are coming from the angle of using ALT+NUMPAD combinations as shortcuts for typing in non-English languages, but I have another use for them. Using ALT+NUMPAD can make for some very ugly passwords to crack. These odd characters have two major advantages over normal keystrokes:

1. They are unlikely to be in someone's dictionary or brute force list. Try brute forcing a password like "ace of ♠s" or "I am the α and the Ω".

2. Some hardware key loggers will not log these odd characters. Your mileage may vary on this as some key loggers can, so don't rely on it to keep you 100% safe.

        I'll cover the 2nd point more in an upcoming article. Using ALT+NUMPAD to type odd characters into your password also has a few disadvantages.

1. The way they are described in this article only works in Microsoft Operating Systems (DOS, Windows 9x, Vista, XP, 2000), and there may be some variation amongst the different versions. If you know of a good way to do the same thing in Linux please email me.

2. Not all applications will let you use these odd characters. For testing I tried the password "Ω" (ALT+234 and ALT+0255) on a Windows XP local account, and on the IP.Boards at BinRev.com and it worked fine, but not all application will let you use these sorts of characters in your password.

Microsoft has the following to say on the subject of ALT+NUM key codes:

 

From:http://www.microsoft.com/globaldev/reference/glossary.mspx

Alt+Numpad: A method of entering characters by typing in the character's decimal code with the Numeric Pad keys (Num Lock turned on). In Windows:
Alt+<xxx>, where xxx is the decimal value of a code point, generates an OEM-encoded character.
Alt+<0xxx>, where xxx is the decimal value of a code point, generates a Windows-encoded character.
Alt+<+>+<xxxx>, where xxxx is the hexadecimal Unicode code point, generates a Unicode-encoded (UTF-16) character.

        Shortly I'll explain explain the first two methods further. The 3rd is more problematic to work with. First, you may have to edit your registry and add a the REG_SZ value "HKEY_Current_User/Control Panel/Input Method/EnableHexNumpad", then set it to "1". Also, depending on where you are trying to type the character the application may interpret your hexadecimal Fs as attempts to bring down the file menu. Since method three is so problematic I'll focus on the first two methods.

        First, make sure you are using the number pad and not the top roll number keys, only the number pad works for this. Second, make sure NUM LOCK is on. It does not have to be on in all cases for these key combos to work, but it helps by keeping the number pad from being misinterpreted.

        The chart below shows the relevant key codes to get various symbols. The table on the left shows the OEM Extended ASCII character set (AKA: IBM PC Extended Character Set; Extended ASCII; High ASCII; 437 U.S. English). True ASCII is only 7 bit, so the range is 0 to 127. IBM extended it to 8 bits and added more characters. To type these characters you merely have to hold down an ALT key, type the numeric value of the character, then release the ALT key.

        The table on the right shows the ANSI character set (AKA: Window's ANSI/ISO Latin-1/ANSI Extended ASCII, though technically they are not exactly the same thing.). To use the ANSI character set you do the same thing as the OEM set, but you preface the number with an extra zero. Notice that the first 127 should be the same in both sets, though values 0-31 may not be viewable in all cases. I've been in "character encoding hell" just trying to get this article on my site in a readable format.

        I'm only covering the first 256 characters of both sets in my chart, in some cases you can go higher but it depends on the application you are typing in. For example, ALT+257 gives me ā in Wordpad, but in Notepad it loops back around the character set and gives me☺(257-256=1 which is ☺ in the OEM set) . If you want to know what key code will bring up a particular character in a certain Windows font run Windows Character Map (charmap.exe) and look in the bottom right corner to find out.

        I hope this information is useful to some of you, I'll be referring back to it when I start to write my hardware key logger reviews. Check out the links at the bottom of this page for further information on the topic.

IBM (AKA: OEM) / PC Extended ASCII

Window's ANSI/ISO Latin-1/ANSI Extended ASCII

ALT+0
ALT+1
ALT+2
ALT+3
ALT+4
ALT+5
ALT+6
ALT+7
ALT+8
ALT+9
ALT+10
ALT+11
ALT+12
T+13
ALT+14
ALT+15
ALT+16
ALT+17
ALT+18
ALT+19
ALT+20
ALT+21
ALT+22
ALT+23
ALT+24
ALT+25
ALT+26
ALT+27
ALT+28
ALT+29
ALT+30
ALT+31
ALT+32
ALT+33!
ALT+34"
ALT+35#
ALT+36$
ALT+37%
ALT+38&
ALT+39'
ALT+40(
ALT+41)
ALT+42*
ALT+43+
ALT+44,
ALT+45-
ALT+46.
ALT+47/
ALT+480
ALT+491
ALT+502
ALT+513
ALT+524
ALT+535
ALT+546
ALT+557
ALT+568
ALT+579
ALT+58:
ALT+59;
ALT+60<
ALT+61=
ALT+62>
ALT+63?
ALT+64@
ALT+65A
ALT+66B
ALT+67C
ALT+68D
ALT+69E
ALT+70F
ALT+71G
ALT+72H
ALT+73I
ALT+74J
ALT+75K
ALT+76L
ALT+77M
ALT+78N
ALT+79O
ALT+80P
ALT+81Q
ALT+82R
ALT+83S
ALT+84T
ALT+85U
ALT+86V
ALT+87W
ALT+88X
ALT+89Y
ALT+90Z
ALT+91[
ALT+92\
ALT+93]
ALT+94^
ALT+95_
ALT+96`
ALT+97a
ALT+98b
ALT+99c
ALT+100d
ALT+101e
ALT+102f
ALT+103g
ALT+104h
ALT+105i
ALT+106j
ALT+107k
ALT+108l
ALT+109m
ALT+110n
ALT+111o
ALT+112p
ALT+113q
ALT+114r
ALT+115s
ALT+116t
ALT+117u
ALT+118v
ALT+119w
ALT+120x
ALT+121y
ALT+122z
ALT+123{
ALT+124|
ALT+125}
ALT+126~
ALT+127
ALT+128
ALT+129
ALT+130
ALT+131
ALT+132
ALT+133
ALT+134
ALT+135
ALT+136
ALT+137
ALT+138
ALT+139
ALT+140
ALT+141
ALT+142
ALT+143
ALT+144
ALT+145
ALT+146
ALT+147
ALT+148
ALT+149
ALT+150
ALT+151
ALT+152
ALT+153
ALT+154
ALT+155
ALT+156
ALT+157
ALT+158
ALT+159
ALT+160
ALT+161
ALT+162
ALT+163
ALT+164
ALT+165
ALT+166
ALT+167
ALT+168
ALT+169
ALT+170
ALT+171
ALT+172
ALT+173
ALT+174
ALT+175
ALT+176
ALT+177
ALT+178
ALT+179
ALT+180
ALT+181
ALT+182
ALT+183
ALT+184
ALT+185
ALT+186
ALT+187
ALT+188
ALT+189
ALT+190
ALT+191
ALT+192
ALT+193
ALT+194
ALT+195
ALT+196
ALT+197
ALT+198
ALT+199
ALT+200
ALT+201
ALT+202
ALT+203
ALT+204
ALT+205
ALT+206
ALT+207
ALT+208
ALT+209
ALT+210
ALT+211
ALT+212
ALT+213
ALT+214
ALT+215
ALT+216
ALT+217
ALT+218
ALT+219
ALT+220
ALT+221
ALT+222
ALT+223
ALT+224α
ALT+225
ALT+226Γ
ALT+227π
ALT+228Σ
ALT+229σ
ALT+230
ALT+231τ
ALT+232Φ
ALT+233Θ
ALT+234Ω
ALT+235δ
ALT+236
ALT+237φ
ALT+238ε
ALT+239
ALT+240
ALT+241
ALT+242
ALT+243
ALT+244
ALT+245
ALT+246
ALT+247
ALT+248
ALT+249
ALT+250
ALT+251
ALT+252
ALT+253
ALT+254
ALT+255
ALT+00
ALT+01
ALT+02
ALT+03
ALT+04
ALT+05
ALT+06
ALT+07 
ALT+08
ALT+09
ALT+010
ALT+011
ALT+012
ALT+013
ALT+014
ALT+015
ALT+016
ALT+017
ALT+018
ALT+019
ALT+020
ALT+021
ALT+022
ALT+023
ALT+024
ALT+025
ALT+026
ALT+027
ALT+028
ALT+029
ALT+030
ALT+031
ALT+032
ALT+033!
ALT+034"
ALT+035#
ALT+036$
ALT+037%
ALT+038&
ALT+039'
ALT+040(
ALT+041)
ALT+042*
ALT+043+
ALT+044,
ALT+045-
ALT+046.
ALT+047/
ALT+0480
ALT+0491
ALT+0502
ALT+0513
ALT+0524
ALT+0535
ALT+0546
ALT+0557
ALT+0568
ALT+0579
ALT+058:
ALT+059;
ALT+060<
ALT+061=
ALT+062>
ALT+063?
ALT+064@
ALT+065A
ALT+066B
ALT+067C
ALT+068D
ALT+069E
ALT+070F
ALT+071G
ALT+072H
ALT+073I
ALT+074J
ALT+075K
ALT+076L
ALT+077M
ALT+078N
ALT+079O
ALT+080P
ALT+081Q
ALT+082R
ALT+083S
ALT+084T
ALT+085U
ALT+086V
ALT+087W
ALT+088X
ALT+089Y
ALT+090Z
ALT+091[
ALT+092\
ALT+093]
ALT+094^
ALT+095_
ALT+096`
ALT+097a
ALT+098b
ALT+099c
ALT+0100d
ALT+0101e
ALT+0102f
ALT+0103g
ALT+0104h
ALT+0105i
ALT+0106j
ALT+0107k
ALT+0108l
ALT+0109m
ALT+0110n
ALT+0111o
ALT+0112p
ALT+0113q
ALT+0114r
ALT+0115s
ALT+0116t
ALT+0117u
ALT+0118v
ALT+0119w
ALT+0120x
ALT+0121y
ALT+0122z
ALT+0123{
ALT+0124|
ALT+0125}
ALT+0126~
ALT+0127
ALT+0128
ALT+0129
ALT+0130
ALT+0131
ALT+0132
ALT+0133
ALT+0134
ALT+0135
ALT+0136
ALT+0137
ALT+0138
ALT+0139
ALT+0140
ALT+0141
ALT+0142
ALT+0143
ALT+0144
ALT+0145
ALT+0146'
ALT+0147"
ALT+0148"
ALT+0149
ALT+0150
ALT+0151
ALT+0152
ALT+0153
ALT+0154
ALT+0155
ALT+0156
ALT+0157
ALT+0158
ALT+0159
ALT+0160
ALT+0161
ALT+0162
ALT+0163
ALT+0164
ALT+0165
ALT+0166
ALT+0167
ALT+0168
ALT+0169
ALT+0170
ALT+0171
ALT+0172
ALT+0173
ALT+0174
ALT+0175
ALT+0176
ALT+0177
ALT+0178
ALT+0179
ALT+0180
ALT+0181
ALT+0182
ALT+0183
ALT+0184
ALT+0185
ALT+0186
ALT+0187
ALT+0188
ALT+0189
ALT+0190
ALT+0191
ALT+0192
ALT+0193
ALT+0194
ALT+0195
ALT+0196
ALT+0197
ALT+0198
ALT+0199
ALT+0200
ALT+0201
ALT+0202
ALT+0203
ALT+0204
ALT+0205
ALT+0206
ALT+0207
ALT+0208
ALT+0209
ALT+0210
ALT+0211
ALT+0212
ALT+0213
ALT+0214
ALT+0215
ALT+0216
ALT+0217
ALT+0218
ALT+0219
ALT+0220
ALT+0221
ALT+0222
ALT+0223
ALT+0224
ALT+0225
ALT+0226
ALT+0227
ALT+0228
ALT+0229
ALT+0230
ALT+0231
ALT+0232
ALT+0233
ALT+0234
ALT+0235
ALT+0236
ALT+0237
ALT+0238
ALT+0239
ALT+0240
ALT+0241
ALT+0242
ALT+0243
ALT+0244
ALT+0245
ALT+0246
ALT+0247
ALT+0248
ALT+0249
ALT+0250
ALT+0251
ALT+0252
ALT+0253
ALT+0254
ALT+0255
       

Links:

How to enter Unicode characters in Microsoft Windows
http://www.fileformat.info/tip/microsoft/enter_unicode.htm

ASCII and Unicode and other character encodings
http://qcpages.qc.cuny.edu/~nixon/links/asciiUnicode.html

Microsoft Character sets
http://www.microsoft.com/typography/unicode/cs.htm

Wikipedia Article on Windows Alt Keycodes
http://en.wikipedia.org/wiki/Windows_Alt_Keycodes


If you would like to republish one of the articles from this site on your webpage or print journal please contact IronGeek.

Copyright 2012, IronGeek
Louisville / Kentuckiana Information Security Enthusiast