The approach to password hashing in this project is similar, but Castellated generalizes the idea. https://www.npmjs.com/package/castellated