-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathrun.sh
More file actions
81 lines (60 loc) · 2.14 KB
/
Copy pathrun.sh
File metadata and controls
81 lines (60 loc) · 2.14 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# generate resource files
"${RUN_DIR}"/mkcert.sh
# start vey-statsd
"${PROJECT_DIR}"/target/debug/vey-statsd -c "${RUN_DIR}"/vey-statsd.yaml -G ${TEST_NAME} &
STATSD_PID=$!
# run vey-keyless integration tests
vey_keyless_ctl()
{
"${PROJECT_DIR}"/target/debug/vey-keyless-ctl -G ${TEST_NAME} -p $KEYSERVER_PID "$@"
}
vey_bench()
{
"${PROJECT_DIR}"/target/debug/vey-bench --no-progress-bar --log-error 1 "$@"
}
test_rsa()
{
TEST_RSA_KEY_FILE="${RUN_DIR}/keys/rsa2048.key"
TEST_RSA_CERT_FILE="${RUN_DIR}/rsa2048.crt"
for hash in sha256 sha384 sha512
do
payload=$("${hash}sum" "${TEST_RSA_KEY_FILE}" | awk '{print $1}')
vey_bench keyless cloudflare --no-tls --target 127.0.0.1:1300 --key "${TEST_RSA_KEY_FILE}" --sign --digest-type $hash --verify "${payload}"
vey_bench keyless cloudflare --no-tls --target 127.0.0.1:1300 --key "${TEST_RSA_KEY_FILE}" --sign --digest-type $hash --rsa-padding PSS --verify "${payload}"
done
TO_DECRYPT_DATA=$(vey_bench keyless openssl --key "${TEST_RSA_KEY_FILE}" --encrypt "abcdef" --no-summary --dump-result)
vey_bench keyless cloudflare --no-tls --target 127.0.0.1:1300 --key "${TEST_RSA_KEY_FILE}" --decrypt --verify --verify-data "abcdef" "${TO_DECRYPT_DATA}"
}
test_ec()
{
TEST_EC_KEY_FILE="${RUN_DIR}/keys/ec256.key"
TEST_EC_CERT_FILE="${RUN_DIR}/ec256.crt"
for hash in sha256 sha384 sha512
do
payload=$("${hash}sum" "${TEST_RSA_KEY_FILE}" | awk '{print $1}')
vey_bench keyless cloudflare --no-tls --target 127.0.0.1:1300 --key "${TEST_EC_KEY_FILE}" --sign --digest-type $hash --verify "${payload}"
done
}
set -x
"${PROJECT_DIR}"/target/debug/vey-keyless -Vvv
for dir in $(ls "${PROJECT_DIR}"/vey-keyless/examples)
do
example_dir="${PROJECT_DIR}/vey-keyless/examples/${dir}"
[ -d "${example_dir}" ] || continue
"${PROJECT_DIR}"/target/debug/vey-keyless -c "${example_dir}" -t
done
for dir in $(find "${RUN_DIR}/" -type d | sort)
do
[ -f "${dir}/main.yaml" ] || continue
echo "=== ${dir}"
date
"${PROJECT_DIR}"/target/debug/vey-keyless -c "${dir}/main.yaml" -G ${TEST_NAME} &
KEYSERVER_PID=$!
sleep 2
test_rsa
test_ec
vey_keyless_ctl offline
wait $KEYSERVER_PID
done
set +x
kill -INT $STATSD_PID