色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

區塊鏈如何進行加密和簽名

Wildesbeast ? 來源:今日頭條 ? 作者:精通數據科學 ? 2020-02-18 14:31 ? 次閱讀

場景一

轉賬交易:

假設我要做個轉賬的app叫支付寶,要完成轉賬的功能,轉賬時,需要輸入對方支付寶賬號和姓名,然后點擊轉賬,輸入支付密碼,就可以完成轉賬的功能。

實現方式,客戶端通過http協議發送轉賬報文給服務端

報文無加密和簽名機制

現在用戶甲要轉賬給用戶乙。

安全隱患

網絡傳輸不安全,如果有人截取客戶端請求報文,進行篡改,比如篡改收款方的支付寶賬號和真實姓名,那么服務端就會把錢轉到別的地方去。

結論:需要防止報文被篡改

場景二

商城A要接支付寶移動支付,大致流程:

客戶端app調用支付寶的sdk發送支付報文

客戶端接收支付寶服務端的處理響應

商戶服務端接收支付寶服務端的交易成功通知

客戶端發送請求的安全隱患同場景一

服務端接收通知時,存在如下隱患,黑客甲,去商城A

人為模擬支付寶的通知報文,將訂單變成成功。

這是一個通知報文要做簽名的案例

需要注意的是,步驟2和3同樣需要做簽名驗證

結論:需要確認報文來自真實合法的服務端(其實在商戶對商戶的通信過程中,也需要確認報文來自真實合法的客戶端)

場景一和場景二的最終結論

安全網絡通信過程中,需要防止報文被篡改

安全網絡通信過程中,需要客戶端和服務端雙方確認對方的身份,即交易完成后,不可抵賴

方案一 對稱加密簽名機制

具體方案:用一種對稱加密算法將報文加密,并得出一個簽名串

舉例:MD5加密簽名,簽名串=md5(原文&密鑰)(其他對稱加密算法簽名道理是一樣的,不做詳述)

假設最終的報文是:最終報文=原文&簽名串

此方案達到的效果:

如果黑客截取報文,并篡改原文,那么服務端進行驗簽的時候,將不會通過。

因為原文變化了,算出的簽名串會改變,那么黑客需要重新計算出簽名串

要算出簽名串,需要知道如下要素

簽名算法(包含加密算法),原文,密鑰

前2個肯定是會暴露的,無法保密,而客戶端是app,密鑰也是暴露的,所以簽名串會被重新計算出來,因此黑客將成功篡改轉賬報文。

方案二 對稱加密簽名,動態密鑰

從方案一我們得出一個結論:

簽名算法(包含加密算法),原文,密鑰三者只要保證其中一個不被黑客截取,將無法算出簽名串,也就無法篡改報文。

那么我們可以動態生成簽名的密鑰,并用rsa公鑰對其進行加密(此處rsa私鑰在服務端,不會泄密,因為簽名密鑰不會被解密),然后傳至服務端

次方案用于場景一,可以解決報文被篡改的問題。

但是服務端就無法確認客戶端是否合法,尤其在機構與機構通信的時候,這個方案就更不可取。

且次方案不適合于方案2,支付寶服務端發通知的時候,總不能動態產生密鑰,這樣你就無法判定報文是否是支付寶服務端發送來的。

方案三 報文加密(對稱加非對稱)

從方案一我們得出一個結論:

簽名算法(包含加密算法),原文,密鑰三者只要保證其中一個不被黑客截取,將無法算出簽名串,也就無法篡改報文。

那么我們就采取對報文加密,可用方式是對稱加密和非對稱加密

1.對稱加密:3des

簽名串=md5(原文&密鑰1)

最終報文=3des密鑰2&簽名串

傳輸過程中,報文是加密的,無法篡改(因為無法拿到用戶關鍵信息,如session,tokenId等認證信息),看似沒有問題,但是密鑰1和密鑰2都可能泄密,而且3des會被解密掉,所以又回到方案一的結果。

