pakt sardines wrote: > ...the big issue for us is > that the data in the databases has significant intellectual property > value. It has taken literally years of work to collect the data. We do > not want the users of the commercial product to be able to fire up > postgres and type something like: user]% pg_dump their_data > our_product That seems more like a legal question than a technical one. The first thing that comes to mind is a lawyer to review your license agreements, contracts, and NDAs with your customers. Perhaps a contract giving you rights to audit their facilities in the extreme cases. > Additionally, we don't want to have to encrypt every entry in the > database, because that will cause significant overhead during processing. That's unlikely to work anyway. Organizations protecting valuable data using technical approaches (DVDs, etc) find it gets out anyway. Since you'll ship a client that can decrypt the data anyway, anyone with a debugger could decrypt it (unless you only want it to run on Trusted computing platform / palladium computers). > My question is, what options do we have? I'd say that many of the more successful companies that sell products with valuable data (geospatial data vendors; market research companies) use the legal options rather than the technical ones. > Can postgres store data as > some sort of unreadable binary, much like you would find in a C binary > data file? Huh? > If not postgres, what other database could possibly do this, if any? I > really don't want to have to write our own RDBMS. :) Doesn't seem much like a database question. I'd say ask on some trusted computing (google Trusted Computing) list if you want a technical solution or a lawyer if you want a legal one. > Thanks in advance for any advice or suggestions on this subject,