日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

區(qū)塊鏈如何進(jìn)行加密和簽名

Wildesbeast ? 來(lái)源:今日頭條 ? 作者:精通數(shù)據(jù)科學(xué) ? 2020-02-18 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

場(chǎng)景一

轉(zhuǎn)賬交易:

假設(shè)我要做個(gè)轉(zhuǎn)賬的app叫支付寶,要完成轉(zhuǎn)賬的功能,轉(zhuǎn)賬時(shí),需要輸入對(duì)方支付寶賬號(hào)和姓名,然后點(diǎn)擊轉(zhuǎn)賬,輸入支付密碼,就可以完成轉(zhuǎn)賬的功能。

實(shí)現(xiàn)方式,客戶(hù)端通過(guò)http協(xié)議發(fā)送轉(zhuǎn)賬報(bào)文給服務(wù)端

報(bào)文無(wú)加密和簽名機(jī)制

現(xiàn)在用戶(hù)甲要轉(zhuǎn)賬給用戶(hù)乙。

安全隱患

網(wǎng)絡(luò)傳輸不安全,如果有人截取客戶(hù)端請(qǐng)求報(bào)文,進(jìn)行篡改,比如篡改收款方的支付寶賬號(hào)和真實(shí)姓名,那么服務(wù)端就會(huì)把錢(qián)轉(zhuǎn)到別的地方去。

結(jié)論:需要防止報(bào)文被篡改

場(chǎng)景二

商城A要接支付寶移動(dòng)支付,大致流程:

客戶(hù)端app調(diào)用支付寶的sdk發(fā)送支付報(bào)文

客戶(hù)端接收支付寶服務(wù)端的處理響應(yīng)

商戶(hù)服務(wù)端接收支付寶服務(wù)端的交易成功通知

客戶(hù)端發(fā)送請(qǐng)求的安全隱患同場(chǎng)景一

服務(wù)端接收通知時(shí),存在如下隱患,黑客甲,去商城A

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

這是一個(gè)通知報(bào)文要做簽名的案例

需要注意的是,步驟2和3同樣需要做簽名驗(yàn)證

結(jié)論:需要確認(rèn)報(bào)文來(lái)自真實(shí)合法的服務(wù)端(其實(shí)在商戶(hù)對(duì)商戶(hù)的通信過(guò)程中,也需要確認(rèn)報(bào)文來(lái)自真實(shí)合法的客戶(hù)端)

場(chǎng)景一和場(chǎng)景二的最終結(jié)論

安全網(wǎng)絡(luò)通信過(guò)程中,需要防止報(bào)文被篡改

安全網(wǎng)絡(luò)通信過(guò)程中,需要客戶(hù)端和服務(wù)端雙方確認(rèn)對(duì)方的身份,即交易完成后,不可抵賴(lài)

方案一 對(duì)稱(chēng)加密簽名機(jī)制

具體方案:用一種對(duì)稱(chēng)加密算法將報(bào)文加密,并得出一個(gè)簽名串

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

假設(shè)最終的報(bào)文是:最終報(bào)文=原文&簽名串

此方案達(dá)到的效果:

如果黑客截取報(bào)文,并篡改原文,那么服務(wù)端進(jìn)行驗(yàn)簽的時(shí)候,將不會(huì)通過(guò)。

因?yàn)樵淖兓?,算出的簽名串?huì)改變,那么黑客需要重新計(jì)算出簽名串

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

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

前2個(gè)肯定是會(huì)暴露的,無(wú)法保密,而客戶(hù)端是app,密鑰也是暴露的,所以簽名串會(huì)被重新計(jì)算出來(lái),因此黑客將成功篡改轉(zhuǎn)賬報(bào)文。

方案二 對(duì)稱(chēng)加密簽名,動(dòng)態(tài)密鑰

從方案一我們得出一個(gè)結(jié)論:

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

那么我們可以動(dòng)態(tài)生成簽名的密鑰,并用rsa公鑰對(duì)其進(jìn)行加密(此處rsa私鑰在服務(wù)端,不會(huì)泄密,因?yàn)楹灻荑€不會(huì)被解密),然后傳至服務(wù)端

次方案用于場(chǎng)景一,可以解決報(bào)文被篡改的問(wèn)題。

但是服務(wù)端就無(wú)法確認(rèn)客戶(hù)端是否合法,尤其在機(jī)構(gòu)與機(jī)構(gòu)通信的時(shí)候,這個(gè)方案就更不可取。

且次方案不適合于方案2,支付寶服務(wù)端發(fā)通知的時(shí)候,總不能動(dòng)態(tài)產(chǎn)生密鑰,這樣你就無(wú)法判定報(bào)文是否是支付寶服務(wù)端發(fā)送來(lái)的。

方案三 報(bào)文加密(對(duì)稱(chēng)加非對(duì)稱(chēng))

從方案一我們得出一個(gè)結(jié)論:

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

那么我們就采取對(duì)報(bào)文加密,可用方式是對(duì)稱(chēng)加密和非對(duì)稱(chēng)加密

