An apparatus, business method and program product for selectively providing access
to a service facility such as a financial institution or bank. Client access codes
(passwords, PINs) are maintained by the service facility in a database. When a
client seeks access to the service facility, e.g., access to the client's account,
a random sequence of character is generated and passed to the client. The client
responds with an offset that when combined with the random character sequence is
the client's access code. The client sends the code to the service facility and
is granted access to the client's account. Optionally, the service facility may
specify an intended relationship between the offset and the random character sequence,
e.g., the offset is added/subtracted from the random character sequence. For additional
security, dummy characters may be embedded in the random character sequence.