Estoy intentando verificar las compras que me llegan en Android mediante opensll_verify() en php
Cada vez que intento hacerlo me devuelve siempre el mismo error:
"error:0906D06C:PEM routines:PEM_read_bio:no start line"
La verdad es que ya no se que mas probar, si alguien pudiera echarme un cable...
El codigo que estoy usando es el siguiente
Código:
En $signed_data tengo la "recipe" en String que me devuelve Googlefunction verify_market_in_app($signed_data, $signature, $public_key_base64) { $key = "-----BEGIN PUBLIC KEY-----\n". chunk_split($public_key_base64, 64,"\n"). '-----END PUBLIC KEY-----'; //using PHP to create an RSA key $key = openssl_get_publickey($key); //$signature should be in binary format, but it comes as BASE64. //So, I'll convert it. $signature = base64_decode($signature); //using PHP's native support to verify the signature $result = openssl_verify( $signed_data, $signature, $key, OPENSSL_ALGO_SHA1); if (0 === $result) { return false; } else if (1 !== $result) { return false; } else { return true; } }
En $signature esta la signature que me devuelve Google en String
En $key tengo la public key que saco de la consola de google
La verdad es que ya no se que mas probar... tengo que pasarle de alguna fom