请教一下 ssh-keygen 所生成的 rsa 密钥长度是越长越好吗?是否有什么影响?

2021-01-09 17:37:52 +08:00
 ReZer0

可能关键字没输对,搜索引擎没找到长密钥对于这块有什么影响。只知道默认 2048 且越长安全性越高。

所以想请教下,这块如果设置越长,是否会有什么影响?谢谢!

另外密钥类型各位一般怎么选?我之前都是默认 RSA 的。

2528 次点击
所在节点    问与答
19 条回复
liuzhaowei55
2021-01-09 17:40:00 +08:00
太长了生成密钥时间会变长,其他不知道
ReZer0
2021-01-09 17:51:07 +08:00
@liuzhaowei55 因为我在疑惑是只是登录服务器时时间长还是传输命令的时候时间也长。因为一直看到越长越好的说法,但是貌似并不是很多人和教程推荐超过 2048 的。
liuzhaowei55
2021-01-09 18:01:22 +08:00
@ReZer0 可以搜下密钥协商,密钥交换,ssl 性能这些看看
msg7086
2021-01-09 19:07:23 +08:00
如果不是古代的环境的话,普通的 ed25519 密钥已经足够安全快捷了。
要用古代环境的话那是只能 RSA 。我在公司用 3072 。
unixeno
2021-01-09 20:27:44 +08:00
越长越安全性能越差
rsa 的话目前认为至少到 2030 年都是安全的,也够你用了
unixeno
2021-01-09 20:28:44 +08:00
@unixeno 打漏了,目前认为 rsa2048 到 2030 年都是足够安全的
ReZer0
2021-01-09 20:53:10 +08:00
@liuzhaowei55 好的,谢谢!
@msg7086 倒不是老环境,新密钥安全性更高?
@unixeno 明白,谢谢了。长度什么没关系是吧!
0ZXYDDu796nVCFxq
2021-01-09 21:42:00 +08:00
现在基本所有软件都支持 ed25519 或者 ecdsa 了吧,用这两者性能好,密钥短,安全性高
ReZer0
2021-01-09 21:58:20 +08:00
@gstqc 目前已知这几种包括 RSA 应该都还没被破解吧……
0ZXYDDu796nVCFxq
2021-01-09 22:23:11 +08:00
@ReZer0 RSA 必须 2048 位以上才算安全
而且算力一直在提升,算法也在提升,最好的办法就是在支持的前提下尽量用更安全的
ReZer0
2021-01-09 22:33:10 +08:00
@gstqc 明白了,谢谢。那现今可使用的是否有推荐?就是你刚才说的那两个吗?
0ZXYDDu796nVCFxq
2021-01-09 23:03:20 +08:00
@ReZer0 是的
如果服务端和客户端都支持,建议 ecdsa 起步吧
至少几年内不需要考虑安全性问题
ReZer0
2021-01-10 00:23:35 +08:00
@gstqc 好的,谢谢!因为不是高配置设备,所以我之前还犹豫用较长的长度密钥会不会影响性能。我后面了解下试试。
msg7086
2021-01-10 01:02:47 +08:00
@gstqc 不支持的多了去了。大部分能 ecdsa 不过我们内网系统有些只能传 RSA 。

@ReZer0 主要是快,ed25519 在安全性相当的情况下密钥短了很多,所以速度快啊。
wayslog
2021-01-10 03:24:13 +08:00
ed25519+1
lostpg
2021-01-10 08:36:09 +08:00
密钥长度影响生成密钥的时间,不会影响使用时的体验
ReZer0
2021-01-10 17:43:34 +08:00
@msg7086 好的,谢谢!
@wayslog 明白!
@lostpg 也就是说,只是在 ssh-keygen 生成的时候费点时间,但是解密过程中没影响?
jim9606
2021-01-10 21:45:38 +08:00
目前至少要 2048 位 RSA,更低的被认为不够安全。

也可以用 3072 位 RSA,这是目前最新 OpenSSH 的默认密钥长度。

但长密钥会显著增加握手阶段的包体积和运算时间,如果不是为了兼容老版 SSH 软件,建议换用 ed25519,后者只需要 256 位的密钥长度即可实现 3072 位 RSA 相同安全性,且性能更好。
ReZer0
2021-01-11 08:45:38 +08:00
@jim9606 好的,谢谢!目前应该没有什么旧版本的 SSH,所以应该换新密钥都没什么问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/743365

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX