首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库是否加密或散列表/集合?

数据库是否加密或散列表/集合?
EN

Stack Overflow用户
提问于 2020-07-25 19:11:41
回答 1查看 38关注 0票数 1

我正在做一个简单的数据库系统作为简历项目,我想知道像MySQL或MongoDB这样的主流数据库是否会对存储表/集合数据的文件进行加密?如果他们这样做了,他们是加密整个文件,还是在插入数据时加密数据(我认为这可能是第二个,但也许我错了)?他们使用的是加密算法还是散列算法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-25 19:40:13

大多数现代数据库都支持静态加密。从DBMS的角度来看,这是完全的数据库加密,从应用程序的角度来看,这是透明的,有时称为TDE,透明数据库加密)。这意味着客户端在初始连接时提供密钥或密钥id,然后访问数据库,就好像它没有被加密一样。(这过于简单了,请参考DBMS文档,了解实际发生的情况以及如何对客户端进行身份验证和授权。)

在DBMS存储上(例如,文件系统)整个数据库文件(或多个文件)用适当且可配置的算法(通常为AES256 )加密。您提到了哈希,但是哈希是单向的,不能提供机密性。如果你想实现任何与密码学相关的东西,你需要了解它们之间的区别。

对数据进行粒度加密(例如,每个字段分开)将是应用程序的任务,如果需要,通常不是由DBMS完成的。这种应用程序级别的加密缓解了与TDE不同的威胁。

还有一个关键点(双关语)是在哪里存储加密密钥,以及如何管理(轮换、授权使用、撤销、记录访问)它们。回答这个问题远远超出了SO帖子的范围。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63087626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档