Crate tink_proto[−][src]
Expand description
Protocol buffer message definitions for Tink.
Almost all of the code in this crate is auto-generated (using prost) from the protocol
buffer message definitions in the proto/
subdirectory. These .proto
files are copies from
the upstream Tink project.
Re-exports
pub use prost;
Modules
json
Manual keyset serialization implementations that map enums onto strings rather than
the i32
values used by prost.
Nested message and enum types in JwtHmacKey
.
Nested message and enum types in KeyData
.
Nested message and enum types in Keyset
.
Nested message and enum types in KeysetInfo
.
Structs
key_type: type.googleapis.com/google.crypto.tink.AesCmacKey
key_type: type.googleapis.com/google.crypto.tink.AesCmacPrfKey
key_type: type.googleapis.com/google.crypto.tink.AesCtrHmacAeadKey
key_type: type.googleapis.com/google.crypto.tink.AesCtrHmacStreamingKey
key_type: type.googleapis.com/google.crypto.tink.AesCtrKey
key_type: type.googleapis.com/google.crypto.tink.AesEaxKey
only allowing tag size in bytes = 16
key_type: type.googleapis.com/google.crypto.tink.AesGcmHkdfStreamingKey
key_type: type.googleapis.com/google.crypto.tink.AesGcmKey
only allowing IV size in bytes = 12 and tag size in bytes = 16 Thus, accept no params.
key_type: type.googleapis.com/google.crypto.tink.AesGcmSivKey
The only allowed IV size is 12 bytes and tag size is 16 bytes. Thus, accept no params.
key_type: type.googleapis.com/google.crypto.tink.AesSivKey
key_type: type.googleapis.com/google.crypto.tink.ChaCha20Poly1305. This key type actually implements ChaCha20Poly1305 as described at https://tools.ietf.org/html/rfc7539#section-2.8.
Protos for Ecdsa.
key_type: type.googleapis.com/google.crypto.tink.EcdsaPrivateKey
key_type: type.googleapis.com/google.crypto.tink.EcdsaPublicKey
Parameters of AEAD DEM (Data Encapsulation Mechanism).
EciesKdfAeadPrivateKey represents HybridDecryption primitive. key_type: type.googleapis.com/google.crypto.tink.EciesAeadHkdfPrivateKey
EciesAeadHkdfPublicKey represents HybridEncryption primitive. key_type: type.googleapis.com/google.crypto.tink.EciesAeadHkdfPublicKey
Parameters of KEM (Key Encapsulation Mechanism)
key_type: type.googleapis.com/google.crypto.tink.Ed25519PrivateKey
key_type: type.googleapis.com/google.crypto.tink.Ed25519PublicKey
Represents a keyset that is encrypted with a master key.
key_type: type.googleapis.com/google.crypto.tink.HmacKey
key_type: type.googleapis.com/google.crypto.tink.HmacPrfKey
key_type: type.googleapis.com/google.crypto.tink.JwtHmacKey
The actual *Key-proto is wrapped in a KeyData message, which in addition to this serialized proto contains also type_url identifying the definition of *Key-proto (as in KeyFormat-message), and some extra metadata about the type key material.
An entry that describes a key type to be used with Tink library, specifying the corresponding primitive, key manager, and deprecation status. All fields are required.
A Tink user works usually not with single keys, but with keysets, to enable key rotation. The keys in a keyset can belong to different implementations/key types, but must all implement the same primitive. Any given keyset (and any given key) can be used for one primitive only.
Represents a “safe” Keyset that doesn’t contain any actual key material, thus can be used for logging or monitoring. Most fields are copied from Keyset.
There is no actual key material in the key.
There is no actual key material in the key.
key_type: type.googleapis.com/google.crypto.tink.PrfBasedDeriverKey
A complete configuration of Tink library: a list of key types to be available via the Registry after initialization. All fields are required.
key_type: type.googleapis.com/google.crypto.tink.RsaSsaPkcs1PrivateKey
key_type: type.googleapis.com/google.crypto.tink.RsaSsaPkcs1PublicKey
key_type: type.googleapis.com/google.crypto.tink.RsaSsaPssPrivateKey
key_type: type.googleapis.com/google.crypto.tink.RsaSsaPssPublicKey
key_type: type.googleapis.com/google.crypto.tink.XChaCha20Poly1305Key
Enums
Tink produces and accepts ciphertexts or signatures that consist of a prefix and a payload. The payload and its format is determined entirely by the primitive, but the prefix has to be one of the following 4 types: