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

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

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

采用密碼算法的智能卡的應(yīng)用

電子設(shè)計 ? 作者:電子設(shè)計 ? 2018-09-13 09:02 ? 次閱讀

引言

在過去的十年中,智能卡上的計算能力發(fā)展迅速,基于 公鑰的智能卡廣泛應(yīng)用于各個領(lǐng)域。智能卡(Smart Card)有接觸與非接觸卡片,內(nèi)嵌有微芯片的塑料卡的通稱。有包含RFID芯片的,也有加上熱敏膜技術(shù)的,實現(xiàn)可視功能的,卡片具有儲存信息的功能,能實現(xiàn)智能功能作用。智能卡配備有CPURAM,可自行處理數(shù)量較多的數(shù)據(jù)而不會干擾到主機CPU的工作。智能卡還可過濾錯誤的數(shù)據(jù),以減輕主機CPU的負擔(dān)。適應(yīng)于端口數(shù)目較多且通信速度需求較快的場合。智能卡是IC卡(集成電路卡)的一種,按所嵌的芯片類型的不同,IC卡可分為三類: 1.存儲器卡:卡內(nèi)的集成電路是可用電擦除的可編程只讀存儲器EEPROM,它僅具數(shù)據(jù)存儲功能,沒有數(shù)據(jù)處理能力;存儲卡本身無硬件加密功能,只在文件上加密,很容易被破解。卡內(nèi)的集成電路包括中央處理器CPU、可編程只讀存儲器EEPROM、隨機存儲器RAM和固化在只讀存儲器ROM中的卡內(nèi)操作系統(tǒng)COS(Chip Operating System)??ㄖ袛?shù)據(jù)分為外部讀取和內(nèi)部處理部分,確??ㄖ袛?shù)據(jù)安全可靠。

1 消息認證

消息認證碼實際上是對消息本身產(chǎn)生的一個冗余的信 息,消息認證碼是利用密鑰對要認證的消息產(chǎn)生新的數(shù)據(jù)塊 并對數(shù)據(jù)塊加密生成的,它對于要保護的信息來說是一一對 應(yīng)的。因此消息認證碼可以有效保證消息的完整性,以及實現(xiàn)發(fā)送方消息的不可抵賴和不可偽造。

消息認證碼不支持可逆性,是多對一的函數(shù),其定義域由任意長的消息組成,而值域是由遠小于消息長度的比特串構(gòu)成。從理論上來說,一定存在不同的消息產(chǎn)生相同的認證碼,因此必須找到一種足夠單向和強碰撞自由性的方法才是安全的。

而對于消息認證碼的主要攻擊目標(biāo)也是找到一對或者多對碰撞消息。對于現(xiàn)有的攻擊方法,有些可以攻擊任意類型的哈希方案,有些只針對特定的哈希方案。自從2004年MD5算法被攻破以后,SHA也面臨被攻破的危險。

2 分組密碼

分組密碼在密碼領(lǐng)域廣泛使用,除了本身的幾種工作模式之外,它可以用來構(gòu)建MAC,也可以用來構(gòu)建哈希函數(shù)、偽隨機函數(shù)等等。分組密碼具有速度快、易于標(biāo)準(zhǔn)化和便于軟硬件實現(xiàn)等特點,通常是信息域網(wǎng)絡(luò)安全中實現(xiàn)數(shù)據(jù)加密、數(shù)字簽名、認證及密鑰管理的核心體制,它在計算機通信和信息系統(tǒng)安全領(lǐng)域中有著最廣泛的應(yīng)用。

第一個廣泛使用的分組密碼算法是DES算法。DES自1977年公布后得到了許多組織、部門的使用,各國的密碼學(xué)工作者也對它進行了深入的分析,它是迄今為止使用最廣泛和最成功的分組密碼。DES的輪函數(shù)采用Feistel網(wǎng)絡(luò),8個s盒,擴充、壓縮置換、塊置換。其算法簡潔、快速且加解密相似。但一個明顯的缺陷是s盒為黑盒,因此公眾長久地抱怨并懷疑它設(shè)有陷門。早期的迭代分組密碼設(shè)計主要圍繞DES進行,后來在此基礎(chǔ)上有很大的發(fā)展,出現(xiàn)了眾多的Feistel型密碼,DES的設(shè)計至今仍閃爍著人類設(shè)計思想的精華,其結(jié)構(gòu)和部件仍在被后人效仿。數(shù)據(jù)加密算法(Data Encryption Algorithm,DEA)是一種對稱加密算法,很可能是使用最廣泛的密鑰系統(tǒng),特別是在保護金融數(shù)據(jù)的安全中,最初開發(fā)的DEA是嵌入硬件中的。通常,自動取款機(Automated Teller Machine,ATM)都使用DEA.它出自IBM的研究工作,IBM也曾對它擁有幾年的專利權(quán),但是在1983年已到期后,處于公有范圍中,允許在特定條件下可以免除專利使用費而使用。

DES 使用一個 56 位的密鑰以及附加的 8 位奇偶校驗位,產(chǎn)生最大 64 位的分組大小。這是一個迭代的分組密碼,使用稱為 Feistel 的技術(shù),其中將加密的文本塊分成兩半。使用子密鑰對其中一半應(yīng)用循環(huán)功能,然后將輸出與另一半進行"異或"運算;接著交換這兩半,這一過程會繼續(xù)下去,但最后一個循環(huán)不交換。DES 使用 16 個循環(huán),使用異或,置換,代換,移位操作四種基本運算。是旅居瑞士中國青年學(xué)者來學(xué)嘉和著名密碼專家J.Massey于1990年提出的。它在1990年正式公布并在以后得到增強。這種算法是在DES算法的基礎(chǔ)上發(fā)展出來的,類似于三重DES,和DES一樣IDEA也是屬于對稱密鑰算法。發(fā)展IDEA也是因為感到DES具有密鑰太短等缺點,已經(jīng)過時。IDEA的密鑰為128位,這么長的密鑰在今后若干年內(nèi)應(yīng)該是安全的。類似于DES,IDEA算法也是一種數(shù)據(jù)塊加密算法,它設(shè)計了一系列加密輪次,每輪加密都使用從完整的加密密鑰中生成的一個子密鑰。與DES的不同處在于,它采用軟件實現(xiàn)和采用硬件實現(xiàn)同樣快速。

Rijndael是AES活動的最終勝利者,現(xiàn)已替代DES成為美國新的加密標(biāo)準(zhǔn)。國家標(biāo)準(zhǔn)技術(shù)研究所(NIST)選擇Rijndael作為美國政府加密標(biāo)準(zhǔn)(AES)的加密算法,AES取代早期的數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)。Rijndael由比利時計算機科學(xué)家Vincent Rijmen和Joan Daemen開發(fā),它可以使用128位,192位或者256位的密鑰長度,使得它比56位的DES更健壯可靠。Rijndael也有一個非常小的版本(52位),合適用在蜂窩電話、個人數(shù)字處理器(PDA)和其他的小設(shè)備上。寬軌跡策略的最大優(yōu)點是可以估計算法的最大差分特征概率和最大線性逼近概率,由此可以評估算法抵抗差分密碼分析和線性密碼分析的能力。繼美國征集AES的活動之后,歐洲在2000年3月啟動了NESS1E大計劃,目的是為了推出一系列的安全的密碼模塊,保持歐洲在密碼研究領(lǐng)域的領(lǐng)先地位并增強密碼在歐洲工業(yè)中的應(yīng)用 作為歐洲新一代的加密標(biāo)準(zhǔn),Camellia算法具有較強的安全性,能夠抵抗差分和線性密碼分析等已知的攻擊。與AES相比,Camellia算法在各種軟硬件平臺上表現(xiàn)出與之相當(dāng)?shù)募用芩俣取?/p>

3 流密碼

流密碼也稱序列密碼,它是對稱密碼算法的一種。"一次一密"的密碼方案是流密碼的雛形,但由于 一次一密"的密碼體制存在密鑰產(chǎn)生、分配和管理極為困難的缺點,使其應(yīng)用范圍受到限制。在保密強度要求高的場合,如大量軍事密碼系統(tǒng),仍多采用流密碼。流密碼是指利用少量的密鑰(制亂元素)通過某種復(fù)雜的運算(密碼算法)產(chǎn)生大量的偽隨機位流,用于對明文位流的加密。解密是指用同樣的密鑰和密碼算法及與加密相同的偽隨機位流,用以還原明文位流。流密碼設(shè)計的一般原則是采用多重密鑰、多重環(huán)節(jié)、多重安全措施等技術(shù),達到"一次一密",總體上達到流密碼最終靠密鑰保密,因此流密碼的關(guān)鍵是產(chǎn)生密鑰序列的算法,其密碼系統(tǒng)的安全性也主要取決于密鑰序列。當(dāng)前流密碼的重點研究方向主要包括:①自同步流密碼的研究;②有記憶前饋網(wǎng)絡(luò)密碼系統(tǒng)的研究;③多輸出密碼函數(shù)的研究;④高速密碼芯片的開發(fā):⑤同步序列密碼在失步后如何重新同步的問題;⑥混沌序列密碼和新研究方法的探索等。

4 公鑰加密算法

Whitfield Di衢e和Martin Hellman在1976年發(fā)表的"New Direction in Cryptography"首次提出了公鑰密碼體制,沖破了長期以來一直沿用的私鑰體制。自從公鑰密碼體制被提出以來,相繼出現(xiàn)了許多公鑰密碼方案,其中以RSA和橢圓曲線密碼算法ECC最為典型。

4.1 RSA算法

當(dāng)前最著名、應(yīng)用最廣泛的公鑰系統(tǒng)RSA是在1978年由美國麻省理工學(xué)院的Rivest、Shamir和Adleman提出的,它是一個基于數(shù)論的非對稱密碼體制。RSA算法是第一個既能用于數(shù)據(jù)加密也能用于數(shù)字簽名的算法,它容易理解和操作。

RSA的安全性基于大整數(shù)索因子分解的困難性,而大整數(shù)因子分解問題是數(shù)學(xué)的著名難題,至今沒有有效的方法予以解決,因此可以確保RSA算法的安全性。RSA系統(tǒng)是公鑰系統(tǒng)的最具有典型意義的方法,大多數(shù)使用公鑰密碼進行加密和數(shù)字簽名的產(chǎn)品和標(biāo)準(zhǔn)使用的都是RSA算法RSA的缺點主要有:首先,產(chǎn)生密鑰很麻煩,受到素數(shù)產(chǎn)生技術(shù)的限制,因而難以做到一次一密;其次運算速度慢。

4.2橢圓曲線密碼算法

橢圓曲線在代數(shù)學(xué)和幾何學(xué)上已有一百五十多年的研究歷史,有著復(fù)雜的數(shù)學(xué)背景,涉及到數(shù)論、群論和射影幾何等學(xué)科。

1985年,N.Koblitz和V.Miller分別提出了橢圓曲線密碼體制ECC,其安全性依賴于橢圓曲線群上離散對數(shù)問題碼的難解性,即已知橢圓曲線上的點P和kp計算k的困難程度,不過在當(dāng)時一直沒有像RSA等密碼系統(tǒng)一樣受到重視。但從現(xiàn)在來看,ECC是目前已知的公鑰密碼體制中,對每一比特所提供加密強度最高的一種體制,它具有安全性上高、計算量小、存儲空間占用小、帶寬要求低等特點,這些優(yōu)點使得橢圓曲線公鑰密碼體制將應(yīng)用到越來越多的領(lǐng)域。如存儲空間小,這對于加密算法在智能卡上的應(yīng)用具有特別重要的意義。1999年ANSI X9.62標(biāo)準(zhǔn)的發(fā)布成為ECC標(biāo)準(zhǔn)化的一個重要里程碑,同年美國政府的國家標(biāo)準(zhǔn)與技術(shù)委員會NIST發(fā)布了新的規(guī)定FIPS186-2,確定了ECC的地位。

5 結(jié)束語

在過去的五年中,智能卡上的計算能力發(fā)展很快,智能卡和終端計算機上應(yīng)用的密碼算法的區(qū)別已經(jīng)日益顯現(xiàn)AES算法很快成為世界范圍內(nèi)的一個標(biāo)準(zhǔn),對于該算法的攻擊手段也漸漸涌現(xiàn)。另外,邊信道攻擊也成為一 個越來越重要的研究領(lǐng)域,這種攻擊的出現(xiàn)將會對硬件和軟件的實現(xiàn)產(chǎn)生影響。新的安全證明和安全模型也在不斷涌現(xiàn),這些都使我們對安全的理解越來越深刻。在現(xiàn)在各種攻擊手段和安全證明充分發(fā)展的情況下,需要盡快地升級智能卡中所使用的密碼算法。盡管如此,密碼 密算法的完全更替還是需要一些時日。

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

    關(guān)注

    134

    文章

    9027

    瀏覽量

    366490
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10804

    瀏覽量

    210845
  • 智能卡
    +關(guān)注

    關(guān)注

    0

    文章

    135

    瀏覽量

    24726
收藏 人收藏

    評論

    相關(guān)推薦

    LKT4100性價比最高的智能卡加密芯片

    LKT4100,采用8位智能卡芯片為硬件平臺的加密芯片,支持客戶自定義算法,下載到芯片內(nèi)部運行,保證下載到芯片內(nèi)部的程序代碼的安全性,由于采用智能卡
    發(fā)表于 11-01 13:39

    采用智能卡平臺的高端加密IC開發(fā)中常見問題

    加密芯片的特點,區(qū)分位兩大方案,即單片機與加密IC固定算法認證的模式和單片機中的部分代碼移植到加密IC中的模式。從目前的加密效果看,采用智能卡平臺的加密芯片,使用客戶自定義算法移植的加
    發(fā)表于 04-08 14:31

    采用智能卡平臺的LKT系列加密IC介紹

    串口通訊協(xié)議,用戶可以把主要算法放到芯片內(nèi)部,編程語言基于標(biāo)準(zhǔn)C,開發(fā)簡單方便,同時,內(nèi)部大容量的數(shù)據(jù)空間可作為用戶擴展數(shù)據(jù)存儲器,存放重要特征數(shù)據(jù)?! ‘a(chǎn)品特性:  采用智能卡專用安全微處理器硬件
    發(fā)表于 04-11 12:20

    采用智能卡平臺的安全加密芯片LKT4200

    介紹一種電子產(chǎn)品硬件設(shè)計的版權(quán)保護方法,LKT4200是迄今為止,嵌入式加密芯片中最高端的加密芯片,它采用了32位智能卡芯片為硬件平臺,提供最安全的加密方案,即算法下載方案,客戶提供自由的下載程序或
    發(fā)表于 07-20 13:51

    基于FPGA的身份認證智能卡設(shè)計

    基于FPGA的身份認證智能卡的設(shè)計方案。在FPGA內(nèi)部實現(xiàn)身份認證相關(guān)的數(shù)據(jù)加密運算,加密算法采用128 bit Rijndael算法。相關(guān)的身份信息和加密運算所需要的常量數(shù)據(jù)均存放在
    發(fā)表于 10-14 12:45

    智能卡技術(shù)

    智能卡技術(shù)
    發(fā)表于 08-18 10:32

    LKT3100 密碼鍵盤加密芯片

     LKT3100 密碼鍵盤加密芯片采用智能卡行業(yè)高安全性智能卡安全處理芯片,采用PSAM的應(yīng)用
    發(fā)表于 02-10 15:41

    智能卡芯片是什么?

    芯片種類那么多,其他的都還好理解,可智能卡芯片是什么?
    發(fā)表于 01-29 11:01

    基于低成本MCU的UART驅(qū)動智能卡

    和固件開發(fā),給設(shè)計師帶來了新的挑戰(zhàn)。不幸的是,只有一些高檔微控制器具有可以直接驅(qū)動智能卡的專用UART。里所述的設(shè)計,可以讓你采用低端8位微控制器上標(biāo)準(zhǔn)的UART來驅(qū)動智能卡,本文采用
    發(fā)表于 07-19 08:25

    HuiHAT是智能卡的基礎(chǔ)嗎?

    HuiHAT是智能卡的基礎(chǔ)嗎?
    發(fā)表于 03-26 10:36

    IC智能卡失效機理研究

    摘要:IC智能卡使用過程中出現(xiàn)的密碼校驗失效、數(shù)據(jù)丟失、應(yīng)用區(qū)不能讀寫等一系列失效和可靠性問題,嚴重影響了其在社會生活各領(lǐng)域的廣泛應(yīng)用.分析研究了IC智能卡芯片碎裂、引
    發(fā)表于 11-12 21:10 ?34次下載

    智能卡(CPU),什么是智能卡(CPU)

    智能卡(CPU),什么是智能卡(CPU) 智能卡又稱CPU。CPU
    發(fā)表于 04-02 13:36 ?3143次閱讀

    智能卡COS產(chǎn)品密碼檢測準(zhǔn)則

    1 適用范圍 本準(zhǔn)則規(guī)定了智能卡COS 產(chǎn)品的密碼檢測內(nèi)容,適用于政府采購法規(guī)定范圍內(nèi)的智能卡COS 產(chǎn)品 密碼檢測。 2 規(guī)范性引用文件 下列文件中的條款通過本標(biāo)準(zhǔn)的引用而成為本標(biāo)準(zhǔn)
    發(fā)表于 03-31 17:48 ?49次下載

    RFID智能卡廠家定制高頻智能卡

    216等常見規(guī)格:85.5*54*0.84MM,40*25mm,50*30MM,28*31.5mmRFID智能卡廠家深圳市創(chuàng)新佳智能科技有限公司采用獨特的標(biāo)簽天線設(shè)計,具有優(yōu)異的性能,能進行遠距離多標(biāo)簽
    的頭像 發(fā)表于 11-12 09:14 ?1684次閱讀

    Java智能卡EEPROM碎片整理算法

    Java智能卡EEPROM碎片整理算法(c語言嵌入式開發(fā)需要學(xué)的東西)-Java智能卡EEPROM碎片整理算法
    發(fā)表于 07-30 11:34 ?9次下載
    Java<b class='flag-5'>智能卡</b>EEPROM碎片整理<b class='flag-5'>算法</b>