package crypto

Import Path
	github.com/jcmturner/gokrb5/v8/crypto (on go.dev)

Dependency Relation
	imports 24 packages, and imported by 6 packages

Involved Source Files aes128-cts-hmac-sha1-96.go aes128-cts-hmac-sha256-128.go aes256-cts-hmac-sha1-96.go aes256-cts-hmac-sha384-192.go Package crypto implements cryptographic functions for Kerberos 5 implementation. des3-cbc-sha1-kd.go rc4-hmac.go
Package-Level Type Names (total 6)
/* sort by: | */
Aes128CtsHmacSha256128 implements Kerberos encryption type aes128-cts-hmac-sha256-128 DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the ciphertext message. As the hash is calculated over the iv concatenated with the AES cipher output not the plaintext the pt value to this interface method is not use. Pass any []byte. Aes128CtsHmacSha256128 : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
Aes128CtsHmacSha96 implements Kerberos encryption type aes128-cts-hmac-sha1-96 DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the plaintext message. Aes128CtsHmacSha96 : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
Aes256CtsHmacSha384192 implements Kerberos encryption type aes256-cts-hmac-sha384-192 DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the ciphertext message. As the hash is calculated over the iv concatenated with the AES cipher output not the plaintext the pt value to this interface method is not use. Pass any []byte. Aes256CtsHmacSha384192 : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
Aes256CtsHmacSha96 implements Kerberos encryption type aes256-cts-hmac-sha1-96 DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the plaintext message. Aes256CtsHmacSha96 : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
Des3CbcSha1Kd implements Kerberos encryption type des3-cbc-hmac-sha1-kd DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the plaintext message. Des3CbcSha1Kd : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
RC4HMAC implements Kerberos encryption type rc4-hmac DecryptData decrypts the data provided. DecryptMessage decrypts the message provided and verifies the integrity of the message. DeriveKey derives a key from the protocol key based on the usage value. DeriveRandom generates data needed for key generation. EncryptData encrypts the data provided. EncryptMessage encrypts the message provided and concatenates it with the integrity hash to create an encrypted message. GetChecksumHash returns a keyed checksum hash of the bytes provided. GetConfounderByteSize returns the byte count for confounder to be used during cryptographic operations. GetCypherBlockBitLength returns the bit count size of the cypher block. GetDefaultStringToKeyParams returns the default key derivation parameters in string form. GetETypeID returns the EType ID number. GetHMACBitLength returns the bit count size of the integrity hash. GetHashFunc returns the hash function for this etype. GetHashID returns the checksum type ID number. GetKeyByteSize returns the number of bytes for key of this etype. GetKeySeedBitLength returns the number of bits for the seed for key generation. GetMessageBlockByteSize returns the block size for the etype's messages. RandomToKey returns a key from the bytes provided. StringToKey returns a key derived from the string provided. VerifyChecksum compares the checksum of the message bytes is the same as the checksum provided. VerifyIntegrity checks the integrity of the plaintext message. RC4HMAC : github.com/jcmturner/gokrb5/v8/crypto/etype.EType
Package-Level Functions (total 6)
DecryptEncPart decrypts the EncryptedData.
DecryptMessage decrypts the ciphertext and verifies the integrity.
GetChksumEtype returns an instances of the required etype struct for the checksum ID.
GetEncryptedData encrypts the data provided and returns and EncryptedData type. Pass a usage value of zero to use the key provided directly rather than deriving one.
GetEtype returns an instances of the required etype struct for the etype ID.
GetKeyFromPassword generates an encryption key from the principal's password.