Расшифровка экспортированных файлов и электронных писем, зашифрованных на стороне клиента.

Если ваша организация использует клиентское шифрование (CSE) в Google Workspace, вы можете использовать утилиту расшифровки для расшифровки файлов и электронных писем, зашифрованных на стороне клиента, которые вы экспортируете с помощью инструмента экспорта данных или Google Vault . Вы можете запустить расшифровку из командной строки.

При запуске дешифратора вы будете использовать флаги командной строки для указания информации об аутентификации поставщика идентификационных данных (IdP), местоположения зашифрованных файлов, места сохранения расшифрованных файлов и других параметров. Вы также можете создать файл конфигурации (config) для сохранения часто используемых флагов дешифратора.

Прежде чем начать

  • При расшифровке файлов Google Docs, Sheets или Slides имя файла заканчивается на .gdoczip или аналогичное расширение. После расшифровки вы можете преобразовать эти файлы в формат Microsoft Office с помощью инструмента конвертации файлов. Подробности см. в разделе «Преобразование экспортированных и расшифрованных файлов Google в файлы Microsoft Office» .
  • При экспорте сообщений Gmail CSE из Google Vault необходимо использовать формат MBOX. Дешифратор не может обрабатывать экспорт в формате PST.
  • Утилита расшифровки может расшифровывать любые сообщения, зашифрованные с помощью S/MIME-сертификатов. Она также может расшифровывать сообщения, зашифрованные без S/MIME-сертификатов (то есть сообщения, использующие сквозное шифрование Gmail (E2EE) ), если ваши пользователи зашифровали сообщения или исходное сообщение в цепочках сообщений.
  • Утилита дешифровки не может расшифровать сообщения (включая все сообщения в цепочке), зашифрованные без S/MIME-сертификатов (Gmail E2EE) в другой организации.

Системные требования

  • Microsoft Windows версии 10 или 11, 64-бит.
  • macOS 12 (Monterey) или более поздняя версия. Поддерживаются как процессоры Apple, так и Intel.
  • Linux x86_64.

Скачать дешифратор

Откройте архив или том и извлеките исполняемый файл дешифратора в локальный каталог или папку.

Настройка доступа к ключевой службе

Дешифратор отправляет запросы в вашу службу ключей шифрования, также называемую службой списков контроля доступа к ключам (KACLS), которая защищает каждый зашифрованный файл или сообщение в вашем экспорте. Запросите у администратора вашего поставщика идентификационных данных (IdP) и администратора вашей службы ключей шифрования учетные данные, которые KACLS примет; в противном случае KACLS отклонит попытки дешифратора расшифровать экспортированное содержимое.

Что вам нужно

Для настройки доступа KACLS убедитесь, что у вас есть:

  • Идентификатор клиента OAuth, который могут использовать установленные приложения . Идентификатор клиента для дешифратора должен быть идентификатором клиента, доступным для установленного настольного программного обеспечения и специфичным для утилиты дешифратора. Этот идентификатор клиента должен отличаться от идентификаторов клиентов, заданных в консоли администратора Google для веб-, настольных и мобильных приложений CSE.
  • Секретный ключ клиента OAuth, связанный с идентификатором клиента , если ваш поставщик идентификации (IdP) — Google. Если вы используете сторонний поставщик идентификации, секретный ключ клиента не требуется.
  • Адрес электронной почты учетной записи пользователя, которая проходит аутентификацию в KACLS для расшифровки экспортируемых данных. Это может быть ваша собственная учетная запись или специальная учетная запись, настроенная вашими администраторами. Вам необходимо войти в систему под этой учетной записью при запуске утилиты расшифровки, поэтому, вероятно, вам понадобится пароль от этой учетной записи.

Конечные точки KACLS

Конфигурация KACLS должна разрешать учетной записи пользователя и идентификатору клиента вызывать конечные точки, используемые для расшифровки при экспорте. Обычно это может настроить администратор KACLS. Конечная точка KACLS, вызываемая дешифратором, зависит от типа зашифрованного содержимого:

  • Календарь CSE: privilegedunwrap
  • Docs CSE, Sheets CSE, Slides CSE: privilegedunwrap
  • Drive CSE: privilegedunwrap
  • Gmail CSE (с сертификатами S/MIME): privilegedprivatekeydecrypt
  • Gmail CSE (без сертификатов S/MIME): privilegedunwrap

Настройка доступа Gmail по протоколу S/MIME (необязательно)

Если вы расшифровываете зашифрованные на стороне клиента сообщения Gmail, использующие S/MIME, из Google Vault, дешифратору необходимо обратиться к общедоступному API Gmail для загрузки дополнительных данных. Экспорт в Google Vault не включает сертификаты S/MIME каждого пользователя, поэтому дешифратор автоматически получает их по мере необходимости из Gmail.

Чтобы дешифратор мог запрашивать S/MIME-сертификаты для любого пользователя в вашей организации, необходимо передать дешифратору учетные данные сервисной учетной записи, действующие в масштабе всего домена. Подробную информацию о настройке этой сервисной учетной записи и создании JSON-файла, содержащего закрытые учетные данные для сервисной учетной записи, см. в разделе «Только для Gmail: Настройка S/MIME для шифрования на стороне клиента» .

