Skip to main content
Explained the use of SipHash as a MAC.
Source Link
Demi
  • 826
  • 7
  • 18

Use SipHash. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

  • You can use SipHash (especially the version with a 128-bit output) as a MAC (Message Authentication Code). If you receive a message and a SipHash tag, and the tag is the same as that from running SipHash with your secret key, then you know that whoever created the hash was also in possession of your secret key, and that neither the message nor the hash have been altered since.

Use SipHash. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

Use SipHash. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

  • You can use SipHash (especially the version with a 128-bit output) as a MAC (Message Authentication Code). If you receive a message and a SipHash tag, and the tag is the same as that from running SipHash with your secret key, then you know that whoever created the hash was also in possession of your secret key, and that neither the message nor the hash have been altered since.

added link
Source Link
Demi
  • 826
  • 7
  • 18

Use [SipHash][1]SipHash. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

Use [SipHash][1]. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

Use SipHash. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.

Source Link
Demi
  • 826
  • 7
  • 18

Use [SipHash][1]. It has many desirable properties:

  • Fast. An optimized implementation takes around 1 cycle per byte.

  • Secure. SipHash is a strong PRF (pseudorandom function). This means that it is indistinguishable from a random function (unless you know the 128-bit secret key). Hence:

  • No need to worry about your hash table probes becoming linear time due to collisions. With SipHash, you know that you will get average-case performance on average, regardless of inputs.

  • Immunity to hash-based denial of service attacks.