Name: Alan Silva
Member since: 2003-08-05 19:07:54
Last Login: 2013-06-19 02:36:58

Homepage: http://www.fzort.org/jumpi/

Notes:

I'm a developer and sys/security admin and one of founders and member of NetBSD-BR Group, who divulges the use of NetBSD in Brazil... I'm a little grasshopper too... codename by mpr... or fzort and my nick is jumpi... :D

Projects

Recent blog entries by acs

Hello, advogato

Well, after a long time I’ve seen that Advogato site has returned and I return too with this post!!! I’ve trying again make more posts here

See ya!!!


Syndicated 2013-06-10 20:10:09 from Jumpi's Notepad

Testando a aplicacao em um iPhone/iTouch com Jailbreak sem o certificado da Apple


Well, aqui estou eu de volta, postando sobre um problema que já tive no passado e devido a escassa documentação e inclusive, hoje me deparei com a mesma pergunta que fiz no passado em uma das listas na qual participo.

“Eu tenho um device (iPhone/iTouch) com jailbreak, porem eu quero testar as minhas aplicacoes que desenvolvi com tanto suor no XCode diretamente no device, afinal de contas, estou cansado de testes no simulador, no simulador tudo funciona, tudo e tao simples, eu quero mesmo e testar no Hardware!!! “comofas”??

Simples, porem nem tanto, por isso que criei uma lista passo-a-passo de como executar essa tarefa tao árdua!!!

1) Certificar-se de que você tem o SSH instalado e habilitado para poder jogar a partir do SCP a sua aplicação, como fazer isso??? Basta acessar o cydia que tem um guia passo-a-passo de como fazer

2) Usar o xcode para compilar a sua aplicação, lembrando-se de alguns fatores importantes

– Mudar para Device
– Observar a versão (2.2, 2.2.1 ou 3.0), lembrando que tem que ser a mesma versão que esta rodando no seu iPod/iPhone
– Decidir se quer em modo debug ou release, como você não vai poder debugar no device dessa maneira, recomendo compilar em release

3) O xcode vai acusar erro porque você não possui o certificado, porem não se preocupe, basta seguir os passos abaixo:

- Acessar o diretorio_da_sua_aplicacao/build/Debug-iphoneos ou diretorio_da_sua_aplicacao/build/Release-iphoneos
- Verificar a existência do arquivo com o nome_da_sua_aplicacao.app

4) Eu costumo dentro do device, ate por organização e recomendação da grande padroeira dos usuários/desenvolvedores de aplicações em modo de jailbreak Erica Sadun, realizar os seguintes passos:

- Acessar o device: ssh root@ip_do_device (ele vai pedir a senha, caso não tenha mudado, 99% das pessoas não mudam, ela sera alpine)
- Criar um diretório dentro de /var, por exemplo, crio um /var/Applications para jogar os meus testes la, portanto se quer seguir o meu conselho, antes acesse o device e crie um diretório dentro de var: mkdir /var/Applications

4) Mas Alan, eu não sei como eu verifico qual o IP do meu device para acessar??? O que eu faco??? Well, vou passar aqui 2 formas de como realizar essa tarefa

- Instale o programa bossprefs, ele esta disponível no seu repositório Cydia, ele e bem interessante pois permite controlar diversas coisas e ate mesmo dar um reboot no springboard, passo necessário para reconhecimento da nossa aplicação
- Tente acessar via settings ou preferencias – wi-fi – e clique na rede que você estiver conectado, vai ter o IP Address la, basta anotar

5) Então agora, já sabemos onde esta a aplicação, já criamos o diretório e temos o IP, hora de copiar o app para o device, você vai fazer agora um scp para o seu device (iPhone/iTouch) da seguinte maneira: scp sua_aplicacao.app root@ip_que_detectamos:/var/Applications e ele vai pedir a senha, como quase 99% dos usuários não modificam a senha, a senha default e alpine… acredito que eu já havia dito isso la em cima, não??? :D

6) Agora hora de acessar o device, voce vai dar um ssh no seu device, e executar as seguintes tarefas:

– Seguindo o primeiro item do passo 4, voce vai dar um ssh e acessar a pasta /var/Applications
– Agora você vai dar um ls para ter certeza de que a aplicação que você copiou esta la, ela esta la?
– Se sim, vamos agora criar uma “assinatura fake”, para isso você vai usar o programinha ldid que gera uma assinatura fake na sua app: ldid -s sua_aplicacao.app

7) Terminadas as verificações e assinaturas, hora de acessar a pasta /Applications, verificando o conteúdo dela, você vai perceber que existem varias aplicações nessa pasta, agora e hora de acrescentar a sua também, ai você pode me perguntar, mas Alan? A gente já não copiou para o /var/Applications, e eu te respondo, sim, porem agora e que vem o pulo-do-gato, lembra das aulinhas de linux/unix??? do tal do ln para criar link simbólico ??? Exatamente ele que você vai utilizar agora: ln -sf /var/Applications/sua_aplicacao.app .

Pronto, ele vai criar um link simbólico para a sua aplicação no diretório de leitura do springboard. Quem e o springboard??? E o cara que gerencia todas as suas aplicações ai no seu “mobile desktop”…

8 ) Mas Alan, o que acontece que a minha aplicação ainda não apareceu no springboard??? E que agora tem uma coisinha básica, o springboard não e plug-in-play, ou seja, você tem que dar um restart no menino, existem 2 formas de se fazer isso,

- Ou você instala uma app que faz isso, eu por exemplo utilizo o Respring que se encontra no cydia
- Ou então você reboota o seu iPhone/iPod.

9) Apos o restart, você vai perceber que a sua aplicação aparece na tela e agora e só executar!!!! :D

E com esses passos, enfim, agora da testar a aplicação que você acabou de desenvolver em um aparelho com jailbreak efetuado e sem pagar pelo certificado da apple… :D

Ta vendo só??? Se você não fosse tao pão-duro, compraria o certificado da Apple por apenas 99 doletas e não passaria por esse parto, pois o XCode faria tudo para você, só faltaria o cafezinho básico… :D

Espero ter ajudado na sua diversão, lembrando que qualquer falha de sua parte, não e de minha responsabilidade,

Abraços e ate a próxima !!!

Syndicated 2009-08-21 05:28:28 from Jumpi's Notepad

Visualizing Floats


Continuing the posts about data types and your characteristics, I read a nice article about Floating point numbers published by gamasutra:

http://www.gamasutra.com/view/feature/1965/visualizing_floats

See ya!!!

      

Syndicated 2009-01-14 15:50:50 from Jumpi's Notepad

Numeros complexos vs NaN (Not-a-Number)


Lendo uma thread em uma lista de discussão que acompanho, surgiu uma duvida bem interessante sobre NaN e em uma das mensagens me deparei com a seguinte afirmação.

“Números imaginários são um exemplo, sqrt (-1) retorna NaN. Outro é dividir zero ou +/- infinito por zero.”

Vamos analisar essa frase começando pelo fim.

De acordo com a IEEE 754, se eu tenho uma variável a = 0 e divido a mesma por 0, vai dar um NaN, porem se eu tenho em a um valor positivo que tende ao infinito, o valor vai ser positivo e se o valor de a for negativo, logo essa divisão vai resultar em um valor negativo.

Ok, até aqui nenhuma objeção, tudo nos conformes. Porém, porém… agora vamos a primeira afirmação.

“Números imaginários são um exemplo, sqrt (-1) retorna NaN.”

Ooopss…. Sinto que houve um equivoco ai, pois não foi definido pelo autor da frase em qual conjunto numérico ele está trabalhando, penso que ele se limitou a qualquer conjunto no qual sqrt(-1) realmente não tem solução (Q, R, Z…), porém, existe também o conjunto dos complexos e nesse conjunto, existe solução para sqrt(-1). E vamos provar isso utilizando o nosso velho amigo C++, pois ele possui uma classe/template por padrão que trabalha com números complexos usando tipos de ponto flutuante, ou seja, utilizando o nosso amigo, podemos provar que existe sim solução para sqrt(-1) no campo dos complexos

