📄 best.sh
字号:
#!/bin/sh## This file is part of John the Ripper password cracker,# Copyright (c) 1996-2000,2003,2005 by Solar Designer#[ $# -eq 5 ] || exit 1MAKE=$1DES_DEPEND=$2DES_BS_DEPEND=$3MD5_DEPEND=$4BF_DEPEND=$5# Detect the best non-bitslice DES algorithmMAX=0DES_BEST=1for MODE in 1 2 3 4 5; do if ./detect $MODE 1 0 0 0 0 > arch.h; then rm -f $DES_DEPEND bench echo "Compiling: DES benchmark (code version #$MODE)" $MAKE bench || exit 1 RES=`./bench 1` || exit 1 if [ $RES -gt $MAX ]; then MAX=$RES DES_BEST=$MODE fi fidone./detect $DES_BEST 0 0 0 0 0 > arch.hrm -f $DES_DEPEND benchecho "Compiling: DES benchmark (code version #$DES_BEST, no key copying)"$MAKE bench || exit 1RES=`./bench 1` || exit 1if [ $RES -gt $MAX ]; then MAX=$RES DES_COPY=0else DES_COPY=1fi# Check if bitslice DES is fasterDES_BS=0rm -f $DES_DEPEND benchfor MODE in 1 2; do if ./detect $DES_BEST $DES_COPY $MODE 0 0 0 > arch.h; then echo "Compiling: DES benchmark (bitslice, code version #$MODE)" if [ $MODE -gt 1 ]; then rm -f $DES_BS_DEPEND bench fi $MAKE bench || exit 1 RES=`./bench 1` || exit 1 if [ $RES -gt $MAX ]; then MAX=$RES DES_BS=$MODE fi fidone# Detect the best MD5 algorithmMAX=`./bench 2` || exit 1./detect $DES_BEST $DES_COPY $DES_BS 1 0 0 > arch.hrm -f $MD5_DEPEND benchecho "Compiling: MD5 benchmark (two hashes at a time)"$MAKE bench || exit 1RES=`./bench 2` || exit 1if [ $RES -gt $MAX ]; then MAX=$RES MD5_X2=1else MD5_X2=0fi./detect $DES_BEST $DES_COPY $DES_BS $MD5_X2 1 0 > arch.hrm -f $MD5_DEPEND benchecho "Compiling: MD5 benchmark (immediate values)"$MAKE bench || exit 1RES=`./bench 2` || exit 1if [ $RES -gt $MAX ]; then MD5_IMM=1else MD5_IMM=0fi# Detect the best Blowfish algorithmMAX=`./bench 3` || exit 1./detect $DES_BEST $DES_COPY $DES_BS $MD5_X2 $MD5_IMM 1 > arch.hrm -f $BF_DEPEND benchecho "Compiling: Blowfish benchmark (scale)"$MAKE bench || exit 1RES=`./bench 3` || exit 1if [ $RES -gt $MAX ]; then BF_SCALE=1else BF_SCALE=0fi# Produce generic.h, make sure everything is rebuilt with detected options,# and do some cleanup./detect $DES_BEST $DES_COPY $DES_BS $MD5_X2 $MD5_IMM $BF_SCALE > generic.hrm -f $DES_DEPEND $MD5_DEPEND $BF_DEPEND bench detect best.o detect.o arch.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -