Witajcie,
tworzę aplikacje wraz ze znajomym i próbuję zintegrować płatności, aby po zapłaceniu dostać o tym informację i już z resztą sobie poradzę. Znalazłem jakieś funkcje wykorzystujące przesłane z aplikacji dane zakupu - 'signed_data', 'signature', 'public_key_base64', ale niestety one nie działają. Czy ktoś z forumowiczów tworzył płatności w aplikacji? Macie jakieś dobre artykuły o tym? Byłbym wdzięczny za informacje.

Jedna z funkcji które próbowałem zwraca niestety ciągle false
  1. function verifySignatureTransaction($signed_data, $signature, $public_key_base64) {
  2. $key = "-----BEGIN PUBLIC KEY-----\n" .
  3. chunk_split($public_key_base64, 64, "\n") .
  4. '-----END PUBLIC KEY-----';
  5. //using PHP to create an RSA key
  6. $key = openssl_pkey_get_public($key);
  7.  
  8. if ($key === false) {
  9. throw new \InvalidArgumentException("Public key not valid");
  10. }
  11. $signature = base64_decode($signature);
  12. //using PHP's native support to verify the signature
  13. $result = openssl_verify(
  14. $signed_data,
  15. $signature,
  16. $key,
  17. OPENSSL_ALGO_SHA1
  18. );
  19. if (0 === $result) {
  20. return false;
  21. } else {
  22. if (1 !== $result) {
  23. return false;
  24. } else {
  25. return true;
  26. }
  27. }
  28. }