Re: How to protect intellectual property?

From: AlexS (salexru2000NO_at_SPAMsympaticoPLEASE.ca)
Date: 07/11/03

  • Next message: AlexS: "Re: Storing encrypted data in a database."
    Date: Fri, 11 Jul 2003 11:58:10 -0700
    
    

    Keith,

    as I see it - all these tricks might work only for calls / access through
    Reflection engine of CLR/ If somebody will read assembly directly (binary,
    through private reflection implementation) and reconstruct information from
    metadata bypassing CLR Reflection - all these protections would be useless.

    To me it looks like proper code protection could be achieved only when
    hooking file access events and filtering call stacks inside OS kernel. I
    don't know how true is this. Possibly 2003 - or whatever will follow - will
    have this functionality, but it is absent in W2K and WXP, right?

    So far, I have opinion, that the only way to protect code is by using Web
    Forms or clean ASP.Net, where you can manage to send to client only
    resulting html.

    Do I miss something?

    Rgds
    Alex

    "Keith Patrick" <richard_keith_patrick@hotmail.com> wrote in message
    news:eubPe3xRDHA.2240@TK2MSFTNGP11.phx.gbl...
    > Actually, I may be wrong on that last point; I'm not really sure how .Net
    > calls methods under the covers. It's conceivable that even a call to
    > Object.ToString() starts as a message; might not be something that is
    > implemented at the ContextBoundObject level. If that is the case, your
    > performance shouldn't be hindered much. From personal experience, mine
    does
    > take a hit, but that's because I have constraint-checking aspects in place
    > for all of my method parameters, so there is a huge hit (but it gets
    turned
    > off when not debugging)
    >
    > "Keith Patrick" <kpatrick@nospam.houston.rr.com> wrote in message
    > news:Ohngy8bRDHA.4024@tk2msftngp13.phx.gbl...
    > > If you want to get REALLY tricky, you could subclass of
    > ContextBoundObject,
    > > create a method interception aspect, and put your own checks in (like
    > > checking the source of a message/method). The MSDN documentation on
    that
    > > class is absent, but MSDN has a good article on aspect-based programming
    > > that goes into doing it. You won't get blazing code, since your method
    > > calls become messages ala Remoting, but you will get more control. Of
    > > course, you can *still* fake messages, so I need to reiterate that any
    > > single security measure is not guaranteed (and by extension, no
    > combination
    > > of security measures are guaranteed) but the more you use, the lower the
    > > odds of having your code misused.
    > >
    > > "AlexS" <salexru2000NO@SPAMsympaticoPLEASE.ca> wrote in message
    > > news:%23Am9R2XRDHA.1804@TK2MSFTNGP11.phx.gbl...
    > > > Does it mean I have to implement my own invocation checks in the code?
    > > > Can this be done by subclassing StrongNameIdentityPermissionAttribute?
    > > >
    > > > Or there is better and simpler way?
    > > > Alex
    > > >
    > > >
    > > > "Eugene V. Bobukh [MS]" <eugenebo@online.microsoft.com> wrote in
    message
    > > > news:%23WBWdkXRDHA.3768@tk2msftngp13.phx.gbl...
    > > > Unfortunately, this method is not really helpful. If, for example, MS
    > > > libraries will be calling your code [by delegate invokation], they
    will
    > > > fail, 'cause they posess different public key.
    > > >
    > > > Also, if a person is an Admin on his/her local computer he can strip
    the
    > > > public key from your code, embed it into his assemblies and then add
    > > > corresponding public key token to so called "Skip Verification List",
    so
    > > > such assemblies, even though they are badly "signed", will be able to
    > run
    > > > and invoke your code.
    > > >
    > > > --
    > > > Eugene V. Bobukh
    > > >
    > > > "Konstantin Kipa" <konstantin@metaobjects.net> wrote in message
    > > > news:%23O3ty7VRDHA.212@TK2MSFTNGP10.phx.gbl...
    > > > > > [StrongNameIdentityPermissionAttribute(SecurityAction.Demand,
    > > > > > PublicKey="<key of assembly allowed to call me>")]
    > > > > > public void Foo() {
    > > > > > }
    > > > >
    > > > > Thanks a lot! I didn't know about that one.
    > > > >
    > > > > Nevertheless, I am still open for other tips & tricks. This
    attribute
    > > > > sertainly will not make my code secure. At least it would not be
    > > possible
    > > > to
    > > > > just copy and use it. I assume, that a calling assembly has to be
    > signed
    > > > > with appropriate private key in order to call that assemble. I hope
    it
    > > is
    > > > > not possible to extract my key and sign other assembly with it.
    > > > >
    > > > > ---
    > > > > Konstantin
    > > > >
    > > > >
    > > >
    > > >
    > >
    > >
    >
    >


  • Next message: AlexS: "Re: Storing encrypted data in a database."

    Relevant Pages

    • Re: Magic resistence and reflection
      ... Reflection will cause any "ray" class wand zap to bounce off you. ... One fun strategy is to zap straight at a monster where it's you, ... The ray will hit the monster, ...
      (rec.games.roguelike.nethack)
    • Re: YASD -> YANI
      ... As I'm walking around a blast of disintegration hits me! ... Luckily Sokoban had yielded an Amulet of Reflection. ... wanted to save a wand charge I guess) decided to melee that last hit. ... I had a stethoscope for anyone who was wondering if I was just ...
      (rec.games.roguelike.nethack)
    • Re: YASD -> YANI
      ... As I'm walking around a blast of disintegration hits me! ... Luckily Sokoban had yielded an Amulet of Reflection. ... various enemies shooting at me, and barely paying attention I kept cutting ... a wand charge I guess) decided to melee that last hit. ...
      (rec.games.roguelike.nethack)
    • Re: 266nm vs silicon gasket
      ... Will this out gas if it takes an indirect (reflection) hit from the 266nm pulsed laser? ... to mount their high energy polarizers- we asked specifically about outgassing and high incident energies in regards to a spaceflight application. ...
      (sci.optics)

  • Quantcast