123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- # SPDX-License-Identifier: BSD-3-Clause
- source helpers.sh
- ###this script use for test the implementation tpm2 createpolicy
- cleanup() {
- rm -f pcr.in policy.out
- if [ "$1" != "no-shut-down" ]; then
- shut_down
- fi
- }
- trap cleanup EXIT
- start_up
- declare -A digestlengths=\
- ([sha1]=20
- [sha256]=32)
- declare -A expected_policy_digest=\
- ([sha1]=f28230c080bbe417141199e36d18978228d8948fc10a6a24921b9eba6bb1d988
- [sha256]=33e36e786c878632494217c3f490e74ca0a3a122a8a4f3c5302500df3b32b3b8)
- tpm2 pcrread -V sha1
- for halg in ${!digestlengths[@]}
- do
- cleanup "no-shut-down"
- # Create file containing expected PCR value
- head -c $((${digestlengths[$halg]} - 1)) /dev/zero > pcr.in
- echo -n -e '\x03' >> pcr.in
- tpm2 createpolicy --policy-pcr -l $halg:0 -f pcr.in -L policy.out
- # Test the policy creation hashes against expected
- if [ $(xxd -p policy.out | tr -d '\n' ) != \
- "${expected_policy_digest[${halg}]}" ]; then
- echo "Failure: Creating Policy Digest with PCR policy for index 0 and \
- ${halg} pcr index hash"
- echo "Got: $(xxd -p policy.out | tr -d '\n')"
- echo "Expected: ${expected_policy_digest[${halg}]}"
- exit 1
- fi
- done
- exit 0
|