Ⅰ 摘要編碼是什麼
摘要編碼目錄之前的包括摘要在內的內容用羅馬數字編碼,目錄之後的內容用阿拉伯數字編碼,目錄本身的頁碼看你的要求。
1、需要設置的常用摘要。
2、以李明(賬套主管;編號:101;密碼:101)的身份於2014年1月31日的操作日期使用100賬套登錄到「企業應用平台」。
3、點擊「基礎設置」選項卡。如圖按「基礎檔案」→「其他」→「常用摘要」的順序分別雙擊各菜單。
基本原理:
(1) 被發送文件用SHA編碼加密產生128bit的數字摘要。
(2) 發送方用自己的私用密鑰對摘要再加密,這就形成了數字簽名。
(3) 將原文和加密的摘要同時傳給對方。
(4) 對方用發送方的公共密鑰對數字簽名解密,同時對收到的文件用SHA編碼加密產生又一摘要。
(5) 將解密後的摘要和收到的文件在接收方重新加密產生的摘要相互對比。如兩者一致,則說明傳送過程中信息沒有被破壞或篡改過。否則不然。
Ⅱ 加密是什麼意思
加密,是以某種特殊的演算法改變原有的信息數據,使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容。 在航空學中,指利用航空攝影像片上已知的少數控制點,通過對像片測量和計算的方法在像對或整條航攝帶上增加控制點的作業。
加密之所以安全,絕非因不知道加密解密演算法方法,而是加密的密鑰是絕對的隱藏,現在流行的RSA和AES加密演算法都是完全公開的,一方取得已加密的數據,就算知道加密演算法也好,若沒有加密的密鑰,也不能打開被加密保護的信息。單單隱蔽加密演算法以保護信息,在學界和業界已有相當討論,一般認為是不夠安全的。公開的加密演算法是給黑客和加密家長年累月攻擊測試,對比隱蔽的加密演算法要安全得多。
在密碼學中,加密是將明文信息隱匿起來,使之在缺少特殊信息時不可讀。雖然加密作為通信保密的手段已經存在了幾個世紀,但是,只有那些對安全要求特別高的組織和個人才會使用它。在20世紀70年代中期,強加密(Strong Encryption) 的使用開始從政府保密機構延伸至公共領域, 並且目 前已經成為保護許多廣泛使用系統的方法,比如網際網路電子商務、手機網路和銀行自動取款機等。
加密可以用於保證安全性, 但是其它一些技術在保障通信安全方面仍然是必須的,尤其是關於數據完整性和信息驗證;例如,信息驗證碼(MAC)或者數字簽名。另一方面的考慮是為了應付流量分析。
加密或軟體編碼隱匿(Code Obfuscation)同時也在軟體版權保護中用於對付反向工程,未授權的程序分析,破解和軟體盜版及數位內容的數位版權管理 (DRM)等。
盡管加密或為了安全目的對信息解碼這個概念十分簡單,但在這里仍需對其進行解釋。數據加密的基本過程包括對稱為明文的原來可讀信息進行翻譯,譯成稱為密文或密碼的代碼形式。該過程的逆過程為解密,即將該編碼信息轉化為其原來的形式的過程。
Ⅲ 對稱加密、非對稱加密、摘要、數字簽名、數字證書
作為一個開發人員,或多或少都聽說過對稱加密、非對稱加密、摘要、數字簽名、數字證書這幾個概念,它們是用來保證在互聯網通信過程中數據傳輸安全的。有人可能會有疑惑,我給傳輸數據加個密不就安全了,為什麼還要搞這么多花樣出來?本文主要通過一個案例來講解這幾個概念的實際作用。
在此之前,我先簡單介紹一下這幾個概念。
對稱加密是指用來加密和解密的是同一個秘鑰。其特點是加密速度快,但是秘鑰容易被黑客截獲,所以安全性不高。常見的有AES、DES演算法。
非對稱加密是指用來加密和解密的是不同的秘鑰,它們是成對出現的,稱為公鑰和私鑰,知道其中一個秘鑰是無法推導出另外一個秘鑰的。用公鑰加密的內容需要用私鑰才能解密,用私鑰加密的內容需要用公鑰才能解密。非對稱加密的特點是安全性高,缺點是加密速度慢。常見的有RSA演算法。
所謂的摘要就是一段信息或者一個文件通過某個哈希演算法(也叫摘要演算法)而得到的一串字元。摘要演算法的特點就是不同的文件計算出的摘要是不同的(也有可能相同,但是可能性非常非常低),比如一個1G的視頻文件,哪怕只是改動其中一個位元組,最後計算得到的摘要也是完全不同的,所以摘要演算法通常是用來判斷文件是否被篡改過。其還有一個特點就是通過摘要是無法推導出源文件的信息的。常用的摘要演算法有MD5、SHA等。
數字簽名就是一個文件的摘要加密後的信息。數字簽名是和源文件一起發送給接收方的,接收方收到後對文件用摘要演算法算出一個摘要,然後和數字簽名中的摘要進行比對,兩者不一致的話說明文件被篡改了。
數字證書是一個經證書授權中心生成的文件,數字證書里一般會包含公鑰、公鑰擁有者名稱、CA的數字簽名、有效期、授權中心名稱、證書序列號等信息。其中CA的數字簽名是驗證證書是否被篡改的關鍵,它其實就是對證書裡面除了CA的數字簽名以外的內容進行摘要演算法得到一個摘要,然後CA機構用他自己的私鑰對這個摘要進行加密就生成了CA的數字簽名,CA機構會公開它的公鑰,驗證證書時就是用這個公鑰解密CA的數字簽名,然後用來驗證證書是否被篡改。
場景:
張三要找人裝修一個房子,原則是誰的出價便宜就給誰裝修,所以對於報價文件就是屬於機密文件。下面我們來看下不同的方式傳輸報價文件都會有什麼風險。
現在李四想接這個裝修的活,他做了一份報價文件(文件名: lisi.txt ,文件內容: 報價50萬 )。然後李四用一個對稱秘鑰 123 對這個文件進行加密。最後李四將這個秘鑰和加密的文件發給張三,張三收到後用這個秘鑰解密,知道了李四的報價是50萬。
同時王五也想接這個裝修的活,他本來是想報價55萬的,但是又擔心報價太高而丟掉這個活。恰巧王五是個黑客高手,於是他截獲了李四發給張三的秘鑰和加密文件,知道了李四報價是50萬。最後王五將自己的報價改成了49萬發給張三,結果王五接下了這個裝修活。
結論:
用對稱加密的話,一旦秘鑰被黑客截獲,加密就形同虛設,所以安全性比較低。
首先張三會生成一對秘鑰,私鑰是 zhangsan1 ,公鑰是 zhangsan2 ,私鑰張三自己保存,將公鑰公布出去。
李四將報價文件 list.txt 用張三公布的公鑰 zhangsan2 進行加密後傳給張三,然後張三用私鑰 zhangsan1 進行解密得到李四的報價是50萬。
這個時候即使王五截獲到了李四發給張三的報價文件,由於王五沒有張三的私鑰,所以他是無法解密文件的,也就無法知道李四的報價。最後王五因為報價55萬而丟掉了這個裝修的機會。
所以用非對稱加密是可以保證數據傳輸安全的。不過這里說一句題外話,既然非對稱加密安全性高,那為什麼不淘汰掉對稱加密呢?其實關鍵就在於加密速度,非對稱加密計算量很大,所以加密速度是很慢的,如果發送消息非常頻繁,使用非對稱加密的話就會對性能造成很大影響。所以在實際開發過程中通常是對稱加密和非對稱加密結合使用的。也就是對稱加密的秘鑰是用非對稱加密後發送的,這樣能保證對稱加密的秘鑰不被黑客截獲,然後在發送業務數據時就用對稱加密。這樣既保證了安全性也保證了加密速度。
結論:
非對稱加密可以防止黑客截獲加密後的內容,安全性高。
前面都說了非對稱加密是安全的,那為什麼還要數字簽名呢?
設想一下,王五截獲了李四的報價文件,王五雖然無法知道李四的實際報價,但是他完全可以偽造一份李四的報價(文件名: lisi.txt ,文件內容: 報價60萬 ),然後將這份偽造文件用張三公布的公鑰 zhangsan2 進行加密後替換原來的報價文件。張三收到後解密發現報價是60萬,於是張三就以為李四報的價是60萬,最後決定將裝修的活給報價55萬的王五來做。
發生這個問題的關鍵就在於張三無法知道報價文件是否被篡改過。要解決這個問題就需要用到數字簽名。
首先李四需要自己生成一對非對稱加密的秘鑰,私鑰 lisi1 自己保存,公鑰 lisi2 發給張三。然後李四對自己的報價文件通過摘要演算法得到一個摘要(假設摘要是 aaa ),再用自己的私鑰 lisi1 加密這個摘要就得到了報價文件的數字簽名,最後將加密的報價文件和數字簽名一起發給張三,張三收到後先用李四發過來的公鑰 lisi2 解密數字簽名得到摘要 aaa ,然後用自己的私鑰 zhangsan1 解密加密的文件得到報價源文件,然後對報價源文件進行摘要演算法,看計算得到的結果是不是 aaa ,如果不是 aaa 的話就說明報價文件被篡改了。
在這種情況下,如果王五截獲了李四發給張三的文件。王五是無法解密報價文件的。如果王五偽造一份報價文件的話,等張三收到後就會發現報價文件和數字簽名不匹配。那王五能不能偽造報價文件的同時也偽造簽名呢?因為王五沒有李四的私鑰,所以沒法對偽造的報價文件的摘要進行加密,所以也就沒法偽造簽名。
結論:
非對稱加密雖然能確保加密文件內容不被竊取,但不能保證文件不被篡改。數字簽名就是用來驗證文件是否被篡改過。
既然非對稱加密可以保證文件內容的安全性,數字簽名又可以保證文件不被篡改,那還要數字證書有什麼用呢?
我們再來設想一下,王五自己也生成了一對用於非對稱加密的秘鑰,私鑰是 wangwu1 ,公鑰是 wangwu2 。前面李四將自己的公鑰 lisi2 發給張三的過程中被王五給截獲了,王五用自己的公鑰 wangwu2 替換了李四的公鑰 lisi2 ,所以張三最後收到的公鑰實際上是王五的,但張三對這並不知情。後面李四發的數字簽名和加密的報價文件都被王五截獲,並且王五偽造了一份報價文件,同時用自己的私鑰加密報價文件的摘要生成偽造的簽名並發給張三,張三收到後進行驗證發現數字簽名和報價文件是匹配的,就以為這份報價文件是真實的。
出現這個問題的關鍵就在於張三沒法確認收到的公鑰到底是不是李四發的,這個時候數字證書就起到作用了。李四到權威的數字證書機構申請數字證書,證書裡麵包含了公鑰( lisi2 )和公鑰的擁有者( 李四 )等相關信息,然後李四將證書發給張三,張三通過證書裡面的信息就可以知道公鑰到底是不是李四的了。
那證書在發送過程中有沒有可能被王五截獲並篡改呢?要知道證書裡面還包含CA的數字簽名,這個簽名是證書機構用他們自己的私鑰對證書的摘要進行加密的,而公鑰是公開的。所以即便王五截獲並篡改了證書內容,他也無法偽造證書機構的簽名,張三在收到證書後通過驗證簽名也會發現證書被篡改了。所以到這一步才能保證數據傳輸的真正安全。
Ⅳ 加密是什麼意思啊
就是設置密碼來保護你的東西,比如說保護用戶名不被盜用、保護壓縮文件不被其他人打開,等等。
不過網上流傳有許多破解軟體,據說有用,我沒試過。
Ⅳ 數字簽名的實現為什麼要使用私鑰對數字摘要加密這種方式
公鑰體制是數字簽名的基礎,數字簽名就是使用數字證書的私鑰對數據的摘要加密,以保證數據的完整性、真實性和不可抵賴。
數字簽名(又稱公鑰數字簽名)是只有信息的發送者才能產生的別人無法偽造的一段數字串,這段數字串同時也是對信息的發送者發送信息真實性的一個有效證明。
它是一種類似寫在紙上的普通的物理簽名,但是在使用了公鑰加密領域的技術來實現的,用於鑒別數字信息的方法。一套數字簽名通常定義兩種互補的運算,一個用於簽名,另一個用於驗證。數字簽名是非對稱密鑰加密技術與數字摘要技術的應用。
特點
每個人都有一對「鑰匙」(數字身份),其中一個只有她/他本人知道(密鑰),另一個公開的(公鑰)。簽名的時候用密鑰,驗證簽名的時候用公鑰。
又因為任何人都可以落款聲稱她/他就是你,因此公鑰必須向接受者信任的人(身份認證機構)來注冊。注冊後身份認證機構給你發一數字證書。對文件簽名後,你把此數字證書連同文件及簽名一起發給接受者,接受者向身份認證機構求證是否真地是用你的密鑰簽發的文件。
Ⅵ 貼吧幾種常見加密
貼吧常見加密方式有MD5(摘要加密)、SHA(安全散列演算法)、RSA(非對稱加密)、AES(對稱加密)。常見的貼吧加密方式有MD5(摘要加密)、SHA(安全散列演算法)、RSA(非對稱加密)、AES(對稱加密)。每種加密方式都有其特有的優勢和應用場景,所以在選擇加密方式時需要根據業務場景和實際需求來選擇。
Ⅶ 數字簽名中的密鑰(公鑰、私鑰)
CA:
發放和管理數字證書的權威機構,電子商務交易中受信任的第三方,主要負責公鑰體系中公鑰的合法性檢驗。
非對稱加密演算法
非對稱加密演算法需要兩個密鑰:公鑰(publickey)和私鑰(privatekey),用公鑰揭秘私鑰加密的數據,用私鑰揭秘公鑰加密的數據。
RSA:
一種廣泛使用的非對稱加密演算法。
公鑰:
密鑰對中公開的部分。
私鑰:
非公開的部分。
摘要:
對任何輸入報文數據生成固定長度的摘要,主要通過HASH函數
簽名:
使用自己的私鑰對摘要加密
發送方
1.生成摘要
2.生成簽名
3.拼接數據
4.發送數據
接受方
1.解密接受到的數據
2.分離數據
3.計算摘要
4.完整性驗證
Ⅷ 摘要、數字簽名和數字證書
摘要是指通過一定的摘要演算法將一段內容轉為一段固定長度的內容,該內容即是摘要。
摘要演算法: 通過一個函數,把任意長度的數據轉換為一個長度固定的數據串(通常用16進制的字元串表示)
常見的摘要演算法有:MD5、SHA1、SHA256、SHA512。
摘要作用: 檢測內容是否發生修改。
存在問題: 消息發送過程中,可被中間人修改消息內容,並生成新的摘要,消息接收者不能確定消息是否被篡改。
數字簽名,即是用消息發送者的 私鑰 加密 摘要 後生成的內容。該內容只能用發送者的公鑰進行解密,所以可以防止他人修改。
數字簽名的目的是為了確保該消息是發送者發送的,中途沒有被修改或替換。
存在問題: 數字簽名可以解決消息被中間人修改的問題,但前提是消息接收者拿到的發送者的公鑰是真實的。如果拿到的公鑰不是發送者的,而是中間人的公鑰,那麼消息還是可以被篡改。
數字證書,是通過第三方(一般稱為CA)頒發的,一般是用第三方的私鑰來加密消息發送者的公鑰和相關信息而生成的。這樣,消息接收者用第三方的公鑰來進行解密證書,得到消息發送者的公鑰。
數字證書解決的問題是:防止消息發送者的公鑰被中途替換,從而解決了單純的 摘要 和 數字簽名 的問題。
Ⅸ 關於CA、簽名、證書、非對稱加密、摘要、公私鑰匙和keystore概念和區別
這幾個概念才接觸密碼學時候理解不是很到位,現在將其理清楚,寫下自己的理解。
公私秘鑰對可以通過一種演算法得到。
公鑰:公開的,都可以拿到的秘鑰。用來加密也用來解密,公鑰加密的信息只能用對應私鑰來解。
私鑰:只有一個持有者,其他人都拿不到。用來加密也用來解密,私鑰加密的信息只有對應的公鑰能解。因為私鑰具有唯一性,可以用來鑒別身份。需要注意的是私鑰的唯一性是針對自己的公鑰來說的。
非對稱加密:過程使用兩把不同的鑰匙加解密,私鑰加密只能用公鑰解,公鑰加密用私鑰解,一般流程為:A生成公私密鑰對,把公鑰給B,B用公鑰加密信息發送給A,A用私鑰解密。
摘要:對任意一組輸入數據通過演算法進行計算,得到一個固定長度的輸出摘要,常見RSA公司的MD5演算法和SHA-1演算法。
簽名:包含兩部分:對所簽信息做摘要運算得到一個結果值,在運用非對稱加密中的私鑰對這個值進行加密(比如app簽名就是對app自身文件做多次摘要,然後私鑰加密,https流程簽名就是對一些企業證書信息做摘要然後私鑰加密)。
證書:公鑰相關信息,其他信息如證書有效期,名稱,最後貼附私鑰簽名的信息,格式普遍採用的是X.509V3國際標准(app中證書指紋,他是簽名工具相關信息的hash值不包括貼附私鑰簽名只會隨簽名keystore變化而變化,app變化時候不會改變,用來配合包名做身份鑒別,常用於app升級和安裝場景)。
keystore:證書庫文件,保存證書信息和公鑰及私鑰(用設置密碼保護私鑰),訪問私鑰要密碼。
CA:第三方可信機構。為什麼https過程中非對稱加密傳輸過程中需要用到第三方可信機構(CA),大家得客戶端都以保存在本地的CA發出來的公鑰解密,就可以確定CA的身份因為CA是唯一的私鑰擁有者,CA做的事就是給合法的服務端證書簽名,所以客戶端鑒定CA的身份後,自然也認為解得CA簽名的伺服器證書是合法的。
注意https中涉及兩對公私密鑰,CA的私鑰用來簽名,其簽名信息用來防篡改,CA公私鑰配合確定CA的是身份。伺服器的公私密鑰用來加解密信息,也用來確定的伺服器身份,其交互的信息用來協商對稱密鑰。
Ⅹ 加密和簽名的區別是什麼
數字簽名和驗證:發送報文時,發送方用一個hash演算法從報文中產生固定長度的報文摘要,然後利用自己的私鑰對這個摘要進行加密,這個過程就叫簽名。這個加密後的摘要作為報文的數字簽名和報文一起發送給接收方,接收方用發送方的公鑰解密被加密的摘要(報文附加的數字簽名)得到結果A,然後用於發送方一樣的hash演算法從接收到的原始報文中算出報文摘要B。最後,把A和B作比較。如果相同,那麼接收方就能確認該數字簽名是發送方的。加密和解密:發送方利用接收方的公鑰對要發送的明文進行加密,接受方利用自己的私鑰進行解密,其中公鑰和私鑰匙相對的,任何一個作為公鑰,則另一個就為私鑰。
2、數字簽名的功能:
a) 對簽名者進行身份認證;
b) 保證信息的完整性(在交易過程中,沒有被篡改)
c) 防止交易中的抵賴發生(簽名者無法否認信息是由自己發出的)
加密的功能:
a) 重點在於「數據的安全性」,可以防止數據被監聽攻擊。