I just tried:
Same results in the other direction as well. Hmmm...I just tried:
- created a new identity using the Android client.
- exported / printed the new identity with the password from my phone
- scanned the printed identity into my desktop using the GRC client and webcam
- printed the new identity from the GRC client:
Actually, the failure I'm testing is not using anything from the Windows client. It is all on the Android client.
SQRLStorage.needsReload()is true), then going into the PDF shows the PDF with fewer (107+/- ) characters, as expected.
The way it works (my idea! Just bragging ) is that the other 19 characters of the line, plus the line number (IIRC, one byte 0-based appended to the end; Steve's addition) are fed through SHA256, and the result is modded with 56 to get the check char.
As I suspected, if I forced aWriting this post gave me an idea...I'll report back shortly.
storage.read()before the textual version was printed, it printed the right thing. I'm not sure exactly where the best place (in the code) would be to do this forced read, or if, rather than force a read, the exact problem with the state of
SQRLStorageat the time of first identity creation can be identified. But to be sure, when I forced read before the text was created, it created the right length of output. Here's the quick and dirty way I "fixed" it:
This only happens on a new install. It looks like the testing you've done involves making a new identity. To recreate, you'd need to uninstall the app, reinstall, then go through setting up a new identity and try the PDF print option.If you can reproduce the issue again with an ID you don't mind publishing, the exact steps and the resulting text would, of course, be invaluable.