#c# #encryption #3des #tpm
Вопрос:
Я пытаюсь использовать TPM 2.0 в C# с Microsoft.Библиотека TSS для шифрования/дешифрования данных.
Доступ к TPM и получение некоторых случайных данных уже работает, но это была простая задача.
Вот код:
using Tpm2Lib;
...
//
// Create the device according to the selected connection.
//
Tpm2Device tpmDevice = new TbsDevice();
//
// Connect to the TPM device. This function actually establishes the
// connection.
//
tpmDevice.Connect();
//
// Pass the device object used for communication to the TPM 2.0 object
// which provides the command interface.
//
var tpm = new Tpm2(tpmDevice);
byte[] b = tpm.GetRandom(16);
textBox1.Text = BitConverter.ToString(b);
//
// Clean up.
//
tpm.Dispose();
Я новичок в мире TPM и хочу добиться следующего:
- Сохраните закрытый ключ 3DES один раз в TPM (чтобы его нельзя было прочитать).
- Шифрование/дешифрование данных с помощью TPM
Мой первый вопрос: возможно ли это технически с помощью TPM?
После изучения различных статей от MS и других, я думаю, что это немного сложно, и различные образцы на github… не пролили на это свет.
Любая помощь будет признательна.
Комментарии:
1. Есть ли у вас какие-либо причины использовать устаревший алгоритм шифрования?
2. Я думаю, что вы пытаетесь использовать TPM не по прямому назначению
3. @JonasH Нет никаких причин, также был бы полезен пример AES.
4. @SergShevchenko Вы имеете в виду, что я не могу использовать TPM для прямого дешифрования/шифрования?
5. Я думал, вы хотите установить и сохранить закрытый ключ для TMP, я не думаю, что это возможно