https://blog.tokumaru.org/2019/02/caution-bcrypt-with-sha512.html
> PHPのbcrypt実装はオペレーティングシステムのcrypt(3)ライブラリに依存しており、NULLターミネート形式の文字列でパスワードを受け取ります。すなわち、bcryptは72文字の切り詰め問題に加えて、「バイナリセーフでない」という仕様上の制約があります。
>
> 「独自実装せずに、安全なライブラリやフレームワークの機能を用いる」とは、ライブラリ等を使う際に余計なことをしないということでもあり、本稿で紹介した例は「余計なこと」をやってしまった副作用の例であると考えます。
車輪の再発明をしないからといって車輪の仕組みを知らないでいると痛い目に遭うのだなあと思う。または余計なことを知っておくことで「余計なこと」をしないようにすることってすごく大切だなあと思う。