Инструмент затемнения ForceStringHiding

Через несколько часов наконец-то выяснилось, почему мое приложение вылетает после обфускации с помощью Obfuscar. Это StringHiding в MyClass. Итак, настройки для модуля сейчас

    <SkipStringHiding type="Myspacename.MyClass" name="*" />  

Теперь мне нужно скрыть только некоторые строки внутри MyClass. Например

private const string TrialLicenseKey = "AEAF3-N4C7K-BWDTV-3CLZB-XXXXX";

Я пробовал несколько комбинаций настроек, но строки все еще видны в Reflector.


person Mike    schedule 06.11.2015    source источник
comment
Пробный ключ не должен быть секретом. Между тем обфускация строк обратима по определению, и вы должны это знать.   -  person Lex Li    schedule 07.11.2015
comment
Я знаю технологию открытых / закрытых ключей, например, пробный ключ. Как заставить некоторую строковую обфускацию?   -  person Mike    schedule 07.11.2015


Ответы (2)


Поддерживается ли ForceStringHiding? Что за параметр имени? Содержимое строки, имя переменной и т. Д.?

<ForceStringHiding type="Myspacename.MyClass" name="???" />
person Mike    schedule 07.11.2015
comment
Найдены vars init в конструкторе static Debugging () {A = new object (); c = AEAF3-N4C7K-BWDTV-3CLZB-XXXX; __public = AOMR0rFgbQxySAHrBpU3N8RF1i3rXkgSC79aXEgE =; } - person Mike; 07.11.2015
comment
Компилятор C # извлекает константу, поэтому Obfuscar не может ее обработать. Вы можете переключиться в статический режим только для чтения и попробовать еще раз. - person Lex Li; 07.11.2015

Не могу понять, почему я вижу не запутанные частные статические строки в Reflector

static Debugging() 
{
A = new object();
__public = "AOMRDQELD+0rFgbQxySAHrBpU3N8RF1i3rXkgSC79aXEgE=";
D = "ActivationHardwareId";
d = "LicenseKey";
E = "ActivationKey";
... 
}

настройки для Obfuscar

  <Var name="KeepPublicApi" value="true" />
  <Var name="HidePrivateApi" value="true" />
  <Var namr="HideStrings" value="true" />

person Mike    schedule 07.11.2015