Есть ли причина, почему вы должны использовать OpenSSH (в частности, ключевые файлы) для GPG сообщений? Если вы можете получить с помощью только ключи PGP, то проблема решена.
Итак, вот моя проблема ...
Я пытаюсь узнать, и я очень хорошо при чтении компьютерных программ. Я не могу найти хороший источник материалов для чтения или потенциального учителя, поэтому я полагал, что я должен был бы кто-то напишет мне программу в качестве отправной точки, и как только я получил те основы, на мой взгляд, я бы гораздо легче выяснить, что спросить, что искать, и как получить ответы на точку, что я думал, что мне нужно было сделать с кем-то, но я начинаю думать, что я был неправ в первую очередь.
Я думаю, что у меня есть около 3 основных проблем, с которыми я пытаюсь справиться, но я не мог понять, где задавать вопросы, чтобы получить правильные ответы и поиска с помощью Google не помогает, так как я даже не знаю достаточно, чтобы иметь возможность задавать правильные вопросы. Я также сделал некоторые предположения, которые могут оказаться ложными.
Я выложу, что я борюсь с здесь, так как разговор, кажется, начал (несмотря на то, Куплю / услуги, вероятно, не "подходящее" Palce для такого разговора).
Я работаю над проектом.
Мне сказали, что я должен получить файлы, содержащие несколько мегабайт размера, которые были зашифрованы. Я буду иметь какое-то RSA закрытого ключа, который я могу использовать для расшифровки. Отправители будут все получили открытый ключ RSA, который они используют для шифрования из группы раньше времени. Отправители также имеют какое-то RSA закрытого ключа, который они будут использовать для подписи какого-то, чтобы доказать, что они являются отправитель зашифрованные данные. Они обеспечат мне с соответствующим открытым ключом RSA из группы раньше времени. Имя файла будет указано, кто является отправителем, так что я буду знать, какой открытый ключ, используемый для проверки подписи.
После получения файла мне нужно сначала проверить подпись и, если подпись недействительна я могу войти этот факт и бросить файл в корзине. Если подпись действительна, я должен расшифровать файл.
Это все звучит красиво и просто до сих пор ....
Вот где он начинает получать немного сложнее. Некоторые отправители хотят использовать командную строку OpenSSL для шифрования и подписи файлов. Некоторые отправители хотят использовать GPGtools командной строки для шифрования и подписи файлов. Некоторые отправители хотят использовать какие-Java библиотеки (BouncyCastle?) Для шифрования и подписи файлов. Некоторые отправители хотят использовать какой-то пакет узла для шифрования и подписи файлов. Я получаю указать симметричный шифр, используемый для шифрования данных.
Подписанные, зашифрованные файлы будут понижены в Amazon Web Services (AWS) S3 (простой сервис хранения) ведро. В расшифрованные файлы должны быть сохранены в другом AWS S3 ведро. Можно использовать какую-либо услугу AWS мне нравится обрабатывать проверки и дешифрование, но, если это абсолютно необходимо, что не является предпочтительным, чтобы не нужно иметь постоянный экземпляр Elastic Compute облако (EC2). В настоящее время предложения должны иметь S3 триггер Lambda с Node.js кода для обработки проверки подписи и расшифровки. Также предпочтительно, чтобы подпись, ключ сеанса, и зашифрованные данные не могут быть три отдельных файла. Таким образом, все они должны быть переданы вместе в одном файле.
Данные, которые высадили на S3 может также (вместо этого) быть прижаты к веб-API с использованием протокола HTTPS POST. Веб-API будет получать поток данных (который будет содержать сиговый, зашифрованный ключ сеанса, и зашифрованные данные) и записать поток в S3 (который затем приведут нас прямо туда, где мы были, когда отправитель просто выгружает там сам ,
Мне не нужно все это написано для меня. Я могу справиться большинство из них. Однако, насколько я знаю, GPGTools не доступен в Lambda. Я еще не уверен, является ли или нет OpenSSL есть. Так что, если я буду использовать Node.js в Lambda для проверки и расшифровки, а если отправитель потенциально собирается использовать GPGTools для создания файла, то мне нужно помочь понять, что это то, что поток данных может выглядеть и как я должен разобрать его.
Если я нажимаю назад и сказать, что если я собираюсь сделать это, то отправители все должны быть вынуждены использовать командную строку OpenSSL, то есть стандартный способ упаковки сиговых, зашифрованный ключ сеанса, и зашифрованные данные вместе? Кто-то я работаю с толкает нас просто объявить свой собственный путь хранения этого материала вместе (base64 кодирования каждого из 3-х частей, а затем объединить их вместе в определенном порядке с периодом в качестве разделителя (sig.payload.session_key ). Я "Чувствовать" как там "должно быть" стандартный способ упаковки эти три части данных вместе, и я не хочу, чтобы нас заново изобретать колесо. Я указал на парня, я работаю с этим GPGTools уже упаковывает их все вместе, но ни он, ни я не могу найти способ сделать это с командой OpenSSL линии. Он говорит, что если я смогу показать ему программу узла, который может проверять и расшифровывать файл GPGTools (без необходимости GPG установлен), то он будет считать, что, возможно, мы не должны быть "качению наши собственные" способ упаковки эти данные вместе.
В случае, если это не ясно из того беспорядка слов, 3 проблемы, которые я "думать" Я есть:
- Как я могу проверить и расшифровать файл с Node.js в Lambda, который был создан с командной строкой GPGTools?
- Есть стандартный способ, что сиг, зашифрованные данные и зашифрованный ключ сеанса должен быть упакованы вместе, когда создаются с командной строкой OpenSSL
- Мне нужно иметь совершенно разные пары ключей RSA для каждого из методов, что отправители могут использовать (пары ключей OpenSSL RSA, и пара ключей GPGTools RSA), и есть потенциал, что могут быть дополнительные пары ключей RSA, что я мог бы сделать нужно за эти два?
Я думаю, что программа, которая была моей "Y" в XY Проблема была в основном предназначена для ответа на первые два вопроса. Было бы показать мне, как расшифровать GPGTools зашифрованные файлы без GPG быть установлен, и я думал, что это будет показано, как GPGTools был пакаджа файл (хотя теперь я не уверен).