18 #import "OFCryptoHash.h" 20 OF_ASSUME_NONNULL_BEGIN
29 Class <OFCryptoHash> _hashClass;
30 id <OFCryptoHash> _outerHash, _innerHash;
31 id <OFCryptoHash> _outerHashCopy, _innerHashCopy;
36 @property (readonly, nonatomic) Class <OFCryptoHash>
hashClass;
44 + (instancetype)HMACWithHashClass: (Class <
OFCryptoHash>)hashClass;
46 -
init OF_UNAVAILABLE;
55 - initWithHashClass: (Class <
OFCryptoHash>)hashClass OF_DESIGNATED_INITIALIZER;
69 - (void)setKey: (const
void *)key
70 length: (
size_t)length;
78 - (void)updateWithBuffer: (const
void *)buffer
79 length: (
size_t)length;
89 - (const
unsigned char *)
digest OF_RETURNS_INNER_POINTER;
120 OF_ASSUME_NONNULL_END
void reset()
Resets the HMAC so that it can be calculated for a new message.
Definition: OFHMAC.m:142
Class< OFCryptoHash > hashClass
Definition: OFHMAC.h:36
id init()
Initializes an already allocated object.
Definition: OFObject.m:488
A protocol for classes providing cryptographic hash functions.
A class which provides methods to calculate an HMAC.
Definition: OFHMAC.h:27
const unsigned char * digest()
Returns a buffer containing the HMAC.
Definition: OFHMAC.m:122
void zero()
This is like reset, but also zeroes the hashed key and all state.
Definition: OFHMAC.m:154
The root class for all other classes inside ObjFW.
Definition: OFObject.h:379
size_t digestSize()
Returns the size of the digest.
Definition: OFHMAC.m:137