Previous: Common Wrapper Format, Up: Encrypted File Wrappers [Contents][Index]

SPSS also supports what it calls “encrypted passwords.” These are not encrypted. They are encoded with a simple, fixed scheme. An encoded password is always a multiple of 2 characters long, and never longer than 20 characters. The characters in an encoded password are always in the graphic ASCII range 33 through 126. Each successive pair of characters in the password encodes a single byte in the plaintext password.

Use the following algorithm to decode a pair of characters:

- Let
`a`be the ASCII code of the first character, and`b`be the ASCII code of the second character. - Let
`ah`be the most significant 4 bits of`a`. Find the line in the table below that has`ah`on the left side. The right side of the line is a set of possible values for the most significant 4 bits of the decoded byte.`2`⇒`2367``3`⇒`0145``47`⇒`89cd``56`⇒`abef` - Let
`bh`be the most significant 4 bits of`b`. Find the line in the second table below that has`bh`on the left side. The right side of the line is a set of possible values for the most significant 4 bits of the decoded byte. Together with the results of the previous step, only a single possibility is left.`2`⇒`139b``3`⇒`028a``47`⇒`46ce``56`⇒`57df` - Let
`al`be the least significant 4 bits of`a`. Find the line in the table below that has`al`on the left side. The right side of the line is a set of possible values for the least significant 4 bits of the decoded byte.`03cf`⇒`0145``12de`⇒`2367``478b`⇒`89cd``569a`⇒`abef` - Let
`bl`be the least significant 4 bits of`b`. Find the line in the table below that has`bl`on the left side. The right side of the line is a set of possible values for the least significant 4 bits of the decoded byte. Together with the results of the previous step, only a single possibility is left.`03cf`⇒`028a``12de`⇒`139b``478b`⇒`46ce``569a`⇒`57df`

Consider the encoded character pair ‘`-|`’. `a` is
0x2d and `b` is 0x7c, so `ah` is 2, `bh` is 7, `al` is
0xd, and `bl` is 0xc. `ah` means that the most significant
four bits of the decoded character is 2, 3, 6, or 7, and `bh`
means that they are 4, 6, 0xc, or 0xe. The single possibility in
common is 6, so the most significant four bits are 6. Similarly,
`al` means that the least significant four bits are 2, 3, 6, or 7,
and `bl` means they are 0, 2, 8, or 0xa, so the least significant
four bits are 2. The decoded character is therefore 0x62, the letter
‘`b`’.

Previous: Common Wrapper Format, Up: Encrypted File Wrappers [Contents][Index]