public static function encryptSignMessage($message, $encryptionKey, $signatureKey, $hashKey = '')
    {
        # Test the message and key for string validity.
        Helpers::isString($message, 'Encryption', 'encryptSignMessage');
        Helpers::isString($encryptionKey, 'Encryption', 'encryptSignMessage');
        Helpers::isString($signatureKey, 'Encryption', 'encryptSignMessage');
        Helpers::isString($hashKey, 'Encryption', 'encryptSignMessage');

        $message = self::encryptMessage($message, $encryptionKey, $hashKey);

        return self::signMessage($message, $signatureKey, $hashKey);
    }