I’m Kobi, and I’m working on improving the Ultralight Client Sync. Ultralight Client Sync which is our method of a fast synchronization method for light clients, used by, for example, our mobile apps.
We’re currently in the process of replacing the ECDSA signatures in the blocks with BLS signatures, which reduces data usage dramatically. Furthermore, we’re working on using SNARKs to compress data usage even faster while retaining the same security.
I’d appreciate the community’s help in benchmarking the ECDSA and BLS performance on different Android phones!
To do that, I prepared an Android app that runs these benchmarks and prints out the result. It’s a test app, so please forgive crashes
To use it, you can follow these steps:
- Enable installation of 3rd party APKs - it should be somewhere around “Settings -> Application -> Unknown sources (Allow installation of non-Market applications)” or “Settings -> Apps & notifications -> Special app access -> Install unknown apps”
- Go to https://drive.google.com/open?id=1O0okYiVHBcHKyVIke8DCTyN85-wFQ151 and download the relevant APK. If it’s a cheap phone, the arm7 version will probably be the version that will work. These are direct links:
- arm7 - https://drive.google.com/open?id=1tpyrTraTU40ctkb7UyFEqKAGVmdw5dYN
- arm8 - https://drive.google.com/open?id=1Zsbg847VXRpJizyAj-MN4hYOAYCVNoAg
- Click “Prepare”, then “Verify ECDSA” and then “Verify BLS”. After each, the “elapsed” time will be printed. Please post it here: https://docs.google.com/spreadsheets/d/14guCbcv-D_nSBdDkBgh8N14Mtq-f0HZfdLJYExSza_U/edit?usp=sharing
- There are phones on which both arm7 and arm8 work (e.g., my Pixel 2). On those, please do it again on arm8.