数据库加密题

标签 database encryption sqlanywhere

我们正在使用 Sybase SQL Anywhere 11。我们需要加密我们数据库中的一些表。我按照说明去做了。我们选择了带有 encryptionKey 和 AES256_FIPS 算法的“强”选项。但有些事情我不太清楚。

  1. 当我们创建数据库、删除数据库和启动数据库服务器时需要 encryptionKey,但当我们停止数据库服务器并连接到服务器以创建表和添加数据时不需要 encryptionKey。为什么当我们连接到它或尝试停止服务器时没有询问 encryptionKey?我做错了什么?

  2. 不知道如何测试加密?当我使用 Sybase Central 工具时,我仍然可以看到加密表中的所有纯文本。如果有人知道数据库用户名和密码,他/她可以连接到数据库并在没有加密 key 的情况下读取内容。这样对吗?

最佳答案

我不能专门针对 Sybase 的系统,但数据库加密一般旨在在文件系统级别加密,以防止对数据库数据的后门访问(即读取二进制文件和解析自己而不是通过 RDBMS),不是以防止通过标准数据库接口(interface)访问或混淆数据(预计您将使用 RDBMS 的安全机制来执行此操作)。

关于数据库加密题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3007436/

相关文章:

database - 如何禁用 Django 查询缓存?

php - 通过 PHP 比较数据库中的列

c# - Neo4j 返回 HTTP 400

mysql - 根据两个表中一列的两个匹配值更新一列

c# - 表锁抛出异常 vs 表锁等待结束

database - 我应该使用字符串表来提高数据库效率吗?

.net - RSA 和 OAEP : Choosing or not choosing the Hash Algorithm?

javascript - 使用 CryptoJS 加密数据并使用 AESCipherService 解密

OpenSSL 错误 0200B009 错误的文件描述符

sql - 如何列出SQL Anywhere中的所有用户表及其行数?