MohGovIL / rn-contact-tracing

React Native Library For Contact Tracing Over BLE (Bluetooth Low Energy) To Fight COVID-19 Pandemic
MIT License
59 stars 16 forks source link

Google+apply Exposure Notifications #85

Open yoav2 opened 4 years ago

yoav2 commented 4 years ago

Can you consider using Google+apply Exposure Notifications? From what I read, it's not efficient to use other BLE solution. The Google+apply solution is the only one that will keep bluetooth running in the background, and not go to sleep. I understand you don't want to give up GPS ability but it looks like other countries that refused to use it from the some reason are now going back to this solution after other options turned out to be ineffective.

kaplanlior commented 4 years ago

Thanks @yoav2 . Can you give some references to what you mentioned about other countries.

yoav2 commented 4 years ago

https://www.theguardian.com/world/2020/jun/18/uk-poised-to-abandon-coronavirus-app-in-favour-of-apple-and-google-models

https://www.themarker.com/amp/technation/.premium-1.8944903

eytanschulman commented 4 years ago

Using Apple & Google's Exposure Notification API is the only true way to properly do BT tracing in the background. In addition, the API handles all of the cryptographic logic for you to limit code. BT contact tracing not only is better for privacy (randomly generated keys), but is more accurate than a GPS's coordinates.

lgariv commented 4 years ago

I agree as well. Google + Apple’s solution is just perfect - already working, there are great open source projects that utilize it, and it seems to also be the best solution in terms of privacy. No reason to spend time developing any other solution now that it’s out, given the circumstances. I believe it shouldn’t take much time to implement either.

Examples:

React native app: https://github.com/CovidShield

This project is literally meant to be used "as a reference for your local public health authority to build their own app."

Individual apps: https://github.com/corona-warn-app

The official COVID-19 exposure notification app for Germany.

There's a lot more info on Google and Apple's website, as well as some more examples on how to implement (although not as useful as the react native example above, in my opinion): https://www.google.com/covid19/exposurenotifications/ https://developer.apple.com/documentation/exposurenotification

eyalr0 commented 4 years ago

The GAPPLE API is not suitable for use in Israel.

This is due to two main reasons (there are many other smaller ones):

  1. It prevents the app from using GPS, so the current function of Hamagan app would not be supported. This is a problem as we have a large percentage of the population that does not own smartphones, and the current Hamagen version can be used to notify people on the location of COVID positive persons taken from the epidemiological questioning.

  2. The API will only notify people on the day of the contact, and will not provide even coarse grain time and location information. I do not believe people in Israel will agree to self-isolate if they only get a notification telling them they might have been exposed on "Monday".

For more details about the problems and the solutions you can read the current design document at https://github.com/eyalr0/HashomerCryptoRef/raw/master/documents/hashomer.pdf

You can also see my talk about the subject at https://www.youtube.com/watch?v=iTlXWpLRs6w

On Wed, Jul 8, 2020 at 1:41 PM Lavie notifications@github.com wrote:

I agree as well. Google + Apple’s solution is just perfect - already working, there are great open source projects that utilize it. :// github.com/corona-warn-app), and it seems to also be the best solution in terms of privacy. No reason to spend time developing any other solution now that it’s out, given the circumstances. I believe it shouldn’t take much time to implement either.

Examples:

React native app: https://github.com/CovidShield

Individual apps: https://github.com/corona-warn-app

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/MohGovIL/rn-contact-tracing/issues/85#issuecomment-655439097, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBOZAR2QNBYJ7DW2LR4IBTR2REOBANCNFSM4ORZ6B7Q .

lgariv commented 4 years ago

