瀏覽代碼

blog password hash

Bob Mottram 9 年之前
父節點
當前提交
490dcdac4a
共有 2 個檔案被更改,包括 24 行新增0 行删除
  1. 二進制
      man/freedombone-sec.1.gz
  2. 24
    0
      src/freedombone-sec

二進制
man/freedombone-sec.1.gz 查看文件


+ 24
- 0
src/freedombone-sec 查看文件

959
 	exit 0
959
 	exit 0
960
 }
960
 }
961
 
961
 
962
+function blog_hash {
963
+	# produces a hash corresponding to a blog password
964
+	pass="$1"
965
+	BLOGHASH_FILENAME=/usr/bin/bloghash
966
+
967
+	echo '<?php' > $BLOGHASH_FILENAME
968
+	echo 'parse_str(implode("&", array_slice($argv, 1)), $_GET);' >> $BLOGHASH_FILENAME
969
+	echo '$password = $_GET["password"];' >> $BLOGHASH_FILENAME
970
+	echo '$hash = password_hash($password, PASSWORD_BCRYPT);' >> $BLOGHASH_FILENAME
971
+	echo 'if (password_verify($password, $hash)) {' >> $BLOGHASH_FILENAME
972
+	echo '  echo $hash;' >> $BLOGHASH_FILENAME
973
+	echo '}' >> $BLOGHASH_FILENAME
974
+	echo '?>' >> $BLOGHASH_FILENAME
975
+
976
+	php $BLOGHASH_FILENAME password="$pass"
977
+}
978
+
962
 function show_help {
979
 function show_help {
963
   echo ''
980
   echo ''
964
   echo "${PROJECT_NAME}-sec"
981
   echo "${PROJECT_NAME}-sec"
972
   echo $'  -r --refresh             Refresh GPG keys for all users'
989
   echo $'  -r --refresh             Refresh GPG keys for all users'
973
   echo $'  -s --sign                Sign monkeysphere server keys'
990
   echo $'  -s --sign                Sign monkeysphere server keys'
974
   echo $'     --register [domain]   Register a https domain with monkeysphere'
991
   echo $'     --register [domain]   Register a https domain with monkeysphere'
992
+  echo $'  -b --bloghash [password] Returns the hash of a password for the blog'
975
   echo ''
993
   echo ''
976
   exit 0
994
   exit 0
977
 }
995
 }
1011
 	shift
1029
 	shift
1012
 	monkeysphere_sign_server_keys
1030
 	monkeysphere_sign_server_keys
1013
 	;;
1031
 	;;
1032
+	# get a hash of the given blog password
1033
+	-b|--bloghash)
1034
+	shift
1035
+	blog_hash "$1"
1036
+	exit 0
1037
+	;;
1014
 	*)
1038
 	*)
1015
 	# unknown option
1039
 	# unknown option
1016
 	;;
1040
 	;;