2.非對稱加密+對稱加密:3des+rsa+md5

那么我們可以從方案二吸取經驗,用rsa密鑰加密對稱加密密鑰

簽名串=md5(原文&密鑰1)

最終報文=3des密鑰2|簽名串|rsarsa公鑰

此方案仍然有方案二的缺陷,只能解決場景1,不能解決場景2

原因在于簽名的密鑰,服務端和客戶端是一樣的,無法產生唯一性身份

我們需要用rsa來簽名

方案四 rsa簽名+https

報文加密是必須的,那么我們用https加密,其原理同非對稱加密+對稱加密

場景一方案:

客戶端產生一對公私鑰 pubKey_c,priKey_c

服務端產生一對公私鑰 pubkey_s,priKey_s

客戶端與服務端置換公鑰

最終持有情況如下:

客戶端:pubkey_s,priKey_c

服務端:pubKey_c,priKey_s

客戶端發送報文:

簽名串=rsapriKey_c

最終報文=https(報文原文+簽名串);

場景二,相對于場景二

服務端用pubKey_c做驗簽,

產生效果:客戶端私鑰priKey_c沒有被盜取時,可以防止報文被篡改,且服務端可以確認信息來自合法的客戶端,在機構與機構通信時,次種假設是成立的。

客戶端是app, 客戶端私鑰priKey_c會被盜取,不能保證客戶端的合法性(即客戶端可以不是官方提供的),但仍然可以防止報文被篡改。

服務端響應報文時:

簽名串=rsapriKey_s

最終報文=https(報文原文+簽名串);

產生效果:因為服務端的私鑰priKey_s在理論上是不會泄密的,所以可以保證響應報文不會被篡改,且來自真實合法的服務端

場景二方案:

支付寶服務端發送報文:

簽名串=rsapriKey_s

最終報文=https(報文原文+簽名串);

客戶端用pubkey_s來驗簽即可,可保證,報文不會被篡改,且來自真實合法的服務端

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • APP
    APP
    +關注

    關注

    33

    文章

    1577

    瀏覽量

    72675
  • 支付寶
    +關注

    關注

    2

    文章

    459

    瀏覽量

    24891
  • 區塊鏈
    +關注

    關注

    111

    文章

    15563

    瀏覽量

    106499
