Community

암호화 해싱 함수 Bcrypt는 1997년 David Mazières와 Niels Provos가 만들었는데 25년이 지난 시점에서 Niels Provos가 현시점의 비밀번호 보안에 관한 생각을 정리

암호화 해싱 함수 Bcrypt는 1997년 David Mazières와 Niels Provos가 만들었는데 25년이 지난 시점에서 Niels Provos가 현시점의 비밀번호 보안에 관한 생각을 정리한 글이다. Bcrtypt도 종종 사용하면서도 누가 만들었는지는 모르고 있었는데 이 글을 통해서 암호화 해시 함수의 발전 과정도 이해할 수 있습니다. - 1970년대 켄 톰슨과 데니스 리치가 개발한 Unix에서 crypt라는 강력한 암호 해싱 기능을 도입했고 이후에 솔트와 DES 암호를 반복하는 기능 등이 개발됩니다. - 보안과 공격에 대한 우려로 Bcrypt를 개발했고 David Mazières가 적응형 해싱(adaptive hashing)을 고안하고 Niels Provos는 운 좋게 협력해서 구현할 기회를 얻게 됩니다. - 1997년 6월 OpenBSD 2.1의 일부로 소개되고 1999년 USENIX에서 발표해 암호 보안에 큰 영향을 미쳤습니다. - 과거에는 비밀번호 데이터베이스를 도난당하는 게 흔한 일이었고 crypt이 도입되어 비밀번호를 더는 일반 텍스트로 저장하지 않게 되었습니다. - 공격자들은 사전 공격, 무차별 대입 등으로 비밀번호를 추측하고 저장된 해시를 비교해서 비밀번호를 찾아냅니다. - bcrypt가 비밀번호 보안의 중요한 혁신이 될거라고 생각하지 못했지만 빈번한 데이터 유출 사고로 비밀번호 해싱 알고리즘의 단점이 드러나고 컴퓨팅 계산 능력의 발전에 저항할 수 있게 설계된 bcrypt의 동기를 강조하게 됩니다. - David Mazières는 적응형 해싱을 도입해서 컴퓨팅 성능이 발전함에도 발맞춰 견고성을 유지할 수 있게 되었습니다. - 이는 새로운 알고리즘 개발도 촉진해서 PBKDF2, script로 확장대고 2013년에는 bcrypt의 대안으로 Argon2의 탄생하게 됩니다. 역사뿐만 아니라 현 시점에 암호화 해싱에 관한 의견도 볼 수 있습니다. - 대규모 인터넷 서비스에서는 리소스를 최적화해야 하므로 과도한 메모리 요구 없이도 강력한 보안을 제공하는 bcrypt가 여전히 유리하다고 합니다. - 오늘날 클라우드의 도입으로 데이터는 원격에 더 많이 저장되며 데이터베이스가 통째로 도난 당하는 사고는 거의 없어졌고 무차별 대입 등의 공격보다는 취약점을 악용하거나 내부자를 감염시켜서 데이터를 유출하는 일이 더 많아졌습니다. - 이제 보안은 기술적인 문제가 아니라 인적 요소와 기존 보안 기술을 채택하는 데 드는 비용의 문제가 되었다고 합니다. https://www.usenix.org/publications/loginonline/bcrypt-25-retrospective-password-security

알림

알림이 없습니다