This example shows how to sign and verify data with Tink using digital signatures.
It demonstrates the basic steps of using Tink, namely loading key material, obtaining a primitive, and using the primitive to do crypto.
The key material was generated with:
$ tinkey create-keyset --key-template ECDSA_P256 --out-format JSON \ --out signature_test_private_keyset.json $ tinkey create-public-keyset --in signature_test_private_keyset.json \ --in-format JSON --out-format JSON --out signature_test_public_keyset.json
Build the examples:
$ git clone https://github.com/google/tink $ cd tink/python/examples $ bazel build ...
Generate a signature:
$ echo "some data" > data.txt $ touch signature_file.txt $ ./bazel-bin/signature/signature --mode sign \ --keyset_path ./signature/signature_test_private_keyset.json \ --data_path data.txt --signature_path signature_file.txt
Verify a signature:
$ ./bazel-bin/signature/signature --mode verify \ --keyset_path ./signature/signature_test_public_keyset.json \ --data_path data.txt --signature_path signature_file.txt