Listarei logo abaixo um código simples que demonstra a nossa teoria em C++, ou seja, provar que existe sim resposta para sqrt(-1) e que ela é diferente de NaN

(jumpi@Painkiller:~)$ vi complex.cpp


#include <iostream>
#include <complex>

using namespace std;

int main(int argc, char **argv)
{
    complex<float> res = sqrt(complex<float>(-1));
    cout << res << endl;
    return(0);
}

(jumpi@Painkiller:~)$ ./complex
(0,1)
(jumpi@Painkiller:~)$

Antes recapitulando, a forma geral de um numero complexo no seu plano obedece a forma a + b*i, onde a representa o numero real e b um numero imaginário, ou seja, o retorno do tipo complex em C++ retorna as coordenadas de um numero complexo no plano.

No nosso caso, substituindo na fórmula, teremos a + b*i == 0 + 1*i que equivale a i.

Vamos fazer o teste para confirmar?? Utilizando o google, sim… o google, pois a busca serve como uma excelente calculadora e vai nos ajudar com a prova, digite sqrt(-1), qual a resposta??? Sim… sim… sqrt(-1) equivale a i, mesmo resultado apresentado pelo nosso simples programinha em C++.

Q.E.D.

Logo, sqrt(-1) = i e não um NaN conforme foi dito na thread.

Essa foi apenas uma demonstração de que não podemos esquecer da base matemática para formular uma resposta, principalmente no que envolve recursos que podem ser representados pela linguagem.

Maiores informações podem ser encontradas nos seguintes sites:

Wolfram Complex Number
Wolfram Complex Plane
C plus plus complex reference

      

Syndicated 2009-01-06 03:45:04 from Jumpi's Notepad

When SHA-3 collides


Caramba…

Não sei se todos os leitores sabem, porém, o NIST esta fazendo um campeonato para promover um novo algoritmo de hash para incorporar o padrão SHA-3 e já temos algumas submissões de algoritmos de hash, para ser mais exato, 64 submissões ate o presente momento, sendo que algumas das submissões podem ser encontradas aqui.

Bizarro isso, em 2 papers/prototipos postados para o novo padrão SHA-3, 2 já foram quebrados… isso mesmo!! Colisões já foram encontradas… no Sgàil e no WaMM e o mais engraçado é que no caso do Sgàil, foi o próprio autor que conseguiu detectar a colisão no hash.

Seguem os links para quem estiver interessado em mais detalhes:

WaMM Collision e Sgàil Collision e as respectivas propostas do WaMM e do Sgàil.

Para quem curte, vale a pena dar uma olhada nas propostas, até mesmo nas que já foram quebradas e em seus protótipos de implementação.

Ate a próxima…

      

Syndicated 2008-11-06 18:07:35 from Jumpi's Notepad

47 older entries...

 

acs certified others as follows:

  • acs certified mpr as Journeyer
  • acs certified acs as Apprentice
  • acs certified lukem as Master
  • acs certified richdawe as Journeyer
  • acs certified rms as Master
  • acs certified Fyodor as Master
  • acs certified acme as Master
  • acs certified Akira as Journeyer
  • acs certified sye as Journeyer
  • acs certified fzort as Journeyer
  • acs certified candice as Apprentice
  • acs certified rootsh as Apprentice
  • acs certified fxn as Journeyer
  • acs certified dfenwick as Journeyer
  • acs certified lerdsuwa as Journeyer
  • acs certified bi as Journeyer
  • acs certified ncm as Master
  • acs certified marcioandreyoliveira as Journeyer

Others have certified acs as follows:

  • mpr certified acs as Apprentice
  • acs certified acs as Apprentice
  • richdawe certified acs as Apprentice
  • sye certified acs as Journeyer
  • dfenwick certified acs as Apprentice
  • fxn certified acs as Apprentice
  • lerdsuwa certified acs as Apprentice
  • fzort certified acs as Apprentice
  • ncm certified acs as Apprentice
  • marcioandreyoliveira certified acs as Journeyer

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page