Investigate crypto crash on Android w/o libjbigi.so #46
Open
opened 2025-04-21 14:45:16 -04:00 by idk
·
2 comments
No Branch/Tag Specified
master
i2p-android-2.8.0-androidx
2.3.0-translations
i2p-android-2.9.0
i2p-android-2.8.2
i2p-android-2.8.0-1
i2p-android-2.8.0
i2p-android-2.7.1
2.7.1
i2p-android-2.7.0
i2p-android-2.6.0
i2p-android-2.5.1
i2p-android-2.5.2
i2p-android-2.5.0
i2p-android-2.4.2-test
i2p-android-2.4.1-test
i2p-android-2.4.0
i2p-2.3.0
android-2.2.1
i2p-android-2.2.0
i2p-android-2.1.1
android-2.1.0
android-2.0.1
android-2.0.0
android-1.9.0
i2p-android-1.8.1
android-1.8.1
android-1.8.0
android-1.7.1
android-1.7.0
android-1.6.1
android-1.6.0
android-1.5.0
android-0.9.50
android-0.9.49
android-0.9.48
0.9.48
android-0.9.47-1
android-0.9.47
android-0.9.46
android-0.9.45
android-0.9.44
android-0.9.43
android-0.9.42
android-0.9.41
android-0.9.40
android-0.9.39
android-0.9.38
android-0.9.37
android-0.9.36
android-0.9.35
android-0.9.34
android-0.9.29
android-helper-0.9.3
android-client-0.9.29
android-0.9.28
android-helper-0.9.2
android-client-0.9.28
android-0.9.27
android-helper-0.9.1
android-client-0.9.27
android-0.9.26
android-client-0.9
android-0.9.25
android-client-0.8
android-0.9.22
android-0.9.20
android-client-0.7
android-0.9.19.1
android-0.9.19
android-client-0.6
android-0.9.18
android-client-0.5.1
android-client-0.5
android-0.9.17.1
android-0.9.17
android-client-0.4
android-client-0.3
android-0.9.15.1
android-0.9.15
android-client-0.2
android-0.9.13-0_b2-API8
android-0.9.13-0_b1-API8
android-0.9.12-0_b1-API8
android-0.9.11-0_b1-API8
android-0.9.10-0_b1-API8
android-0.9.9-0_b0-API8
android-0.9.8.1-0_b1-API8
android-0.9.7.1-0_b4-API8
android-0.9.7-0_b2-API8
android-0.9.1-0_b1-API8
android-0.8.7-4_b1-API8
i2p-0.8.6
i2p-0.8.5
i2p-0.8.4
i2p-0.8.3
i2p-0.8.2
i2p-0.8.1
i2p-0.8
i2p-0.7.14
i2p-0.7.13
i2p-0.7.12
i2p-0.7.11
i2p-0.7.10
i2p-0.7.9
i2p-0.7.8
i2p-0.7.7
i2p-0.7.6
i2p-0.7.5
i2p-0.7.4
i2p-0.7.3
i2p-0.7.2
i2p-0.7.1
i2p-0.7
i2p-0.6.5
i2p-0.6.4
i2p-0.6.3
i2p-0.6.2
i2p-0.6.1.33
i2p-0.6.1.32
i2p-0.6.1.31
0.6.1.30-20
0.6.1.30-20-cvs-suck-import
i2p_0_6_1_30
i2p_0_6_1_29
i2p_0_6_1_28
i2p_0_6_1_27
i2p_0_6_1_26
i2p_0_6_1_25
i2p_0_6_1_24
i2p_0_6_1_23
i2p_0_6_1_22
i2p_0_6_1_21
i2p_0_6_1_20
i2p_0_6_1_19
i2p_0_6_1_18
i2p_0_6_1_17
i2p_0_6_1_16
i2p_0_6_1_15
i2p_0_6_1_14
i2p_0_6_1_13
i2p_0_6_1_12
i2p_0_6_1_11
i2p_0_6_1_10
i2p_0_6_1_9
i2p_0_6_1_8
i2p_0_6_1_7
i2p_0_6_1_6
i2p_0_6_1_5
i2p_0_6_1_4
i2p_0_6_1_3
i2p_0_6_1_2
i2p_0_6_1_1
i2p_0_6_1
i2p_0_6_0_6
i2p_0_6_0_5
i2p_0_6_0_4
i2p_0_6_0_3
i2p_0_6_0_2
i2p_0_6_0_1
i2p_0_6
i2p_0_5_0_7
i2p_0_5_0_6
i2p_0_5_0_5
i2p_0_5_0_4
i2p_0_5_0_3
i2p_0_5_0_2
i2p_0_5_0_1
i2p_0_5
i2p_0_5_post_merge
i2p_0_4_2_6
i2p_0_4_2_5
i2p_0_4_2_4
i2p_0_4_2_3
i2p_0_4_2_2
i2p_0_4_2_1
i2p_0_4_2
i2p_0_4_1_4
i2p_0_4_1_3
i2p_0_4_1_2
i2p_0_4_1_1
i2p_0_4_1
i2p_0_4_0_1
i2p_0_4
i2p_0_3_4_3
i2p_0_3_4_2
i2p_0_3_4_1
i2p_0_3_4
i2p_0_3_3
i2p_0_3_2_3
i2p_0_3_2_2
i2p_0_3_2_1
i2p_0_3_2
i2p_0_3_1_5
i2p_0_3_1_4
i2p_0_3_1_3
i2p_0_3_1_2
i2p_0_3_1_1
i2p_0_3_1
i2p_0_3_0_4
i2p_post_great_renaming
i2p_0_3_0_3
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: I2P_Developers/i2p.android.base#46
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Opened 7 years ago
Last modified 2 years ago
#1343assigneddefect
Investigate crypto crash on Android w/o libjbigi.so
Reported by:str4dOwned by:Meeh
Priority:
minor
Milestone:
Component:
apps/android
Version:
0.9.14
Keywords:
Cc:
Parent Tickets:
Sensitive:
no
Description
zzz, _sponge, I'm thinking now that we don't need to include jbigi in Android
https://developer.android.com/reference/java/math/BigInteger.html
"This implementation is efficient for operations traditionally used in cryptography, such as the generation of large prime numbers and computation of the modular inverse."
tl;dr GMP is doing nothing, Android devs have already optimized (at least on Android 4.1.2)
str4d, native was slower 3 years ago too…. the trouble was that Android BigInteger? crashed the jvm. Until I added jbigi, nothing worked.
I spent maybe 6 months trying to track down why. unsuccessfully.
and yes this was on an OG Droid Froyo.
never found a bug report or fix about it
also, testing on numerous 32-bit platforms showed that 5.0.2 was no faster than 4.3.2, and twice the .so size.
To this day we still ship 4.3.2 for 32 bit and 5.0.2 for 64 bit, as set up in May/June? 2011. We haven't touched jbigi since.
see notes in installer/lib/jbigi/README.txt
re: dropping jbigi, sure, if we can figure out when it got fixed.
All I know is I spent 6 months or a year getting the router to work on android, and a big part of that was realizing that it was dying in ssu, i.e. DH, i.e. bigInt.
now, i could try it w/o jbigi on my OG droid, maybe it got fixed somewhere along the way, but there hasn't been an OTA update in years
What sort of crash? OOM or something else?
and of course now I can't run the upcoming release on Froyo anyway, we've moved to API 9.
Yah, that's another point
it was a crash in native code
k
for months i worked around it by disabling SSU
That at least implies that Android API 8 was using NativeBN internally.
but RI signatures also failed about half the time too.
so it would create its own RI, sign it, then it would fail a double=check, and the router would die there.
once I added jbigi it all just magically worked
maybe we could go back through 5 years of AOSP checkins and find a fix point… but more likely we'd just have to throw it out there w/o jbigi and see if anybody bitches
is either one of those worth 89 KB or a 6% speedup? dunno.
btw, the speed test never crashed. only the router.
Right, meaning it's some obscure corner case that is being triggered.
zzz, did the crash happen in the emulator ever?
i think I couldn't ever get the emulator crypto to work, don't remember if exactly the same crash or not
Subtickets
comment:2 Changed 2 years ago by zzz
Owner:
changed from str4d to _Meeh_Status:open →
assigned
comment:1 Changed 5 years ago by str4d
Status:new →
open