The GAPPLE API is not suitable for use in Israel. This is due to two main reasons (there are many other smaller ones): 1. It prevents the app from using GPS, so the current function of Hamagan app would not be supported. This is a problem as we have a large percentage of the population that does not own smartphones, and the current Hamagen version can be used to notify people on the location of COVID positive persons taken from the epidemiological questioning. 2. The API will only notify people on the day of the contact, and will not provide even coarse grain time and location information. I do not believe people in Israel will agree to self-isolate if they only get a notification telling them they might have been exposed on "Monday". For more details about the problems and the solutions you can read the current design document at https://github.com/eyalr0/HashomerCryptoRef/raw/master/documents/hashomer.pdf You can also see my talk about the subject at https://www.youtube.com/watch?v=iTlXWpLRs6w On Wed, Jul 8, 2020 at 1:41 PM Lavie @.***> wrote: I agree as well. Google + Apple’s solution is just perfect - already working, there are great open source projects that utilize it. :// github.com/corona-warn-app), and it seems to also be the best solution in terms of privacy. No reason to spend time developing any other solution now that it’s out, given the circumstances. I believe it shouldn’t take much time to implement either. Examples: React native app: https://github.com/CovidShield Individual apps: https://github.com/corona-warn-app — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#85 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBOZAR2QNBYJ7DW2LR4IBTR2REOBANCNFSM4ORZ6B7Q .

  1. If it can't be used inside the current app - there's still an option to make a seperate app. Those who have both applications will be protected even better than only the Hamagen app, which is the only one in use currently (and also hasn't really proved itself). At least until a more suitable solution will be developed (This repo has not been updated for over a week, I don't see it implemented in the near future, if at all), this is the way to go. We need to do something if the current solution is just not good enough.

  2. If it IS more accurate and it has proved itself in multiple different places in the world, I don't see why people wouldn't "believe" it. Also, they might not have to "agree" to self-isolate - if the government will stand behind this solution, just like a lot of other governments did, and just like they do with Shabak tracking (which also, hasn't proved itself).

kaplanlior commented 4 years ago
1. If it can't be used inside the current app - there's still an option to make a seperate app. Those who have both applications will be protected even better than only the Hamagen app, which is the only one in use currently (and also hasn't really proved itself). At least until a more suitable solution will be developed (This repo has not been updated for over a week, I don't see it implemented in the near future, if at all), this is the way to go. We need to do _something_ if the current solution is just not good enough.

Google / API require that there's only one official app per country you MOH will have to choose and can't have both API / GPS.

yoav2 commented 4 years ago

@kaplanlior @eyalr0 what do you thing about these arguments:

kaplanlior commented 4 years ago

Your criticism it technically correct (BLE works better when operated by the phone's OS). But I mostly say that there isn't a perfect solution, which requires us to choose the best option (and its disadvantages). GPS data is still easy to work with.

lgariv commented 4 years ago

Your criticism it technically correct (BLE works better when operated by the phone's OS). But I mostly say that there isn't a perfect solution, which requires us to choose the best option (and its disadvantages). GPS data is still easy to work with.

The best option is the option thats delivers. Not the one that’s the easiest to implement. When you’re developing an app, you’re developing it for those who can download it, not for those who don’t own a phone (and there aren’t a lot of people who don’t own one). Shabak’s tracking is, obviously, only for those who own a phone - It’s just a different method of achieving (or at least trying to achieve) the same results as this project, therefore the argument of why gps can’t be completely replaced with contact tracing does not really make sense. Anyway, both ways - are just not effective enough. With proper contact tracing, people can go to work, and if one person got the virus - there will be no need to send everyone in the building to isolation. Same goes for gyms, malls, and much more. Putting as many people as possible in isolation is a problem of itself, not a solution. For location... there are a few options to get when someone was in a specific place without gps. One example is to add an option to scan QR codes in the app, and requiring workplaces (and others) to use their custom QR codes. Might not be the best solution, but I’m sure there is some kind of a creative solution.. no one thought about using BLE this way before Google/Apple contact tracing was released as well.

It is worth mentioning that countries that were in worse condition than Israel, and switched from their solution to Apple/Google contact tracing, such as Germany, are now in much better condition than Israel.

yoav2 commented 4 years ago

So whats next?

Seems like we stuck...which means leaves us only with the current GPU solution. If that the case I would go with the google apple solution

kaplanlior commented 4 years ago

BLE is part of Hamagen 2.1 (not yet released). See https://github.com/MohGovIL/hamagen-react-native/releases/tag/v2.1.8

lgariv commented 4 years ago

Apple+Google exposure notification framework is open source now! It can now be modified to be used without blocking location. @kaplanlior @eyalr0

kaplanlior commented 4 years ago

Hi @lgariv , I saw https://github.com/google/exposure-notifications-server as reference for notification server implementation and also https://github.com/google/exposure-notifications-android for reference app, but the basic mechanism is still proprietary and has the GPS restrictions. I'll be happy to get a link that says otherwise.

lgariv commented 4 years ago

Hi @lgariv , I saw https://github.com/google/exposure-notifications-server as reference for notification server implementation and also https://github.com/google/exposure-notifications-android for reference app, but the basic mechanism is still proprietary and has the GPS restrictions. I'll be happy to get a link that says otherwise.

Apple just released iOS 13.7, which includes support for Exposure Notifications Express. Haven't checked yet if Google has something similar, but basically it adds the ability to get the same functionality of their API without requiring to download a compatible app (it can be used with another apps as far as I understand).

lgariv commented 4 years ago

Hi @lgariv , I saw https://github.com/google/exposure-notifications-server as reference for notification server implementation and also https://github.com/google/exposure-notifications-android for reference app, but the basic mechanism is still proprietary and has the GPS restrictions. I'll be happy to get a link that says otherwise.

Apple just released iOS 13.7, which includes support for Exposure Notifications Express. Haven't checked yet if Google has something similar, but basically it adds the ability to get the same functionality of their API without requiring to download a compatible app (it can be used with another apps as far as I understand).

https://www.cnet.com/google-amp/news/apple-google-promise-better-coronavirus-tracking-with-exposure-notifications-express/

According to this, Google will support that as well very soon on android 6.0 and up - making this a very, very good option to use in conjunction with Hamagen app (or without it, for that matter). It also does not look that hard to implement.

kaplanlior commented 4 years ago

Also mentioned at MohGovIL/hamagen-react-native#284