Lua Utils
Biblioteca utilitária para facilitar a integração de Lua com C++
Functions
luaSecurityAux.cpp File Reference

Definicao de funcões auxiliares usadas para assinar e obfuscar scripts. More...

#include "luaSecurityAux.h"
#include <QByteArray>
#include <QString>
#include <QCryptographicHash>
#include <assert.h>
Include dependency graph for luaSecurityAux.cpp:

Functions

static int LuaSecurityCountBits (unsigned char v)
 Conta o número de bits ligados em byte usando o método de Brian Kernighan. More...
 
QString LuaSecuritySign (const QByteArray &script)
 Retorna um hash code (assinatura) para o script recebido como parâmetro.
 
QString LuaSecurityEncode (const QByteArray &script)
 Codifica um conjunto de dados, convertendo o resultado para um texto ASCII codificado em base 64. More...
 
QByteArray LuaSecurityDecode (const QString &script)
 Decodifica um conjunto de dados gerados por LuaSecurityEncode() More...
 

Detailed Description

Definicao de funcões auxiliares usadas para assinar e obfuscar scripts.

Author
Carlos Augusto Teixeira Mendes
Date
october, 2014

Function Documentation

◆ LuaSecurityCountBits()

static int LuaSecurityCountBits ( unsigned char  v)
static

Conta o número de bits ligados em byte usando o método de Brian Kernighan.

https://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetNaive

◆ LuaSecurityDecode()

QByteArray LuaSecurityDecode ( const QString script)

Decodifica um conjunto de dados gerados por LuaSecurityEncode()

Parameters
scriptConjunto de dados codificados em ASCII por LuaSecurityEncode()
Returns
Retorna conjunto de dados (possivelmente binário) decodificado

◆ LuaSecurityEncode()

QString LuaSecurityEncode ( const QByteArray script)

Codifica um conjunto de dados, convertendo o resultado para um texto ASCII codificado em base 64.

O método utilizado é bastante simples e tem como objetivo apenas não deixar claro o conteúdo do arquivo para observadores casuais.

OBS: É importante que a chamada a qsrand() tenha sido feita no aplicativo para inicializar o gerador d enúmeros aleatórios...

Parameters
scriptConjunto de dados (possivelmente binários) a ser obfuscado e codificado
Returns
Retorna string codificada contendo apenas caracteres ASCII padrão