在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

AT88SC1616加密存儲芯片的性能特點及典型應用

電子設計 ? 來源:單片機與嵌入式系統(tǒng)應用 ? 作者:王彥文;薄勇;孫素 ? 2021-03-20 10:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:王彥文;薄勇;孫素麗

隨著嵌入式產(chǎn)品性能的日益提高,嵌入式系統(tǒng)在消費類電子、汽車、工業(yè)控制通信等行業(yè)迅速普及;但由于嵌入式系統(tǒng)開發(fā)成本高、研發(fā)周期長,使得關(guān)鍵技術(shù)的加密和重要數(shù)據(jù)的保密問題日益突出。如何在這些嵌入式系統(tǒng)中采用低成本、高效率的方法保護自己的科研成果不被非法仿制和剽竊,同時保存一些關(guān)鍵代碼或數(shù)據(jù)已成為困擾許研發(fā)工程師的問題之一。解決的辦法除了采用法律手段保護知識產(chǎn)權(quán)外,另一個更加簡單有效的方法就是采用加密存儲芯片進行硬件電路的加密和重要數(shù)據(jù)的認證存儲。

AT88SCxx系列加密存儲芯片是國際著名芯片廠商Atmel公司生產(chǎn)的具有多用途的加密存儲系列芯片。其中AT88SC1616是該系列芯片的典型代表。由于其具有多達2KB的EEPROM,利用I2C串行總線通信,采用認證或加密驗證等方式進行數(shù)據(jù)訪問,因此以其容量大、體積小、使用方便、安全可靠等特點,在產(chǎn)生開發(fā)中得到了廣泛的應用。

1 器件簡介

1.1 引腳說明

如圖1所示,在嵌入式系統(tǒng)中,AT88SC1616常采用SOIC和PDIP兩種典型封裝。由于器件采用I2C串行總線接口,因此引腳數(shù)目少,體積小。各引腳功能如下:

AT88SC1616加密存儲芯片的性能特點及典型應用

圖1 AT88SC1616典型封裝

SCL——串行時鐘輸入腳,用來控制器件所有的數(shù)據(jù)輸入相輸出;

SDA——串行數(shù)據(jù)輸入/輸出腳;

VCC——電源電壓,工作電壓為3.0~5.5V;

GND——地;

NC——不連接。

1.2 內(nèi)部結(jié)構(gòu)

如圖2所示,AT88SC1616加密存儲芯片內(nèi)部結(jié)構(gòu)主要由電源管理復位模塊、同步傳輸模塊、認證單元、密碼校驗單元、偽隨機數(shù)發(fā)生器和EEPROM等幾部分組成。其中電源管理復位模塊主要對芯片進行供電、提供復位管理和掉電保護等功能;同步傳輸模塊用于控制在不同通信方式下數(shù)據(jù)的傳輸;認證和密碼校驗單元實現(xiàn)在不同安全等級下用戶用戶應用區(qū)數(shù)據(jù)訪問的安全管理;偽隨機數(shù)發(fā)生器用于進行內(nèi)部加密機的加密計算;EEPROM則保存需要加密的重要數(shù)據(jù)和代碼。

圖2 AT88SC1616內(nèi)部結(jié)構(gòu)框圖

1.3 主要特點

①具有256B的配置存儲區(qū),可根據(jù)不同需要定義芯片序列、密碼、密鑰、認證種和廠家信息等。

②提供2KB的用戶應用存儲區(qū),可根據(jù)不同安全等級將該區(qū)劃分為16個獨立的應用分區(qū),最多可以提供給16個用戶使用;也可將具有相同安全等級和密碼的多個應用分區(qū)進行合并。

③高安全性。對于用戶民應用區(qū),具有標準訪問、認證訪問和加密驗證訪問兩種方式,同時提供多組密碼集供讀寫訪問使用。每個應用分區(qū)在配置區(qū)中都有相應的寄存器控制其安全等級和訪問方式。

④高可靠性。提供多達10萬次擦寫次數(shù)和10年的數(shù)據(jù)保存期。

