我正在尝试使用pyjks模块从密钥库中获取密钥,但是加载密钥库失败,并出现以下错误:

ValueError: Hash mismatch; incorrect password or data corrupted


如果我尝试使用keytool加载密钥库,则没有任何问题。我想知道是否有人曾经使用pyjks来成功地做到这一点。这是我的python代码段:

ks = jks.KeyStore.load("/tmp/keystore.jceks", "changeit")

最佳答案

免责声明:我为pyjks编写了最初的JCEKS支持。

这可能是由于当时缺乏对SecretKey条目的支持。解析例程在读取文件时跟踪文件中的当前位置,最后希望接下来的N个字节是正确的签名。由于尚未实现SecretKey,因此它们没有提升当前位置,从而导致错误的哈希检查。

我之所以回应是因为我最近在pyjks中添加了缺少的SecretKey支持。因此,如果您的情况仍然有意义,请随时从https://github.com/doublereedkurt/pyjks获取最新资源并进行尝试。

10-06 09:47