Cryptography Reference
In-Depth Information
counter to the
h ( salt|port|password ).Af-
ter each successful use, the counter in the salt is incremented
and the old version is no longer useful.
salt
used to compute
Challenge-Response Knocking If one knocking sequence is good,
then two or three might be more secure. If Alice wants Bob
to open up, Alice can present the right sequence of knocks
for the day. Then Bob could return the favor and send some
challenge value back to Alice. It could go in the clear or it
could be further encrypted by turning it into a sequence of
knocks that Bob makes on Alice's firewall. Alice decodes this
challenge value or nonce and then uses it to compute a new
sequence of knocks to return. Perhaps Alice must compute
h ( salt|port|password|nonce ) for each
port
. Then Bob can really
be certain that Alice is trustworthy.
Letting Bob challenge Alice to create a new sequence of knocks
removes the danger that a casual eavesdropper will be able to
figure out the right sequence of ports by simply replaying the
traffic pattern. Alice's second set of knocks will be different with
each different
nonce
and only someone who knows the correct
values of
salt
and
password
will be able to compute the right
sequence of ports.
Monotonically Increasing Knocks If port requests are sent across
the Internet in quick succession, they may arrive in a different
orderthantheydeparted.Thisscramblingcanconfoundanal-
gorithm that is depending on a particular sequence. One trick
is to remove the ordering and just look at the choice of ports. If
Alice requests access by computing the first
n
ports after sort-
h ( salt|port|password ), then it will suffice for Alice to present
those first
ing
ports in any sequence. That is, if the correct order is
ports 1552 , 299 , 441 ,
n
and 525,thenanyofthe24 ways of knock-
ing on these four ports will be enough to gain access.
It should be clear that this cuts down the brute-force attack by
afactorof
n !, making it seem a bit weaker, but this approach
can increase the stealth by reducing the chance for a consistent
pattern. Alice may knock on ports 1552 , 299 , 441 ,
and 525 at one
moment and 441525 , 299 ,
and 1552 at the next.
Fake Ports There's no reason why the sequence of ports needs to be
limited to the correct sequence and only that sequence. Bob
might allow Alice to mix in as many as
m
different spurious
values chosen at random. As long as the
n
correct ports arrive
within a window of
n + m
knocks, then Bob will assume that
Search WWH ::




Custom Search