對不起我的英文不好。我已閱讀關於安全性並瞭解RSA如何工作。 但是RSA如何保持身份驗證,中間人可以使用公鑰和假消息。而且,如何保持不可否認性,向您發送用公鑰加密的消息的人可以說它不是來自他並且是僞造的?RSA如何保持身份驗證和不可否認
1
A
回答
2
有some math behind RSA PKI(公鑰基礎設施),但我會盡量保持簡單。儘管這種情況在許多其他網站和問題/答案中都有描述。你無法理解什麼?
想法是,用公鑰加密很容易,但不可能解密。解密只能使用私鑰進行。
似乎你的問題是瞄準別的地方。你錯過了什麼(並且不是RSA本身的一部分)是certificates。證書可以使用RSA。證書是關於公鑰持有者的信息。仍然 - 有一個問題。如果一個實體(人員,網站)爲您提供證書,您如何確定該驗證機構真正屬於該網站,個人或組織?
這就是爲什麼存在定義的術語認證機構(CA) - 您(或您的瀏覽器)應該信任的組織。
因此,當網站創建其RSA密鑰對時,某些證書頒發機構會頒發簽名證書(綁定到公鑰),證書確實來自網站,個人或組織。
一個男人在中間可以你公鑰和假消息回來。
您的客戶端(瀏覽器,應用程序)必須有一個可信證書頒發機構的列表。通常它已經存儲在你的系統中。所以真正的網頁可以提供公鑰和證書,並使用基於公鑰的加密。瀏覽器檢查證書是否有效,並由可信機構頒發。
「中間人」無法提供有效和可信(由CA簽名)證書。
而且它是如何保持不可否認,人誰送你一個 消息通過公鑰加密可以說,這是他沒有 ,它是假的?
簽署也是一樣。一旦使用私鑰對數據進行簽名(或認證),簽名可以由使用公鑰的任何人驗證。證書綁定到公鑰。通常,簽名證書僅在證書頒發機構驗證身份(例如電子身份證,代碼簽名證書等)時纔會頒發。因此,任何人都可以驗證簽名是由受信任機構驗證的人創建的。
相關問題
- 1. RSA身份驗證問題
- 2. RSA身份驗證和CSRF攻擊
- 3. ASP.NET MVC Forms身份驗證 - 它如何工作並保持身份驗證?
- 4. Windows身份驗證是否提供不可否認性?
- 5. Apache LDAP身份驗證保持HTTP 500
- 6. ASP.NET Membership保持身份驗證問題
- 7. 如何進行身份驗證與令牌(在iPhone保持認證)
- 8. 如何保持角度Js的持久性身份驗證
- 9. Zuul是否支持OAuth身份驗證?
- 10. AFNetworking是否支持NTLM身份驗證?
- 11. ASP .NET Core Identity默認身份驗證與JWT身份驗證
- 12. Firefox不顯示身份驗證提示和Windows身份驗證
- 13. 如何保護Azure ACS身份驗證?
- 14. 如何在事務回滾時保持身份認證?
- 15. SimpleMembership MVC 4保持身份驗證,但未驗證
- 16. 如何使用Forms身份驗證保留默認頁面?
- 17. HTTP身份驗證不支持CGI
- 18. Flex FileReference不支持NTLM身份驗證
- 19. 如何使用JWT保持使用API進行身份驗證
- 20. 如何保持身份驗證發佈到Twitter的API?
- 21. Google雲消息傳遞是否提供/支持身份驗證,完整性和不可否認性?
- 22. ASP.NET窗體身份驗證和持久性身份驗證Cookie安全
- 23. 表單身份驗證是否記住身份驗證?
- 24. 是否可以在asp.net身份驗證中禁用雙因素身份驗證?
- 25. j_security_check身份驗證是否可以跟隨其他Web身份驗證機制?
- 26. 如何在Java中集成RSA自適應身份驗證?
- 27. 如何使用RSA加密/解密ASP.Net Forms身份驗證票
- 28. 如何保留ASP.NET窗體身份驗證Cookie,Http到Https(不同域)和身份驗證?
- 29. 重定向到PayPal時,ASP.NET身份驗證將保持不變
- 30. 用戶進行身份驗證,但不保持登錄Laravel 5.3
單靠RSA不能阻止中間人,這就是證書的用途。對於不可否認性,發件人使用_private_鍵創建簽名。 –