⑤多種封裝。除8腳的PDIP、SOIC封裝外,還具有智能卡片封裝,可廣泛應用于IC卡系統(tǒng)。

⑥高速度。在I2C串行總線方式下,通信速率最高可達1000kb/s。

2 工作原理

2.1 配置區(qū)結(jié)構(gòu)

AT88SC1616邏輯加密芯片是一款串行EEPROM,共有2KB的用戶應用存儲區(qū)和256B的系統(tǒng)配置區(qū),應用存儲區(qū)通過配置可劃分成16個相同容量的應用存儲區(qū)。分別受8套(16個)讀、寫密碼的控制,錯誤計數(shù)最大8次。這16個應用分區(qū)也可以通過配置使用相同的密碼和安全等級可自由合并使用。AT88SC1616配置區(qū)的結(jié)構(gòu)如圖3所示。

圖3 AT88SC1616配置區(qū)結(jié)構(gòu)

DCR:指定認證次數(shù)限制和芯片地址。

②AR0~AR7:確定訪問權(quán)限,初始化時定義,指定對應的用戶應用區(qū)訪問方式,例如是否需要認證,是否使用密碼,使用哪一套密碼,是否只讀等等。

③AAC:認證錯誤計數(shù)器。

④PAC:密碼錯誤計數(shù)器。

供用戶使用的16個應用存儲區(qū)都各有2個24位的密碼,可在配置區(qū)對其讀寫操作進行設置,并且每個密碼都有計數(shù)器限制口令驗證次數(shù)。

2.2 芯片使用

AT88SC1616芯片為用戶訪問應用存儲區(qū)提供了標準、認證和加密三種方式,既方便用戶根據(jù)實際情況靈活選擇加密方式,又提高了系統(tǒng)的安全性。在標準訪問方式下,對用戶應用區(qū)的讀寫訪問無任何限制;在認證方式下,用戶必須經(jīng)過認證,同時要通過不同用戶區(qū)所設定的密碼檢驗才能正確訪問用戶數(shù)據(jù)區(qū),在這種方式下,總線上傳輸?shù)臄?shù)據(jù)是明文:加密驗證模式下訪問用戶時用戶必須首先經(jīng)過認證,然后利用認證成功后配置區(qū)特定寄存器中更新的數(shù)據(jù)作為密鑰再次進行認證,最后還要通過不同用戶區(qū)設定的密碼檢驗后才可訪問用戶區(qū),這種方式下總線下傳輸?shù)臄?shù)據(jù)是經(jīng)過加密的密文。

總體來說,對芯片的使用可分成初始化、認證(加密)和訪問三個步驟。

(1)初始化

初始化的過程,用戶系統(tǒng)的MCU要將生產(chǎn)廠商信息、分區(qū)設備、安全等級和密碼以及加密認證所需參數(shù)等寫入芯片的配置區(qū),最后還要進行寫熔斷的處理。在實現(xiàn)的過程中,應重點考慮如何對AT88SC1616的2K配置區(qū)進行合理的配置和使用,對訪問用戶分區(qū)的權(quán)限進行有效的控制。

表1 系統(tǒng)配置區(qū)寄存器及功能

在對配置區(qū)進行合理配置的同時,要將從證所需的三組重要的參數(shù)寫入到配置區(qū)相應的寄存器中。這三組數(shù)分別是:Ci(Cryptograms)認證所需的隨機數(shù),Nc(Identification Number)芯片序列號,Gc(Secret Seeds)由用戶自定義的F1算法得出的秘密種子。

初始化時,首先要向第七組寫密碼區(qū)中寫入配置區(qū)的寫入密碼。只有正確寫入該密碼后用戶才可以獲得對整個配置區(qū)的寫入權(quán)力,這個密碼由芯片供應商提供。正確寫入密碼后就可以根據(jù)要求對芯片的各個寄存器進行配置,最后還要根據(jù)用戶需要,按照SEC、PER、CMA、FAB的順序依次向熔斷位寫入0進行熔斷處理。注意,芯片一旦被寫熔斷后就無法再對配置區(qū)的信息進行更改。

(2)認證

整個認證過程是一個雙向認證的過程,流程如圖4所示。

圖4 認證過程

用戶系統(tǒng)的MCU首先從芯片中讀出Nc和Ci,根據(jù)自定義的F1(Nc,Ks)算法算出Gc,同時利用芯片內(nèi)部的F2(Gc,Ci,Q0)算法算出Q1,并向芯片發(fā)送初始化認證參數(shù)Q1和Q0,其中,Q0是CPU方給出的隨機數(shù)。芯片內(nèi)部則利用自己的F2邏輯算出Ci+1=F2(Gc,Ci,Q0),同時得出Q2=F2(Gc,Q1)。芯片收到校驗認證命令后,判斷是否Ci+1=Q1,如是,則有Ci+2=F2(Gc,Ci+1),且用Ci+2更新Ci,芯片中的認證通過;同時更新芯片內(nèi)部同組的SK(Session Encryption Key)的值。CPU方接收芯片中更新的Ci后,判斷是否等于Q2,如果通過,則認證全部通過。

上面說的過程是認證模式,如果想進入加密難證模式的話,需要再次利用認證成功時返回更新的SK值,用它取代Gc,Ci再作為參數(shù);利用F2函數(shù),芯片和MCU方再計算一次并比較,判斷相等后才進入加密認證模式。

上面提到的F2算法,是芯片內(nèi)部的控制邏輯利用Gc、Ci、Q0三個參數(shù)初始化的一個DES算法的變種。這個算法是所有加密解密、完整性認證與信息認證的關(guān)鍵。

(3)訪問用戶區(qū)

認證(加密)成功后就可以發(fā)送命令選擇用戶分區(qū)進行數(shù)據(jù)的讀寫訪問了,如果各個分區(qū)還有讀或?qū)懙拿艽a限制,則還需要向訪問 的分區(qū)寫入密碼進行校驗,通過這一步后才能真正完全訪問用戶分區(qū)。此時如果多個用戶分區(qū)使用相同的安全等級和密碼,則可以將這多個用戶區(qū)進行合并。需要說明的是,認證一旦成功后,芯片內(nèi)部的加密機就立即開始啟動,MCU對芯片的任何操作都需要根據(jù)芯片加密機內(nèi)部算法進行計算,以保持與它的同步。特別是向用戶分區(qū)發(fā)送一次寫入命令和數(shù)據(jù)后,要緊接著發(fā)送一次MCU方計算的加密機結(jié)果,與芯片內(nèi)部加密機計算的結(jié)果進行校驗。芯片只有接收到正確的校驗和后才能將數(shù)據(jù)寫入到相應的地址內(nèi),否則數(shù)據(jù)寫不到目的地址,同時芯片會返回錯誤信息。

3 芯片功能實現(xiàn)

3.1 硬件電路

由于AT88SC1616加密芯片采用兩線的I2C總線通信方式,因此與微處理器的硬件接口相對容易。圖5是AT88SC1616與AVR單片機Atmegal128相連的硬件接口電路。由于Atmegal 128內(nèi)部帶有I2C接口,因此它可與AT88SC1616直接相連。在其它嵌入式系統(tǒng)中,AT88SC1616與其它微處理器的接口同樣簡單,只要與相應的I2C接口引腳直接相連即可。如系統(tǒng)的MCU沒有專用I2C接口引腳,可使用一般的I/O引腳(GPIO)與AT88SC1616的時鐘線和數(shù)據(jù)線相連,采用I2C模擬方式就可以正常工作。但無論是否進行I2C的模擬,其總線上一定要保證符合I2C總線要求的上拉電阻,以保證其時序的正確無誤。

圖5 Atmegal 128與AT88SC1616的硬件接口示意

3.2 軟件實現(xiàn)

AT88SC1616采用兩線的I2C通信方式,其控制時序比較簡單,本文不再多述。這里重點講述一下芯片使用工作過程。

AT88SC1616的初始化流程如圖6所示。按照寫入配置區(qū)密碼、區(qū)分訪問方式和讀寫密碼、安全限制和認證參數(shù)、熔斷處理的順序,以I2C的通信方式向芯片內(nèi)部各寄存器地址發(fā)送命令和數(shù)據(jù)。由于AT88SC1616內(nèi)部有一內(nèi)存測試區(qū)(memory test)不受安全和密碼限制,因此為保證I2C讀寫時序的正確性,可先向該區(qū)進行讀寫測試,然后再向芯片正確寫入各種命令。

圖6 AT88SC1616初始化流程

用戶認證流程如圖7所示。無論系統(tǒng)MCU是采用本身I2C接口,還是使用普通I/O口進行I2C模擬,軟件的實現(xiàn)都遵循如前所述的總線時序。需要注意的是,在啟動I2C START信號前,SCL一定要首先發(fā)送4個脈沖來啟動通信,否則發(fā)送的數(shù)據(jù)和命令不會被芯片正確接收。這一點與普通I2C器件有所不同,一定要得到重視。

圖7 AT88SC1616認證流程

訪問用戶分區(qū)的流程如圖8所示。可先向用戶分區(qū)寫入數(shù)據(jù)后再讀出以進行校驗。編程時要注意,認證一旦成功,MCU所有對芯片的操作都要加上對內(nèi)部加密機的計算,對芯片發(fā)送命令和數(shù)據(jù)后要緊接著發(fā)送校驗和,以和芯片內(nèi)部的加密機進行校驗,校驗和不正確芯片會返回錯誤信息。

圖8 AT88SC1616訪問用戶分區(qū)流程

4 在嵌入式系統(tǒng)中的應用

由于AT88SC1616具有使用方便、安全可靠等諸多優(yōu)點,使其在工業(yè)控制、消費類電子、醫(yī)療器械、計費系統(tǒng)等領域具有廣闊的應用前景。筆者已將該芯片用于已開發(fā)的選擇性漏電保護系統(tǒng)中。在這個系統(tǒng)中的64條供電支路被人為劃分成4個區(qū),每個區(qū)設定獨立的電壓、電流和相位。針對不同區(qū)的管理員,還設定不同的用戶名和密碼,這些參量都被保存在AT88SC1616的用戶使用區(qū)中。我們在維護系統(tǒng)數(shù)據(jù)安全性方面采用的辦法是,在程序中對這些參量的讀寫訪問都設定了密碼,密碼不正確是不能讀寫這些參量的,保證了只有真正的供電分區(qū)管理員才可對相應區(qū)的系統(tǒng)參數(shù)進行設定;同時采用加密驗證訪問方式,使得總線上傳輸?shù)臄?shù)據(jù)是密文,維護了系統(tǒng)數(shù)據(jù)的安全性。為防止有些不良用戶利用非法手段獲取系統(tǒng)時序進行反匯編,以此達到破解系統(tǒng)牟取高額利潤的目的,也采用了兩個辦法來保證整個系統(tǒng)的安全性,一是系統(tǒng)中不定期地對芯片進行認證訪問,系統(tǒng)一次認證不成功就返回錯誤信息;第二是對非法的認證訪問數(shù)進行錯誤限制,錯誤一旦超過8次,芯片鎖死,從而維護了我們的知識產(chǎn)權(quán)。

出于安全考慮,每個芯片要使用唯一的序列號。筆者還根據(jù)實際情況設計了一款針對AT88SC1616的簡單實用的編程器,利用該編程器可在芯片正式使用之間對其初始化,將序列號、認證參數(shù)、安全等級、訪問密碼等各種信息寫入配置區(qū),使得每一個被初始化的芯片都可以直接在其它系統(tǒng)中應用,大大提高了效率。

結(jié)語

本文詳細介紹了AT88SC1616的芯片結(jié)構(gòu)、特點、數(shù)據(jù)存儲訪問原理,并以Atmega 128與其接口為例,給出了實用的硬件接口電路與軟件實現(xiàn)流程。由于AT88SC1616具有較大的存儲空間、嚴格的安全性能和簡單可靠性的高速數(shù)據(jù)傳輸方式,因此極大地提高了嵌入式系統(tǒng)的數(shù)據(jù)安全性和適用性。我們已將此芯片成功應用于選擇性漏電保護的軟硬件加密系統(tǒng)中。事實證明利用該芯片既提高了系統(tǒng)的防破解性,又保證了重要數(shù)據(jù)的安全性。另外,我們還根據(jù)其特點設計了可用于初始化該芯片的編程器,為大批量生產(chǎn)提供了硬件條件,獲得了良好的效果。AT88SC1616良好的安全性使得它還可更廣泛地應用于遠程抄表、醫(yī)療器械、機頂盒、汽車、通信、消費類家電等嵌入式系統(tǒng)。本文所介紹的方法對這些應用都有很好的參考價值。

責任編輯:gt

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

    關(guān)注

    459

    文章

    52464

    瀏覽量

    440176
  • 嵌入式
    +關(guān)注

    關(guān)注

    5149

    文章

    19651

    瀏覽量

    317148
  • 工業(yè)控制
    +關(guān)注

    關(guān)注

    38

    文章

    1542

    瀏覽量

    86978
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    一文帶你了解什么是SD NAND存儲芯片

    ,如果只想了解SDNAND可以直接跳轉(zhuǎn)到“SD NAND存儲芯片”的目錄中。   在這里會以存儲芯片做比較,不和RAM存儲器比較,以比較性能和使用環(huán)境,使用協(xié)議為主。   EEPROM
    發(fā)表于 11-13 15:20

    AT88SC0204CA單片機原理

    AT88SC0204CA 概述  AT88SC0204CA,CryptoMemory?系列產(chǎn)品的成員之一,是一款高性能的安全存儲器。AT88SC
    發(fā)表于 08-23 13:50

    馳芯微加密芯片

    馳芯微電子推出具有自有加密算法的系列加密芯片CW0881特點:1、能兼容AT88SC0104,具有2K bits 配置區(qū),可根據(jù)不同需要定義
    發(fā)表于 03-18 14:02

    AT88系列芯片AT88SC芯片解密方法解析!

    :AT88SC系列芯片加密存儲芯(卡)片是國際著名芯(卡)片廠商Atmel公司生產(chǎn)的具有多用途的加密存儲
    發(fā)表于 01-12 13:41

    AT88SC系列芯片進行系統(tǒng)加密原理

    AT88SC系列芯片進行系統(tǒng)加密原理
    發(fā)表于 02-17 09:02

    存儲芯片入門漫談

    最近,清華紫光,武漢新芯在存儲芯片領域動作頻頻,讓大家把目光投向了以前被忽略的存儲芯片。長期以來,在CPU,GPU,基帶等“先進”芯片聚光燈的掩蓋之下,存儲芯片一直處在默默無聞地步,不
    發(fā)表于 08-16 16:30

    存儲芯片封裝分類及作用是什么?

    存儲芯片封裝可以分為哪幾類?存儲芯片封裝的作用是什么?什么是固定引腳系統(tǒng)?
    發(fā)表于 06-18 06:56

    AT88SC0104C電子產(chǎn)品硬件

    AT88SC0104C電子產(chǎn)品硬件,摘要:本文首先介紹了AT88SC0104C~25616C協(xié)議認證卡的主要特點、基本功能、安全存儲原理、協(xié)議認證過程以及開發(fā)方法;接著,對應用AT
    發(fā)表于 07-19 08:48

    存儲芯片廠商有哪些_八大存儲芯片廠商排名

    本文詳細介紹了八大存儲芯片廠商排名。存儲芯片是嵌入式系統(tǒng)芯片的概念在存儲行業(yè)的具體應用,目前存儲芯片在我們的生活中也已經(jīng)得到普遍的運用。
    的頭像 發(fā)表于 04-08 11:52 ?11.4w次閱讀

    長江存儲128層NAND flash存儲芯片 中國存儲芯片國際領先

    據(jù)媒體報道指國產(chǎn)存儲芯片企業(yè)長江存儲已開發(fā)出128層的NAND flash存儲芯片,這是當前國際存儲芯片企業(yè)正在投產(chǎn)的NAND flash技術(shù),意味著中國的
    的頭像 發(fā)表于 04-14 08:55 ?1.4w次閱讀

    工控行業(yè)中應用的國產(chǎn)存儲芯片

    存儲芯片是指嵌入式系統(tǒng)芯片的概念在存儲行業(yè)的具體應用,無論是系統(tǒng)芯片還是存儲芯片,都是通過在單一芯片
    發(fā)表于 03-14 09:03 ?1067次閱讀

    存儲芯片的原理_分類及應用

    存儲芯片是指集成電路中用來存儲數(shù)據(jù)的芯片,它可以存儲數(shù)字信號,包括二進制碼、字符、圖像、聲音等信息。存儲芯片廣泛應用于電子產(chǎn)品中,如計算機、
    的頭像 發(fā)表于 06-02 09:24 ?1.6w次閱讀

    車載存儲芯片介紹

    存儲芯片,也叫存儲器,是用來存儲程序和各種數(shù)據(jù)信息的記憶部件。
    發(fā)表于 06-09 11:05 ?1844次閱讀
    車載<b class='flag-5'>存儲芯片</b>介紹

    存儲芯片是什么 存儲芯片的分類及發(fā)展歷史

    存儲芯片是半導體行業(yè)中非常重要的一類產(chǎn)品,我們?nèi)粘K械碾娮釉O備基本都會用到存儲器。據(jù)WSTS預測,2023年全球存儲芯片市場規(guī)模將達到1675億美元,占比約30%;其中中國存儲器市場
    發(fā)表于 07-07 10:27 ?1.6w次閱讀
    <b class='flag-5'>存儲芯片</b>是什么 <b class='flag-5'>存儲芯片</b>的分類及發(fā)展歷史

    存儲芯片有哪些類型

    存儲芯片,又稱為半導體存儲器,是以半導體電路作為存儲媒介的存儲器,廣泛應用于計算機、消費電子、智能終端、固態(tài)存儲硬盤等領域。按照不同的分類標
    的頭像 發(fā)表于 07-24 16:40 ?5039次閱讀
    主站蜘蛛池模板: 久久天天躁夜夜躁狠狠躁2015 | 国产网站免费观看 | 黄色日比 | xxxx日本在线播放免费不卡 | 午夜视频黄色 | 一级特黄aa毛片免费观看 | 久久羞羞视频 | 欧美精品一区二区三区视频 | 天天摸夜夜摸成人免费视频 | 色老头在线官方网站 | 91免费视频网站 | 激情综合五月网 | 久久精品5 | 亚洲欧美日韩在线精品2021 | 国产精品夜夜春夜夜爽 | 日韩高清成人毛片不卡 | 黄色毛片网 | 日本黄色录像 | 国产三片高清在线观看 | 欧美一级视频免费看 | 亚洲欧美一区二区久久香蕉 | 黄色美女网站免费 | 一级特黄毛片 | 日本网络视频www色高清免费 | 狠狠色噜噜狠狠狠狠97影音先锋 | 亚洲68283精品人体 | 精品亚洲午夜久久久久 | 三级网站国产 | 男人的天堂久久精品激情 | 小毛片在线观看 | 国产精品免费观看网站 | 精品卡1卡2卡三卡免费网站视频 | 欧美性受xxxx| 奇米色影院 | 夜夜夜夜夜夜夜猛噜噜噜噜噜噜 | 久久久久免费精品国产 | 天天爽夜夜爽一区二区三区 | 国产精品一区二区三区四区五区 | 国产精品毛片久久久久久久 | 天天综合天天看夜夜添狠狠玩 | 美日韩中文字幕 |