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

If your organization uses Google Workspace Client-side encryption (CSE), you can use the decrypter utility to decrypt client-side encrypted files and email messages that you export using the Data Export tool or Google Vault . You can run the decrypter from a command line.

When you run the decrypter, you'll use command-line flags to specify your identity provider (IdP) authentication information, the location of encrypted files, the output location for decrypted files, and other options. You can also create a configuration (config) file to save decrypter flags you frequently use.

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

  • When you decrypt a Google Docs, Sheets, or Slides file, the file name ends with .gdoczip or similar. After decryption, you can convert these files to Microsoft Office format using the file converter tool. For details, go to Convert exported and decrypted Google files to Microsoft Office files .
  • При экспорте сообщений Gmail CSE из Google Vault необходимо использовать формат MBOX. Дешифратор не может обрабатывать экспорт в формате PST.
  • The decrypter utility can decrypt any messages encrypted with S/MIME certificates. It can also decrypt messages encrypted without S/MIME certificates (that is, messages using Gmail end-to-end encryption (E2EE) ), if your users encrypted the messages or the original message in threads.
  • Утилита дешифровки не может расшифровать сообщения (включая все сообщения в цепочке), зашифрованные без S/MIME-сертификатов (Gmail E2EE) в другой организации.

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

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

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

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

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

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

Что вам нужно

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

  • An OAuth client ID that installed applications can use . The client ID for the decrypter must be a client ID usable by installed desktop software and specific to the decrypter utility. This client ID must be a different client ID from the client IDs set in the Google Admin console for the CSE web, desktop, and mobile applications.
  • Секретный ключ клиента OAuth, связанный с идентификатором клиента , если ваш поставщик идентификации (IdP) — Google. Если вы используете сторонний поставщик идентификации, секретный ключ клиента не требуется.
  • The email address for the user account that authenticates to the KACLS for export decryption. This can be your own account, or it can be a special account that your administrators have configured. You need to log in as this user when running the decrypter utility, so it's likely you'll need the account's password.

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

The KACLS configuration must allow the user account and client ID to call endpoints used for export decryption. Your KACLS administrator can usually set this up for you. The KACLS endpoint that's called by the decrypter depends on the type of encrypted content:

  • Календарь 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 (необязательно)

If you're decrypting client-side encrypted Gmail messages that use S/MIME from Google Vault, the decrypter needs to call Gmail's public API to download additional data. Google Vault exports don't include each user's S/MIME certificates, so the decrypter automatically fetches them as needed from Gmail.

To allow the decrypter to request the S/MIME certificates for any user in your organization, you need to pass a domain-wide service account credential to the decrypter. For details on setting up this service account and creating a JSON file containing the private credential for the service account, go to Gmail only: Configure S/MIME for client-side encryption .

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

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

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

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

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

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

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

Note: Although this setup step is optional, it's recommended to simplify use of the decrypter utility. If you don't create a config file, you can instead pass the OAuth flags on the command line to every execution of the decrypter. If you do both, the flag values passed on the command line override values read from the configuration file.

Пример: Создайте конфигурацию для поставщика идентификации 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> Required unless it's in the config file. The OAuth issuer discovery URI for the IdP, such as https://accounts.google.com. For details, go to Connect to identity provider for client-side encryption .
-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>

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

If you specify a directory, the decrypter will recursively traverse the entire directory tree to find all exported CSE files. Use this option to bulk decrypt all exported files from an expanded export archive.

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

-output <directory> Обязательный параметр. Каталог, куда будут сохранены расшифрованные файлы.
-overwrite
-nooverwrite
Enables or disables overwriting of existing decrypted cleartext output files. If disabled (the default), the decrypter will skip decryption of ciphertext files if the cleartext file already exists.
-workers <integer>

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

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

-config <file>

Optional. A configuration file containing stored flag values. Use a config file to avoid pasting the same command-line flags whenever you decrypt files. For more information, go to Config creation flags and Config update flags below.

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

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

-credential <file> Optional. Specify a JSON file containing a domain-wide service account private key. When specified, decryption of Gmail CSE messages will query the Gmail API for each user's S/MIME certificates and key access control list service (KACLS) metadata.

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

Используйте эти флаги для сохранения часто используемых флагов командной строки расшифровки в конфигурационный файл для повторного использования. Конфигурационный файл имеет формат 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