【发布时间】:2022-01-26 23:44:12
【问题描述】:
我正在使用 Vapor jwt 包,但在创建私有 jwt 签名者时遇到此类错误:
Swift/ErrorType.swift:200: Fatal error: Error raised at top level: JWTKit error: signing algorithm error: bioConversionFailure
此代码的第 2 行发生错误:
let privateKey = try String(contentsOfFile: app.directory.workingDirectory + "jwt.key")
let privateSigner = try JWTSigner.rs256(key: .private(pem: privateKey.bytes))
let publicKey = try String(contentsOfFile: app.directory.workingDirectory + "jwt.key.pub")
let publicSigner = try JWTSigner.rs256(key: .public(pem: publicKey.bytes))
这就是jwt.key 的样子(我会隐藏一些符号):
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,49892B69BD216[...]84A1DD2A9248FD
fxGXzOPc+7LDp6Jm/PkMp1E/sq7ncOeT5JdmSxbE5yIYIRngqcxfBC8IkIgkd/hv
ACpH55VQE2lgZuXDHcOJU1ivhcW3uo3mn5hhCswDdJ6zFerHonUzNpeQAvs2woqT
[....]
Z/hTsA1MTRGubzMb3SHFoVLiVj2FJ5SP7qrSDtB7xgB0/rKUykpbnR4OQiHH7z+8
sfJZKulMT7DIYIEe/glZCYBOZC2VaaEFr921Smx5Le12hfP1HYFLrX4oTCMLxGP9
-----END RSA PRIVATE KEY-----
【问题讨论】:
-
@EDUsta,看到了这个问题,但不幸的是没有,这没有帮助。我在
JWTKit中没有找到.public(x509:) convenience utility或类似的东西