Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 15:01
    runfoapp[bot] edited #64807
  • 15:01
    runfoapp[bot] edited #64721
  • 15:01
    runfoapp[bot] edited #64672
  • 15:01
    runfoapp[bot] edited #64672
  • 15:00
    runfoapp[bot] edited #61367
  • 15:00
    runfoapp[bot] edited #61367
  • 14:45
    sharwell commented #65614
  • 14:43
    sharwell commented #65614
  • 14:39
    sharwell commented #63013
  • 14:38
    sharwell milestoned #63013
  • 14:38
    sharwell demilestoned #63013
  • 14:14
    Youssef1313 edited #65450
  • 14:13
    Youssef1313 edited #65450
  • 14:12
    Youssef1313 commented #65450
  • 14:11
    Youssef1313 synchronize #65450
  • 14:05
    dotnet-issue-labeler[bot] labeled #65632
  • 14:05
    dotnet-issue-labeler[bot] labeled #65632
  • 14:04
    vsfeedback opened #65632
  • 13:36
    dotnet-maestro[bot] edited #65141
  • 13:33
    dotnet-maestro[bot] edited #63590
timiil
@timiil
something like this
Bernd Baumanns
@bernd5
I would avoid arabic chars
timiil
@timiil
:)
Bernd Baumanns
@bernd5
I would name them a1, a2, a3....
but unicode should work, too.
or perhaps something like obf_local_1
timiil
@timiil
are not these task can be done by Analyzer??
Bernd Baumanns
@bernd5
no, an analyzer produces just diagnostic AFAIK
it would be a pre compile step
Yair Halberstadt
@YairHalberstadt
@VBAndCs that's basically what decompilers do - e.g. sharplab
timiil
@timiil
who produce the tons of 'Change Code Suggestion' in the vs ??
Bernd Baumanns
@bernd5
these are called "Code Fix"
timiil
@timiil
may be my missunderstanding that these are from roslyn
Bernd Baumanns
@bernd5
the are developed by the VS team
no they are from roslyn - that is right
timiil
@timiil
so , how can i write some anti human reading CodeFix rule ?
Bernd Baumanns
@bernd5
CodeFix is more than you need - a CodeFix adds some VS integration code
timiil
@timiil
oh, sounds bad. sounds that related by IDE, but not dotnet CLR
Bernd Baumanns
@bernd5
you could write a simple console app which loads the original source and produces "obfuscated" source which is than compiled to IL via the normal build pipeline
Yes, CodeFixes are IDE related - but what you want is not IDE related
timiil
@timiil
thanks for your kindly reply, a lot of knowlege knowed toninght and i should keep learning more
Bernd Baumanns
@bernd5
When you write your obfuscator you have to care about e.g. nameof() and reflection
because those names would change, too.
If you need further help - please ask.
timiil
@timiil
sure , very thanks :)
Yair Halberstadt
@YairHalberstadt
@timiil most obfuscators work with raw IL. They already exist so not sure why you would roll your own
timiil
@timiil
one reason is , IL changing this very hacking, and the opensource solution is so few amount.
Yair Halberstadt
@YairHalberstadt
Modifying IL is much safer, since it's easier to know what's safe to change and what's not.
Bernd Baumanns
@bernd5
yes - on IL level getting all semantics is quite complicated
but renaming locals would be very simple for example
Yair Halberstadt
@YairHalberstadt
For example you might rename an internal method named GetEnumerator and break a foreach.
timiil
@timiil
the second reason is , i think we have the source code, so if we use some skillful rewrite rule onto the sourcecode, and then build from roslyn, that sounds is very ...Nature
Bernd Baumanns
@bernd5
@timiil should the produced assembly be usable by other assemblies?
timiil
@timiil
who is behind 'dotnet build' ?? is 'MSBuild' or 'roslyn'
Bernd Baumanns
@bernd5
both 😃
MSBuild calls roslyn
timiil
@timiil

@timiil should the produced assembly be usable by other assemblies?

yes, that is exectly what i thinking on.

Bernd Baumanns
@bernd5
Than GetEnumerator would break not only on source level - but on IL level, too.
timiil
@timiil
and as we know, we even have opensource dotnet decomplier
Bernd Baumanns
@bernd5
You mean ILSpy?
timiil
@timiil
so , the pluzzle may be , decomplie -> rewrite source text -> complie on the air -> use it ?
Bernd Baumanns
@bernd5
not really
decompiling is quite hard
yes , sir
Bernd Baumanns
@bernd5
Some symbols can't be represented as regular csharp code
timiil
@timiil
yes , your are right. that maybe not 100% perfect
Bernd Baumanns
@bernd5
you loose (some) data after compilation
timiil
@timiil
@bernd5 i found https://github.com/JosefPihrt/Roslynator may be fun for CodeFix testing in command line
Chandraprakash
@frozenprakash
does anyone know where is the proposal for Property extension in C#?
Presently we only have function extension