rsa公鑰和私鑰到底哪一個纔是用來加密,哪一個用來解密?

本文轉自:91博客;原文地址:http://www.9191boke.com/138589019.html
html

公鑰和私鑰在一些銀行系統、第三方支付系統SDK中常常會遇到,剛接觸公鑰私鑰的朋友們估計很難區分二者的區別。算法

RSA公鑰和私鑰是什麼?安全

首先來講,RSA是一種非對稱加密算法,它是由三位數學家(Rivest、Shamir、Adleman)設計出來的。非對稱加密是相對於對稱加密而言的。對稱加密算法是指加密解密使用的是同一個祕鑰,而非對稱加密是由兩個密鑰(公鑰、私鑰)來進行加密解密的,因而可知非對稱加密安全性更高。加密

公鑰顧名思義就是公開的密鑰會發放給多個持有人,而私鑰是私有密碼每每只有一個持有人。設計

公私鑰特性htm

  • 公鑰與私鑰是成對出現的;開發

  • 私鑰文件中包含了公鑰數據,因此能夠基於私鑰導出公鑰;get

  • 密鑰越長,越難破解,因此2048位密鑰比1024位密鑰要更安全;博客

  • 公鑰和私鑰都是密鑰,被公開的那個就是公鑰,沒有被公開的那個就是私鑰。數學

公鑰和私鑰均可用於加密和解密

公鑰和私鑰均可以用於加解密操做,用公鑰加密的數據只能由對應的私鑰解密,反之亦然。雖然說二者均可用於加密,可是不一樣場景使用不一樣的密鑰來加密,規則以下:

一、私鑰用於簽名、公鑰用於驗籤

簽名和加密做用不一樣,簽名並非爲了保密,而是爲了保證這個簽名是由特定的某我的簽名的,而不是被其它人僞造的簽名,因此私鑰的私有性就適合用在簽名用途上。

私鑰簽名後,只能由對應的公鑰解密,公鑰又是公開的(不少人可持有),因此這些人拿着公鑰來解密,解密成功後就能判斷出是持有私鑰的人作的簽名,驗證了身份合法性。

二、公鑰用於加密、私鑰用於解密,這才能起到加密做用

由於公鑰是公開的,不少人能夠持有公鑰。若用私鑰加密,那全部持有公鑰的人均可以進行解密,這是不安全的!

若用公鑰加密,那隻能由私鑰解密,而私鑰是私有不公開的,只能由特定的私鑰持有人解密,保證的數據的安全性。

相關文章
相關標籤/搜索