1# $OpenBSD: try-ciphers.sh,v 1.20 2013/05/17 10:16:26 dtucker Exp $ 2# Placed in the Public Domain. 3 4tid="try ciphers" 5 6ciphers="aes128-cbc 3des-cbc blowfish-cbc cast128-cbc 7 arcfour128 arcfour256 arcfour 8 aes192-cbc aes256-cbc rijndael-cbc@lysator.liu.se 9 aes128-ctr aes192-ctr aes256-ctr" 10config_defined OPENSSL_HAVE_EVPGCM && \ 11 ciphers="$ciphers aes128-gcm@openssh.com aes256-gcm@openssh.com" 12macs="hmac-sha1 hmac-md5 umac-64@openssh.com umac-128@openssh.com 13 hmac-sha1-96 hmac-md5-96 14 hmac-sha1-etm@openssh.com hmac-md5-etm@openssh.com 15 umac-64-etm@openssh.com umac-128-etm@openssh.com 16 hmac-sha1-96-etm@openssh.com hmac-md5-96-etm@openssh.com 17 hmac-ripemd160-etm@openssh.com" 18config_defined HAVE_EVP_SHA256 && 19 macs="$macs hmac-sha2-256 hmac-sha2-512 20 hmac-sha2-256-etm@openssh.com hmac-sha2-512-etm@openssh.com" 21 22for c in $ciphers; do 23 n=0 24 for m in $macs; do 25 trace "proto 2 cipher $c mac $m" 26 verbose "test $tid: proto 2 cipher $c mac $m" 27 ${SSH} -F $OBJ/ssh_proxy -2 -m $m -c $c somehost true 28 if [ $? -ne 0 ]; then 29 fail "ssh -2 failed with mac $m cipher $c" 30 fi 31 # No point trying all MACs for GCM since they are ignored. 32 case $c in 33 aes*-gcm@openssh.com) test $n -gt 0 && break;; 34 esac 35 n=`expr $n + 1` 36 done 37done 38 39ciphers="3des blowfish" 40for c in $ciphers; do 41 trace "proto 1 cipher $c" 42 verbose "test $tid: proto 1 cipher $c" 43 ${SSH} -F $OBJ/ssh_proxy -1 -c $c somehost true 44 if [ $? -ne 0 ]; then 45 fail "ssh -1 failed with cipher $c" 46 fi 47done 48 49