gpt4 book ai didi

javascript - Libsodium JS KDF 函数产生不同的输出

转载 作者:行者123 更新时间:2023-11-28 05:39:06 24 4
gpt4 key购买 nike

我尝试在 Android、iOS 和 JS 上使用 crypto_kdf_derive_from_key 函数。在 Android 和 iOS 上,它产生相同的输出,但在 JS 上则不同。上下文、主键和大小相同。有什么想法吗?

所有平台都使用相同的核心函数:crypto_kdf_derive_from_key

JS:

generateKey(basedOnKey: string): Uint8Array {
const masterKey = this.convertHexToBytes(basedOnKey);
const context = this.textEncoder.encode('AAAAAAAA');
const newKey = sodium.crypto_kdf_derive_from_key(sodium.crypto_secretbox_KEYBYTES, 0, context, masterKey);

return newKey;
}

苹果:

public func getNewSecretKey(basedOn key: String) -> Data? {
let masterKey = key.hexDecodedData().bytes
let context = "AAAAAAAA"
let newKey = sodium.keyDerivation.derive(secretKey: masterKey, index: 0, length: 32, context: context)

return newKey?.data
}

最佳答案

不转换上下文。假定它是一个字符串。

关于javascript - Libsodium JS KDF 函数产生不同的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57589336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com