Qual o melhor metodo para ofuscar um codigo em python

1,997 views
Skip to first unread message

Silvio Giunge Silva a.k.a kanazuchi

unread,
Oct 30, 2014, 8:38:58 AM10/30/14
to python...@googlegroups.com
Dia pessoas,

gostaria de saber de vocês qual o melhor metodo para ofuscar um codigo em python e se possivel alguns exemplos de que cenario esses metodos são uteis.

Flávio Casacurta

unread,
Oct 31, 2014, 12:51:43 PM10/31/14
to python...@googlegroups.com
>>> import base64
>>> encoded = base64.b64encode("print ('Hello Word')\n")
>>> encoded
Out[25]: 'cHJpbnQgKCdIZWxsbyBXb3JkJykK'
>>> code = base64.b64decode(encoded)
>>> code
Out[27]: "print ('Hello Word')\n"
>>> eval(compile(base64.b64decode(encoded), "<string>", 'exec'))
Hello Word


[]s

Flávio Casacurta

unread,
Oct 31, 2014, 4:32:24 PM10/31/14
to python...@googlegroups.com

Bruno Rocha

unread,
Oct 31, 2014, 4:36:24 PM10/31/14
to python...@googlegroups.com
base64 não é a melhor maneira de ofuscar código, pode ser a mais fácil mas com certeza não é a melhor!


2014-10-31 18:32 GMT-02:00 Flávio Casacurta <fla...@casacurta.com>:

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--

Ricardo Bánffy

unread,
Nov 1, 2014, 4:19:55 AM11/1/14
to python...@googlegroups.com

Reescrevê-lo em Perl?

/me ducks

Pra que você quer isso, Silvio?

Erik Henrique

unread,
Nov 1, 2014, 2:50:32 PM11/1/14
to python...@googlegroups.com
Se voce quiser posso mandar o currículo de um programador que conheço.

Ele cria métodos complexos para coisas simples, da nome de variáveis sem sentido, não documenta nada do que esta fazendo...
Desenvolve sem nenhum padrão.

Acho que mais ofuscado do que isso impossível!

;)

[]'s

Otavio Augusto

unread,
Nov 1, 2014, 3:16:09 PM11/1/14
to python...@googlegroups.com
Em 1 de novembro de 2014 16:50, Erik Henrique
<con...@erikhenrique.com.br> escreveu:
> Se voce quiser posso mandar o currículo de um programador que conheço.
>
> Ele cria métodos complexos para coisas simples, da nome de variáveis sem
> sentido, não documenta nada do que esta fazendo...
> Desenvolve sem nenhum padrão.
>
> Acho que mais ofuscado do que isso impossível!
>
> ;)
>
> []'s
>

rolei de rir agora



>
> Em quinta-feira, 30 de outubro de 2014 10h38min58s UTC-2, Kanazuchi
> escreveu:
>>
>> Dia pessoas,
>>
>> gostaria de saber de vocês qual o melhor metodo para ofuscar um codigo em
>> python e se possivel alguns exemplos de que cenario esses metodos são uteis.
>
> --
> --
> ------------------------------------
> Grupo Python-Brasil
> http://www.python.org.br/wiki/AntesDePerguntar
>
> <*> Para visitar o site do grupo na web, acesse:
> http://groups.google.com/group/python-brasil
>
> <*> Para sair deste grupo, envie um e-mail para:
> python-brasi...@googlegroups.com
>
> ---
> Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos
> Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para python-brasi...@googlegroups.com.
> Para mais opções, acesse https://groups.google.com/d/optout.



--
Otavio Augusto
---------------------
Consultor de TI
Citius Tecnologia
31 37761866
31 88651242
http://www.citiustecnologia.com.br

Ricardo Bánffy

unread,
Nov 1, 2014, 6:57:47 PM11/1/14
to python...@googlegroups.com
É muito difícil fazer isso em Python
> --
> --
> ------------------------------------
> Grupo Python-Brasil
> http://www.python.org.br/wiki/AntesDePerguntar
>
> <*> Para visitar o site do grupo na web, acesse:
> http://groups.google.com/group/python-brasil
>
> <*> Para sair deste grupo, envie um e-mail para:
> python-brasi...@googlegroups.com
>
> ---
> Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos
> Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para python-brasi...@googlegroups.com.
> Para mais opções, acesse https://groups.google.com/d/optout.



--
Ricardo Bánffy
http://about.me/rbanffy

Cleiton Bueno

unread,
Nov 2, 2014, 3:48:20 PM11/2/14
to python...@googlegroups.com
Passei por algo semelhante, não sei se a palavra correto foi ofuscar o código, mas no meu caso eu tinha que liberar 60% do código mas uma parte por segurança teria que dificultar o acesso, nada é 100% seguro então não da para garantir, mas o que eu fiz? Eu escrevi em C, vou explicar melhor...

Uma dada função, alias foram três eu escrevi em C com Python.h usando PyObject é claro, compilei e usei o minha_li.so gerada para chamar no meu codigo Python e trabalhar la dentro.

Não sei se era essa a ideias, mas para meu caso foi isso que fiz e agrado a todos hehe.


Nilton OS

unread,
Nov 2, 2014, 5:03:10 PM11/2/14
to python...@googlegroups.com
Olá Cleiton, fiz uma coisa parecida, mas como no momento não tenho tanta habilidade de integração entre C e Python e não tinha tempo, então fiz uma API em separado em Golang onde ofusquei/gerei um binário da API.

Já que nenhuma linguagem é Bala de prata, usamos a criatividade, como dizem na minha terra ficou Massa.    

..............................................................................................
 Nilton OS | Working Linux 15 years ago | linuxpro.com.br

"LPI ID: LPI000240645 -- Certificado LPI 101"

--

Pedro Werneck

unread,
Nov 2, 2014, 6:14:43 PM11/2/14
to python...@googlegroups.com
Se você precisa proteger código fonte por meio de ofuscação, Python é
a linguagem errada.

Acho que a melhor dica dada aqui foi a do Cleiton: escreva em C as
partes que precisam ser protegidas.
> --
> --
> ------------------------------------
> Grupo Python-Brasil
> http://www.python.org.br/wiki/AntesDePerguntar
>
> <*> Para visitar o site do grupo na web, acesse:
> http://groups.google.com/group/python-brasil
>
> <*> Para sair deste grupo, envie um e-mail para:
> python-brasi...@googlegroups.com
>
> ---
> Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos
> Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para python-brasi...@googlegroups.com.
> Para mais opções, acesse https://groups.google.com/d/optout.



--
---
Pedro Werneck

Ricardo Bánffy

unread,
Nov 2, 2014, 6:16:54 PM11/2/14
to python...@googlegroups.com

A melhor linguagem para ofuscar código é APL ;-)

Você está recebendo esta mensagem porque se inscreveu no grupo "Python Brasil" dos Grupos do Google.

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/d/optout.

Sinval Júnior

unread,
Nov 2, 2014, 6:46:21 PM11/2/14
to python...@googlegroups.com
Imagino que ele quer transformar seus codigo e texto puro para um bytecode, algo parecido com java? Se for isto basta usar o comando:

bin/python -m compileall pro


Ao encaminhar esta mensagem, por favor:
1 - Apague meu endereço eletrônico;
2 - Encaminhe como Cópia Oculta (Cco ou BCc) aos seus destinatários. Dificulte assim a disseminação de vírus, spams e banners.

#=================================================================+
#!/usr/bin/env python
nome = 'Sinval Júnior'
email = 'sinvalju arroba gmail ponto com'
print nome
print email
#==================================================================+

Em 30 de outubro de 2014 10:38, Silvio Giunge Silva a.k.a kanazuchi <alvo...@live.com> escreveu:
Dia pessoas,

gostaria de saber de vocês qual o melhor metodo para ofuscar um codigo em python e se possivel alguns exemplos de que cenario esses metodos são uteis.

--

Pedro Werneck

unread,
Nov 2, 2014, 7:21:50 PM11/2/14
to python...@googlegroups.com
https://github.com/wibiti/uncompyle2
--
---
Pedro Werneck

Alejandro Mesias

unread,
Nov 2, 2014, 8:14:47 PM11/2/14
to python-brasil
Encontrei este artigo[1] e gostei das abordagens. No java o código é obfuscado somente em sua versão bytecode, o vGuard[2] faz isso no java.

A melhor abordagem de [1] foi de gerar um executavel em py2exe, que a decompilação dele fica bem bagunçada.



Você está recebendo esta mensagem porque se inscreveu no grupo "Python Brasil" dos Grupos do Google.

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/d/optout.



--
======================================
Alejandro Mesias André Nebra Perez
Java/Python/Js/Something else Developer
Twitter: @meszias
Linux User #442506
Campinas - SP - Brasil - South America
======================================

Kanazuchi

unread,
Nov 3, 2014, 5:56:35 AM11/3/14
to python...@googlegroups.com
Galera, obrigado pelos comentarios...

@rochacbruno
Achei legal o projeto, estou estudando ele para implementar em algo diferente ;)

@Pedro Werneck, @Nilton S, @Cleyton Bueno
é exatamente o que eu faço hoje, o que precisa estar ofuscado faço em C e compilo.

Eu também concordo que se precisa ser ofuscado, pode precisar não ser feito em python...
A questão de eu ter aberto essa thread é para sabermos os metodos que podemos usar quando precisarmos ofucar algo momentaneo...

Ofuscar um codigo pronto em python para apresentação de testes por exemplo, já que gerar um binario usando o py2exe ou reescrevendo determinados processos em C demandaria tempo.

As vezes me encontro preocupado em deixar ser visto um codigo para pessoas que ainda não compraram a ideia.

Estou aprendendo nessa mundo chamado python ainda, esses conhecimentos agregam muito pra mim.

Alejandro Mesias

unread,
Nov 3, 2014, 6:02:56 PM11/3/14
to python-brasil
Python pode até ser compilado para Javascript :D a.k.a. Brython ou com o pypi

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--

Cezar Rossi

unread,
Jan 11, 2018, 5:31:10 PM1/11/18
to Python Brasil
ola pelo que eu estava pesquisando e acabei encontrando e este o py2exe que literalmente transforma seu programa em um exe como se escrito em c

basta olhar o link https://pt.stackoverflow.com/questions/95571/bloquear-c%C3%B3digo-fonte-django
e o video https://www.youtube.com/watch?v=k3VoLjGA6jI
espero ter ajudado
Reply all
Reply to author
Forward
0 new messages