1"""
2<Module Name>
3 handlers.py
4
5<Author>
6 Santiago Torres-Arias <santiago@nyu.edu>
7
8<Started>
9 Jan 15, 2020
10
11<Copyright>
12 See LICENSE for licensing information.
13
14<Purpose>
15 Provides links from signatures/algorithms to modules implementing
16 the signature verification and key parsing.
17"""
18
19from securesystemslib._gpg import dsa, eddsa, rsa
20
21# See section 9.1. (public-key algorithms) of RFC4880 (-bis8)
22SUPPORTED_SIGNATURE_ALGORITHMS = {
23 0x01: {"type": "rsa", "method": "pgp+rsa-pkcsv1.5", "handler": rsa},
24 0x11: {"type": "dsa", "method": "pgp+dsa-fips-180-2", "handler": dsa},
25 0x16: {"type": "eddsa", "method": "pgp+eddsa-ed25519", "handler": eddsa},
26}
27
28SIGNATURE_HANDLERS = {"rsa": rsa, "dsa": dsa, "eddsa": eddsa}