JSONWebAlgorithms
import JSONWebAlgorithms
Module information
- Declarations
- 437
- Symbols
- 468
import JSONWebAlgorithms
protocol ContentCompressor
ContentCompressor
is a protocol defining the functionality for compressing data.
protocol ContentDecompressor
ContentDecompressor
is a protocol defining the functionality for decompressing data.
protocol ContentDecryptor
ContentDecryptor
is a protocol that defines functionality for decrypting data.
protocol ContentEncryptor
ContentEncryptor
is a protocol defining the functionality for encrypting content.
protocol HashFunctionMaxInputLength
A protocol representing a hash function that has a maximum input length.
protocol JWARegisteredFieldsHeader : Decodable, Encodable
JWARegisteredFieldsHeader
is a protocol that defines a set of fields commonly used in JSON Web Algorithms (JWA). These fields are typically used in cryptographic operations such as key agreement or key derivation.
protocol JWKRepresentable
A protocol for types that can be represented as a JWK.
protocol KeyAgreementZ
KeyAgreementZ
is a protocol defining functionality for a key agreement mechanism to compute a shared secret, denoted as ‘Z’.
protocol KeyDerivation
KeyDerivation
is a protocol defining functionality for deriving cryptographic keys. It is used in scenarios where keys need to be derived from existing material, such as passwords or shared secrets.
protocol KeyGeneration
KeyGeneration
is a protocol that defines functionality for generating cryptographic keys.
protocol KeyRepresentable
protocol KeyUnwrapping
KeyUnwrapping
is a protocol defining functionality for decrypting (unwrapping) an encrypted content encryption key (CEK).
protocol KeyWrapping
KeyWrapping
is a protocol defining functionality for encrypting (wrapping) a content encryption key (CEK).
protocol SharedKeyAgreement
protocol Signer
Signer
defines the requirements for an object that can sign data using a specific algorithm.
protocol Verifier
Verifier
defines the requirements for an object that can verify signatures using a specific algorithm.
struct AES128GCM
AES128GCM
provides methods to encrypt and decrypt data using AES-128-GCM.
struct AES192GCM
AES192GCM
provides methods to encrypt and decrypt data using AES-192-GCM.
struct AES256GCM
AES256GCM
provides methods to encrypt and decrypt data using AES-256-GCM.
struct AESCBC_SHA<H> where H : HashFunction
AESCBC_SHA
provides methods to encrypt and decrypt data using AES-CBC with an HMAC for authentication.
struct AESCBC_SHA256
AESCBC_SHA256
provides methods to encrypt and decrypt data using AES-CBC with SHA-256 for authentication.
struct AESCBC_SHA384
AESCBC_SHA384
provides methods to encrypt and decrypt data using AES-CBC with SHA-384 for authentication.
struct AESCBC_SHA512
AESCBC_SHA512
provides methods to encrypt and decrypt data using AES-CBC with SHA-512 for authentication.
struct AESGCM
AESGCM
provides methods to encrypt and decrypt data using AES-GCM (Galois/Counter Mode).
struct C20P
C20P
provides methods to encrypt and decrypt data using the ChaCha20-Poly1305 algorithm.
struct ConcatKDF<H> where H : HashFunction, H : HashFunctionMaxInputLength
The Concat Key Derivation Function (KDF), as defined in Section 5.8.1 of NIST.800-56A
enum ConcatKDFError
An enumeration that represents the possible errors that can occur during the Concat KDF key derivation.
enum ContentCompressionAlgorithm
ContentCompressionAlgorithm
is an enumeration representing the supported content compression algorithms.
enum ContentEncryptionAlgorithm
ContentEncryptionAlgorithm
is an enumeration representing the supported content encryption algorithms.
enum ContentEncryptionArguments
ContentEncryptionArguments
is an enumeration defining additional arguments that can be used in content encryption processes.
struct ContentEncryptionResult
ContentEncryptionResult
is a struct representing the result of an encryption operation.
enum CryptoError
CryptoError
is an enumeration representing various errors that can occur in cryptographic operations.
struct Curve25519KeyGeneration
Curve25519KeyGeneration
provides methods to generate random keys, private keys, and key pairs in JWK format for Curve25519.
struct DataKey
struct ECDH1PU
ECDH1PU
provides methods to process a shared key using ECDH-1PU (Ephemeral Static Diffie-Hellman over One-Pass Unified Model).
struct ECDHES
ECDHES
provides methods to process a shared key using ECDH-ES (Elliptic Curve Diffie-Hellman Ephemeral Static).
enum KeyDerivationArguments
Enumerates possible arguments for key derivation processes.
struct KeyEncriptionResultMetadata
KeyEncriptionResultMetadata
is a struct representing the metadata of a key encryption result.
enum KeyEncryptionArguments
KeyEncryptionArguments
is an enumeration defining additional arguments that can be used in key encryption processes.
enum KeyGenerationPurpose
KeyGenerationPurpose
is an enumeration representing the intended purpose of a generated key.
enum KeyManagementAlgorithm
Supported JWE cryptographic algorithms for key management.
struct P256KeyGeneration
P256KeyGeneration
provides methods to generate random keys, private keys, and key pairs in JWK format for P-256.
struct P384KeyGeneration
P384KeyGeneration
provides methods to generate random keys, private keys, and key pairs in JWK format for P-384.
struct P521KeyGeneration
P521KeyGeneration
provides methods to generate random keys, private keys, and key pairs in JWK format for P-521.
struct RSA15KeyUnwrap
RSA15KeyUnwrap
provides methods to decrypt content encryption keys (CEKs) using RSAES-PKCS1-v1_5.
struct RSA15KeyWrapper
RSA15KeyWrapper
provides methods to encrypt content encryption keys (CEKs) using RSAES-PKCS1-v1_5.
struct RSAOAEP256KeyUnwrap
RSAOAEP256KeyUnwrap
provides methods to decrypt content encryption keys (CEKs) using RSAES-OAEP with SHA-256.
struct RSAOAEP256KeyWrapper
RSAOAEP256KeyWrapper
provides methods to encrypt content encryption keys (CEKs) using RSAES-OAEP with SHA-256.
struct RSAOAEPKeyUnwrap
RSAOAEPKeyUnwrap
provides methods to decrypt content encryption keys (CEKs) using RSAES-OAEP with SHA-1.
struct RSAOAEPKeyWrapper
RSAOAEPKeyWrapper
provides methods to encrypt content encryption keys (CEKs) using RSAES-OAEP with SHA-1.
struct SecKeyExtended
struct Secp256k1KeyGeneration
Secp256k1KeyGeneration
provides methods to generate random keys, private keys, and key pairs in JWK format for secp256k1.
struct SecureRandom
SecureRandom
provides functionalities to generate cryptographically secure random data.
struct XC20P
XC20P
provides methods to encrypt and decrypt data using the XChaCha20-Poly1305 algorithm.
struct Zip
Zip
provides methods to compress and decompress data using zlib.
import JSONWebEncryption
import JSONWebKey
import JSONWebSignature
import JSONWebToken
import Tools
import jose_swift
Welcome to the jose-swift library documentation. The jose-swift
library provides comprehensive support for JSON Object Signing and Encryption (JOSE) standards, including JSON Web Token (JWT), JSON Web Signature (JWS), and JSON Web Encryption (JWE). This library enables developers to create, sign, verify, and encrypt JWTs with ease.