Set
the free function for this pointer to function
in the given Fiddle::Function
.
Get the free function for this pointer.
Returns a new instance of Fiddle::Function
.
Returns if the free function for this pointer has been called.
Returns the integer memory location of this pointer.
Returns a new Fiddle::Pointer
instance that is a reference pointer for this pointer.
Analogous to the ampersand operator in C.
ptr.to_s => string ptr.to_s(len) => string
Returns the pointer contents as a string.
When called with no arguments, this method will return the contents until the first NULL byte.
When called with len
, a string of len
bytes will be returned.
See to_str
Wakes up all threads waiting for this lock.
Returns the string representation of the bignum.
BN.new
can parse the encoded string to convert back into an OpenSSL::BN
.
base
The format. Must be one of the following:
0
- MPI format. See the man page BN_bn2mpi(3) for details.
2
- Variable-length and big-endian binary encoding. The sign of the bignum is ignored.
10
- Decimal number representation, with a leading ‘-’ for a negative bignum.
16
- Hexadeciaml number representation, with a leading ‘-’ for a negative bignum.
Fully resets the internal state of the Cipher
. By using this, the same Cipher
instance may be used several times for encryption or decryption tasks.
Internally calls EVP_CipherInit_ex(ctx, NULL, NULL, NULL, NULL, -1).
Return the hash value computed with name Digest
. name is either the long name or short name of a supported digest algorithm.
OpenSSL::Digest.digest("SHA256", "abc")
Resets the Digest
in the sense that any Digest#update
that has been performed is abandoned and the Digest
is set to its initial state again.
Returns the authentication code an a Base64-encoded string.
Returns the authentication code as a binary string. The digest parameter specifies the digest algorithm to use. This may be a String
representing the algorithm name or an instance of OpenSSL::Digest
.
key = 'key' data = 'The quick brown fox jumps over the lazy dog' hmac = OpenSSL::HMAC.digest('SHA1', key, data) #=> "\xDE|\x9B\x85\xB8\xB7\x8A\xA6\xBC\x8Az6\xF7\n\x90p\x1C\x9D\xB4\xD9"
Returns the authentication code as a hex-encoded string. The digest parameter specifies the digest algorithm to use. This may be a String
representing the algorithm name or an instance of OpenSSL::Digest
.
key = 'key' data = 'The quick brown fox jumps over the lazy dog' hmac = OpenSSL::HMAC.hexdigest('SHA1', key, data) #=> "de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9"
Returns the authentication code as a Base64-encoded string. The digest parameter specifies the digest algorithm to use. This may be a String
representing the algorithm name or an instance of OpenSSL::Digest
.
key = 'key' data = 'The quick brown fox jumps over the lazy dog' hmac = OpenSSL::HMAC.base64digest('SHA1', key, data) #=> "3nybhbi3iqa8ino29wqQcBydtNk="
Returns hmac as it was when it was first initialized, with all processed data cleared from it.
data = "The quick brown fox jumps over the lazy dog" instance = OpenSSL::HMAC.new('key', 'SHA1') #=> f42bb0eeb018ebbd4597ae7213711ec60760843f instance.update(data) #=> de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9 instance.reset #=> f42bb0eeb018ebbd4597ae7213711ec60760843f
Returns the authentication code an instance represents as a binary string.
instance = OpenSSL::HMAC.new('key', 'SHA1') #=> f42bb0eeb018ebbd4597ae7213711ec60760843f instance.digest #=> "\xF4+\xB0\xEE\xB0\x18\xEB\xBDE\x97\xAEr\x13q\x1E\xC6\a`\x84?"
Returns the authentication code an instance represents as a hex-encoded string.
Returns the authentication code as a hex-encoded string. The digest parameter specifies the digest algorithm to use. This may be a String
representing the algorithm name or an instance of OpenSSL::Digest
.
key = 'key' data = 'The quick brown fox jumps over the lazy dog' hmac = OpenSSL::HMAC.hexdigest('SHA1', key, data) #=> "de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9"
Gets the parsable form of the current configuration.
Given the following configuration being created:
config = OpenSSL::Config.new #=> #<OpenSSL::Config sections=[]> config['default'] = {"foo"=>"bar","baz"=>"buz"} #=> {"foo"=>"bar", "baz"=>"buz"} puts config.to_s #=> [ default ] # foo=bar # baz=buz
You can parse get the serialized configuration using to_s
and then parse it later:
serialized_config = config.to_s # much later... new_config = OpenSSL::Config.parse(serialized_config) #=> #<OpenSSL::Config sections=["default"]> puts new_config #=> [ default ] foo=bar baz=buz
Returns a new instance of OpenSSL::Digest
by name.
Will raise an EngineError
if the digest is unavailable.
e = OpenSSL::Engine.by_id("openssl") #=> #<OpenSSL::Engine id="openssl" name="Software engine support"> e.digest("SHA1") #=> #<OpenSSL::Digest: da39a3ee5e6b4b0d3255bfef95601890afd80709> e.digest("zomg") #=> OpenSSL::Engine::EngineError: no such digest `zomg'
pass - string
name - A string describing the key.
key - Any PKey
.
cert - A X509::Certificate
.
The public_key portion of the certificate must contain a valid public key.
The not_before and not_after fields must be filled in.
ca - An optional array of X509::Certificate
‘s.
key_pbe - string
cert_pbe - string
key_iter - integer
mac_iter - integer
keytype - An integer representing an MSIE specific extension.
Any optional arguments may be supplied as nil
to preserve the OpenSSL
defaults.
See the OpenSSL
documentation for PKCS12_create().