導航:首頁 > 文檔加密 > 鏈式加密的應用

鏈式加密的應用

發布時間:2025-02-23 17:03:14

A. 國內比較突出的幾款郵件加密軟體有知道的嗎

第一種:利用對稱加密演算法加密郵件
對稱加密演算法是應用較早的加密演算法,技術成熟。在對稱加密演算法中,數據發信方將明文(原始數據)和加密密鑰一起經過特殊加密演算法處理後,使其變成復雜的加密密文發送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的密鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。在對稱加密演算法中,使用的密鑰只有一個,發收信雙方都使用這個密鑰對數據進行加密和解密,這就要求解密方事先必須知道加密密鑰。對稱加密演算法的特點是演算法公開、計算量小、加密速度快、加密效率高。不足之處是,交易雙方都使用同樣鑰匙,安全性得不到保證。利用對稱密碼演算法對電子郵件進行加密,需要解決密碼的傳遞,保存、交換。這種方式的郵件加密系統目前很少使用。

典型基於對稱加密的郵件加密產品:Office口令加密,PDF口令加密、WinRAR口令加密、WinZip口令加密。(這種方式用於電子郵件加密上只能用於加密附件)。

第二種:利用鏈式加密體系進行電子郵件加密

這種機制以一個隨機生成的密鑰(每次加密不一樣),再用對稱加密演算法(如3DES、IDEA演算法)對明文加密,然後用RSA非對稱演算法對該密鑰加密。這樣收件人同樣是用RSA解出這個隨機密鑰,再用對稱加密演算法解密郵件本身。這樣的鏈式加密就做到了既有RSA體系的保密性,又有對稱加密演算法的快捷性。此外,鏈式加密體系的密鑰管理由用戶自己管理,公鑰的交換基於信任機制。如:假設A想要獲得B的公開密鑰,可以採取幾種方法,包括拷貝給A、通過電話驗證公開密鑰是否正確、從雙方都信任的人C那裡獲得、從認證中心獲得等。這樣,用戶的電子郵件就是非常安全的。

典型基於鏈式加密體系郵件加密產品:MailCloak(電子郵封)

第三種:利用基於身份的密碼技術進行電子郵件加密

為簡化傳統公鑰密碼系統的密鑰管理問題,1984年,以色列科學家、著名的RSA體制的發明者之一A. Shamir提出基於身份密碼的思想:將用戶公開的身份信息(如e-mail地址,IP地址,名字……,等等)作為用戶公鑰,用戶私鑰由一個稱為私鑰生成者的可信中心生成。在隨後的二十幾年中,基於身份密碼體制的設計成為密碼學界的一個熱門的研究領域。但是由於在此機制下,用戶的密鑰都是在伺服器端託管,用戶的信息安全安全性還要依賴於伺服器安全及服務提供商的承諾。

典型基於身份密碼的郵件加密產品:賽曼郵件天使系統

B. 區塊鏈運用落地有哪些領域

1、醫療

在醫療領域,醫院與醫院微V-BQ爾無吧疤Y之間的數據共享意味著更精確的診斷,更有效的治療,還能推動醫療系統的整體服務能力。但是,數據的共享也意味著醫患的隱私暴露問題,區塊鏈技術可以讓醫院、患者和醫療利益鏈上的各方在區塊鏈網路里共享數據,而不必擔憂數據的安全性和完整性。

2、物流

目前,物流最令人詬病的問題就是丟件漏配罩件及快件損壞,而區塊鏈技術可以記錄貨物從發出到接受過程中的所有環節,通過網路共識,直接定位到快遞中間環節的問題所在,確保信息的可追蹤性,從而避免快遞爆倉丟包、誤領錯領等問題的發生。

3、大數據

大數據是現代企業發展中不可或缺的一環,而區塊鏈所具備的安全性和不可篡改性,能讓更多數據安全的被解放出來。基於全網共識為微V-BQ爾無吧疤Y基礎的數據可信的區塊鏈數據,是不可篡改的、安全的、也使數據的質量獲得前所未游磨有的強信任背書,也使資料庫的發展進入一個新時代。

4、分布式商業平台

結合區塊鏈技術去中心化、分布式賬薄等優勢來看,這項技術與商業平台領域有很多值得關注的融合點,如果能夠以區塊鏈技術為核心支撐技術,在商品交易領域研究和開發基於區塊鏈技術的交易模式和交易系統,直接交易,這樣一來,生產者能獲得更大的收益,消費者也獲得更低的產品成本,可謂兩全其美。

(2)鏈式加密的應用擴展閱讀

一般說來,區塊鏈系統由數據層、網路層、共識層、激勵層、合約層和應用層組成。

其中,數據層封裝了底層數據區塊以及相關的數據加密和時間戳等基礎數據和基本演算法;

網路層則包括分布式組網培磨鬧機制、數據傳播機制和數據驗證機制等;共識層主要封裝網路節點的各類共識演算法;

激勵層將經濟因素集成到區塊鏈技術體系中來,主要包括經濟激勵的發行機制和分配機制等;

合約層主要封裝各類腳本、演算法和智能合約,是區塊鏈可編程特性的基礎;

應用層則封裝了區塊鏈的各種應用場景和案例。

該模型中,基於時間戳的鏈式區塊結構、分布式節點的共識機制、基於共識算力的經濟激勵和靈活可編程的智能合約是區塊鏈技術最具代表性的創新點。

C. PGP是什麼

PGP(Pretty Good Privacy),是一個基於RSA公匙加密體系的郵件加密軟體。可以用它對郵件保密以防止非授權者閱讀,它還能對郵件加上數字簽名從而使收信人可以確認郵件的發送者,並能確信郵件沒有被篡改。它可以可以提供一種安全的通訊方式,而事先並不需要任何保密的渠道用來傳遞密匙。它採用了一種RSA和傳統加密的雜合演算法,用於數字簽名的郵件文摘演算法,加密前壓縮等,還有一個良好的人機工程設計。它的功能強大,有很快的速度。而且它的源代碼是免費的。

實際上PGP的功能還包括: PGP可以用來加密文件,還可以用PGP代替UUencode 生成RADIX 64 格式(就是MIME 的 BASE 64格式)的編碼文件。

PGP 的創始人是美國的 Phil Zimmermann。他的創造性在於他把RSA公匙體系的方便和傳統加密體系的高速度結合起來,並且在數字簽名和密匙認證管理機制上有巧妙的設計。因此PGP成為幾乎最流行的公匙加密軟體包。

1.首先簡要介紹PGP加密系統的流程。

PGP加密系統是採用公開密鑰加密與傳統密鑰加密相結合的一種加密技術。它使用一對數學上相關的鑰匙,其中一個(公鑰)用來加密信息,另一個(私鑰)用來解密信息。

PGP採用的傳統加密技術部分所使用的密鑰稱為「會話密鑰」(sek)。每次使用時,PGP都隨機產生一個128位的IDEA會話密鑰,用來加密報文。公開密鑰加密技術中的公鑰和私鑰則用來加密會話密鑰,並通過它間接地保護報文內容。

PGP中的每個公鑰和私鑰都伴隨著一個密鑰證書。它一般包含以下內容:

密鑰內容(用長達百位的大數字表示的密鑰)
密鑰類型(表示該密鑰為公鑰還是私鑰)
密鑰長度(密鑰的長度,以二進制位表示)
密鑰編號(用以唯一標識該密鑰)
創建時間
用戶標識 (密鑰創建人的信息,如姓名、電子郵件等)
密鑰指紋(為128位的數字,是密鑰內容的提要表示密鑰唯一的特徵)
中介人簽名(中介人的數字簽名,聲明該密鑰及其所有者的真實性,包括中介人的密鑰編號和標識信息)
PGP把公鑰和私鑰存放在密鑰環(KEYR)文件中。PGP提供有效的演算法查找用戶需要的密鑰。

