我对整个密码学领域都很陌生,所以如果我做错了什么,请原谅我。
我有一个16‘m的图像,我正在加密和认证使用AES-GCM。我得到了一个16 MAC的加密图像和一个MAC。据我所知,这将为我提供机密性、真实性和完整性。我可能弄错了。
也就是说,是否有必要对这个加密的映像执行ECDSA签名?我知道ECDSA的目的是从提供密文的人那里提供真实性,但是由于加密的图像已经通过AES-GCM认证,这似乎是一个多余的选择。
发布于 2018-01-17 23:30:09
我有一个16‘m的图像,我正在加密和认证使用AES-GCM。我得到了一个16 MAC的加密图像和一个MAC。据我所知,这将为我提供机密性、真实性和完整性。我可能弄错了。
这是正确的;AES-GCM旨在提供机密性、真实性和完整性.
您需要定义谁应该能够同时验证您的图像的真实性/完整性,以及谁应该能够创建真实的图像。
如果您是创建和访问图像的唯一方(S),则使用ECDSA (或任何签名算法)不会给您带来任何好处。它将增加实现的复杂性,并需要更多的资源,而没有真正的好处。
如果您与另一方共享该图像,并且允许双方创建真实的密文,那么AES-GCM本身仍然是足够的。
如果您希望整个世界能够验证给定的密文是由您自己创建的,而不给他们创建真正的密文的能力,那么您就需要使用ECDSA。考虑到信息也是加密的,这似乎是一个相对少见的用例。
*注:设立一个安全的通讯渠道可能涉及使用数码签署,这似乎超出了你的问题范围。
https://crypto.stackexchange.com/questions/54788
复制相似问题