xref: /aosp_15_r20/external/tink/java_src/examples/signature/README.md (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1# Java digital signature example
2
3This is an example showing how to sign and verify data with Tink using digital
4signatures.
5
6It demonstrates the basic steps of using Tink, namely loading key material,
7obtaining a primitive, and using the primitive to do crypto.
8
9The key material was generated with:
10
11```shell
12tinkey create-keyset --key-template ECDSA_P256 --out-format JSON \
13    --out signature_test_private_keyset.json
14tinkey create-public-keyset --in signature_test_private_keyset.json \
15    --in-format JSON --out-format JSON --out signature_test_public_keyset.json
16```
17
18## Build and Run
19
20### Bazel
21
22```shell
23git clone https://github.com/google/tink
24cd tink/examples/java_src
25bazel build ...
26
27echo "some data" > data.txt
28touch signature_file.txt
29
30./bazel-bin/signature/signature_example sign \
31    ./signature/signature_test_private_keyset.json data.txt signature_file.txt
32
33./bazel-bin/signature/signature_example verify \
34    ./signature/signature_test_public_keyset.json data.txt signature_file.txt
35```
36