Back

[CLOSED] Google Integrity API with Appwrite

  • 0
  • Android
safwan
12 Aug, 2023, 14:29

what you can do is generate a SHA-1 key of your app. You can then create a function that checks if the SHA-1 key sent from the app matches the one stored in the function. If it matches, allow the app to access whatever

TL;DR
The thread is discussing the use of the Google Integrity API with Appwrite. The main concern is the potential slowdown and resource consumption caused by validating the integrity of every request. The thread also mentions the issue of bots and abuse in forms, as well as the difficulty of preventing scraping of data. One suggested solution is to use the Play Integrity API, which uses SHA-1 keys for validation. The process involves the app making a request to the Play Integrity API and receiving a token, which is then sent to a back-end server to be used in the Play Integrity API. The API returns a response about the client. Overall, the thread
safwan
12 Aug, 2023, 14:29

You can run this function whenever someone opens the app

safwan
12 Aug, 2023, 14:30

It's not that tough and is a simple solution.

Shubham
12 Aug, 2023, 14:31

for this we have to store sha-1 key in apk

safwan
12 Aug, 2023, 14:31

No that's the beauty

Shubham
12 Aug, 2023, 14:31

and its very easy to get this by decompiling this apk

safwan
12 Aug, 2023, 14:31

SHA-1 keys can be generated per-app

safwan
12 Aug, 2023, 14:32

so if you generate an SHA-1 key for your app, that's what will be used

safwan
12 Aug, 2023, 14:32

and you can even encrypt it before sending to the function

safwan
12 Aug, 2023, 14:33

look I might be very wrong cuz I'm on some stronmg medication, but give it a try

safwan
12 Aug, 2023, 14:33

If it doesn't work, just go with the Play Integrity API. I don't see what the issue is if you really want to use the Integrity API

Drake
12 Aug, 2023, 14:35

The play store integrity API uses the sha-1. As recommended, you can use the play integrity API in your function to validate the app and then return the data.

Drake
12 Aug, 2023, 14:36

I've never used it before, but I believe the flow is:

  1. App makes a request to the play integrity API and gets some response with a token
  2. App sends the token to some back end server
  3. Back end server uses the token and sends it to the play integrity API
  4. Play integrity API returns with some response about the client
safwan
12 Aug, 2023, 14:43

Found this:

Nevus
13 Aug, 2023, 17:07

IMO this just isn't worth the time. If any logged in users has access to 10k questions, there is no reasonably easy way to prevent them from running a javascript script to scrape the data.

safwan
13 Aug, 2023, 17:08

Absolutely. If someone can login for free and access this data from your REAL app, doesn't make sense to validate integrity of the origin.

Nevus
13 Aug, 2023, 17:12

Some websites like udemy go to significant lengths to restrict scraping and that works well for videos but not for text. This is my limited experience but I have two courses from udemy with tests and I can download them all from brave using Ctrl+P(but not from chrome, firefox or edge)

Nevus
13 Aug, 2023, 17:16

^ As soon as data arrives on your user's device, there is nothing you can do except the threat of legal action

D5
13 Aug, 2023, 17:59

This could be very useful to prevent bots in logins

D5
13 Aug, 2023, 17:59

And abuse in forms

D5
13 Aug, 2023, 17:59

(from bots too)

D5
13 Aug, 2023, 18:00
D5
13 Aug, 2023, 18:04

Also for critical operations, or making regular checks, but making integrity validation of every request will make everything slower and consume both phone and server resources and energy

safwan
14 Aug, 2023, 10:03

[CLOSED] Google Integrity API with Appwrite

Eldad
16 Aug, 2023, 08:44

We're tracking feedback for this feature here: https://github.com/appwrite/appwrite/issues/4791

Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more