Hiding my work with encryption

  • Lets say I have a database with tables, views, stored procedures...the Product, that has proprietary information that I want to migrate to a client's machine to interact with the client's database. Can all the objects of the Product be secured / encrypted so that the client cant see or access it but so that the Product can collaborate with the client's data and still participate in joint processing?

    What gotchas do I need to be aware of for cross database processing...im thinking collation and sort order, but there must be more than that.

    How can I protect my work from getting hijacked, or do I have to rethink the way it works?

    thanks very much

    drew

    ps, I hate exposing my ignorance, but I hate being ignorant more than that 😛

  • drew.georgopulos (9/25/2014)


    Lets say I have a database with tables, views, stored procedures...the Product, that has proprietary information that I want to migrate to a client's machine to interact with the client's database. Can all the objects of the Product be secured / encrypted so that the client cant see or access it but so that the Product can collaborate with the client's data and still participate in joint processing?

    What gotchas do I need to be aware of for cross database processing...im thinking collation and sort order, but there must be more than that.

    How can I protect my work from getting hijacked, or do I have to rethink the way it works?

    thanks very much

    drew

    ps, I hate exposing my ignorance, but I hate being ignorant more than that 😛

    If the tables and/or data are on the client machine you cannot "protect" it. Is there really something so groundbreaking in your ddl that somebody can steal it? You can encrypt your data but if it is on the clients machine it is still vulnerable because you would also need to provide a way to decrypt it. If you truly feel you need to keep everything secret you might consider allowing access through webservices or something like that.

    _______________________________________________________________

    Need help? Help us help you.

    Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.

    Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.

    Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
    Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
    Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
    Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/

  • One more wrinkle: are you confident that the client you're dealing with "agrees" with your version of what's proprietary? In other words, is there a chance for blow-back after they realize that there's a barrier being put up? Be sure that there's agreement as to whose IP the Product happens to be.

    Sean's covered a lot of the mechanics already. You may be better off writing a separate application/component outside of SQL Server which is then compiled in order to keep data and content secured (the app would know how to decrypt, etc...), but again - I would NOT do that without making sure this doesn't turn into a legal battle with my customer(s). Having been on the wrong side of that fence once before - I can tell you it's a very reliable way to poison a customer relationship.

    ----------------------------------------------------------------------------------
    Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?

  • Yes, it was a dopey way to conceptualize the implementation and the product needs to be a web service.

    Thank you both very much for the advice.

    Drew

  • drew.georgopulos (9/26/2014)


    Yes, it was a dopey way to conceptualize the implementation and the product needs to be a web service.

    Thank you both very much for the advice.

    Drew

    Happy to help. Sometimes it just needs to be discussed to figure out a better way.

    _______________________________________________________________

    Need help? Help us help you.

    Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.

    Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.

    Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
    Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
    Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
    Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply