The Okta Bcrypt incident revealed vulnerabilities in API design with the Bcrypt algorithm, particularly when handling input exceeding 72 characters, which could allow unauthorized access. This post explores how different programming languages handle this limitation and stresses the importance of explicit input validation, good API design practices, and the need for continual iteration to maintain security standards. Insights are drawn from testing Bcrypt implementations in Go, Java, JavaScript, Python, and Rust.

17m read timeFrom itnext.io
Post cover image
Table of contents
What Okta Bcrypt incident can teach us about designing better APIsGo and BcryptJava and BcryptJavaScript and BcryptPython and BcryptRust and BcryptWhy?Some thoughts on thatThoughts and lessonsInstead of a conclusion

Sort: