Better spongyCastle initialisation / decoupling
See original GitHub issueThis is a follow-up for: https://github.com/walleth/kethereum/pull/21
There are now multiple of these blocks in kethereum:
init {
Security.insertProviderAt(org.spongycastle.jce.provider.BouncyCastleProvider(), 1)
}
I would really like a cleaner way of initializing spongyCastle - and ideally a decoupling from sponygCastle from kethereum so it can also be used with bouncyCastle in a JVM context where the whole spongyCastle is not needed.
One Idea:
- create a kethereum-android module that has to be included when using kethereum in combination with Android
- inside this module there is a content-provider that initializes spongyCastle
@mirceanis what do you think?
Issue Analytics
- State:
- Created 6 years ago
- Comments:7 (6 by maintainers)
Top Results From Across the Web
org.spongycastle.jce.provider.BouncyCastleProvider.<init ...
Best Java code snippets using org.spongycastle.jce.provider.BouncyCastleProvider.<init> (Showing top 20 results out of 315).
Read more >Spongy Castle by rtyley - GitHub Pages
Spongy Castle is the stock Bouncy Castle libraries with a couple of small changes to make it work on Android: all package names...
Read more >Software-based Microarchitectural Attacks - arXiv
In this thesis, we aim to improve the general understanding of the attack surface of software-based microarchitectural attacks and to provide novel insights ......
Read more >Easy Email Encryption with Easy Key Management
to simplify email encryption and improve its usability by im- ... execute in the background, decoupling them from the critical.
Read more >Efficient Server-Aided 2PC for Mobile Phones
the computation with cost that is lower than the currently best semi-honest 2PC protocols. ... So far we have decoupled Bob from the...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Was recently talking to @cketti recently and I think he is correct that the best way is not to use the providers at all but the lower bouncycastle API - so we do not need the split spongy/bouncy at all. This way we also can avoid the multiple insertProvider calls. Perhaps when doing so we can also hide bouncycastle behind some crypto-interface so we can replace it with a pure Kotlin implementation at a later point.
The ContentProvider sounds like a good idea to try. Firebase does the init that way and I remember they had a few problems in the beginning. A successful completion of this would have to account for that and avoid it.
A link to start one off: https://firebase.googleblog.com/2016/12/how-does-firebase-initialize-on-android.html