knitr::opts_chunk$set(comment = "") library(openssl)
ripemd160 bind to the respective digest functions in OpenSSL's libcrypto. Both binary and string inputs are supported and the output type will match the input type.
Functions are fully vectorized for the case of character vectors: a vector with n strings will return n hashes.
# Vectorized for strings md5(c("foo", "bar", "baz"))
Besides character and raw vectors we can pass a connection object (e.g. a file, socket or url). In this case the function will stream-hash the binary contents of the connection.
# Stream-hash a file myfile <- system.file("CITATION") md5(file(myfile))
# Stream-hash from a network connection md5(url("http://cran.us.r-project.org/bin/windows/base/old/3.1.1/R-3.1.1-win.exe"))
Compare to digest
Similar functionality is also available in the digest package, but with a slightly different interface:
# Compare to digest library(digest) digest("foo", "md5", serialize = FALSE) # Other way around digest(cars, skip = 0) md5(serialize(cars, NULL))