Я получаю несколько зашифрованных PGP файлов в день, импортируемых в мое хранилище BLOB-объектов. Мне нужно иметь возможность расшифровать их в другом месте в том же контейнере BLOB-объектов.
Я уже знаю, что мне нужно создать пользовательское пакетное действие, чтобы сделать это в ADF, я просто не могу понять, как получить большие двоичные объекты в OpenPgp
В этом примере кода с bitscry.com предлагается использовать потоки для примера:
using (FileStream inputFileStream = new FileStream(@"C:\TEMP\keys\content__encrypted2.pgp", FileMode.Open))
using (Stream outputFileStream = File.Create(@"C:\TEMP\keys\content__decrypted2.txt"))
using (Stream privateKeyStream = new FileStream(@"C:\TEMP\keys\private.asc", FileMode.Open))
pgp.DecryptStream(inputFileStream, outputFileStream, privateKeyStream, "password");
Я пробовал открывать капли в виде потоков, но они не работают.
Это код, который пытается использовать BLOB-объекты в качестве потоков:
Stream sourceStream = keyBlockBlob.OpenRead();
Stream keyStream = sourceCloudBlockBlob.OpenRead();
Stream targetStream = targetCloudBlockBlob.OpenWrite();
pgp.DecryptStream(sourceStream, targetStream, keyStream, "password");