---
title: SHA3_384
framework: cryptokit
role: symbol
role_heading: Structure
path: cryptokit/sha3_384
---

# SHA3_384

An implementation of Secure Hashing Algorithm 3 (SHA-3) hashing with a 384-bit digest.

## Declaration

```swift
struct SHA3_384
```

## Overview

Overview The SHA3_384 hash implements the HashFunction protocol for the specific case of SHA-3 hashing with a 384-bit digest (SHA3_384Digest). Larger digests take more space but are more secure. Applications can compute the digest by calling the static hash(data:) method once. Alternatively, if the data to hash is too large to fit in memory, applications can compute the digest iteratively by creating a new hash instance, calling the update(data:) method repeatedly with blocks of data, and then calling the finalize() method to get the result.

## Topics

### Initializers

- [init()](cryptokit/sha3_384/init().md)

### Instance Methods

- [finalize()](cryptokit/sha3_384/finalize().md)
- [update(bufferPointer:)](cryptokit/sha3_384/update(bufferpointer:).md)

### Type Aliases

- [SHA3_384.Digest](cryptokit/sha3_384/digest.md)

### Type Properties

- [blockByteCount](cryptokit/sha3_384/blockbytecount.md)
- [byteCount](cryptokit/sha3_384/bytecount.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [Escapable](swift/escapable.md)
- [HashFunction](cryptokit/hashfunction.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
