53 lines
900 B
Python
53 lines
900 B
Python
#!/usr/bin/env python
|
|
"""Constants related to the Transit secrets engine."""
|
|
|
|
import re
|
|
|
|
ALLOWED_KEY_TYPES = [
|
|
"aes256-gcm96",
|
|
"chacha20-poly1305",
|
|
"ed25519",
|
|
"ecdsa-p256",
|
|
"ecdsa-p384",
|
|
"ecdsa-p521",
|
|
"rsa-2048",
|
|
"rsa-3072",
|
|
"rsa-4096",
|
|
]
|
|
|
|
ALLOWED_EXPORT_KEY_TYPES = [
|
|
"encryption-key",
|
|
"signing-key",
|
|
"hmac-key",
|
|
]
|
|
|
|
ALLOWED_DATA_KEY_TYPES = [
|
|
"plaintext",
|
|
"wrapped",
|
|
]
|
|
|
|
ALLOWED_DATA_KEY_BITS = [128, 256, 512]
|
|
|
|
ALLOWED_HASH_DATA_ALGORITHMS = [
|
|
"sha2-224",
|
|
"sha2-256",
|
|
"sha2-384",
|
|
"sha2-512",
|
|
]
|
|
|
|
ALLOWED_HASH_DATA_FORMATS = ["hex", "base64"]
|
|
|
|
ALLOWED_SIGNATURE_ALGORITHMS = [
|
|
"pss",
|
|
"pkcs1v15",
|
|
]
|
|
|
|
ALLOWED_MARSHALING_ALGORITHMS = [
|
|
"asn1",
|
|
"jws",
|
|
]
|
|
|
|
# https://github.com/hashicorp/vault/pull/16549
|
|
# Either 'auto', 'hash', '-1', or any nonnegative integer.
|
|
ALLOWED_SALT_LENGTHS = re.compile(r"auto|hash|-1|\d+")
|