rsa - PHPSecLib V2:当私钥密码包含特殊字符时出现问题?
问题描述
有谁知道在使用带有私钥的密码时 PHPSecLib 是否有限制?现在,如果我们使用包含“#”字符的私钥密码,似乎登录到 sftp 服务器会失败。如果我们使用另一个密码相同的密钥对,稍微修改一下私钥中的#字符,登录就会成功。
据我们所知,我们并没有在代码中做一些愚蠢的事情。与 PHPSecLib 一起使用的密钥与不使用的密钥之间的唯一区别是私钥密码中的单个字符。我们还仔细检查以确保两个密钥对都可以与标准 SSH 客户端一起使用。
所以,看看这是否是一个已知问题 - 在 GITHUB 问题列表中找不到任何具体的信息。
(我们还没有尝试使用任何其他特殊字符 - 现在只使用 # 字符。)
提前感谢您提供的任何信息。
解决方案
跟进这一点 - 问题不在于 phpseclib 库。事实证明,如果您使用 WSL 生成带有密码的密钥对,由于某种原因,它不会生成正确加密的密钥对。根据我们如何生成用于测试的两个密钥对(我们使用不同的机器),看起来特殊字符是一个问题。但是,如果您使用密码,它只是 WSL 生成不兼容的密钥对......
推荐阅读
- python - Python:randint 生成所需范围的上限
- ios - 用 alamofire swift 发布 json 数组
- asp.net - 将文件发布到 Shopify URL
- reporting-services - 在报表服务器中运行长报表问题
- docker - 尝试推动 Docker 获得“拒绝:请求的资源访问被拒绝”,即使已经登录
- c# - 如何使用 .NET 将大文件上传到 azure 容器?
- python - 我如何在等高线图上绘制带有条件的数组?
- mvvm - MVVM 与 Bloc 模式
- angular - 以角度创建多页PDF
- html - angular7 构建一个 navroute 组件,但不知道现在该做什么