Abstract
Passwords are still by far the most widely used form of user authentication, for applications ranging from online banking or corporate network access to storage encryption. Password guessing thus poses a serious threat for a multitude of applications. Modern password hashes are specifically designed to slow down guessing attacks. However, having exact measures for the rate of password guessing against determined attackers is non-trivial but important for evaluating the security for many systems. Moreover, such information may be valuable for designing new password hashes, such as in the ongoing password hashing competition (PHC).
In this work, we investigate two popular password hashes, bcrypt and scrypt, with respect to implementations on non-standard computing platforms. Both functions were specifically designed to only allow slow-rate password derivation and, thus, guessing rates. We develop a methodology for fairly comparing different implementations of password hashes, and apply this methodology to our own implementation of scrypt on GPUs, as well as existing implementations of bcrypt and scrypt on GPUs and FPGAs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bernstein, D.J.: The Salsa20 family of stream ciphers. In: Robshaw, M., Billet, O. (eds.) New Stream Cipher Designs. LNCS, vol. 4986, pp. 84–97. Springer, Heidelberg (2008)
Bishop, M., Klein, D.V.: Improving system security via proactive password checking. Comput. Secur. 14(3), 233–249 (1995)
Bitcoin Forum. cudaMiner - a new litecoin mining application. http://bitcointalk.org/index.php?topic=167229.0
Burr, W.E., Dodson, D.F., Polk, W.T.: Electronic authentication guideline. NIST Special Publication 800–63 (2006)
Castelluccia, C., Chaabane, A., Dürmuth, M., Perito, D.: Omen: an improved password cracker leveraging personal information (2013). arXiv:1304.6584
Castelluccia, C., Dürmuth, M., Perito, D.: Adaptive password-strength meters from markov models. In Proceedings of the Network and Distributed Systems Security Symposium (NDSS). The Internet Society (2012)
Dell’Amico, M., Pietro, M., Roudier, Y.: Password strength: an empirical analysis. In: INFOCOM 2010: Proceedings of 29th Conference on Computer Communications. IEEE (2010)
Dürmuth, M., Güneysu, T., Kasper, M., Paar, C., Yalcin, T., Zimmermann, R.: Evaluation of standardized password-based key derivation against parallel processing platforms. In: Foresti, S., Yung, M., Martinelli, F. (eds.) ESORICS 2012. LNCS, vol. 7459, pp. 716–733. Springer, Heidelberg (2012)
ElcomSoft. Lightning Hash Cracker, November 2011. http://www.elcomsoft.com/lhc.html
Gendrullis, T., Novotný, M., Rupp, A.: A real-world attack breaking A5/1 within hours. In: Oswald, E., Rohatgi, P. (eds.) CHES 2008. LNCS, vol. 5154, pp. 266–282. Springer, Heidelberg (2008)
Google Inc. - Open Handset Alliance. Android KitKat. https://developer.android.com/about/versions/kitkat.html
Gosney, J.: Password cracking HPC. Presentation at Passwords12 Conference (2012). http://passwords12.at.ifi.uio.no/Jeremi_Gosney_Password_Cracking_HPC_Passwords12.pdf
Güneysu, T., Kasper, T., Novotný, M., Paar, C., Rupp, A.: Cryptanalysis with COPACOBANA. IEEE Trans. Comput. 57(11), 1498–1513 (2008)
Güneysu, T., Paar, C., Pfeiffer, G., Schimmler, M.: Enhancing COPACOBANA for advanced applications in cryptography and cryptanalysis. In: Proceedings of the Conference on Field Programmable Logic and Applications (FPL 2008), pp. 675–678 (2008)
Hellman, M.: A cryptanalytic time-memory trade-off. IEEE Trans. Inf. Theory 26(4), 401–406 (1980)
Intel. Intel Core i7–900 Desktop Processor Series (2011). http://download.intel.com/support/processors/corei7/sb/core_i7-900_d.pdf
John the Ripper. http://www.openwall.com/john/
Kaliski, B.: PKCS #5: Password-based cryptography specification version 2.0. RFC 2898, September 2000. http://tools.ietf.org/html/rfc2898
Klein, D.V.: Foiling the cracker: a survey of, and improvements to, password security. In: Proceedings of USENIX UNIX Security Workshop (1990)
Komanduri, S., Shay, R., Kelley, P.G., Mazurek, M.L., Bauer, L., Christin, N., Cranor, L.F., Egelman, S.: Of passwords and people: measuring the effect of password-composition policies. In: CHI 2011: Conference on Human Factors in Computing Systems (2011)
Malvoni, K., Designer, S., Knezovic, J.: Are your passwords safe: energy-efficient bcrypt cracking with low-cost parallel hardware. In: Proceedings of the 8th USENIX Conference on Offensive Technologies, WOOT 2014. USENIX Association (2014)
Marechal, S.: Advances in password cracking. J. Comput. Virol. 4(1), 73–81 (2008)
Mentens, N., Batina, L., Preneel, B., Verbauwhede, I.: Time-memory trade-off attack on FPGA platforms: UNIX password cracking. In: Bertels, K., Cardoso, J.M.P., Vassiliadis, S. (eds.) ARC 2006. LNCS, vol. 3985, pp. 323–334. Springer, Heidelberg (2006)
Morris, R., Thompson, K.: Password security: a case history. Commun. ACM 22(11), 594–597 (1979)
Narayanan, A., Shmatikov, V.: Fast dictionary attacks on passwords using time-space tradeoff. In: Proceedings of the 12th ACM Conference on Computer and Communications Security, pp. 364–372. ACM, New York (2005)
Nvidia. NVIDIA GeForce GTX 400 GPU Datasheet (2010). http://www.nvidia.com/docs/IO/90025/GTX_480_470_Web_Datasheet_Final.pdf
Nvidia. CUDA Developer Zone (Website) (2011). http://developer.nvidia.com/category/zone/cuda-zone
Oechslin, P.: Making a faster cryptanalytic time-memory trade-off. In: Boneh, D. (ed.) CRYPTO 2003. LNCS, vol. 2729, pp. 617–630. Springer, Heidelberg (2003)
Password hashing competition. https://password-hashing.net/
Percival, C.: Stronger key derivation via sequential memory-hard functions. Presentation at BSDCan 2009 (2009). http://www.tarsnap.com/scrypt/scrypt.pdf
Provos, N., Mazières, D.: A future-adaptable password scheme. In: USENIX Annual Technical Conference, FREENIX Track, pp. 81–91. USENIX (1999)
Schechter, S., Herley, C., Mitzenmacher, M.: Popularity is everything: a new approach to protecting passwords from statistical-guessing attacks. In: Proceedings of the 5th USENIX Conference on Hot Topics in Security, pp. 1–8. USENIX Association (2010)
Steube, J.: oclHashcat (2014). http://hashcat.net/oclhashcat/
Teufl, P., Fitzek, A.G., Hein, D., Marsalek, A., Oprisnik, A., Zefferer, T.: Android encryption systems. In: International Conference on Privacy and Security in Mobile Systems (2014) (in press)
TrueCrack. http://code.google.com/p/truecrack/
Weir, M., Aggarwal, S., Collins, M., Stern, H.: Testing metrics for password creation policies by attacking large sets of revealed passwords. In: Proceedings of the 17th ACM Conference on Computer and Communications Security (CCS 2010), pp. 162–175. ACM (2010)
Weir, M., Aggarwal, S., de Medeiros, B., Glodek, B.: Password cracking using probabilistic context-free grammars. In: IEEE Symposium on Security and Privacy, pp. 391–405. IEEE Computer Society (2009)
Wiemer, F., Zimmermann, R.: High-speed implementation of bcrypt password search using special-purpose hardware. In: Proceedings of the International Conference on Reconfigurable Computing and FPGAs (ReConFig) (2014)
Wu, T.: A real-world analysis of kerberos password security. In: Network and Distributed System Security Symposium (1999)
Zimmermann, R., Güneysu, T., Paar, C.: High-performance integer factoring with reconfigurable devices. In: FPL, pp. 83–88. IEEE (2010)
Acknowledgements
This work was supported in part by the BMBF Project UNIKOPS (01BY1040) and the DFG Research Training Group GRK 1817/1.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Full Runtime Listings for Hashcat
B Full Runtime Listings for the Benchmark CPUs
C Full Runtime Listings for Different Trade-Off Parameters for Scrypt
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Dürmuth, M., Kranz, T. (2015). On Password Guessing with GPUs and FPGAs. In: Mjølsnes, S. (eds) Technology and Practice of Passwords. PASSWORDS 2014. Lecture Notes in Computer Science(), vol 9393. Springer, Cham. https://doi.org/10.1007/978-3-319-24192-0_2
Download citation
DOI: https://doi.org/10.1007/978-3-319-24192-0_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-24191-3
Online ISBN: 978-3-319-24192-0
eBook Packages: Computer ScienceComputer Science (R0)