X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/distorted-keys/blobdiff_plain/5c30c6e62b52a66d5c5f33a6adb81bb882e88339..b8691d149111f03c39f847f8b42cdd66858a7b1e:/keys.reveal?ds=sidebyside diff --git a/keys.reveal b/keys.reveal index a1c0242..9e18879 100755 --- a/keys.reveal +++ b/keys.reveal @@ -28,19 +28,15 @@ case "${KEYSLIB+t}" in t) ;; *) echo >&2 "$0: KEYSLIB unset"; exit 1 ;; esac . "$KEYSLIB"/keyfunc.sh defhelp <&2 "$quis: stdin is a terminal"; exit 1; fi ;; - 3) ;; - *) usage_err ;; -esac +case $# in 2) ;; *) usage_err ;; esac recov=$1 keeper=$2; shift 2 checklabel "recovery key" "$recov" case "$recov" in @@ -65,27 +61,10 @@ fi ## Grab the key, because we'll need to read it several times. mktmp -cat -- "$@" >$tmp/secret +cat >$tmp/secret ## Read the threshold from the recovery metadata. -read param <$KEYS/recov/$recov/$keeper.param -case "$param" in - shamir-params:*) ;; - *) - echo >&2 "$quis: secret sharing parameter file damaged (wrong header)" - exit 1 - ;; -esac -t=";${param#*:}" -case "$t" in - *";t="*) ;; - *) - echo >&2 "$quis: secret sharing parameter file damaged (missing t)" - exit 1 - ;; -esac -t=${t#*;t=} -t=${t%%;*} +t=$(sharethresh $KEYS/recov/$recov/$keeper.param) ## Find out which keeper index it corresponds to. read n hunoz <$KEYS/keeper/$keeper/meta