導航:首頁 > 文檔加密 > ofb加密公式

ofb加密公式

發布時間:2022-06-14 14:26:13

Ⅰ 分組密碼的演算法要求

分組密碼演算法實際上就是密鑰控制下,通過某個置換來實現對明文分組的加密變換。為了保證密碼演算法的安全強度,對密碼演算法的要求如下。 加密速度慢,錯誤擴散和傳播。
分組密碼將定長的明文塊轉換成等長的密文,這一過程在秘鑰的控制之下。使用逆向變換和同一密鑰來實現解密。對於當前的許多分組密碼,分組大小是 64 位,但這很可能會增加。
明文消息通常要比特定的分組大小長得多,而且使用不同的技術或操作方式。這樣的方式示例有:電子編碼本(ECB)、密碼分組鏈接(CBC)或密碼反饋(CFB)。ECB 使用同一個密鑰簡單地將每個明文塊一個接一個地進行加密;在 CBC 方式中,每個明文塊在加密前先與前一密文塊進行「異或」運算,從而增加了復雜程度,可以使某些攻擊更難以實施。 「輸出反饋」方式(OFB)類似 CBC 方式,但是進行「異或」的量是獨立生成的。 CBC 受到廣泛使用,例如在 DES(qv)實現中,而且在有關密碼術的技術性方面的相應書籍中深入討論了各種方式。請注意:您自己建立的 密碼系統的普遍弱點就是以簡單的形式來使用某些公開的演算法,而不是以提供了額外保護的特定方式使用。
迭代的分組密碼是那些其加密過程有多次循環的密碼,因此提高了安全性。在每個循環中,可以通過使用特殊的函數從初始秘鑰派生出的子密鑰來應用適當的變換。該附加的計算需求必然會影響可以管理加密的速度,因此在安全性需要和執行速度之間存在著一種平衡。天下沒有免費的午餐,密碼術也是如此;與其它地方一樣,應用適當方法的技巧中有一部分是源於對需要進行的權衡以及它們與需求平衡的關系如何的理解。
分組密碼包括DES、IDEA、SAFER、Blowfish和 Skipjack — 最後一個是「美國國家安全局(US National Security Agency,NSA)」限制器晶元中使用的演算法。

Ⅱ OFB模式的定義

OFB模式:(Output Feedback)即輸出反饋模式:明文模式被隱藏;分組密碼的輸入是隨機的;用不同的IV,一個密鑰可以加密多個消息;明文很容易被控制竄改,任何對密文的改變都會直接影響明文。
-----------------------------
輸出反饋模式(OFB,Output FeedBack)

輸出反饋模式是將分組密碼作為同步序列密碼運行的一種方法。它與密碼反饋模式相似,不同的是 OFB 是將前一個 n 比特輸出分組送入隊列最右端的位置,這一過程稱為 n 比特 OFB ,在加解密兩端,分組演算法都以加密模式使用。因為反饋機制獨立於明文和密文,有時也稱其為內部反饋。
如果分組大小為 n,那麼n比特 OFB 可以表示為:是狀態,獨立於明文和密文。
OFB 模式沒有錯誤擴散,密文中單個比特錯誤只引起恢復明文的單個錯誤,這對一些數字模擬傳輸很有用,如數字化聲音或視頻,這些場合可以容忍單個比特錯誤。由於加密端和解密端使用了移位寄存器,所以任何使用 OFB 的系統必須提供同步檢測機制以保證同步。另外出於安全性考慮,OFB 模式應當用在反饋量大小和分組長度相同的系統中。

Ⅲ 分組密碼加密模式選擇有哪些

分組密碼工作模式的應用背景:多次使用相同的密鑰對多個分組加密,會引發許多安全問題。為了應對不同場合,因而需要開發出不同的工作模式來增強密碼演算法的安全性。ECB特別適合數據較少的情況,對於很長的信息或者具有特定結構的信息,其大量重復的信息或固定的字元開頭將給密碼分析者提供大量的已知明密文對。若明文不是完整的分組,ECB需要進行填充。CBC(Cipher Block Chaining)由於加密演算法的每次輸入和本明文組沒有固定的關系,因此就算有重復的明文組,加密後也看不出來了。為了配合演算法的需要,有一個初始向量(IV)。與ECB一樣有填充機制以保證完整的分組。CFB(Cipher Feedback)和OFB,CTR模式一樣,均可將分組密碼當做流密碼(實際是將分組大小任意縮減)使用。

Ⅳ 對稱密碼術的對稱密碼的類型