PGP在多處需要用到口令,它主要起到保護私鑰的作用。由於私鑰太長且無規律,所以難以記憶。PGP把它用口令加密後存入密鑰環,這樣用戶可以用易記的口令間接使用私鑰。

PGP的每個私鑰都由一個相應的口令加密。PGP主要在3處需要用戶輸入口令:

需要解開受到的加密信息時,PGP需要用戶輸入口令,取出私鑰解密信息
當用戶需要為文件或信息簽字時,用戶輸入口令,取出私鑰加密
對磁碟上的文件進行傳統加密時,需要用戶輸入口令
2.以上介紹了PGP的工作流程,下面將簡介與PGP相關的加密、解密方法以及PGP的密鑰管理機制。

PGP是一種供大眾使用的加密軟體。電子郵件通過開放的網路傳輸,網路上的其他人都可以監聽或者截取郵件,來獲得郵件的內容,因而郵件的安全問題就比較突出了。保護信息不被第三者獲得,這就需要加密技術。還有一個問題就是信息認證,如何讓收信人確信郵件沒有被第三者篡改,這就需要數字簽名技術。RSA公匙體系的特點使它非常適合用來滿足上述兩個要求:保密性(Privacy)和認證性(Authentication)。

RSA(Rivest-Shamir-Adleman)演算法是一種基於大數不可能質因數分解假設的公匙體系。簡單地說就是找兩個很大的質數,一個公開即公鑰,另一個不告訴任何人,即私鑰。這兩個密匙是互補的,就是說用公匙加密的密文可以用私匙解密,反過來也一樣。

假設甲要寄信給乙,他們互相知道對方的公匙。甲就用乙的公匙加密郵件寄出,乙收到後就可以用自己的私匙解密出甲的原文。由於沒別人知道乙的私匙,所以即使是甲本人也無法解密那封信,這就解決了信件保密的問題。另一方面由於每個人都知道乙的公匙,他們都可以給乙發信,那麼乙就無法確信是不是甲的來信。這時候就需要用數字簽名來認證。

在說明數字簽名前先要解釋一下什麼是「郵件文摘」(message digest)。郵件文摘就是對一封郵件用某種演算法算出一個最能體現這封郵件特徵的數來,一旦郵件有任何改變這個數都會變化,那麼這個數加上作者的名字(實際上在作者的密匙里)還有日期等等,就可以作為一個簽名了。PGP是用一個128位的二進制數作為「郵件文摘」的,用來產生它的演算法叫MD5(message digest 5)。 MD5是一種單向散列演算法,它不像CRC校驗碼,很難找到一份替代的郵件與原件具有同樣的MD5特徵值。

回到數字簽名上來,甲用自己的私匙將上述的128位的特徵值加密,附加在郵件後,再用乙的公匙將整個郵件加密。這樣這份密文被乙收到以後,乙用自己的私匙將郵件解密,得到甲的原文和簽名,乙的PGP也從原文計算出一個128位的特徵值來和用甲的公匙解密簽名所得到的數比較,如果符合就說明這份郵件確實是甲寄來的。這樣兩個安全性要求都得到了滿足。

PGP還可以只簽名而不加密,這適用於公開發表聲明時,聲明人為了證實自己的身份,可以用自己的私匙簽名。這樣就可以讓收件人能確認發信人的身份,也可以防止發信人抵賴自己的聲明。這一點在商業領域有很大的應用前途,它可以防止發信人抵賴和信件被途中篡改。

