Restore exit status 100

Hi everyone,

I’m trying to restore some file, but restoring from GUI stops after a few seconds with exit code 100 and the following log:

2025-10-07 21:05:06.742 INFO REPOSITORY_SET Repository set to /backup/test
2025-10-07 21:05:06.742 INFO STORAGE_SET Storage set to gcd://HAVEN/AppData
2025-10-07 21:05:09.301 INFO SNAPSHOT_FILTER Loaded 2 include/exclude pattern(s)

(yes thats the entire log)

I’m not even sure whats going wrong! There doesnt seem to be an actual error message.

As for the restore command, it looks like this:

Does anyone have an idea of why this restore operation fails? Thanks!

Try adding -ignore-owner flag. Make sure the pem file is in the format that duplicacy understands.

The key needs to be in the PKCS#1 format. If the first line of the private key file is -----BEGIN PRIVATE KEY-----rather than -----BEGIN RSA PRIVATE KEY-----, then it is in the PKCS#8 format and you’ll need to supply the -traditional option to openssl.

My private.pem starts with

-----BEGIN ENCRYPTED PRIVATE KEY-----

So I used this openssl command to turn it into the correct format:

openssl rsa -in private.pem -out private2.pem -traditional
This seems to have worked, as the first line of private2.pem is -----BEGIN RSA PRIVATE KEY-----.

Yet, the issue persists. After a few seconds, I get exit status 100 with a very similar log:

2025-10-08 11:27:11.219 INFO REPOSITORY_SET Repository set to /backup/test
2025-10-08 11:27:11.219 INFO STORAGE_SET Storage set to gcd://HAVEN/AppData
2025-10-08 11:27:13.693 INFO SNAPSHOT_FILTER Loaded 1 include/exclude pattern(s)

Out of curiosity i tried using a .pem file that was faultly, but it had the same result. Now I’m starting to wonder whether my private.pem file is the correct one.
I expected Duplicacy to give some sort of error when the encryption file is faulty/wrong. Is it normal for it to not give such an error?

If the private key is wrong, Duplicacy does give the error message in the log file:

gchen@mac-mini-2021:repository$cat ~/.duplicacy-web/logs/restore-20251009-131453.log 
2025-10-09 13:14:53.663 INFO REPOSITORY_SET Repository set to /Users/gchen/AcrosyncTest/restore
2025-10-09 13:14:53.663 INFO STORAGE_SET Storage set to /Users/gchen/AcrosyncTest/storage
2025-10-09 13:14:53.663 INFO SNAPSHOT_FILTER Loaded 1 include/exclude pattern(s)
2025-10-09 13:14:53.673 ERROR RSA_PRIVATE Incorrect private key: crypto/rsa: decryption error

You can also find the error in the main log file (~/.duplicacy/logs/duplicac_web.log):

2025/10/09 13:14:53 Set current working directory to /Users/gchen/.duplicacy-web/repositories/localhost/restore
2025/10/09 13:14:53 ERROR RSA_PRIVATE Incorrect private key: crypto/rsa: decryption error
2025/10/09 13:14:53 Failed to restore files for backup test revision 1 in the storage rsa: Incorrect private key: crypto/rsa: decryption error
2025/10/09 13:14:53 closing log file restore-20251009-131453.log

Thanks!

This has let me to find an actual error message:

2025/10/15 13:10:46 Set current working directory to /cache/localhost/restore
2025/10/15 13:10:51 CLI: Enter the passphrase for /data/private2.pem:2025-10-15 13:10:51.539 ERROR PASSWORD_READ Failed to read the password: EOF
2025/10/15 13:10:51 The CLI executable returned an error: exit status 100, exit code: 100
2025/10/15 13:10:51 Failed to restore files for backup 6 revision 446 in the storage Photos: exit status 100

It looks like it wasnt the passphrase for the .pem file. I’ve been googling to find how to give the passphrase, but I am unable to.
What is my next step here?

To rephrase my question: how do I tell Duplicacy what the passphrase is? I have checked it through openssl CLI that I have the correct passphrase.

It looks like it failed to to read teh password – it encounterd end of file.

In the documentation for the restore command you can see this:

   -key <private key>            the RSA private key to decrypt file chunks
   -key-passphrase <passphrase>  the passphrase to decrypt the RSA private key

Perhaps provide the -key-passphrase in the same field you have provided -key?

Alternatively you can pass all of these extra parameters though the environment variables.

Thanks!

Another error has appeared:

The restore command encountered an error:
Failed to parse the private key in /data/private3.pem: asn1: syntax error: sequence truncated

And from the duplicacy_web.log

2025/10/22 11:12:43 Running /app/.duplicacy-web/bin/duplicacy_linux_x64_3.2.5 [-log restore -r 455 -storage HAVEN_AppData2 -overwrite -stats -ignore-owner -threads 6 -key /data/private3.pem -key-passphrase <PASSPHRASE> -- appdata_backup/ab_20251021_063002/binhex-delugevpn.tar.gz appdata_backup/ab_20251021_063002/my-binhex-delugevpn.xml]
2025/10/22 11:12:43 Set current working directory to /cache/localhost/restore
2025/10/22 11:12:49 ERROR RSA_PRIVATE Failed to parse the private key in /data/private3.pem: asn1: syntax error: sequence truncated
2025/10/22 11:12:49 Failed to restore files for backup 8 revision 455 in the storage HAVEN_AppData2: Failed to parse the private key in /data/private3.pem: asn1: syntax error: sequence truncated
2025/10/22 11:12:49 closing log file restore-20251022-111243.log

Just to be sure, I will completely revamping all my backups (since they all use this RSA key), but I would like to know what is going wrong with this one (if possible).