Linux加密框架中的算法和算法模式

參考鏈接

  • Linux加密框架中的算法和算法模式(三)_家有一希的博客-CSDN博客

對稱算法? 14

對稱密碼算法匯總

  • ?如上所示,在arc4.c中定義了兩個與RC4算法相關的算法實現,分別為arc4和ecb(arc4),其中arc4是RC算法的算法實現,而ecb(arc4)是RC算法ECB模式的算法實現,在加密框架中,將arc4稱為基礎算法,ecb(arc4)稱為衍生算法。
  • 就RC4算法而言,arc4和ecb(arc4)是等價的,但在加密框架中,算法應用(如IPSEC)不能通過arc4訪問RC4算法,只能通過ecb(arc4)訪問RC4算法,也就是說arc4是面向加密框架的,而ecb(arc4)是面向算法應用的
    由于加密框架中對稱密碼算法絕大部分都是分組算法,因此后續章節內容中將以分組算法代指對稱密碼算法。

哈希算法 13

哈希算法匯總

算法模式匯總?

  • 加密框架中將算法模式抽象為算法模板(template),加密框架中包括13個算法模式(算法模板)源碼文件,如下所示

算法模式匯總

?補充說明

  • 在密碼學上,密碼算法的工作模式很有限,如哈希算法只有hash計算一種模式,分組算法只有加密和解密兩種模式。
  • 在實際應用中,密碼算法一般是和算法模式配合使用的,以分組算法為例,在實際應用中基本上不會直接使用基本工作模式的加密或解密接口,絕大部分情況下使用的是某種算法模式的加密或解密接口
  • 算法模式不是針對某個特定密碼算法的,而是適用于某一類型的密碼算法,如HMAC模式適用于所有哈希算法,CBC模式適用于所有分組算法。
  • 在加密框架中,將使用特定算法模式的算法也認為是一種新的算法,新算法的命名規則為:算法模板名(基礎算法,…),其中基礎算法可以有多個。如將使用HMAC模式的MD5算法,定義為名為“hmac(md5)”的新算法,這些新算法也可以稱為創建其他算個發的基礎算法,如名為“authenc(hmac(md5),cbc(aes))的算法的基礎算法為hmac(md5)和cbc(aes)本身也是由算法模板創建的算法。
  • 在加密框架中,將不帶算法模式的算法稱為基礎算法,如md5和aes,這些算法是靜態定義、編譯到加密框架中的,因此也稱為靜態算法;將帶算法模式的算法稱為衍生算法,如hmac(md5)和cbc(aes),這些算法是動態創建的,因此也稱為動態算法。

參考鏈接

  • 密碼學專題 密鑰生成|分組加密的模式 ECB|CBC|CFB|OFB_CHYabc123456hh的博客-CSDN博客_ecb模式和cbc模式
  • 常見對稱加密算法與工作模式簡介_農家小舍-CSDN博客_常見對稱加密算法

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/446108.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/446108.shtml
英文地址,請注明出處:http://en.pswp.cn/news/446108.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python學籍管理系統 flask_taskday05-Python之flask學習 web開發最基本的需要(特別詳細且適用)...

1.首先一個Flask的Web項目的創建需求一(文章概述):一:必須實現命令工具管理App,用于在命令行輸入命令對項目進行管理,對后期多多益善二:必須實現“藍圖”管理,用于將app啟動函數與路由分開管理,…

Linux加密框架crypto AES代碼相關

例子 aes_generic.c - crypto/aes_generic.c - Linux source code (v5.15.11) - Bootlin static struct crypto_alg aes_alg {.cra_name "aes",.cra_driver_name "aes-generic",.cra_priority 100,.cra_flags CRYPTO_ALG_TYPE_CIPHER,.cra_blocks…

python語言print函數_Python 的 print 函數

Python 2.x 系列已經停止維護了, python 3.x 系列正在成為主流,盡管有些項目還是python2.x 的,之后寫Python 代碼為了保持兼容性,還是盡量和Python 3 標準保持一致作為一個Python newbee 而言, python 2.x 和 3.x 的 …

Linux加密框架crypto crypto_alg|cipher_alg數據結構|AES例子

加密框架將算法的屬性抽象為算法說明數據結構struct crypto_alg,加密框架中的每一個算法(基礎算法和衍生算法)都表示為一個算法說明數據結構的實例,因此將struct crypto_alg稱為通用算法說明數據結構。后續章節中如無特殊說明&…

python如何運用ols_使用OLS回歸(Python,StatsModels,Pandas)預測未來值

我目前正試圖在Python中實現一個MLR,我不知道如何去應用我發現的未來值的系數。使用OLS回歸(Python,StatsModels,Pandas)預測未來值import pandas as pdimport statsmodels.formula.api as smimport statsmodels.api as sm2TV [230.1, 44.5,…

Linux加密框架 crypto RC4

參考鏈接 arc4.h Linux加密框架中的主要數據結構(一)_家有一希的博客-CSDN博客 頭文件 arc4.h - include/crypto/arc4.h - Linux source code (v5.15.11) - Bootlin實現代碼 arc4.c arc4.c - crypto/arc4.c - Linux source code (v5.15.11) - Bootlin…

python讀txt轉array_python將txt文件讀入為np.array的方法

原文件:7.8094,1.0804,5.7632,0.012269,0.008994,-0.003469,-0.79279,-0.064686,0.11635,0.68827,5.7169,7.9329,0.010264,0.003557,-0.011691,-0.57559,-0.56121,原文件數據比較多,是一個125行,45類float數字。代碼:# -*- coding…

Linux加密框架 crypto 哈希算法說明 同步哈希shash_alg | 異步哈希 ahash_alg | 通用部分抽象 hash_alg_common

參考鏈接 Linux加密框架中的主要數據結構(二)_家有一希的博客-CSDN博客 定義 通用算法說明數據結構crypto_alg的聯合體成員變量cra_u中包含多種算法的個性化屬性,如分組算法、塊加密算法、壓縮算法、偽隨機數算法等,但不包含哈希…

python 列表間隔取值_python list數據等間隔抽取并新建list存儲的例子

原始數據如下:[e3cd, e547, e63d, 0ffd, e39b, e539, e5be, 0dd2, e3d6, e52e, e5f8, 0000, e404, e52b, e63d, 0312, e38b]將其分割為4路數據,分別存儲在fetal1、fetal2、mother1、ECG的列表中,各列表對齊,不能整除于4的數據舍去…

Linux加密框架 crypto 哈希算法舉例 MD5

參考鏈接 Linux加密框架 crypto 哈希算法說明 同步哈希shash_alg | 異步哈希 ahash_alg | 通用部分抽象 hash_alg_common_CHYabc123456hh的博客-CSDN博客Linux加密框架中的主要數據結構(二)_家有一希的博客-CSDN博客 MD5 md5.h - include/crypto/md5.h …

事務沒提交的數據查的出來嗎?_“金三銀四”面試官:說說事務的ACID,什么是臟讀、幻讀?...

一、事務事務是數據庫管理系統執行過程中的一個邏輯單位,由一個有限的數據庫操作序列構成。--摘自百科在MySQL里,事務是在引擎層面實現,比如MyIsam不支持,InnoDB支持面試清單(Java崗):JavaJVM數…

Linux加密框架 crypto 算法模板

參考鏈接 Linux加密框架中的主要數據結構(三)_家有一希的博客-CSDN博客algapi.h - include/crypto/algapi.h - Linux source code (v5.15.11) - Bootlin 定義 struct crypto_template {struct list_head list;struct hlist_head instances;struct modu…

python找最長的字符串_為Python找到最長重復字符串的有效方法(從Pearls編程)

我的解決方案是基于后綴數組。它是由最長公共前綴的兩倍前綴構成的。最壞情況下的復雜度是O(n(logn)^2)。任務”伊利亞特.mb.txt“在我的筆記本上花了4秒鐘。代碼在函數suffix_array和longest_common_substring中有很好的文檔記錄。后一個函數很短,可以很容易地修改…

Linux加密框架 crypto 算法模板 CBC模板舉例

參考鏈接 Linux加密框架中的主要數據結構(三)_家有一希的博客-CSDN博客https://blog.csdn.net/CHYabc123456hh/article/details/122194754 CBC算法模板 cbc.c - crypto/cbc.c - Linux source code (v5.15.11) - BootlinCBC算法模板屬性 1)CBC算法模板名…

leetcode數組匯總_LeetCode刷題實戰43:字符串相乘

算法的重要性,我就不多說了吧,想去大廠,就必須要經過基礎知識和業務邏輯面試算法面試。所以,為了提高大家的算法能力,這個公眾號后續每天帶大家做一道算法題,題目就從LeetCode上面選 !今天和大家…

Linux加密框架 crypto 算法模板 HMAC模板舉例

參考鏈接 Linux加密框架中的主要數據結構(三)_家有一希的博客-CSDN博客Linux加密框架 crypto 算法模板_CHYabc123456hh的博客-CSDN博客 HMAC算法模板 hmac.c - crypto/hmac.c - Linux source code (v5.15.11) - Bootlinhmac.c - crypto/hmac.c - Linux…

判斷非負整數是否是3的倍數_五年級數學因數與倍數知識點匯總與解題方法技巧...

在日常教學過程中,我發現孩子們和某些家長對學習數學的方法有一些誤區,就是覺著數學,單純就是邏輯思維,只要多做練習題就能學好,但是不是這樣的,低年級的學生,學習數學還是以背誦為主&#xff0…

tcp通訊一次最多能發送多少數據?_關于TCP/IP,必須知道的十個知識點

本文整理了一些TCP/IP協議簇中需要必知必會的十大問題,既是面試高頻問題,又是程序員必備基礎素養。一、TCP/IP模型TCP/IP協議模型(Transmission Control Protocol/Internet Protocol),包含了一系列構成互聯網基礎的網絡…

Linux內核crypto子系統的調用邏輯

testmgr.c - crypto/testmgr.c - Linux source code (v5.15.11) - Bootlin上述代碼是內核內部即crypto子系統對外提供密碼服務的測試程序調用流程&#xff1a;crypto API <—> crypto core <—> crypto_register_alg處于用戶態的程序想要調用處于內核態的密碼算法&…

python成語填空_python定期循環成語?

我有一個工作單位我希望每N秒發生一次.如果我使用簡單化minute 60while True:doSomeWork()time.sleep(minute)取決于doSomeWork()花費的時間,實際循環周期將是一分鐘加上那個時間.如果doSomeWork()所花費的時間不是確定性的,則工作周期更加難以預測.我想做的就是這樣minute 6…