PGP用的實際上是RSA和傳統加密的雜合演算法。因為RSA演算法計算量極大在速度上不適合加密大量數據,PGP實際上用來加密的不是RSA本身,而是採用了一種叫IDEA的傳統加密演算法。傳統加密,一般說來說就是用一個密匙加密明文,然後用同樣的密匙解密。這種方法的代表是DES,也就是乘法加密,它的主要缺點就是密匙的傳遞渠道解決不了安全性問題,不適合網路環境郵件加密需要。IDEA的加(解)密速度比RSA快得多,所以實際上PGP是以一個隨機生成密匙(每次加密不同)用IDEA演算法對明文加密,然後用RSA演算法對該密匙加密。這樣收件人同樣是用RSA解密出這個隨機密匙,再用IDEA解密郵件本身。這樣的鏈式加密就做到了既有RSA體系的保密性,又有IDEA演算法的快捷性。PGP利用這種鏈式加密,既保證了保密性,又保證了加密的速度。

PGP最核心的功能是:文件加密、通信加密和數字簽名。下面將簡介一些PGP輔助功能,它們雖然不是整個加密系統的核心,但卻起到了協調各部分和方便用戶的作用。這兒主要介紹PGP的密鑰管理機制。

一個成熟的加密體系必然要有一個成熟的密匙管理機制配套。公匙體制的提出就是為了解決傳統加密體系的密匙分配過程難以保密的缺點。如果密匙是通過網路傳送,那麼網路上其他人就可以通過監聽得到。舉個例子:Novell Netware 的老版本中,用戶的密碼是以明文在線路中傳輸的,這樣監聽者輕易就獲得了他人的密碼。當然 Netware 4.1 中數據包頭的用戶密碼現在是加密的了。對PGP來說公匙本來就要公開,就沒有防監聽的問題。但公匙的發布中仍然存在安全性問題,例如公匙的被篡改(Public Key Tampering),這可能是公匙密碼體系中最大的漏洞。必須有一種機制保證用戶所得到的公鑰是正確的,而不是別人偽造的。下面舉一個例子來說明這個問題,以及如何正確地用PGP堵住這個漏洞。

假設Mike想給Alice發封信,那他必須有Alice的公匙。該用戶從BBS上下載了Alice的公匙,並用它加密了信件用BBS的Email功能發給了Alice。但是,另一個用戶叫Charlie的用戶潛入BBS,把他自己用Alice的名字生成的密匙對中的公匙替換了Alice的公匙,而參與通信的這兩個人都不知道。那麼Mike用來發信的公匙就不是Alice的而是Charlie的,一切看來都很正常。於是Charlie就可以用他手中的私匙來解密Mike給Alice的信,甚至他還可以用Alice真正的公匙來轉發Mike給Alice的信,這樣誰都不會起疑心,他如果想改動Mike給Alice的信也沒問題。甚至他還可以偽造Alice的簽名給Mike或其他人發信,因為這些用戶手中的公匙是偽造的,他們會以為真是Alice的來信。

防止這種情況出現的最好辦法是避免讓任何其他人有機會篡改公匙,比如直接從Alice手中得到她的公匙,然而這在很多情況下是比較困難的。PGP發展了一種公匙介紹機制來解決這個問題。舉例來說:如果Mike和Alice有一個共同的朋友David,而David知道他手中的Alice的公匙是正確的(關於如何認證公匙,PGP還有一種方法,後面會談到,這里假設David已經和Alice認證過她的公匙)。這樣David可以用他自己的私匙在Alice的公匙上簽名,表示他擔保這個公匙屬於Alice。當然Mike需要用David的公匙來校驗他給出的Alice的公匙,同樣David也可以向Alice認證Mike的公匙,這樣David就成為Mike和Alice之間的「介紹人」。這樣Alice或David就可以放心地把David簽過字的Alice的公匙上載到BBS上讓Mike去拿,沒人可能去篡改它而不被發現,即使是BBS的管理員。這就是從公共渠道傳遞公匙的安全手段。

那麼怎麼能安全地得到David的公匙呢,確實有可能Mike拿到的David的公匙也是假的,但這就要求這個偽造密鑰的人參與這整個過程,他必須對這三個人都很熟悉,還要策劃很久,這一般不可能。當然,PGP對這種可能也有預防的建議,那就是由一個大家普遍信任的人或機構擔當這個角色,即所謂的「密匙侍者」或「認證權威」(認證中心),每個由他簽字的公匙都被認為是真的,這樣大家只要有一份他的公匙就行了,認證這個人的公匙是方便的,因為他廣泛提供這個服務,假冒他的公匙是很極困難的,因為他的公匙流傳廣泛。這樣的「權威」適合由非個人控制組織或政府機構充當,現在已經有等級認證制度的機構存在。

對於那些非常分散的人們,PGP更贊成使用私人方式的密匙轉介方式,因為這樣有機的非官方途徑更能反映出人們自然的社會交往,而且人們也能自由地選擇信任的人來介紹。總之和不認識的人們之間的交往一樣。每個公匙有至少一個「用戶名」(User ID),最好再加上本人的Email地址,以免混淆。

3.下面,再介紹如何通過電話認證密匙。

每個密匙有它們自己的標識(keyID),keyID是一個八位十六進制數,兩個密匙具有相同keyID的可能性是幾十億分之一,而且PGP還提供了一種更可靠的標識密匙的方法:「密匙指紋」(key's fingerprint)。每個密匙對應一串數字(十六個兩位十六進制數),這個指紋重復的可能就更微乎其微了。而且任何人無法指定生成一個具有某個指紋的密匙,密匙是隨機生成的,從指紋也無法反推出密匙來。這樣當拿到某人的公匙後就可以和他在電話上核對這個指紋,從而認證他的公匙。如果無法直接和通信的另一方直接通電話,可以和公鑰介紹機制中的中間介紹人通電話認證該介紹人的公匙,從而通過介紹人認證了通信另一方的公匙,這就是直接認證和間接介紹的結合。

這樣又引出一種方法,就是把具有不同人簽名的自己的公匙收集在一起,發送到公共場合,這樣可以希望大部分人至少認識其中一個人,從而間接認證了你的公匙。同樣你簽了朋友的公匙後應該寄回給他,這樣就可以讓他可以通過你被你的其他朋友所認證。和現實社會中人們的交往一樣。PGP會自動為你找出你拿到的公匙中有哪些是你的朋友介紹來的,那些是你朋友的朋友介紹來的,哪些則是朋友的朋友的朋友介紹的……它會幫你把它們分為不同的信任級別,讓你參考決定對它們的信任程度。你可以指定某人有幾層轉介公匙的能力,這種能力是隨著認證的傳遞而遞減的。

轉介認證機制具有傳遞性,這是個有趣的問題。PGP的作者Phil Zimmermann說過一句話:「 信賴不具有傳遞性;我有個我相信決不撒謊的朋友。可是他是個認定總統決不撒謊的傻瓜,可很顯然我並不認為總統決不撒謊。」

上面所說的是關於公匙的安全性問題,這是PGP安全的核心。另外,和傳統單密匙體系一樣,私匙的保密也是決定性的。相對公匙而言,私匙不存在被篡改的問題,但存在泄露的問題。RSA的私匙是很長的一個數字,用戶不可能將它記住,PGP的辦法是讓用戶為隨機生成的RSA私匙指定一個口令(pass phase)。只有通過給出口令才能將私匙釋放出來使用,用口令加密私匙的方法保密程度和PGP本身是一樣的。所以私匙的安全性問題實際上首先是對用戶口令的保密。當然私匙文件本身失密也很危險,因為破譯者所需要的只是用窮舉法(強力攻擊)試探出口令了,雖說很困難但畢竟是損失了一層安全性。需要說明的是:最好不要把私鑰寫在紙上或者某一文件里,因為這樣很容易被別人得到在這里。

PGP在安全性問題上的審慎考慮體現在PGP的各個環節。比如每次加密的實際密匙是個隨機數,大家都知道計算機是無法產生真正的隨機數的。PGP程序對隨機數的產生是很審慎的,關鍵的隨機數像RSA密匙的產生是從用戶敲鍵盤的時間間隔上取得隨機數種子的。對於磁碟上的 randseed.bin 文件是採用和郵件同樣強度的加密的。這有效地防止了他人從randseed.bin文件中分析出加密實際密匙的規律來。

4.最後提一下PGP的加密前預壓縮處理,PGP內核使用PKZIP演算法來壓縮加密前的明文。

一方面對電子郵件而言,壓縮後加密再經過7bits編碼密文有可能比明文更短,這就節省了網路傳輸的時間。另一方面,明文經過壓縮,實際上相當於經過一次變換,信息更加雜亂無章,對明文攻擊的抵禦能力更強。PKZIP演算法是一個公認的壓縮率和壓縮速度都相當好的壓縮演算法。在PGP中使用的是PKZIP 2.0版本兼容的演算法。

5.參考書目:

Philip Zimmermann : 「PGP User's Guide Volume I : Essential Topics」
NAI

D. 區塊鏈技術原理與應用 介紹一下

1、區塊鏈是一串使用密碼學方法相關聯產生的數據塊,每一個數據塊中包含了過去十分鍾內所有比特幣網路交易的信息,用於驗證其信息的有效性(防偽)和生成下一個區塊。是比特幣的底層技術,像一個資料庫賬本,記載所有的交易記錄。
2、廣義定義:利用加密鏈式結構來驗證與存儲數據、利用分布式節點共識演算法來生成和更新數據、利用自動化腳本代碼(智能合約)來變成和操作數據的一種全新的去中心化基礎架構與分布式計算範式。
3、狹義定義:按照時間順序將數據區塊以鏈條的方式組合成特定數據結構,並以密碼學方式保證的不可篡改和不可偽造的去中心化共享賬戶。
4、區塊鏈的特點:去中心化:區塊鏈數據的驗證、記賬、存儲、維護和傳輸等過程均是基於分布式系統機構,採用純數學方法而不是中心結構來建立分布式節點間的信任關系,從而形成去中心化的可信任的分布式系統。
5、時序數據:區塊鏈採用帶有時間戳的鏈式區塊結構存儲數據,從而為數據增加了時間維度,具有極強的可驗證性和可追溯性。
6、集體維護:區塊鏈系統採用特定的經濟激勵機制來保證分布式系統中所以節點均可參與數據區塊的驗證過程,並通過共識演算法來選擇特定的節點將新區快添加到區塊鏈。
7、可編程:區塊鏈技術提供靈活的腳本代碼系統,支持用戶創建高級的智能合約、貨幣或其他去中心化應用。
8、安全可信:區塊鏈技術採用非對稱密碼原理對數據進行加密,同時藉助分布式系統各節點的工作量證明等共識演算法形成的強大算力來抵禦外部攻擊、保證區塊鏈數據不可篡改和不可偽造,因而具有較高的安全性。
9、區塊鏈應用場景:數字貨幣:以比特幣為代表,本質上是由分布式網路系統生成的數字貨幣,其發行過程不依賴特定的中心化機構。

閱讀全文

與鏈式加密的應用相關的資料

熱點內容
蘋果7怎麼加密 瀏覽:233
程序員開發用ubuntu怎麼樣 瀏覽:68
解壓泡茶茶具視頻 瀏覽:49
php設置pdo 瀏覽:682
iphone文件夾移除了怎麼找回 瀏覽:462
公司伺服器如何登錄 瀏覽:68
整商判斷素數python 瀏覽:721
python求階層的函數 瀏覽:207
怎麼部署網頁到伺服器 瀏覽:169
cmd下重啟的命令 瀏覽:66
命令更改dns 瀏覽:543
程序員的服裝是什麼樣的 瀏覽:1006
如何讀出u盤加密的內容 瀏覽:1000
史詩文件夾沒有了怎麼辦 瀏覽:739
文件夾如何刪除有效刪除沒用 瀏覽:686
充值八折算錯的程序員 瀏覽:881
單片機ri代表什麼意思 瀏覽:349
雲伺服器應用方法 瀏覽:680
51單片機的周期 瀏覽:935
程序員有點兒甜 瀏覽:399