Beamsplitter

Security and privacy

hash function

SHOW HN2020

18points
10comments
#1,790of 3,028 in 2020
Top 60%of 2020 by points

How HN took it

RoastedHalf or more of the comments are critical

0 positive, 3 neutral or asking, 0 mixed, 6 critical, out of 9 comments about the project. Thread score -0.39.

Execution: 0 for, 3 againstDocs: 0 for, 2 againstIdea: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

Objections

  • Not collision resistant; trivially creates collisions via added null bytes

    From 1 comment
    • It's not even resistant to added \0, so you can trivially create an arbitrary number of collisions. It fails all smhasher tests and is pretty slow. There's a reason other hashes…
      rurban on HN
  • Fails smhasher tests and is slow

    From 1 comment
    • It's not even resistant to added \0, so you can trivially create an arbitrary number of collisions. It fails all smhasher tests and is pretty slow. There's a reason other hashes…
      rurban on HN
  • Poorly designed; S-box iteration yields small group order and restricted output space

    From 2 comments
    • It's probably an academic exercise (perhaps to demonstrate how not to make a secure hash function). It's is pretty poorly designed.
      maxfan8 on HN
    • Sorry - just saw this! So think of the sbox as a function. What happens if you apply the function over and over again? The order of a group like that would be small (particularly…
      maxfan8 on HN
  • Dieharder results are not meaningful validation

    From 1 comment
    • Also posting dieharder results as validation (and the only kind of validation!) smells like a joke.
      clarry on HN
  • Unclear what benefit using only S-boxes brings

    From 1 comment
    • Let's ignore for a second the question of security (is it collision/pre-image resistant? Dieharder says nothing about this). As a developer, is the fact that it only uses S-boxes…
      arkadiyt on HN

Requests

  • Clearly mark repo as toy or demo, not for important use

    From 1 comment
    • I sincerely hope the author will urgently and clearly mark the repo as a toy/demo/do not use for anything important in the readme.
      cafxx on HN
  • Use nothing-up-my-sleeve constants instead of random.org numbers

    From 1 comment
    • > I went to random.org and generated 32 sets of 256 no-repeat numbers between 0 and 255 inclusive. One suggestion I'd have here would be using "nothing-up-my-sleeve" numbers like…
      mmastrac on HN

Questions

  • Is it collision or pre-image resistant?

    From 1 comment
    • Let's ignore for a second the question of security (is it collision/pre-image resistant? Dieharder says nothing about this). As a developer, is the fact that it only uses S-boxes…
      arkadiyt on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/22084215)