1.對(duì)稱(chēng)加密:3des

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

最終報(bào)文=3des密鑰2&簽名串

傳輸過(guò)程中,報(bào)文是加密的,無(wú)法篡改(因?yàn)闊o(wú)法拿到用戶(hù)關(guān)鍵信息,如session,tokenId等認(rèn)證信息),看似沒(méi)有問(wèn)題,但是密鑰1和密鑰2都可能泄密,而且3des會(huì)被解密掉,所以又回到方案一的結(jié)果。

2.非對(duì)稱(chēng)加密+對(duì)稱(chēng)加密:3des+rsa+md5

那么我們可以從方案二吸取經(jīng)驗(yàn),用rsa密鑰加密對(duì)稱(chēng)加密密鑰

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

最終報(bào)文=3des密鑰2|簽名串|rsarsa公鑰

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

原因在于簽名的密鑰,服務(wù)端和客戶(hù)端是一樣的,無(wú)法產(chǎn)生唯一性身份

我們需要用rsa來(lái)簽名

方案四 rsa簽名+https

報(bào)文加密是必須的,那么我們用https加密,其原理同非對(duì)稱(chēng)加密+對(duì)稱(chēng)加密

場(chǎng)景一方案:

客戶(hù)端產(chǎn)生一對(duì)公私鑰 pubKey_c,priKey_c

服務(wù)端產(chǎn)生一對(duì)公私鑰 pubkey_s,priKey_s

客戶(hù)端與服務(wù)端置換公鑰

最終持有情況如下:

客戶(hù)端:pubkey_s,priKey_c

服務(wù)端:pubKey_c,priKey_s

客戶(hù)端發(fā)送報(bào)文:

簽名串=rsapriKey_c

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

場(chǎng)景二,相對(duì)于場(chǎng)景二

服務(wù)端用pubKey_c做驗(yàn)簽,

產(chǎn)生效果:客戶(hù)端私鑰priKey_c沒(méi)有被盜取時(shí),可以防止報(bào)文被篡改,且服務(wù)端可以確認(rèn)信息來(lái)自合法的客戶(hù)端,在機(jī)構(gòu)與機(jī)構(gòu)通信時(shí),次種假設(shè)是成立的。

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

服務(wù)端響應(yīng)報(bào)文時(shí):

簽名串=rsapriKey_s

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

產(chǎn)生效果:因?yàn)榉?wù)端的私鑰priKey_s在理論上是不會(huì)泄密的,所以可以保證響應(yīng)報(bào)文不會(huì)被篡改,且來(lái)自真實(shí)合法的服務(wù)端

場(chǎng)景二方案:

支付寶服務(wù)端發(fā)送報(bào)文:

簽名串=rsapriKey_s

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

