Páginas

domingo, 23 de junio de 2013

Utilizando as3HTTPClient para comunicar flash con un Web Service RESTFul

En este post volcaré la experiencia de utilizar as3HTTPClient en un juego creado con AS3 (FlashDevelop) para comunicar el juego con un Web Service RESTFul creado con Slim.

Básicamente el servicio web utiliza los métodos GET, POST y PUT, y voy a tener que utilizar SSL puesto que estará en Facebook además de autenticación... vamos por la api key...

El primer problema
Al insertar el primer código para utilizar el GET necesitaremos esta librería que nos resolverá  los algorítmos criptográficos https://code.google.com/p/as3crypto/ (al momento de escribir esto)
  • Protocols: TLS 1.0 support (partial)
  • Certificates: X.509 Certificate parsing and validation, built-in Root CAs.
  • Public Key Encryption: RSA (encrypt/decrypt, sign/verify)
  • Secret Key Encryption: AES, DES, 3DES, BlowFish, XTEA, RC4
  • Confidentiality Modes: ECB, CBC, CFB, CFB8, OFB, CTR
  • Hashing Algorithms: MD2, MD5, SHA-1, SHA-224, SHA-256
  • Paddings available: PKCS#5, PKCS#1 type 1 and 2
  • Other Useful Stuff: HMAC, Random, TLS-PRF, some ASN-1/DER parsing


Continúo...

Entonces, necesitamos comunicar AS3 con PHP, por lo cual lo métodos de encriptación y desencriptación de los datos deberían funcionar en los 2 lugares. Vamos a utilizar algo simple.

Encontramos esto: http://cambiatablog.wordpress.com/2010/08/24/simple-encryptdecrypt-in-as3-and-php-base64-blues/

y esto: http://flashcodetips.blogspot.com.ar/2011/07/low-level-string-encryption-using-php.html

Pero al utilizar una llave en los AS3 tenemos que también pensar... ¿Qué pasa si decompilan nuestro SWF?
Hay varias herramientas, de encriptación y de ofuscación para los SWF http://bruce-lab.blogspot.com.ar/2012/04/free-swf-encryptor-obfuscator-and.html.

Vamos por ésta que funciona muy bien y es gratuita: http://wonderfl.net/c/6WDD/
La explicación acá: http://makc3d.wordpress.com/2013/01/27/free-swf-obfuscator-update/

(Continuará...)