Примечание: Данная настройка не требуется, если вы расшифровываете зашифрованные на стороне клиента сообщения с помощью инструмента экспорта данных или расшифровываете зашифрованные сообщения из хранилища, не имеющие сертификатов S/MIME.

Дешифратор не может получить S/MIME-сертификаты пользователя и, следовательно, не может расшифровать зашифрованные на стороне клиента сообщения, использующие S/MIME, если выполняется хотя бы одно из следующих условий:

  • Учетная запись пользователя была отключена или удалена.
  • Сертификаты S/MIME для учетной записи были удалены.
  • Доступ к API Gmail отключен.

Для обеспечения возможности расшифровки зашифрованных на стороне клиента сообщений с использованием S/MIME-сертификатов вы можете:

  • Немедленно расшифровывайте сообщения, экспортированные из Vault, пока сертификаты остаются доступными.
  • Используйте инструмент «Экспорт данных», чтобы экспортировать сообщения — экспорт включает сертификаты каждого пользователя.

Сначала создайте конфигурационный файл.

Дешифратор использует OAuth и ваш поставщик идентификации (IdP) для получения учетных данных аутентификации, которые он включает в каждый запрос KACLS privilegedunwrap и privilegedprivatekeydecrypt . Ваша конфигурация OAuth не будет часто меняться, поэтому вы можете создать файл конфигурации (config), содержащий ваши настройки OAuth, чтобы избежать необходимости устанавливать их каждый раз при запуске дешифратора. Подробную информацию о флагах файла конфигурации см. в разделах «Флаги создания конфигурации» и «Флаги обновления конфигурации» ниже.

Примечание: Хотя этот шаг настройки необязателен, его рекомендуется выполнить для упрощения использования утилиты дешифратора. Если вы не создаете файл конфигурации, вы можете вместо этого передавать флаги OAuth в командной строке при каждом запуске дешифратора. Если вы сделаете и то, и другое, значения флагов, переданные в командной строке, переопределят значения, считанные из файла конфигурации.

Пример: Создайте конфигурацию для поставщика идентификации Google.

В Windows

На macOS или Linux

Теперь вы можете обновить конфигурацию, чтобы добавить секретный ключ клиента OAuth в процесс предоставления кода авторизации.

В Windows

На macOS или Linux

Если ваш поставщик идентификации (IdP) не Google: не добавляйте секретный ключ клиента, который нужен только поставщику идентификации Google. Многие другие поставщики идентификации отклонят запросы на аутентификацию, если секретный ключ клиента присутствует.

Расшифруйте файлы CSE и электронную почту.

Утилита дешифратора работает с распакованными файлами экспорта.

  1. После создания экспорта в инструменте «Экспорт данных» или в Google Vault, загрузите ZIP-файлы на свой локальный компьютер.
  2. Распакуйте файлы в локальную директорию или папку.
  3. Запустите дешифратор для распакованных файлов и сохраните расшифрованные файлы в другой каталог.

Пример: Использование подготовленного конфигурационного файла без учетных данных сервисной учетной записи.

В Windows

На macOS или Linux

Пример: Использование подготовленного конфигурационного файла с учетными данными сервисной учетной записи.

В Windows

На macOS или Linux

Пример: Использование ни файла конфигурации, ни учетных данных сервисной учетной записи.

В Windows

На macOS или Linux

Флаги дешифратора

Флаг дешифратора может содержать один или два дефиса в начале — например, флаг для отображения справочной информации может быть одним из следующих:

-help

--help

Примечание: для обозначения флагов можно использовать только дефисы, а не косые черты (/).

В качестве аргументов для строковых значений могут использоваться либо знак равенства, либо пробел — например, следующие флаги эквивалентны:

-action=decrypt

-action decrypt

Флаги справки

Флаг Описание
-version Выводит строку версии. При обращении в службу поддержки обязательно укажите версию используемого вами дешифратора.
-help Выводит на экран список всех флагов для справки.
-logfile Указывает выходной файл, куда будут записываться журналы выполнения. Текст [TIMESTAMP] в имени файла будет заменен временем начала выполнения.

Флаги дешифрования

Флаг Описание
-action decrypt Необязательный параметр. Указывает, что утилита работает в режиме расшифровки файлов CSE. Это режим по умолчанию.
-email <email_address> Необязательно. Адрес электронной почты, который может быть предварительно заполнен на экране аутентификации поставщика идентификации (IdP), открывающемся в браузере.
-issuer <uri> Обязательно, если только оно не указано в файле конфигурации. URI обнаружения эмитента OAuth для поставщика идентификации, например, https://accounts.google.com. Для получения подробной информации перейдите к разделу «Подключение к поставщику идентификации для шифрования на стороне клиента» .
-client_id <oauth_client_id> Обязательно, если только оно не указано в файле конфигурации. Идентификатор клиента OAuth от поставщика идентификации, указанный в флаге -issuer . Для получения подробной информации см. раздел «Подключение к поставщику идентификации для шифрования на стороне клиента» .
-client_secret <oauth_client_secret> Необязательно, хотя некоторые поставщики идентификации могут требовать его наличия. Часть секрета клиента OAuth, соответствующая идентификатору клиента, указанному в флаге -client_id .
-pkce
-nopkce
Включить или отключить PKCE (Proof Key for Code Exchange) в процессе предоставления кода авторизации. Если ни один из флагов не указан, дешифратор по умолчанию включен.
-input <directory_or_file>

Обязательно. Входной каталог или файл экспорта.

Если вы укажете каталог, дешифратор рекурсивно пройдет по всему дереву каталогов, чтобы найти все экспортированные файлы CSE. Используйте эту опцию для массовой расшифровки всех экспортированных файлов из расширенного архива экспорта.

Если вы укажете один экспортированный CSE-файл, дешифратор расшифрует только этот файл. Если это не CSE-файл, дешифратор запросит аутентификацию у поставщика идентификации, но не будет расшифровывать никакие файлы.

-output <directory> Обязательный параметр. Каталог, куда будут сохранены расшифрованные файлы.
-overwrite
-nooverwrite
Включает или отключает перезапись существующих расшифрованных выходных файлов в открытом виде. Если отключено (по умолчанию), дешифратор пропустит расшифровку файлов в зашифрованном виде, если файл в открытом виде уже существует.
-workers <integer>

Необязательный параметр. Количество параллельных процессов расшифровки. Если этот флаг не используется, программа расшифровки по умолчанию будет использовать количество ядер процессора и гиперпотоков, сообщаемое операционной системой.

Если у вашего компьютера наблюдаются проблемы с производительностью или при расшифровке файлов возникает ошибка многопроцессорной обработки, вы можете установить этот флаг в значение 1, чтобы отключить параллельную обработку.

-config <file>

Необязательно. Файл конфигурации, содержащий сохраненные значения флагов. Используйте файл конфигурации, чтобы избежать повторного ввода одних и тех же флагов командной строки при расшифровке файлов. Для получения дополнительной информации см. разделы «Флаги создания конфигурации» и «Флаги обновления конфигурации» ниже.

Значения флагов, заданные в командной строке, имеют приоритет над значениями в конфигурационном файле.

Примечание: Если вы укажете файл в конфигурации, и он не будет найден, возникнет ошибка.

-credential <file> Необязательно. Укажите JSON-файл, содержащий закрытый ключ учетной записи службы, действующий в масштабе всего домена. Если указано, расшифровка сообщений Gmail CSE будет запрашивать у API Gmail сертификаты S/MIME каждого пользователя и метаданные службы списков контроля доступа к ключам (KACLS).

Флаги создания конфигурации

Используйте эти флаги для сохранения часто используемых флагов командной строки расшифровки в конфигурационный файл для повторного использования. Конфигурационный файл имеет формат JSON, содержащий удобочитаемый текст.

Флаг Описание
-action createconfig Обязательный параметр. Переопределяет режим выполнения по умолчанию и запускает режим создания файла конфигурации.
-config file Обязательно. Укажите имя выходного файла, куда вы хотите сохранить конфигурацию. Если файл уже существует, он будет перезаписан без предупреждения.
-email <email_address>
-discovery_uri <uri>
-client_id <oauth_client_id>
-client_secret <oauth_client_secret>
-pkce
-nopkce
Необязательно. Все указанные значения флагов будут сохранены в файле конфигурации для повторного использования.

Флаги обновления конфигурации

Используйте эти флаги для обновления значений любых флагов в конфигурационном файле.

Флаг Описание
-action updateconfig Обязательный параметр. Переопределяет режим выполнения по умолчанию и запускает режим обновления файла конфигурации.
-config file Обязательно. Файл конфигурации, который вы хотите обновить. Если файл не существует, возникнет ошибка.
-email <email_address>
-discovery_uri <uri>
-client_id <oauth_client_id>
-client_secret <oauth_client_secret>
-pkce
-nopkce

Все параметры необязательны. Значения флагов, указанные в командной строке, перезаписываются; любые другие значения флагов в конфигурации сохраняются. Чтобы отменить установку сохраненного флага, укажите пустое значение.

Примечание: Если внесение изменений повреждает формат JSON, при использовании конфигурации в дешифраторе, скорее всего, возникнет ошибка.

Информационные флаги

Используйте эти флаги для вывода читаемой информации о файлах CSE.

Флаг Описание
-action info (Обязательно) Переопределяет режим выполнения по умолчанию для запуска в информационном режиме.
-input directory_or_file

(Обязательно) Указывает входной каталог или файл экспорта.

Если вы укажете каталог, утилита рекурсивно просканирует все дерево каталогов в поисках всех файлов экспорта CSE. Если вы укажете файл, утилита предоставит информацию только об этом файле.

Этот флаг можно повторять, чтобы указать дополнительные входные каталоги или файлы. Пример:

$ decrypter -action=info -input=file1.gcse -input=file2.gcse -input=file3.gcse