客戶(hù)端用pubkey_s來(lái)驗(yàn)簽即可,可保證,報(bào)文不會(huì)被篡改,且來(lái)自真實(shí)合法的服務(wù)端

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • APP
    APP
    +關(guān)注

    關(guān)注

    33

    文章

    1594

    瀏覽量

    76148
  • 支付寶
    +關(guān)注

    關(guān)注

    2

    文章

    467

    瀏覽量

    26063
  • 區(qū)塊鏈
    +關(guān)注

    關(guān)注

    112

    文章

    15578

    瀏覽量

    111214
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    IMX8MP 返回未簽名內(nèi)核映像的未找到 HAB 事件,為什么?

    我正在使用 UG10163(10.9 安全參考設(shè)計(jì))進(jìn)行安全啟動(dòng)。我生成了一個(gè) wic 映像,其中包括簽名引導(dǎo)加載程序和簽名內(nèi)核映像。 將此映像刷新到 SD卡后,我手動(dòng)將 /boot 文件夾中的
    發(fā)表于 04-07 07:33

    保姆級(jí)教程!RK3588 Linux6.1?固件簽名完整實(shí)現(xiàn)方案(不含rootfs)

    內(nèi)核)上實(shí)操固件簽名時(shí),踩了不少官方文檔的坑,經(jīng)過(guò)反復(fù)調(diào)試終于打通全流程。今天就把這份實(shí)戰(zhàn)經(jīng)驗(yàn)整理成保姆級(jí)教程,從配置到問(wèn)題排查,一步步帶大家搞定 RK3588 的固件簽名! 一、核心原理速覽 ? ? 固件簽名的核心邏輯是通過(guò)
    的頭像 發(fā)表于 01-14 17:21 ?2326次閱讀
    保姆級(jí)教程!RK3588 Linux6.1?固件<b class='flag-5'>簽名</b>完整實(shí)現(xiàn)方案(不含rootfs)

    對(duì)于設(shè)備上的舊固件如何進(jìn)行備份和恢復(fù)?

    對(duì)于設(shè)備上的舊固件,如何進(jìn)行備份和恢復(fù)?
    發(fā)表于 12-12 08:23

    單片機(jī)如何進(jìn)行加解密鑰操作,一般使用哪種形式,具體流程是什么樣子的?

    目前單片機(jī)如何進(jìn)行加解密鑰操作,一般使用哪種形式,具體流程是什么樣子的?
    發(fā)表于 12-04 06:09

    CW32F030C8T6數(shù)字簽名實(shí)戰(zhàn)

    對(duì)哈希值進(jìn)行RSA加密,生成簽名。 公鑰驗(yàn)證:在設(shè)備端用預(yù)置的公鑰解密簽名,與重新計(jì)算的哈希值比對(duì)。 2.3 代碼示例 (基于mbedTLS) 使用 CW32F030C8T6 實(shí)現(xiàn) E
    發(fā)表于 11-19 08:03

    CW32F030C8T6數(shù)字簽名的實(shí)戰(zhàn)指南

    對(duì)哈希值進(jìn)行RSA加密,生成簽名。 公鑰驗(yàn)證:在設(shè)備端用預(yù)置的公鑰解密簽名,與重新計(jì)算的哈希值比對(duì)。 2.3 代碼示例 (基于mbedTLS) 使用 CW32F030C8T6 實(shí)現(xiàn) E
    發(fā)表于 11-18 06:35

    L083最低功耗是多少,應(yīng)該如何進(jìn)行低功耗設(shè)計(jì)?有哪些注意事項(xiàng)?

    L083最低功耗是多少,應(yīng)該如何進(jìn)行低功耗設(shè)計(jì)?有哪些注意事項(xiàng)?
    發(fā)表于 11-12 07:29

    加密算法的應(yīng)用

    機(jī)。但是,由于加密技術(shù)的保密性,直到二戰(zhàn)結(jié)束后,人們才開(kāi)始研究加密技術(shù)的理論,進(jìn)一步推動(dòng)了加密技術(shù)的發(fā)展。 2. 加密算法的含義 加密
    發(fā)表于 10-24 08:03

    AES加密流程

    密鑰,這些輪密鑰將在后續(xù)的加密和解密過(guò)程中使用。 初始輪(Initial Round):在初始輪中,將待加密數(shù)據(jù)與第一個(gè)輪密鑰進(jìn)行異或運(yùn)算。這一步驟有助于消除數(shù)據(jù)的模式和統(tǒng)計(jì)特性,增強(qiáng)加密
    發(fā)表于 10-23 06:13

    何進(jìn)行聲音定位?

    文章主要介紹了如何利用一種簡(jiǎn)單的TDOA算法進(jìn)行聲音點(diǎn)位,并使用數(shù)據(jù)采集卡進(jìn)行聲音定位的實(shí)驗(yàn)。
    的頭像 發(fā)表于 09-23 15:47 ?2187次閱讀
    如<b class='flag-5'>何進(jìn)行</b>聲音定位?

    基于FPGA利用sm4進(jìn)行實(shí)時(shí)圖像加密

    求一份在fpga上利用sm4進(jìn)行實(shí)時(shí)圖像加密的文件
    發(fā)表于 09-15 19:05

    2KW逆變側(cè)功率管的損耗如何進(jìn)行計(jì)算詳細(xì)公式免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是2KW逆變側(cè)功率管的損耗如何進(jìn)行計(jì)算詳細(xì)公式免費(fèi)下載。
    發(fā)表于 08-29 16:18 ?34次下載

    請(qǐng)問(wèn)如何使用ICP工具對(duì)NUC505進(jìn)行加密編程?

    如何使用ICP工具對(duì)NUC505進(jìn)行加密編程?
    發(fā)表于 08-18 07:18

    請(qǐng)問(wèn)如何使用 Nu-Link 對(duì) NUC505 系列進(jìn)行加密文件離線編程?

    請(qǐng)問(wèn)如何使用 Nu-Link 對(duì) NUC505 系列進(jìn)行加密文件離線編程?
    發(fā)表于 08-18 06:27

    簽名證書(shū)工具cfssl詳解

    CFSSL(CloudFlare's PKI and TLS toolkit)由 CloudFlare 用go語(yǔ)言開(kāi)發(fā)的一個(gè)開(kāi)源工具,用于證書(shū)簽名、驗(yàn)證和管理。
    的頭像 發(fā)表于 06-11 16:30 ?874次閱讀
    自<b class='flag-5'>簽名</b>證書(shū)工具cfssl詳解
    乌鲁木齐县| 额尔古纳市| 高雄市| 新河县| 龙州县| 沧州市| 星座| 秭归县| 泾阳县| 莱西市| 平乡县| 内黄县| 乐昌市| 托克托县| 博野县| 开江县| 青海省| 西畴县| 阳山县| 安徽省| 五大连池市| 广宁县| 威远县| 萝北县| 桐庐县| 分宜县| 平原县| 海兴县| 五莲县| 凌云县| 乳源| 吉木萨尔县| 日照市| 明光市| 历史| 清新县| 扎兰屯市| 都匀市| 新营市| 潢川县| 临澧县|