公鑰和私鑰
一直以來對公鑰和私鑰都理解得不是很透徹,感覺到模稜兩可。今天在網上找了半天,通過檢視對這個金鑰對的理解,總算弄清楚了。
公鑰和私鑰就是俗稱的不對稱加密方式,是從以前的對稱加密(使用使用者名稱與密碼)方式的提高。用電子郵件的方式說明一下原理。
使用公鑰與私鑰的目的就是實現安全的電子郵件,必須實現如下目的:
1. 我傳送給你的內容必須加密,在郵件的傳輸過程中不能被別人看到。
2. 必須保證是我傳送的郵件,不是別人冒充我的。
要達到這樣的目標必須傳送郵件的兩人都有公鑰和私鑰。
公鑰,就是給大家用的,你可以通過電子郵件釋出,可以通過網站讓別人下載,公鑰其實是用來加密/驗章用的。私鑰,就是自己的,必須非常小心儲存,最好加上 密碼,私鑰是用來解密/簽章,首先就Key的所有權來說,私鑰只有個人擁有。公鑰與私鑰的作用是:用公鑰加密的內容只能用私鑰解密,用私鑰加密的內容只能 用公鑰解密。
比如說,我要給你傳送一個加密的郵件。首先,我必須擁有你的公鑰,你也必須擁有我的公鑰。
首先,我用你的公鑰給這個郵件加密,這樣就保證這個郵件不被別人看到,而且保證這個郵件在傳送過程中沒有被修改。你收到郵件後,用你的私鑰就可以解密,就能看到內容。
其次我用我的私鑰給這個郵件加密,傳送到你手裡後,你可以用我的公鑰解密。因為私鑰只有我手裡有,這樣就保證了這個郵件是我傳送的。
當A->B資料時,A會使用B的公鑰加密,這樣才能確保只有B能解開,否則普羅大眾都能解開加密的訊息,就是去了資料的保密性。驗證方面則是使用籤 驗章的機制,A傳資料給大家時,會以自己的私鑰做簽章,如此所有收到訊息的人都可以用A的公鑰進行驗章,便可確認訊息是由 A 發出來的了。
公鑰和私鑰就是俗稱的不對稱加密方式,是從以前的對稱加密(使用使用者名稱與密碼)方式的提高。用電子郵件的方式說明一下原理。
使用公鑰與私鑰的目的就是實現安全的電子郵件,必須實現如下目的:
1. 我傳送給你的內容必須加密,在郵件的傳輸過程中不能被別人看到。
2. 必須保證是我傳送的郵件,不是別人冒充我的。
要達到這樣的目標必須傳送郵件的兩人都有公鑰和私鑰。
公鑰,就是給大家用的,你可以通過電子郵件釋出,可以通過網站讓別人下載,公鑰其實是用來加密/驗章用的。私鑰,就是自己的,必須非常小心儲存,最好加上 密碼,私鑰是用來解密/簽章,首先就Key的所有權來說,私鑰只有個人擁有。公鑰與私鑰的作用是:用公鑰加密的內容只能用私鑰解密,用私鑰加密的內容只能 用公鑰解密。
比如說,我要給你傳送一個加密的郵件。首先,我必須擁有你的公鑰,你也必須擁有我的公鑰。
首先,我用你的公鑰給這個郵件加密,這樣就保證這個郵件不被別人看到,而且保證這個郵件在傳送過程中沒有被修改。你收到郵件後,用你的私鑰就可以解密,就能看到內容。
其次我用我的私鑰給這個郵件加密,傳送到你手裡後,你可以用我的公鑰解密。因為私鑰只有我手裡有,這樣就保證了這個郵件是我傳送的。
當A->B資料時,A會使用B的公鑰加密,這樣才能確保只有B能解開,否則普羅大眾都能解開加密的訊息,就是去了資料的保密性。驗證方面則是使用籤 驗章的機制,A傳資料給大家時,會以自己的私鑰做簽章,如此所有收到訊息的人都可以用A的公鑰進行驗章,便可確認訊息是由 A 發出來的了。
數字證書的原理
數字證書採用公鑰體制,即利用一對互相匹配的金鑰進行加密、解密。每個使用者自己設定一把特定的僅為本人所知的私有金鑰(私鑰),用它進行解密和簽名;同時 設定一把公共金鑰(公鑰)並由本人公開,為一組使用者所共享,用於加密和驗證簽名。當傳送一份保密檔案時,傳送方使用接收方的公鑰對資料加密,而接收方則使 用自己的私鑰解密,這樣資訊就可以安全無誤地到達目的地了。通過數字的手段保證加密過程是一個不可逆過程,即只有用私有金鑰才能解密. 在公開金鑰密碼體制中,常用的一種是RSA體制。
使用者也可以採用自己的私鑰對資訊加以處理,由於金鑰僅為本人所有,這樣就產生了別人無法生成的檔案,也就形成了數字簽名。採用數字簽名,能夠確認以下兩點:
(1)保證資訊是由簽名者自己簽名傳送的,簽名者不能否認或難以否認;
(2)保證資訊自簽發後到收到為止未曾作過任何修改,簽發的檔案是真實檔案。
轉自http://blog.163.com/gou_he_ping/blog/static/172761996201091483640200/
相關文章
- openSSL生成公鑰和私鑰
- 01_私鑰、公鑰和地址
- php中的公鑰和私鑰PHP
- 使用openssl生成rsa公鑰和私鑰
- 金鑰,私鑰,公鑰的區分
- Mac 使用openssl生成RSA公鑰和私鑰Mac
- 私鑰與公鑰有何不同?
- SSH 公鑰私鑰的生成管理
- SSH公鑰私鑰認證原理
- php使用openssl生成公鑰私鑰PHP
- OpenSSL 公鑰私鑰加解密封裝解密封裝
- [SSL]公鑰與私鑰典型應用
- 支付介面教程——公鑰與私鑰,雙鑰加密和數字簽名加密
- MAC OSX 下 使用openssl 命令 生成RSA公鑰和私鑰Mac
- 蘋果ios簽名的公鑰與私鑰蘋果iOS
- 私鑰和公鑰到底是誰來加密、誰來解密?加密解密
- SSH-keygen rsa 金鑰對根據私鑰生成公鑰
- 使用公鑰和私鑰實現LINUX下免密登入Linux
- 非對稱加密演算法RSA中的公鑰和私鑰加密演算法
- 【加密演算法】PFX檔案提取公鑰私鑰加密演算法
- 公鑰基礎設施和密碼學中的私鑰的角色密碼學
- Mac OS上執行openssl命令操作,生成RSA私鑰和RSA公鑰Mac
- 區塊鏈之比特幣的私鑰,公鑰和地址是什麼?區塊鏈比特幣
- 完成ssh無密碼的驗證,採用公鑰、私鑰密碼
- TLS、SSL、CA 證書、公鑰、私鑰。。。今天捋一捋!TLS
- 公鑰私鑰gitee都不行,新手小白破局(windows憑據)GiteeWindows
- 使用公鑰/私鑰對設定免密的 Linux 登入方式Linux
- 【韭菜幣讀】用Emoji科普公鑰與私鑰的基本原理
- java中的使用RSA演算法進行公鑰加密私鑰解密 .Java演算法加密解密
- C# Rsa加密(私鑰加密、公鑰解密、金鑰格式轉換、支援超大長度分段加密)C#加密解密
- 把Java生成的RSA公鑰、私鑰轉換成.NET使用的XML格式JavaXML
- C#和JAVA的RSA金鑰、公鑰轉換C#Java
- 橢圓曲線加密演算法中公鑰與私鑰互換性分析加密演算法
- 從Java金鑰庫讀取輸出私鑰Java
- 生成 Git 公鑰Git
- 公鑰加密之外加密
- PHP中使用OpenSSL生成RSA公鑰私鑰及進行加密解密示例(非對稱加密)PHP加密解密
- 證書過期?私鑰洩露?掌控您的證書和私鑰,維護網站安全和聲譽!網站