关于非对称加密

2020-12-31 23:32:44 +08:00
 vision1900

以前只是模糊的知道 SSH 和 SSL 证书都利用了非对称算法,有公钥匙和私钥,公钥加密只能私钥来解,反之亦然。也听过 RSA, SHA256, 数字签名,身份认证之类的名词,但是一直没有搞懂其背后的原理。

趁着 2021 还没有来,看了个相关的视频,感觉清楚多了。分享一下:

https://youtu.be/ipQrwfKTH_4?list=PLAeUiPnAYPB4RFPYftNz6rDFhgdmTB0_o

3922 次点击
所在节点    信息安全
18 条回复
lululau
2021-01-01 00:12:19 +08:00
少侠留步,公钥加密只能私钥来解,反之可不是亦然
Kasumi20
2021-01-01 00:16:36 +08:00
我也不懂呀, 为什么私钥可以解密使用公钥解密的数据, 而无法从公钥推出私钥呢, 只能说数学太伟大了
kernelpanic
2021-01-01 00:20:22 +08:00
leimao
2021-01-01 00:25:50 +08:00
stevefan1999
2021-01-01 01:32:15 +08:00
非對稱加密通常最重要的一個特徵: compose(E(k1), E(k2))(msg) = compose(E(k2), E(k1))(msg)
所以其實本身沒有分公私匙的 這是人定的

而非對稱加密通常都是依賴生成容易 (逆向)破解困難的套路 都依賴了一些至少 NP-Hard 的問題(沒有最優解除非 P=NP 或者在現實中現代電腦力能所及的)

譬如 RSA 本質是透過模運算和質數混合再分拆 而生成質數十分容易(AKS 質數測試) 所以要破解是可以找到兩條以上相容的質數,也就是另一條「公匙」(把只有兩條匙的前提打破了)就能作私匙
但這找出來的問題(似乎)是 NP-Complete (未有共識)的還是難破解 RSA 獎證明至少 1024 位被傳統電腦破解了只不過 RSA 公司最終都取消了 因爲量子電腦的框架下整數分解是屬 P 問題的 就是沒那麼複雜的意思

然後 ECC 橢圓曲線就是依賴橢圓曲線的特性(還有 RSA 提過的模運算和群論 域論之類) 譬如說什麼橢圓上一個點加另一個點是他們的切線之類 這裡需要動用大量純數 /分析來證明 而這裡其實是數學 mphil/phd 程度的課程所以我這輩子是不可能懂的 總而言之破解他的問題好像是叫離散對數問題 是 NP-Hard 的 知名的 curve25519/x25519 就是 ECC 的一種
stevefan1999
2021-01-01 01:32:49 +08:00
@Kasumi20 可以 你足夠算力算一萬年即可破解一條 key
ryd994
2021-01-01 02:34:45 +08:00
@stevefan1999 实际实现上,公钥的其中一个因子一般取 65535,所以只要有私钥,很容易求出公钥
chinvo
2021-01-01 03:04:29 +08:00
@ryd994 #6 实际上从私钥“求”公钥,目前通用实现靠的是私钥文件里面有完整的公钥信息。私钥里同时有 p q e 等参数
Batmannnn
2021-01-01 08:06:36 +08:00
jingniao
2021-01-01 08:34:30 +08:00
要看算法
rsa 公私钥 地位等同,都可加密对方解密,私钥推公钥是私钥文件有必要信息而公钥文件没有。
椭圆曲线公私钥地位不对等,只能私钥加密公钥解密,私钥推公钥是已知曲线 x 坐标求 y 坐标
hatebugs
2021-01-01 09:29:56 +08:00
@Kasumi20 系统的学一下密码学就行了。
OldActorsSmile
2021-01-01 12:12:15 +08:00
李永乐老师讲的非对称加密也不错
ljiaming19
2021-01-01 13:20:35 +08:00
话说 ssh 非对称加密用 RSA4096 和 ECC256 在对抗暴力破解哪个更好 RSA4096 密钥长度更长是不是如果靠猜更难破解
YouLMAO
2021-01-01 13:34:13 +08:00
我们今年主推 elliptical curve
tubowen
2021-01-01 16:38:01 +08:00
建立在 数学的素数,同模的一些理论上面的,数学不好,大学学密码学晕乎乎的
ygb8745
2021-01-09 01:09:26 +08:00
@jingniao 是公钥加密 私钥解密吧
jingniao
2021-01-09 08:10:39 +08:00
@ygb8745 恩好像是反了🤣🤣🤣
testcaoy7
2021-01-15 09:34:57 +08:00
NIST 正在评估量子抵抗(能抵御量子计算机的攻击)的加密算法
比如 Dilithium

Dilithium is a digital signature scheme that is strongly secure under chosen message attacks based on the hardness of lattice problems over module lattices.

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

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

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

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

© 2021 V2EX