-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is there anybody out there that have used capillary on server and decrypted messages on iOS? #13
Comments
@einarnot it's almost one year since you asked. Did you solved it somehow? Have similar use case. |
Capillary expects the RSA key wrapped in Protobuf objects. So we had to use SwiftProtobuf (Swift version of Googles Protobuf). -Use SwiftProtobuf to generate Swift file from the capillary_internal.proto.
Function to wrap keydata in capillary protobuf structs (step 3):
I know this might be confusing, and there is alot of steps. But we made it work this way, so its possible, and this might help you figure things out. |
We want to use capillary to support E2E encryption for push messages, on both android and iOS, on iOS we need to generate an RSA keypair, and provide the public key to the server. The problem is that we don't know what format Capillary expects the public key in.
We have tried to find out, and think that its an RSA 2048 in X.509 format and base64encoded. But our early attempts at this fails when Capillary tries to parse the public-key generated by our iOS app. We have used Heimdall to generate the keypair, and experimented with CryptoExportImportManager to convert the keys into DER format, but still no luck...
Anybody who can help, or at least say if this is feasible. (that is, using Capillary on server and E2E encrypt for iOS Clients.)
(Please excuse me if any of this doesn't make sense, as crypto is something Im not very familiar with. Im trying to learn, but all these key-types, formats, sizes, curves and encodings is still a jungle for me.)
The text was updated successfully, but these errors were encountered: