NCache 提供了一套丰富的行业标准加密算法,几乎不可能被破解。 这可以确保您的敏感数据得到很好的保护,同时以加密形式在网络上传输。 NCache 提供以下加密算法供您选择:
高级加密标准 (AES) 加密
NCache 提供对 AES 加密算法的支持,该算法是联邦信息处理标准 (FIPS) 的官方部分。 AES 算法使用长度为 128、128 和 192 位的加密密钥处理 256 位的数据块。 下面列出了支持的 AES 风格。
您可以阅读 AES 和 AES-FIPS 的 RFC 规范文档,网址为 互联网工程任务组(IETF) 网站。
- AES-128
- AES-192
- AES-256
- AES-FIPS 128
- AES-FIPS 192
- AES-FIPS 256
三重 DES (3DES) 加密
NCache 还提供对 3DES 加密协议的支持,该协议处理 128 位和 192 位的数据密钥长度。 您可以在以下位置阅读 3DES 的 RFC 规范文档 互联网工程任务组(IETF) 网站。 支持以下算法 NCache 加密:
- 3DES-128
- 3DES-192
加密发生在哪里?
NCache 数据加密和解密发生在内部 NCache 客户申请流程。 这意味着在您的应用程序和缓存集群之间通过网络传输的所有数据都已加密。 同样,只有加密数据存储在缓存存储中。
客户端-服务器连接
在缓存集群上启用加密时,您将提供加密密钥以及加密算法提供程序。 此密钥以加密方式保存在每个缓存服务器中。 当客户端第一次成功连接到启用加密的缓存时,加密密钥和选择的加密算法会以安全的方式自动发送给客户端,以便在内存中用于未来请求的加密/解密。
一旦向缓存发出请求, NCache 客户端在将对象发送到缓存之前自动开始加密您的对象。 同样,它会自动解密从缓存中获取的对象,然后再将它们传递给您的应用程序。
图 1 通过两个简单的步骤描述了这种行为:
NCache 更多信息 NCache 加密文档 NCache 安保行业
传输中和静态的加密数据
如果您在处理敏感数据 NCache,您可以放心,在数据生命周期的各个阶段,数据都经过加密并防止不必要的访问。
从客户端到服务器的数据
一旦加密的密钥驻留在客户端的内存中,任何必须发送到缓存的数据都将使用该密钥进行加密。 通常,首先对数据进行序列化、加密和压缩(如果启用了压缩)。 在传输之前在客户端加密数据意味着数据在传输过程中被加密。 这可确保任何窃听此连接的人都无法获取任何敏感数据。
静态数据
将数据添加到缓存后,数据将以加密形式存储,因此即使在缓存端也是安全的。
集群节点内的数据
在缓存集群中,数据在服务器到服务器的状态传输或复制期间被加密。 因此,它在传输过程中仍然是加密的。
图 2 显示了数据如何从客户端加密到服务器:
客户端缓存
A 客户端缓存 是驻留在应用程序运行的同一盒子上的本地缓存。 此客户端缓存与远程集群缓存同步,以提高读取操作的性能。 在客户端缓存的情况下,不会在客户端缓存上显式配置加密。 如果集群缓存(L2 级缓存)启用了加密,那么客户端缓存也会被加密。 如果 L2 上没有启用加密,则数据将被添加到客户端缓存而不加密。
客户端API
加密/解密行为 NCache 客户端API 自动处理,同时确保传输中的所有数据都经过加密,并且仅在需要处理的地方进行解密。
- 客户端连接: 客户端第一次连接时,以加密形式获取加密密钥和指定算法。 这用于在需要时加密/解密数据。
- 将数据添加到缓存: 对于将数据添加到缓存的 API,例如 地址/插页 等等,数据在通过网络传输之前在客户端被加密。 在缓存端,数据以加密形式存储。
- 从缓存中获取数据: 对于从缓存中获取数据的 API,例如 积极/获取批量/装载机/查询 等,数据以加密形式在缓存中,以加密形式传送到客户端,在客户端解密数据。
- 活动: 对于需要将数据/元数据发送回服务器数据加密的客户端的事件,数据在传输中被加密并在客户端解密。
缓存项的元数据
缓存项添加了元数据,例如 组别, 标签, 和 命名标签。 其中包括定义数据索引方式的缓存项的附加信息。
在将缓存项添加到缓存时,数据和元数据在客户端被加密。 数据和元数据以加密形式通过网络传输。 然而,在服务器端,数据以加密形式存储,但元数据必须被解密,因为它在服务器节点上被索引。
NCache 更多信息 NCache 客户端 API 文档 NCache 安保行业
缓存中的数据结构
NCache 提供支持 数据结构. 当数据被添加到缓存中时,它在被添加到数据结构之前被加密。 同样,当从缓存中取出数据结构时,在客户端解密数据,可以根据需要使用。
服务器端功能
与客户端功能一样,加密/解密机制 NCache 服务器端功能 根据特性的性质自动处理:
- 通读: 无论数据从何处以及如何加载,如果在缓存上启用了加密,则数据将在加密、序列化和压缩后添加到缓存中(如果启用了压缩)。
- 直写: 缓存中的数据是加密的,但是为了将数据发送到直写源,必须对其进行解密,以便按原样存储。
- 缓存加载器: 由于 Loader 使用公共 API,如果在缓存上启用加密,正在加载的数据将自动以加密形式存储在缓存中。
- 入口处理器: 如果调用入口处理器来处理对象,则在服务器处对对象进行解密,因为所有处理都在服务器端进行。
启用加密
您可以通过启用加密 NCache 无需您进行任何编程工作的管理工具。 必须在缓存启动时启用加密,以便对所有数据进行同质加密。 您可以在我们的文档中了解更多信息 配置加密.
其他安全功能 NCache
除了加密, NCache 还通过提供安全通信 SSL/TLS 1.2. 此外,它甚至可以确保您的缓存环境在缓存 API 和节点管理级别是安全的。 访问控制列表. 您可以在此处阅读有关这些功能的更多信息:
结论
毫无疑问,数据是新货币,网络安全是黄金。 因此, NCache 认识到保护您的数据的必要性并提供一系列安全功能以保证符合最新算法。 但是,由于加密/解密是一项 CPU 密集型任务,因此必须在明确需要的地方使用它,因为它会影响性能。