Расшифруйте Lotus Notes NSF

Я хотел бы расшифровать файлы Lotus Notes NSF программным способом. Предположим, что для каждого NSF у меня есть файл идентификатора и пароль, необходимые для доступа к NSF.

Я использую Lotus Notes 8.5.2, Windows 7 SP1 64-bit. Я готов использовать COM, C++ API или C API.

Я знаю о функции C API NSFDbIsLocallyEncrypted, который сообщает, зашифрован ли NSF. Однако я не верю, что он способен расшифровать NSF.

Я знаю о функции API C++ LNNotesSession.CreateDatabaseCopy, который принимает в качестве параметра 3 DBOptions, который имеет член, который я могу установить как DBOptions.SetLocalEncryption( LNLOCALENCRYPTION::LNLOCALENCRYPTION_NONE ), Однако эта функция создает новый NSF. Если возможно, я бы хотел расшифровать исходный NSF на месте, чтобы сэкономить время и место на диске.

Как я могу удалить локальное шифрование из NSF на месте?

2 ответа

Решение

AFAIK, нет открытого API для расшифровки NSF-файла.

Кроме того, поскольку весь файл должен быть переписан для того, чтобы расшифровать все данные, я не думаю, что на самом деле есть какое-то время или пространство для копирования всего NSF.

Чтобы дешифровать файл NSF, зашифрованный с использованием среднего или сильного шифрования, чтобы его мог открыть только конкретный файл идентификатора, войдите в этот файл идентификатора, выберите свойства приложения и отмените выбор "сильное шифрование". Затем выберите "компактную базу данных", закройте свойства, закройте все, что связано с этим файлом, а затем снова откройте файл. Процесс сжатия обновляет все, чтобы соответствовать новому состоянию этой опции. (Вы можете сделать это и с помощью API.)

Чтобы расшифровать документы, зашифрованные с помощью открытого ключа пользователя или общего / именованного ключа шифрования, который существует в идентификаторе пользователя, необходимо написать агент или программу API, которая открывает каждый документ в базе данных и вызывает NSFNoteDecrypt, а затем NSFNoteUpdate для каждого.

У Ytria, похоже, есть программное решение для этого (DatabaseEZ), в котором вы можете установить параметры шифрования базы данных в массовом порядке, хотя я его не пробовал. Бесплатная облегченная версия программного обеспечения, похоже, не позволяет этого.

Другие вопросы по тегам