PeaZip is an Open Source file and archive manager for Windows and
Linux.
http://peazip.sourceforge.net/
It supports various types of archive with encryption features (7Z,
ARC, ZIP) and in 2.1 release I introduced the possibility of using
keyfiles for two factor authentication in those formats, aiming to
enhancing security against dictionary and some forms of social
engineering attacks.
Keyfiles are hashed with SHA256 and the Base64-encoded (RFC 4648) hash
is pre-pended to the password.
This allows to not break compatibility with other archive manager
applications (or command line utilities) supporting only passwords-
based encryption, since archives encrypted in that way can be opened
simply calculating the hash and prepending it to the password.