Skip to content

Instantly share code, notes, and snippets.

@tsif
Last active October 8, 2019 14:50
Show Gist options
  • Save tsif/6ae071c17119735ed3659d46d51ff8b7 to your computer and use it in GitHub Desktop.
Save tsif/6ae071c17119735ed3659d46d51ff8b7 to your computer and use it in GitHub Desktop.
var hasher = SHA256()
let path = Bundle.main.path(forResource: "video", ofType: "mp4")!
let stream = InputStream(fileAtPath: path)!
stream.open()
let bufferSize = 512
let buffer = UnsafeMutablePointer<UInt8>.allocate(capacity: bufferSize)
while stream.hasBytesAvailable {
let read = stream.read(buffer, maxLength: bufferSize)
let bufferPointer = UnsafeRawBufferPointer(start: buffer, count: read)
hasher.update(bufferPointer: bufferPointer)
}
let digest = hasher.finalize()
print(digest)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment