Windows Mobile поддерживает шифрование (Настройки -> Система -> Шифрование). Мое приложение должно читать зашифрованные файлы и расшифровывать их. Как я могу получить ключ шифрования, используемый Windows Mobile, и расшифровать его?
Windows Mobile — получить ключ шифрования
comment
Если бы вы могли просто получить ключ, разве это не помешало бы шифрованию? Вы должны иметь возможность расшифровывать только те данные, которые вы зашифровали с помощью собственного известного ключа. Или я неправильно понимаю ваш вопрос?
- person ctacke   schedule 04.01.2011
comment
Ты прав. Но у нас есть требование, что нам нужно расшифровать данные, зашифрованные собственным шифрованием. Я знаю, что это разрушит цель. Но мне нужно убедиться, что это невозможно. Спасибо.
- person Let me Ask   schedule 05.01.2011
comment
Я просмотрел одну из статей FAQ по шифрованию Windows Mobile (blogs.msdn.com/b/windowsmobile/archive/2007/03/26/). На вопрос «Где хранятся ключи шифрования?» он ответил, что ненадежное приложение не может получить к ним доступ. Что это значит? Как мы можем установить приложение как доверенное приложение? Можем ли мы получить ключ шифрования как доверенное приложение?
- person Let me Ask   schedule 06.01.2011
comment
Ваше приложение будет подписано доверенной третьей стороной: Дополнительные сведения: msdn. microsoft.com/en-us/library/ms839681.aspx
- person Felix Alcala   schedule 05.02.2011
Ответы (1)
Если единственная причина, по которой вам нужен ключ, — использовать его для расшифровки объекта, просто используйте Функция CryptDecrypt Windows Mobile Cryptography API.
-ПолХ
person
PaulH
schedule
12.01.2011
Но какой ключ я должен использовать для расшифровки?
- person Let me Ask; 13.01.2011
Вы можете перечислить сертификаты в хранилище с помощью
CertEnumCertificatesInStore
, чтобы получить структуру CERT_CONTEXT
, а затем использовать CryptImportKey
, чтобы получить ключ из этой структуры.
- person PaulH; 13.01.2011
Вы уверены, что я могу получить ключ шифрования, используемый собственным шифрованием в Windows Mobile?
- person Let me Ask; 17.01.2011
Нет, но если это важно для вас, возможно, вам стоит потратить 20 минут на то, чтобы написать тестовый код, чтобы попробовать это.
- person PaulH; 18.01.2011