This script was written for an article I wrote to check user passwords. It stores data using SHA one-way function. For more information Authentication Of Users And Passwords In Python
Python, 27 lines
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
import sys import hashlib import getpass def main(argv): if len(argv) != 1: sys.exit('Usage: store_pass.py <file_name>') print '\nPassword Storage Program v.01\n' if raw_input('The file ' + sys.argv + ' will be erased or overwrite if existing.\nDo you wish to continue (Y/n): ') not in ('Y','y') : sys.exit('\nChanges were not recorded\n') password = hashlib.sha224(getpass.getpass('Please Enter a Password: ')).hexdigest() try: file_conn = open(sys.argv,'w') file_conn.write(password + '\n') file_conn.close() except: sys.exit('There was a problem writing to the file!') print '\nPassword safely stored in ' + sys.argv + '\n' if __name__ == "__main__": main(sys.argv[1:])
Tags: encryption, file, python
I like to combine the user id with the password prior to computing the digest. That way, even if two people have the same password the digests will be different.