分类:
2008-09-09 16:59:45
作为数据库管理员,您可以对数据库进行加密,使别人更难以破译数据库中的数据。可以使用简单加密或高度加密来保护您的数据库。
注意:压缩加密的数据库将从数据库中解除加密。
简单加密
简单加密等效于模糊处理,并可使人使用磁盘实用程序难以查看文件以破译数据库中数据。简单加密并不要求用一个密钥来对数据库进行加密。 SQL Anywhere 的早期版本支持简单加密技术。
高度加密
对数据库文件采用高度加密技术后,若没有密钥 (口令),就无法对数据库进行操作。它还对包含在数据库及事务日志中的信息进行加密,这样信息就不会通过使用磁盘实用程序查看文件而很容易地被破译。没有密钥,数据则完全无法访问。
所选用于进行高度加密的算法是 AES:它是数据块加密算法,被美国 "国家标准与技术协会 (NIST)" 选作数据库密码的新的 " 高级加密标准"(AES)。
可以与 CREATE DATABASE 语句一起使用 ENCRYPTION 和 KEY 选项来对数据库进行高度加密。同样,数据库管理员也可以使用 dbinit 实用程序不同的选项结合,对数据库进行初始化,并启用高度加密。您还可以使用 "Sybase Central 创建数据库 " 向导来创建高度加密的数据库。与-ek 或 -ep 选项结合使用 dbinit 实用程序可以实现高度加密,并且指明是在提示框中还是在命令提示符处指定密钥。
创建高度加密的数据库 (SQL)
1.从 Interactive SQL 连接到一个现有的数据库。
2.执行包含 ENCRYPTION 和 KEY 选项的 CREATE DATABASE 语句。例如,下面的语句在 C:\ 目录中创建一个名为myencrypteddb.db 的数据库文件。
|
创建高度加密的数据库 (命令提示符)
1.在命令提示符下,使用 dbinit 实用程序创建一个数据库。必须
包括下列选项:
•-ea:用于指定加密算法。
•-ek 或 -ep:用于指定加密密钥以及希望在命令提示符处
还是在对话框中输入它。
下列命令 (应在一行中输入所有内容)创建一个高度加密的数
据库并指定输入加密密钥作为命令的一部分。
|
2.从命令提示符处启动数据库。
|
与大多数口令一样,最好选择不容易被猜测的密钥值。我们建议您为密钥选择一个包含 8 到 30 位数字的值,且该值是大写和小写字符、数字、字母以及特殊字符的组合。
注意:
一定要在安全的位置存储一份密钥。每次启动或修改数据库时,都需要使用该密钥。丢失了密钥将导致数据库完全无法访问,而无法访问的数据库是无法进行恢复的