Subject Re: [Firebird-Architect] Encryption for embedded server
Author Jim Starkey
Jonathan Neve wrote:

>Hi!
>
>I think it could be useful to be able to use a database in an encrypted
>form when using the embedded server. This means that the application
>that's accessing the DB would have to provide the key in the DB
>connection parameters, and all the data would encrypted/decrypted when
>storing into/retrieving from the DB. Compression also could be added, by
>the same token. What do you think?
>
>
>
First a quibble about nomenclature. An embedded server is a
contradiction in terms. You can have an embedded engine. You can have
a remote interface to talk to a server. You can have a program layered
on the server code. But you can't have an embedded server.

But your point about encryption is well taken. My ideas of how security
plugin should work is that can be chained, and get a crack at file
opens, page reads, and page writes as well as authentication requests.
This would let us roll the physical database I/O into a default
"security plugin". Another plugin could handle page level encryption
and maybe a third to handle authentication. Key management, as usual,
is a problem that would need to be solved.

Compression is a different story, however. I haven't a clue on how to
do random access into a compressed file.