Как просмотреть исходный код расширений Google Chrome?
Я заинтересован в некоторых расширениях Google Chrome, а именно в Minimalist для Gmail и Minimalist для Google Reader, но я хотел бы просмотреть их исходные тексты до их установки.
- Возможен ли просмотр исходного кода плагина?
- Кто-то знает, что именно они получают доступ? Или это больше про форма?
Мне не нравится, что они каким-то образом могут получить доступ к моим закладкам, истории просмотров и данным Google, как написано в правой панели.
4 ответа
Возможен ли просмотр исходного кода плагина?
Да.
И Minimalist для Gmail, и Minimalist для Google Reader являются проектами с открытым исходным кодом с лицензиями GPLv3. Вы можете просматривать их деревья исходного кода, загружать полные репозитории исходного кода и многое другое на соответствующих домашних страницах Google Code:
Кто-то знает, что именно они получают доступ? Или это больше про форма?
Немного насмешливый: да, разработчики знают, что они получают доступ. Что на самом деле сказать, вы должны спросить их на их форумах. Или прочитайте исходный код. Я уверен, что они с удовольствием обсудят с вами свои процедуры доступа к данным. Программное обеспечение с открытым исходным кодом также имеет много открытых обсуждений на форуме, и это хорошая вещь (тм).
Как и в комментариях, оригинальный ответ совершенно неверный. Короче говоря, да, просмотреть исходный код расширений Google Chrome очень просто, это всего лишь ZIP-файл с другим расширением.
Вы не можете видеть исходный код плагинов, кроме плагинов с открытым исходным кодом. Это конфиденциальная информация.
Знать точно, к чему они получают доступ: это сложно. Вы можете начать с инструментов sysinternals для Windows или, например, strace
для Linux. Однако это не очень простая задача, так как существует огромное количество системных вызовов.
Другой вариант - загрузить файл CRX (щелкните правой кнопкой мыши кнопку "Установить" и выберите "Сохранить как"), а затем откройте его в ZIP-совместимом архиваторе, таком как 7-Zip.
Расширение должно иметь файл манифеста, который по сути является просто текстовым файлом JavaScript. Сам код расширения также является файлом JavaScript, который вы можете просмотреть.
Некоторые расширения не выполняют никакой работы локально и просто передают работу на внешний сервер, что, конечно, означает, что вы не можете видеть код или что там происходит с вашими данными. Однако для более простых расширений вы можете увидеть код и проверить его самостоятельно перед установкой (при условии, конечно, приличного знания JavaScript).
Есть два способа просмотреть исходный код расширения Chrome:
Способ 1) Без установки расширения:
Вам необходимо скачать расширение. Для этого перейдите на страницу загрузки расширения и запишите идентификатор расширения, который является последней частью URL-адреса (после последней косой черты). Это будет что-то вроде: bmihblnpomgpjkfddepdpdafhhepdbek. Вы можете загрузить расширение по этому URL-адресу (заменив <EXTENSION_ID> фактическим идентификатором):
https://clients2.google.com/service/update2/crx?response=redirect&os=win&arch=x64&os_arch=x86_64&nacl_arch=x86-64&prod=chromiumcrx&prodchannel=beta&prodversion=79.0.3945.53&lang=ru&acceptformat=crx3&x=id%3D<EXTENSION_ID>%26installsource%3Dondemand%26uc
Для приведенного выше идентификатора (bmihblnpomgpjkfddepdpdafhhepdbek) это будет:
https://clients2.google.com/service/update2/crx?response=redirect&os=win&arch=x64&os_arch=x86_64&nacl_arch=x86-64&prod=chromiumcrx&prodchannel=beta&prodversion=79.0.3945.53&lang=ru&acceptformat=crx3&x=id%3Dbmihblnpomgpjkfddepdpdafhhepdbek%26installsource%3Dondemand%26uc
Будет загружен соответствующий файл .crx. После загрузки файла .crx вы можете легко получить код, распаковав файлы, упакованные в него, с помощью 7-Zip.
Способ 2 ) После установки расширения:
После установки гораздо проще. Расширение установлено по адресу:
Окна:C:\Users\<user_name>\AppData\Local\Google\Chrome\User Data\Default\Extensions\
Linux: ~/.config/google-chrome/Default/Extensions/
Есть папки с идентификаторами, например bmihblnpomgpjkfddepdpdafhhepdbek. Внутри папки ID вы найдете исходный код.