Password-Based Authentications: The Broadcast Authentication Protocol

Previous post: Lamport's Hash.

Approach

  • Sender A splits time into intervals of equal duration I.
  • A forms a one-way chain of self-authenticating values Xn, assign the values sequentially. The one-way chain is used in the reverse order of generation, so any value of a time interval can be used to derive values of previous time intervals.
  • A defines a disclosure time for one-way chain values. A will publish the value after the disclosure time. For example, on time interval i, A publish Xn-(i-1).
  • A attaches MAC to each packet, and use the key on that time interval to compute MAC: MAC(Mi, Xn-i)(on time i). A also sends the value it can disclose.
  • When B receives the packet, it checks that A has not disclose the value X to make sure the key is still secret. Then B buffers the packet.
  • B also checks the disclosed value is correct and verify MAC of this packet(base on time interval). If MAC is correct. B accept the packet.

One-Way Chains

Any value of a time interval can be used to derive values of previous time intervals.
So even if some disclosed keys are lost, B can still recover the key chain.

Requirements

  • Receivers should be loosely time synchronized with the sender.
  • Either receiver or senders must buffer some messages.

Advantages

  • Low communication overhead (and for generation and verification of authentication information)
  • Limited buffering required for the sender and the receiver, hence timely authentication for each individual packet
  • Robustness to packet loss
  • Scales to a large number of receivers
  • Low authentication delay

Source: The TESLA Broadcast Authentication Protocol

Comments