Open API安全考慮

來源:互聯網
上載者:User

標籤:安全   open api   加密   解密   

很初級的簡單想法,先記下來。

需要有個年輕聰明的青年才俊論證一下:

1、是否用HTTPS,這些就沒有必要了。

2、嚴謹性:是否有漏洞,這麼做安全性依賴哪些要素,能多大程度上保證。

3、必要性:是否有冗餘環節。

4、效能:壓一下,注意監控CPU。


以下是本文。

一、管理1、所有的秘鑰都由我們產生並頒發。
2、我們需要儲存:
(1)我們自己的私密金鑰、公開金鑰。
(2)別人的公開金鑰。
(3)所有公開金鑰和實體(如:某組織、某組織中的某人、我們自己等)的對應關係。
3、頒發出去的私密金鑰由安全的方法傳遞給對方(隨身碟拷貝?)。最大限度保護對方公開金鑰和映射關係的私密性。
二、過程

1、身份認證過程:

(1)不需要帳號、密碼神馬的。

(2)請求發起過程:

該使用者在我們系統的編號設為uuid。

Step 1,對方自己產生一個種子,設為 seed,需確保Seed的隨機 。

Step 2,用我們的公開金鑰加密,結果設為 token1。

Step 3,用使用者自己的私密金鑰加密,結果設為token2。

使用者發 uuid,seed,token1和token2給我們。

(3)驗證過程:

Step 1:用自己私密金鑰對token1解密,得到seed。

Step 2:通過uuid獲得公開金鑰,用這個公開金鑰解密token2,也得到seed。

Step 3:比對Step 1和Step 2獲得的Seed是否相同。如果相同,傳輸成功。

Step 4:驗證成功後,將Token用使用者公開金鑰加密,發給使用者。我們的伺服器儲存Token 20分鐘。

2、發送資料給我們

(1)發送過程:

資料設為Data。

Step 1:用我們的公開金鑰對Data加密,得到密文C1(需要驗證一下效率)。

Step 2:對密文產生數字摘要,設為Z1。

Step 3:用使用者自己的私密金鑰對摘要加密,得到密文Z2。

Step 4:用我們的公開金鑰對C2和Token加密,得到密文C3.

Step 5:發送C1和C3給我們。

(2)接收過程:

Step 1:用我們自己的私密金鑰解密得到Data、Z2和Token。

Step 2:通過Token獲得使用者公開金鑰,對Z2解密得到Z1。

Step 3:對Data產生數字摘要,設為Z1’。

Step 4:比較Z1‘和Z1,如果相同,則接受Data。

3、反饋資料給對方:

blabla

附錄:掃盲

(以下內容轉自互連網,原始連結... Err...隨手把網頁關了...)

      公開金鑰和私密金鑰就是俗稱的不對稱式加密方式,是從以前的對稱式加密(使用使用者名稱與密碼)方式的提高。用電子郵件的方式說明一下原理。
      使用公開金鑰與私密金鑰的目的就是實現安全的電子郵件,必須實現如下目的:
      1. 我發送給你的內容必須加密,在郵件的傳輸過程中不能被別人看到。
      2. 必須保證是我發送的郵件,不是別人冒充我的。
      要達到這樣的目標必鬚髮送郵件的兩人都有公開金鑰和私密金鑰。
      公開金鑰,就是給大家用的,你可以通過電子郵件發布,可以通過網站讓別人下載,公開金鑰其實是用來加密/驗章用的。私密金鑰,就是自己的,必須非常小心儲存,最好加上 密碼,私密金鑰是用來解密/簽章,首先就Key的所有權來說,私密金鑰只有個人擁有。公開金鑰與私密金鑰的作用是:用公開金鑰加密的內容只能用私密金鑰解密,用私密金鑰加密的內容只能 用公開金鑰解密。
      比如說,我要給你發送一個加密的郵件。首先,我必須擁有你的公開金鑰,你也必須擁有我的公開金鑰。
      首先,我用你的公開金鑰給這個郵件加密,這樣就保證這個郵件不被別人看到,而且保證這個郵件在傳送過程中沒有被修改。你收到郵件後,用你的私密金鑰就可以解密,就能看到內容。
      其次我用我的私密金鑰給這個郵件加密,發送到你手裡後,你可以用我的公開金鑰解密。因為私密金鑰只有我手裡有,這樣就保證了這個郵件是我發送的。
      當A->B資料時,A會使用B的公開金鑰加密,這樣才能確保只有B能解開,否則普羅福士都能解開加密的訊息,就是去了資料的保密性。驗證方面則是使用簽 驗章的機制,A傳資料給大家時,會以自己的私密金鑰做簽章,如此所有收到訊息的人都可以用A的公開金鑰進行驗章,便可確認訊息是由 A 發出來的了。

Open API安全考慮

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.