-
-
Notifications
You must be signed in to change notification settings - Fork 35
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
Silence XML plaintext backup conversion? #121
Comments
I'm not promising to do it, but I'll consider it. The format doesn't look too complicated. Are there MMS messages, or only SMS? |
I do not think Silence exports MMS successfully. There certainly are no image or other files associated with these messages. Thank you. I appreciate your just looking at it. |
Thank you! Unfortunately, emojis, seem to break the Element Tree parser. There weren't any emojis in the sample I sent you; I apologize. This is the result I got:
and this is line 12 from my file:
I might just manually strip out the lines with emojis and see if I can make the file work that way, but I wanted to let you know how the initial test went. Thank you again. |
I looked into this, and it turns out that the problem is that Silence is emitting invalid XML - this was first reported seven years ago! You can try the |
@tmo1 Can you implement |
|
Silence produces invalid XML when encoding certain characters (such as emojis). The Silence XML fixer tool, based on Calvin-L's entityfixer() function and the comments to his Gist, fixes the XML: https://git.silence.dev/Silence/Silence-Android/-/issues/317 https://gist.github.com/Calvin-L/5232f876b8acf48a216941b8904632bb Addresses: #121
Nice feature, SMS are imported with emoji 👍 Do you think MMS can be save and restore ? |
I'm glad it's working!
We can obviously only restore data that's present in the XML file. If there's anything there that isn't being converted / restored, please post some examples and I'll take a look. |
MMS are stored in These files are encrypted :
|
Where do those files come from? What's the encryption scheme, and where are the keys? If you provide sample files and keys, I can take a look (if you're willing expose potentially private data and metadata), but there's no way I can do anything without that. |
I'd like to decrypt a file first , in order to see what file it's and then post it. Here's the MMS database structure : The keys to decrpyt are located in : |
Thanks. I'm not planning to comb through the code to figure out the database structure and encryption scheme, but if you make progress on it, please post your results here. |
I created a tool to do this in python to txt format https://github.com/dngray/silence-backup-parse/blob/main/silence_backup_parse.py there were some specifics regarding emojis. as for MMS those are not exported in the XML file. |
That's probably because those are actually MMS messages and not SMS. |
Yes, I don't have found what kind of algo is used to encrypt MMS files : |
Correct. SMS messages cannot have more than one recipient - messages sent to more than one recipient are automatically sent as MMS messages, even when they're only simple text messages with no "media" involved. |
Hi then i did like recommended: python silence-xml-fixer.py SilencePlaintextBackup.xml SilencePlaintextBackupfixed.xml and and i've got a SilencePlaintextBackup1.zip (as i wrote in the python file) but empty file.... somebody can help me ??? :-( |
that's what i did, (first command) or something wrong on my command? |
If this error is encountered, first use the XML fixer tool to produce valid XML:
then run the converter on the fixed XML:
|
thank for your response but i did all that (it's my text.. :-() |
You've missed |
yeah the first command worked but python silence-convert.py SilencePlaintextBackupfixed.xml |
it's workin !! :-) |
MMS are not located in the XML still working about it |
oki, very good job, i was afraid to be stuck with silence rrrr |
I'm looking at Rapid search can lead to :
|
Silence / SMSSecure uses the Signal encryption protocol, which uses / can use curve25519 in its operation. I think that this may be only applicable to the encryption used for messages in transit, though, and not to the encryption used for the on-disk message databases. There are various tools for decoding the encypted backups produced by Signal, including signalbackup-tools and signal_for_android_decryption, but they are not designed to be used with the raw database files retrieved from the Android filesystem. |
There's also ; that may be needs to be adapted to Silence |
Thank you for creating such a useful app.
Would you be willing to write a script that will convert the Silence XML plaintext backup file into a JSON file to be imported?
Here is a sample from the Silence backup:
Thank you again.
The text was updated successfully, but these errors were encountered: