我正在尝试在Diffie-Hellman密钥交换之后使用HKDF。不过,我在港发局的部分却被卡住了。
from Crypto.Protocol import HKDF
from Crypto.Hash import SHA512
from Crypto.Random import get_random_bytes
salt = get_random_bytes(16)
key1, key2 = HKDF(master_secret, 32, salt, SHA512, 2)据我所知,我只需要一个键的ChaCha20或AES-256-GCM.如果我只生成一个香港发展基金的钥匙,是否一个好主意?
还有一件事,我怎样才能为这个案子制造出好的盐呢?
发布于 2021-02-18 12:36:41
据我所知,我只需要一个键的CHACHA20或AES-256-GCM.如果我只生成一个香港发展基金的钥匙,是否一个好主意?
在一个方向上,是的,因为MAC和加密部分只需要一个密钥的ChaCha20/Poly1305和AES-GCM。如果您需要多个关键部件,可以增加输出大小并将结果拆分,或者可以使用不同的标签(在Info组件中)两次调用HKDF。
请注意,您可能希望显式地验证您是否在两边生成了相同的主密钥,最好是使用单独的派生密钥(例如,HMAC)来执行。
还有一件事,我怎样才能为这个案子制造出好的盐呢?
加密128位盐很好,正如您的代码此时所做的那样。
https://crypto.stackexchange.com/questions/79860
复制相似问题