工閒手多搞了個python數學加密拹議, 有努諸位看倌批評一下
-
目前僅是Python原型,未來可能用RUST重建
希望大佬們幫忙review代碼
github.com/semmyenator/PTB-SRP
deepwiki.com/semmyenator/PTB-SRP -
@semmyenator 看了一下wiki感觉这个从私钥->公钥的构造方法中的数学方法很有意思, 但似乎只起到结构化的作用且可以逆(例如计算共享密钥时就从公钥逆回t_A), 所以实际上的公钥对应的就变成了t_A, 而它只是由
(priv_key * t0) mod p
简单线性映射的, 可能会造成私钥泄漏(以上是根据文档的简单理解- 第一次映射: (k * t0) mod p
- 第二次映射: to point
-
單位圓映射在協議設計中僅起到結構作用。實際的公鑰材料是 t_A,它是私鑰的直接線性函數。使用單位圓點並不能提供加密安全性,因為透過協議中提供的公式可以輕鬆逆轉變換。這似乎是 PTB-SRP 協定的一個基本設計缺陷。在安全的加密系統中,從公鑰推導出私鑰在計算上應該是不可行的。但私鑰和公鑰之間的這種線性關係完全破壞了這一說法。安全的重新設計需要在私鑰和 t_A 值之間實現單向函數。
-
@semmyenator 是的, 需要 [私钥 -map-> 公钥] 是一个不可逆或有限条件下不可逆, 这样才能保证安全性