Тема закрыта
Страницы: 1
Сохраненные пароли и логины хранятся в зашифрованном виде в logins.json, как написано в http://kb.mozillazine.org/Files_and_fol … hunderbird. Насколько я понял эти данные можно шифровать с помощью утилиты sdrtest из библиотеки nss https://github.com/servo/nss/tree/master/cmd/sdrtest.
Пример logins.json:
{"nextId":2,"logins":[{"id":1,"hostname":"imap://10.77.100.208","httpRealm":"imap://ip-адрес",
"formSubmitURL":null,"usernameField":"","passwordField":"","encryptedUsername":"MDIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcECEAEa0FlTmETBAivAz/RbfcXqg==","encryptedPassword":"MDoEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcECBnu3Rd2QaQWBBA7kHjEbjmb2WY0XzYHzc50","guid":"{20cf1edf-c8d6-40a8-b4ec-fe28d9eb3ad3}","encType":1,"timeCreated":1558943800498,"timeLastUsed":1558943800498,"timePasswordChanged":1558943800498,"timesUsed":1}],"disabledHosts":[],"version":2}
Работа с шифрованием: sdrtest -d путь_к_папке_с_ключами(home/user/.thunderbird/vz66hbku.default) -o output.txt -t "Пароль". Данная команда создает файл output.txt с зашифрованным паролем в кодировке base64, поэтому для получения данных как в logins.json необходимо их декодировать base64 output.txt.
Теперь надо сформировать guid для заполнения данного поля. Данное действие я выполняю с помощью команды "uuidgen" из библиотеки uuid-runtime.
Поле timeCreated также заполняется текущим unix временем.
Все описанные действия выполняются последовательно и из программы, поэтому за это время кодировка не должна меняться. Но почему-то данный подход не сработал. Есть у кого нибудь идеи как довести это до работоспособного состояния?
Отредактировано CFE (27-05-2019 12:05:44)
Отсутствует
Тема закрыта
Страницы: 1