Chrome extension

вопросы связанные с работой версии с Chromium
Ответить
Аватара пользователя
huligun
Сообщения: 89
Зарегистрирован: 01 окт 2010, 19:13

Chrome extension

Сообщение huligun » 29 окт 2018, 11:26

Здравствуйте,
Существует ли возможность подключать разрешения хром?
Я нашел папку CEF Extensions, положил туда папку с расширением хрома, но хуман открылся с ошибкой.
Что нужно модифицировать ?

Аватара пользователя
huligun
Сообщения: 89
Зарегистрирован: 01 окт 2010, 19:13

Re: Chrome extension

Сообщение huligun » 29 окт 2018, 14:09

Да хуман валится вот с такой ошибкой

Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: CefSharp.BrowserSubprocess.exe
Версия приложения: 69.0.0.0
Отметка времени приложения: 5bca33a0
Имя модуля с ошибкой: libcef.dll
Версия модуля с ошибкой: 3.3497.1840.0
Отметка времени модуля с ошибкой: 5bbefba1
Код исключения: c0000005
Смещение исключения: 0000000001f5de9a
Версия ОС: 6.1.7601.2.1.0.256.48
Код языка: 1049
Дополнительные сведения 1: 41c0
Дополнительные сведения 2: 41c0d7970d85225fa816518ab3422494
Дополнительные сведения 3: 4e8a
Дополнительные сведения 4: 4e8af5bee5d6158bd36a922d1b08b279

Аватара пользователя
huligun
Сообщения: 89
Зарегистрирован: 01 окт 2010, 19:13

Re: Chrome extension

Сообщение huligun » 29 окт 2018, 14:58

JS код плагина который добавляет шум Canvas

Код: Выделить всё

'use strict';

var script = document.createElement('script');
script.textContent = `
{
  const toBlob = HTMLCanvasElement.prototype.toBlob;
  const toDataURL = HTMLCanvasElement.prototype.toDataURL;

  HTMLCanvasElement.prototype.htGfd = function() {
    const {width, height} = this;
    const context = this.getContext('2d');
    const shift = {
      'r': Math.floor(Math.random() * 10) - 5,
      'g': Math.floor(Math.random() * 10) - 5,
      'b': Math.floor(Math.random() * 10) - 5
    };
    const matt = context.getImageData(0, 0, width, height);
    for (let i = 0; i < height; i += 3) {
      for (let j = 0; j < width; j += 3) {
        const n = ((i * (width * 4)) + (j * 4));
        matt.data[n + 0] = matt.data[n + 0] + shift.r;
        matt.data[n + 1] = matt.data[n + 1] + shift.g;
        matt.data[n + 2] = matt.data[n + 2] + shift.b;
      }
    }
    context.putImageData(matt, 0, 0);
    this.htGfd = () => {
      window.top.postMessage('htGfd-called', '*');
    };
    window.top.postMessage('htGfd-called', '*');
  };

  Object.defineProperty(HTMLCanvasElement.prototype, 'toBlob', {
    value: function() {
      if (document.documentElement.dataset.htgfd !== 'false') {
        this.htGfd();
      }
      return toBlob.apply(this, arguments);
    }
  });
  Object.defineProperty(HTMLCanvasElement.prototype, 'toDataURL', {
    value: function() {
      if (document.documentElement.dataset.htgfd !== 'false') {
        this.htGfd();
      }
      return toDataURL.apply(this, arguments);
    }
  });
  document.documentElement.dataset.htGfd = true;
}`;
document.documentElement.appendChild(script);
// make sure the script is injected
if (document.documentElement.dataset.htGfd !== 'true') {
  document.documentElement.dataset.htGfd = true;
  window.top.document.documentElement.appendChild(Object.assign(document.createElement('script'), {
    textContent: `
      [...document.querySelectorAll('iframe[sandbox]')]
        .filter(i => i.contentDocument.documentElement.dataset.htGfd === 'true')
        .forEach(i => {
          i.contentWindow.HTMLCanvasElement.prototype.toBlob = HTMLCanvasElement.prototype.toBlob;
          i.contentWindow.HTMLCanvasElement.prototype.toDataURL = HTMLCanvasElement.prototype.toDataURL;
          i.contentWindow.HTMLCanvasElement.prototype.htGfd = HTMLCanvasElement.prototype.htGfd;
        });
    `
  }));
}
delete document.documentElement.dataset.htGfd;

window.addEventListener('message', ({data}) => {
  if (data && data === 'htGfd-called') {
    chrome.runtime.sendMessage({
      method: 'possible-fingerprint'
    });
  }
}, false);

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 2807
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Chrome extension

Сообщение bigfozzy » 29 окт 2018, 22:10

в папке "\Plugins\CEF Extensions" - можно создавать расширения JS , но ненативные от хрома

Аватара пользователя
huligun
Сообщения: 89
Зарегистрирован: 01 окт 2010, 19:13

Re: Chrome extension

Сообщение huligun » 29 окт 2018, 22:40

т.е. CEF Extensions по сути run_java_script из файла ?
Хорошо, а какие тогда варианты подключения этого кода?
Почему не сделать поддержку разрешений chrome?

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 2807
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Chrome extension

Сообщение bigfozzy » 30 окт 2018, 10:16

CEF не поддерживает на данный момент плагины хрома, но есть варианты.
Работаем над этим.

Аватара пользователя
huligun
Сообщения: 89
Зарегистрирован: 01 окт 2010, 19:13

Re: Chrome extension

Сообщение huligun » 30 окт 2018, 14:32

Да было бы очень хорошо, функционал расширите значительно.
Без больших трудозатрат :)

PocketDevil
Сообщения: 37
Зарегистрирован: 08 апр 2009, 20:32

Re: Chrome extension

Сообщение PocketDevil » 20 авг 2021, 18:57

bigfozzy писал(а):
30 окт 2018, 10:16
CEF не поддерживает на данный момент плагины хрома, но есть варианты.
Работаем над этим.
Удалось что-то сделать в этом направлении? А то сейчас нужен MetaMask в браузере. А подключить не понятно как.

Аватара пользователя
Support
Site Admin
Сообщения: 982
Зарегистрирован: 10 апр 2009, 17:45
Контактная информация:

Re: Chrome extension

Сообщение Support » 21 авг 2021, 00:50

PocketDevil писал(а):
20 авг 2021, 18:57
bigfozzy писал(а):
30 окт 2018, 10:16
CEF не поддерживает на данный момент плагины хрома, но есть варианты.
Работаем над этим.
Удалось что-то сделать в этом направлении? А то сейчас нужен MetaMask в браузере. А подключить не понятно как.
Пока по прежнему плагины хрома нельзя подключать к программе, есть вариант с подключением расширений описанный в блоге, но не все плагины можно подключить подобным образом.

PocketDevil
Сообщения: 37
Зарегистрирован: 08 апр 2009, 20:32

Re: Chrome extension

Сообщение PocketDevil » 21 авг 2021, 13:18

Да, этот способ пробовал, не помогло.
Очень жаль, что пока не получилось. =(

Ответить