Расшифруйте файл, используя код Python, загруженный с s3.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Расшифруйте файл, используя код Python, загруженный с s3.

Сообщение Гость »


Я загружаю файл с использованием шифрования AWS. Клиент выглядит так:

public static AmazonS3 createEncryptedS3Client( Конфигурация шифрования, AWSCredentialsProvider awsCredentialsProvider, CloudStorageConfig CloudStorageConfig) { если (encryptionConfig.encryptionType().equals(EncryptionType.NONE)) { выдать новое IllegalArgumentException( «Тип шифрования NONE недопустим для создания зашифрованного клиента.»); } SecretKeySpec secretKey = новый SecretKeySpec(Base64.getDecoder().decode(encryptionConfig.encryptionKey()), "AES"); вернуть AmazonS3EncryptionClientBuilder.standard() .withCredentials(awsCredentialsProvider) .withCryptoConfiguration(новая CryptoConfiguration(CryptoMode.EncryptionOnly)) .withEncryptionMaterials( новый StaticEncryptionMaterialsProvider (новый EncryptionMaterials (secretKey))) .withRegion(Regions.fromName(cloudStorageConfig.getBucketRegion())) .строить();} Как только это будет загружено, я буду скачивать из пользовательского интерфейса s3. Теперь, используя Python, я хочу его расшифровать:

def decrypt_file(входной_путь, выходной_путь, закодированный_ключ): # Декодируем ключ AES из Base64 aes_key = base64.urlsafe_b64decode(encoded_key) # Здесь укажите режим шифрования, например, CBC # ВАЖНО: вам нужен IV, используемый для шифрования; без него расшифровка невозможна # Предполагая, что IV — это первые 16 байт файла с open(input_path, 'rb') как зашифрованным_файлом: iv = Encrypted_file.read(16) # Считайте IV из файла зашифрованные_данные = зашифрованный_файл.read() # Прочитать остальную часть зашифрованных данных # Инициализируем шифр для расшифровки шифр = Шифр(алгоритмы.AES(aes_key), режимы.CBC(iv), backend=default_backend()) расшифровщик = шифр.декриптор() #Расшифруем данные decrypted_data = decryptor.update(encrypted_data) + decryptor.finalize() # Записываем расшифрованные данные в выходной файл с open(output_path, 'wb') как decrypted_file: decrypted_file.write(расшифрованные_данные) print(f"Расшифрованные данные записаны в '{output_path}'.") Но загруженный файл не того формата, т. е. я не могу его открыть. Причина этого, по мнению IV, мне неизвестна.

Как расшифровать файл, загруженный через клиент Java AWS?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Расшифруйте файл, используя код Python, загруженный с s3.
    Гость » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Гость
  • Расшифруйте зашифрованный PDF-файл для загрузки в FPDI
    Anonymous » » в форуме Php
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Расшифруйте RC4 с помощью Python, зная ключ
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Расшифруйте RC4 с помощью Python, зная ключ
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Расшифруйте текст в React Native и отобразите на iOS Native
    Anonymous » » в форуме IOS
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»