module Themis

Constants

BUFFER_TOO_SMALL
FAIL
SEND_AS_IS
SUCCESS

Public Class Methods

Ssign(private_key, message) click to toggle source
# File lib/rubythemis.rb, line 242
def Ssign(private_key, message)
        private_key_, private_key_length_= string_to_pointer_size(private_key)
        message_, message_length_=string_to_pointer_size(message)
        wrapped_message_length = FFI::MemoryPointer.new(:uint)
        res=themis_secure_message_wrap(private_key_, private_key_length_, nil, 0, message_, message_length_, nil, wrapped_message_length)
        raise ThemisError, "Secure Message failed singing: #{res}" unless res == BUFFER_TOO_SMALL
        wrapped_message = FFI::MemoryPointer.new(:char, wrapped_message_length.read_uint)
        res=themis_secure_message_wrap(private_key_, private_key_length_, nil, 0, message_, message_length_, wrapped_message, wrapped_message_length)
        raise ThemisError, "Secure Message failed singing: #{res}" unless res == SUCCESS
        return wrapped_message.get_bytes(0, wrapped_message_length.read_uint);
end
Sverify(peer_public_key, message) click to toggle source
# File lib/rubythemis.rb, line 254
def Sverify(peer_public_key, message)
        include ThemisCommon
        include ThemisImport
        public_key_, public_key_length_= string_to_pointer_size(peer_public_key)
        message_, message_length_=string_to_pointer_size(message)
        unwrapped_message_length = FFI::MemoryPointer.new(:uint)
        res=themis_secure_message_unwrap(nil, 0, public_key_, public_key_length_, message_, message_length_, nil, unwrapped_message_length)
        raise ThemisError, "Secure Message failed verifying: #{res}" unless res == BUFFER_TOO_SMALL
        unwrapped_message = FFI::MemoryPointer.new(:char, unwrapped_message_length.read_uint)
        res=themis_secure_message_unwrap(nil, 0, public_key_, public_key_length_, message_, message_length_, unwrapped_message, unwrapped_message_length)
        raise ThemisError, "Secure Message failed verifying: #{res}" unless res == SUCCESS
        return unwrapped_message.get_bytes(0, unwrapped_message_length.read_uint);
end

Private Instance Methods

Ssign(private_key, message) click to toggle source
# File lib/rubythemis.rb, line 242
def Ssign(private_key, message)
        private_key_, private_key_length_= string_to_pointer_size(private_key)
        message_, message_length_=string_to_pointer_size(message)
        wrapped_message_length = FFI::MemoryPointer.new(:uint)
        res=themis_secure_message_wrap(private_key_, private_key_length_, nil, 0, message_, message_length_, nil, wrapped_message_length)
        raise ThemisError, "Secure Message failed singing: #{res}" unless res == BUFFER_TOO_SMALL
        wrapped_message = FFI::MemoryPointer.new(:char, wrapped_message_length.read_uint)
        res=themis_secure_message_wrap(private_key_, private_key_length_, nil, 0, message_, message_length_, wrapped_message, wrapped_message_length)
        raise ThemisError, "Secure Message failed singing: #{res}" unless res == SUCCESS
        return wrapped_message.get_bytes(0, wrapped_message_length.read_uint);
end
Sverify(peer_public_key, message) click to toggle source
# File lib/rubythemis.rb, line 254
def Sverify(peer_public_key, message)
        include ThemisCommon
        include ThemisImport
        public_key_, public_key_length_= string_to_pointer_size(peer_public_key)
        message_, message_length_=string_to_pointer_size(message)
        unwrapped_message_length = FFI::MemoryPointer.new(:uint)
        res=themis_secure_message_unwrap(nil, 0, public_key_, public_key_length_, message_, message_length_, nil, unwrapped_message_length)
        raise ThemisError, "Secure Message failed verifying: #{res}" unless res == BUFFER_TOO_SMALL
        unwrapped_message = FFI::MemoryPointer.new(:char, unwrapped_message_length.read_uint)
        res=themis_secure_message_unwrap(nil, 0, public_key_, public_key_length_, message_, message_length_, unwrapped_message, unwrapped_message_length)
        raise ThemisError, "Secure Message failed verifying: #{res}" unless res == SUCCESS
        return unwrapped_message.get_bytes(0, unwrapped_message_length.read_uint);
end