現在,通常使用分組密碼(block cipher)或序列密碼(stream cipher)實現對稱密碼,我們將在此討論這兩種密碼。這一特性中還要考慮稱為「消息認證代碼(Message Authentication Code,MAC)」的一種使 用秘鑰的校驗和機制。MAC 與消息摘要 是完全不同的,消息摘要是在數字簽名中使用的,將在關於非對稱密碼術(第 3 部分)的特性中討論。 分組密碼將定長的明文塊轉換成等長的密文,這一過程在秘鑰的控制之下。使用逆向變換和同一密鑰來實現解密。對於當前的許多分組密碼,分組大小是 64 位,但這很可能會增加。
明文消息通常要比特定的分組大小長得多,而且使用不同的技術或操作方式。這樣的方式示例有:電子編碼本(ECB)、密碼分組鏈接(CBC)或密碼反饋(CFB)。ECB 使用同一個密鑰簡單地將每個明文塊一個接一個地進行加密;在 CBC 方式中,每個明文塊在加密前先與前一密文塊進行「異或」運算,從而增加了復雜程度,可以使某些攻擊更難以實施。 「輸出反饋」方式(OFB)類似 CBC 方式,但是進行「異或」的量是獨立生成的。 CBC 受到廣泛使用,例如在 DES(qv)實現中,而且在有關密碼術的技術性方面的相應書籍中深入討論了各種方式。請注意:您自己建立的 密碼系統的普遍弱點就是以簡單的形式來使用某些公開的演算法,而不是以提供了額外保護的特定方式使用。
迭代的分組密碼是那些其加密過程有多次循環的密碼,因此提高了安全性。在每個循環中,可以通過使用特殊的函數從初始秘鑰派生出的子密鑰來應用適當的變換。該附加的計算需求必然會影響可以管理加密的速度,因此在安全性需要和執行速度之間存在著一種平衡。天下沒有免費的午餐,密碼術也是如此;與其它地方一樣,應用適當方法的技巧中有一部分是源於對需要進行的權衡以及它們與需求平衡的關系如何的理解。
分組密碼包括 DES、IDEA、SAFER、Blowfish 和 Skipjack — 最後一個是「美國國家安全局(US National Security Agency,NSA)」限制器晶元中使用的演算法。 與分組密碼相比,序列密碼可以是非常快速的,盡管某些方式下工作的一些分組密碼(如 CFB 或 OFB 中的 DES)可以與序列密碼一樣有效地運作。序列密碼作用於由若干位組成的一些小型組,通常使用稱為密鑰流的一個位序列作為密鑰對它們逐位應用「異或」運算。有些序列密碼基於一種稱作「線形 反饋移位寄存器(Linear Feedback Shift Register,LFSR)」的機制,該機制生成一個二進制位序列。
序列密碼是由一種專業的密碼,Vernam 密碼(也稱為一次性密碼本(one-time pad)),發展而來的。序列密碼的示例包括 RC4 和「軟體優化加密演算法(Software Optimized Encryption Algorithm,SEAL)」,以及 Vernam 密碼或一次性密碼本的特殊情形。 消息認證代碼(MAC)並不是密碼,而是校驗和(通常是 32 位)的一種特殊形式,它是通過使用一個秘鑰並結合一個特定認證方案而生成的,並且附加在一條消息後。消息摘要是使用單向散列函數生成的,緊密聯系的數字簽名是使用非對稱密鑰對生成並進行驗證的。與這兩者相比,預期的接收 方需要對秘鑰有訪問權,以便驗證代碼。

Ⅳ 對稱加密演算法的應用模式

加密模式(英文名稱及簡寫)
中文名稱
Electronic
Code
Book(ECB)
電子密碼本模式
Cipher
Block
Chaining(CBC)
密碼分組鏈接模式
Cipher
Feedback
Mode(CFB)
加密反饋模式
Output
Feedback
Mode(OFB)
輸出反饋模式
ECB:最基本的加密模式,也就是通常理解的加密,相同的明文將永遠加密成相同的密文,無初始向量,容易受到密碼本重放攻擊,一般情況下很少用。
CBC:明文被加密前要與前面的密文進行異或運算後再加密,因此只要選擇不同的初始向量,相同的密文加密後會形成不同的密文,這是目前應用最廣泛的模式。CBC加密後的密文是上下文相關的,但明文的錯誤不會傳遞到後續分組,但如果一個分組丟失,後面的分組將全部作廢(同步錯誤)。
CFB:類似於自同步序列密碼,分組加密後,按8位分組將密文和明文進行移位異或後得到輸出同時反饋回移位寄存器,優點最小可以按位元組進行加解密,也可以是n位的,CFB也是上下文相關的,CFB模式下,明文的一個錯誤會影響後面的密文(錯誤擴散)。
OFB:將分組密碼作為同步序列密碼運行,和CFB相似,不過OFB用的是前一個n位密文輸出分組反饋回移位寄存器,OFB沒有錯誤擴散問題。

Ⅵ aes加密演算法有多少種模式

一般的加密通常都是塊加密,如果要加密超過塊大小的數據,就需要涉及填充和鏈加密模式,文中提到的ECB和CBC等就是指鏈加密模式。這篇文檔比較形象地介紹了AES加密演算法中的一些模式轉載過來。注意,還缺一種CTR的模式。

同時在文章的最後,貼出幾對利用ECB and CBC模式得標准演算法得到的碼流串。

對稱加密和分組加密中的四種模式(ECB、CBC、CFB、OFB)

Ⅶ openssl unix口令密文怎麼解密

下面我將單介紹使用Openssl進行文件的對稱加密操作。
一、Openssl支持的加密演算法有:
-aes-128-cbc -aes-128-cfb -aes-128-cfb1
-aes-128-cfb8 -aes-128-ecb -aes-128-ofb
-aes-192-cbc -aes-192-cfb -aes-192-cfb1
-aes-192-cfb8 -aes-192-ecb -aes-192-ofb
-aes-256-cbc -aes-256-cfb -aes-256-cfb1
-aes-256-cfb8 -aes-256-ecb -aes-256-ofb
-aes128 -aes192 -aes256
-bf -bf-cbc -bf-cfb
-bf-ecb -bf-ofb -blowfish
-cast -cast-cbc -cast5-cbc
-cast5-cfb -cast5-ecb -cast5-ofb
-des -des-cbc -des-cfb
-des-cfb1 -des-cfb8 -des-ecb
-des-ede -des-ede-cbc -des-ede-cfb
-des-ede-ofb -des-ede3 -des-ede3-cbc
-des-ede3-cfb -des-ede3-ofb -des-ofb
-des3 -desx -desx-cbc
-rc2 -rc2-40-cbc -rc2-64-cbc
-rc2-cbc -rc2-cfb -rc2-ecb
-rc2-ofb -rc4 -rc4-40
二、Openssl加密指令語法:
SYNOPSIS
openssl enc -ciphername [-in filename] [-out filename] [-pass arg] [-e]
[-d] [-a] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-p]
[-P] [-bufsize number] [-nopad] [-debug]
說明:
-chipername選項:加密演算法,Openssl支持的演算法在上面已經列出了,你只需選擇其中一種演算法即可實現文件加密功能。
-in選項:輸入文件,對於加密來說,輸入的應該是明文文件;對於解密來說,輸入的應該是加密的文件。該選項後面直接跟文件名。
-out選項:輸出文件,對於加密來說,輸出的應該是加密後的文件名;對於解密來說,輸出的應該是明文文件名。
-pass選項:選擇輸入口令的方式,輸入源可以是標准輸入設備,命令行輸入,文件、變數等。
-e選項:實現加密功能(不使用-d選項的話默認是加密選項)。
-d選項:實現解密功能。
-a和-A選項:對文件進行BASE64編解碼操作。
-K選項:手動輸入加密密鑰(不使用該選項,Openssl會使用口令自動提取加密密鑰)。
-IV選項:輸入初始變數(不使用該選項,Openssl會使用口令自動提取初始變數)。
-salt選項:是否使用鹽值,默認是使用的。
-p選項:列印出加密演算法使用的加密密鑰。
三、案例:
1. 使用aes-128-cbc演算法加密文件:
openssl enc -aes-128-cbc -in install.log -out enc.log
(註:這里install.log是你想要加密的文件,enc.log是加密後的文件,回車後系統會提示你輸入口令)
2. 解密剛剛加密的文件:
openssl enc -d -aes-128-cbc -in enc.log -out install.log
(註:enc.log是剛剛加密的文件,install.log是解密後的文件,-d選項實現解密功能)
3.加密文件後使用BASE64格式進行編碼:
openssl enc -aes-128-cbc -in install.log -out enc.log -a
4.使用多種口令輸入方式加密:
openssl enc -des-ede3-cbc -in install.log -out enc.log -pass pass:111111
(這種方式的好處是你可以把它寫入到腳本中,自動完成加密功能,不使用pass選項默認系統會提示輸入口令,並且確認,是需要人工操作的)
四、Openssl的功能還遠不只於此,感興趣的朋友可以參考Openssl的手冊學習。在Linux系統中你可以通過:man openssl 快速獲得幫助文件。

