-
Notifications
You must be signed in to change notification settings - Fork 885
OMEMO Media Sharing via HTTP File Upload #317
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
base: master
Are you sure you want to change the base?
OMEMO Media Sharing via HTTP File Upload #317
Conversation
8e139d5 to
91cac14
Compare
smack-core/src/main/java/org/jivesoftware/smack/util/StringUtils.java
Outdated
Show resolved
Hide resolved
...experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java
Outdated
Show resolved
Hide resolved
...experimental/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadManager.java
Outdated
Show resolved
Hide resolved
...test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java
Outdated
Show resolved
Hide resolved
...test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java
Outdated
Show resolved
Hide resolved
|
Regarding the API design you probably should keep https://issues.igniterealtime.org/browse/SMACK-867 in mind. |
|
I'm not quite happy with this as of now. I'm not entirely sure, if I used the AlgorithmParameterSpecs correctly. Currently the decrypted file is 32 bytes longer than the original. This is probably the authentication tag and/or IV. However, since the tag length of AESGCM is configurable, I'm not sure, how one can calculate that length reliably when receiving a file. |
|
aTalk v1.8.3 has implemented OMEMO Media Sharing using your source. Thanks for the contribution. |
be5f811 to
ce2b79c
Compare
ce2b79c to
9a635e7
Compare
|
The integration test does now no longer fail. |
|
@vanitasvitae: Have you progressed on it? |
|
@cmeng-git could you please create a PR with the updated and working version? |
Replaces: igniterealtime#317 pull request
|
I have raised the PR as requested i.e. |
This PR adds support for OMEMO Media Sharing to Smacks HttpFileUploadManager.
The manager can now upload files encrypted to the server. As a result the user gets a aesgcm url-string which can be shared with others. There is also a function that retrieves a
Cipherfrom an aesgcm string, which can then be used to decrypt the file/stream.Since OMEMO Media Sharing is basically independent of OMEMO, I chose the HttpFileUploadManager as the best place to implement this feature.
There are also some changes to other packages.
StringUtilsnow contains a method to decode hexadecimal Strings into byte arrays and the OMEMO code can generate IVs more flexible in order to prepare for the switch from 16 byte IVs to 12 byte IVs.Missing: