def in_app_purchase signature, receipt_data, base64_encoded_public_key
public_key = OpenSSL::PKey::RSA.new(base64_encoded_public_key)
if public_key.verify(OpenSSL::Digest::SHA1.new, Base64.decode64(signature), receipt_data)
# Success
else
# Failure
end
end
signature、receipt_dataは、課金成功時にGoogle Playから受け取る
(receipt_dataはjson)
base64_encoded_public_keyは、Google Playから取得する公開キーをpemにしたもの
- public keyをpublicファイルに入力
- base64 -d public > public.der (osxのbase64コマンドは base64 -Dを使う)
- openssl rsa -inform DER -outform PEM -pubin -in public.der -out public.pem