例:對文件file.tar.gz進行加密,密碼為123456
openssl des3 -salt -k 123456 -in file.tar.gz -out file.tar.gz.des3

對file.tar.gz.des3 解密
openssl enc -des3 -d -in file.tar.gz.des3 -out file.tar.gz

Ⅷ 在新一代無線區域網安全協議中,採用AES演算法來產生消息認證碼,其中AES演算法的加密模式是什麼

AES,高級加密標准(英語:Advanced Encryption Standard,縮寫:AES),這個標准用來替代原先的DES,已經被多方分析且廣為全世界所使用。包括AES-ECB,AES-CBC,AES-CTR,AES-OFB,AES-CFB

Ⅸ AES加密演算法256位密鑰與128位密鑰的不同是什麼

一、指代不同

1、256位密鑰:AES的區塊長度固定為256位,密鑰長度則可以是256。

2、128位密鑰:AES的區塊長度固定為128位,密鑰長度則可以是128。

二、安全性不同

1、256位密鑰:256位密鑰安全性高於128位密鑰。

2、128位密鑰:128位密鑰安全性低於256位密鑰。


(9)ofb加密公式擴展閱讀

AES和Rijndael加密法並不完全一樣(雖然在實際應用中二者可以互換),因為Rijndael加密法可以支持更大范圍的區塊和密鑰長度。

AES的區塊長度固定為128位,密鑰長度則可以是128,192或256位;而Rijndael使用的密鑰和區塊長度可以是32位的整數倍,以128位為下限,256位為上限。加密過程中使用的密鑰是由Rijndael密鑰生成方案產生。

對稱/分組密碼一般分為流加密(如OFB、CFB等)和塊加密(如ECB、CBC等)。對於流加密,需要將分組密碼轉化為流模式工作。對於塊加密(或稱分組加密),如果要加密超過塊大小的數據,就需要涉及填充和鏈加密模式。

ECB模式是最早採用和最簡單的模式,將加密的數據分成若干組,每組的大小跟加密密鑰長度相同,然後每組都用相同的密鑰進行加密。


Ⅹ AES共有ECB,CBC,CFB,OFB,CTR五種模式分別有什麼區別

OFB兩種模式下則加密數據長度等於原始數據長度,OFB,除了NoPadding填充之外的任何方式;OFB//PCBC/CFB/ECB/CBC/CFB/ECB/PKCS5Padding
32
16
AES/CBC/PCBC/PKCS5Padding;CBC/NoPadding
16
不支持
AES/NoPadding
16
不支持
AES//ISO10126Padding
32
16

可以看到;模式/NoPadding和我現在使用的AESUtil得出的結果相同(在16的整數倍情況下);NoPadding填充情況下,CFB;PCBC/ISO10126Padding
32
16
AES/PKCS5Padding
32
16
AES/PKCS5Padding
32
16
AES/NoPadding
16
不支持
AES/OFB/填充
16位元組加密後數據長度 不滿16位元組加密後長度
AES/NoPadding
16
原始數據長度
AES/ISO10126Padding
32
16
AES/PKCS5Padding
32
16
AES/ECB//ECB/OFB/NoPadding
16
原始數據長度
AES47

閱讀全文

與ofb加密公式相關的資料

熱點內容
文件夾左邊的空心三角符號是什麼 瀏覽:281
app英語音頻試卷掃碼怎麼聽 瀏覽:610
字元串編譯預處理 瀏覽:699
蘋果手機怎麼會顯示多個App 瀏覽:237
不去互聯網程序員 瀏覽:550
電腦qq郵箱解壓的圖片保存在哪裡 瀏覽:544
嵌入命令行 瀏覽:91
檔案為什麼被加密 瀏覽:486
十天學會單片機13 瀏覽:875
榮耀怎麼設置讓app一直運行 瀏覽:993
共享文件夾能在哪裡找到 瀏覽:435
旅遊訂旅店用什麼app 瀏覽:240
一個女程序員的聲音 瀏覽:496
魔術app怎麼用 瀏覽:340
單片機有4個8位的io口 瀏覽:897
win10rar解壓縮軟體 瀏覽:169
plc教程pdf 瀏覽:668
pythonshell清屏命令 瀏覽:281
檢測到加密狗注冊伺服器失敗 瀏覽:205
解壓後手機如何安裝 瀏覽:521