收藏 人收藏

    評論

    相關推薦

    SoC的數字簽名加解密過程

    SoC的數字簽名驗證是指在系統啟動或固件更新等關鍵時刻,對加載的固件或軟件進行數字簽名的驗證過程。通過驗證數字簽名,系統可以確保所加載的固件或軟件是經過授權和信任的,從而防止惡意代碼的執行和系統啟動過程的篡改。
    的頭像 發表于 10-21 14:52 ?308次閱讀

    何進行電源供應設計 – 第 4 部分

    電子發燒友網站提供《如何進行電源供應設計 – 第 4 部分.pdf》資料免費下載
    發表于 09-09 10:34 ?0次下載
    如<b class='flag-5'>何進行</b>電源供應設計 – 第 4 部分

    何進行電源供應設計

    電子發燒友網站提供《如何進行電源供應設計.pdf》資料免費下載
    發表于 09-09 10:33 ?0次下載
    如<b class='flag-5'>何進行</b>電源供應設計

    何進行電源設計–第5部分

    電子發燒友網站提供《如何進行電源設計–第5部分.pdf》資料免費下載
    發表于 09-07 11:11 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計–第5部分

    何進行電源設計-第1部分

    電子發燒友網站提供《如何進行電源設計-第1部分.pdf》資料免費下載
    發表于 09-07 11:10 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計-第1部分

    何進行電源設計–第2部分

    電子發燒友網站提供《如何進行電源設計–第2部分.pdf》資料免費下載
    發表于 09-07 11:09 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計–第2部分

    何進行電源設計–第3部分

    電子發燒友網站提供《如何進行電源設計–第3部分.pdf》資料免費下載
    發表于 09-07 11:08 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計–第3部分

    何進行電源設計–第6部分

    電子發燒友網站提供《如何進行電源設計–第6部分.pdf》資料免費下載
    發表于 09-06 15:05 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計–第6部分

    何進行電源設計–第4部分

    電子發燒友網站提供《如何進行電源設計–第4部分.pdf》資料免費下載
    發表于 09-06 15:04 ?0次下載
    如<b class='flag-5'>何進行</b>電源設計–第4部分

    何進行電源供應設計-第3部分

    電子發燒友網站提供《如何進行電源供應設計-第3部分.pdf》資料免費下載
    發表于 08-30 09:16 ?0次下載
    如<b class='flag-5'>何進行</b>電源供應設計-第3部分

    何進行IP檢測

    排查網絡連接問題,并及時的防范潛在的網絡攻擊。 那么,如何進行 IP 地址檢測呢?接下來我將進行圖示哦~ 使用操作系統自帶的工具 ① Windows 系統中,按win+R,輸入“ipconfig”命令。 ② Mac 系統中,則可以在“系統偏好設置”中的“網絡”
    的頭像 發表于 07-26 14:09 ?632次閱讀
    如<b class='flag-5'>何進行</b>IP檢測

    esp32c3安全啟動文檔里的簽名,使用與計算的簽名和使用idf.py簽名有什么不同?

    esp32c3安全啟動文檔里的簽名,使用與計算的簽名和使用idf.py簽名有什么不同?預簽名用的是--pub-key,普通的簽名用的是--k
    發表于 07-23 08:15

    OpenHarmony開發實例:【配置應用簽名信息】

    使用真機設備運行和調試OpenHarmony應用前,需要對應用進行簽名才能正常運行。
    的頭像 發表于 04-22 16:52 ?525次閱讀
    OpenHarmony開發實例:【配置應用<b class='flag-5'>簽名</b>信息】

    何進行RF PA Ruggedness的測試和評估呢?

    關于PA ruggedness設計測試問題,先介紹一下原理,如何進行ruggedness的測試和評估。
    的頭像 發表于 03-27 10:19 ?2748次閱讀
    如<b class='flag-5'>何進行</b>RF PA Ruggedness的測試和評估呢?

    TC375如何進行校準?

    初次使用 TC375,在使用 EVADC時,當輸入電壓是 0 時,轉換結果是 16,應該是沒有校準原因。 請問如何進行校準。
    發表于 01-31 06:49
    主站蜘蛛池模板: 国语自产偷成人精品视频 | 在线观看亚洲免费人成网址 | 么公在浴室了我的奶 | 超级最爽的乱淫片免费 | 99久久99久久精品国产片果冻 | 日韩av无码在线直播 | 超碰在线97av视频免费 | 国产日韩久久久精品影院首页 | 美女的jj| 欧美高清vivoesosexo10 | 无码爽死成人777在线观看网站 | 99精品免费在线观看 | 99久久久国产精品免费调教 | 久久成人永久免费播放 | 色偷偷888欧美精品久久久 | 国产午夜视频 | 无罩看奶禁18 | 国产一区在线观看免费 | 精品国产自在自线官方 | 艳鉧动漫片1~6全集在线 | 蜜芽国产在线精品欧美 | 5g在视影讯天天5g免费观看 | 精品亚洲永久免费精品 | 天天看学生视频 | 白丝制服被啪到喷水很黄很暴力 | 两百磅美女 | 亚洲无码小格式 | 97久久国产露脸精品国产 | 国内精品久久久久久西瓜色吧 | 国产精品无码亚洲精品 | 国产婷婷午夜无码A片 | 国产二级一片内射视频播放 | 免费毛片网站在线观看 | 美女一级毛片免费不卡视频 | 超碰国产视频免费播放 | 国产白丝精品爽爽久久久久久蜜臀 | 人妻少妇69式99偷拍 | 久久99国产精品二区不卡 | 精选国产AV精选一区二区三区 | 久久久久久久久女黄 | 中文字幕在线免费视频 |