通過(guò)二進(jìn)制本原bch碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及差錯(cuò)控制編碼和信息安全領(lǐng)域,特別是涉及一種通過(guò)二進(jìn)制本原BCH碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法。
【背景技術(shù)】
[0002]1948年,香農(nóng)在一篇具有里程碑意義的論文中曾經(jīng)證明,只要信息傳輸速率低于信道容量,通過(guò)對(duì)信息適當(dāng)進(jìn)行編碼,可以在不犧牲信息傳輸或存儲(chǔ)速率的情況下,將有噪信道或存儲(chǔ)媒質(zhì)弓I入的差錯(cuò)減到任意低的程度。
[0003]事實(shí)上所有的糾錯(cuò)碼都基于一個(gè)共同的基本原理:將冗余加在信息上,以便糾正信息在存儲(chǔ)和傳輸中可能發(fā)生的錯(cuò)誤。
[0004]糾錯(cuò)碼討論的主要問(wèn)題就是設(shè)計(jì)和實(shí)現(xiàn)成對(duì)的信道編碼器/譯碼器,使得:
[0005]I)信息可以在有噪環(huán)境下盡可能快(或盡可能高密度)地傳輸(或記錄)。
[0006]2)信息在信道譯碼器的輸出端能夠可靠地重現(xiàn)。
[0007]3)將實(shí)現(xiàn)編碼器和譯碼器的代價(jià)降低到可接受的范圍內(nèi)。
[0008]博斯(Bose)、查德胡里(Chaudhuri)和霍昆格姆(Hocquenghem)(BCH)碼構(gòu)成了一類重要而有效的糾正隨機(jī)錯(cuò)誤的循環(huán)碼,這類碼是對(duì)漢明碼的一種重要推廣,可用于糾正多個(gè)錯(cuò)誤。由于該碼具有嚴(yán)格的代數(shù)結(jié)構(gòu),所以是到目前為止研究得最為詳盡、應(yīng)用最為廣泛的一類碼,已有多種譯碼算法。
[0009]對(duì)于任意正整數(shù)m(m彡3)和t,存在具有如下參數(shù)的二進(jìn)制BCH碼:
[0010]分組長(zhǎng)度:n=2m_l;
[0011 ] 奇偶校驗(yàn)位數(shù)目:n_k ( mt ;
[0012]最小距離:Clniin彡 2t+l。
[0013]在一個(gè)長(zhǎng)度為η=2π -1的分組中,該碼能夠糾正t個(gè)或少于t個(gè)差錯(cuò)的任意組合,稱該碼為糾t個(gè)錯(cuò)誤的BCH碼。該碼的生成多項(xiàng)式由它在伽羅華域GF(2m)上的根確定。
[0014]隨著信息技術(shù)的發(fā)展,數(shù)據(jù)的機(jī)密性和完整性受到越來(lái)越多的關(guān)注,自從旁路攻擊(Side Channel Attacks)被提出以后,信息的傳輸和存儲(chǔ)不僅需要考慮隨機(jī)噪聲引起的差錯(cuò),還應(yīng)考慮故障攻擊引起的差錯(cuò)。
[0015]錯(cuò)誤分析是利用錯(cuò)誤結(jié)果進(jìn)行分析得出密鑰信息的分析技術(shù)。在硬件防御錯(cuò)誤分析措施方面,通常包括檢錯(cuò)和糾錯(cuò),檢錯(cuò)碼包括奇偶校驗(yàn)碼,循環(huán)冗余校驗(yàn)碼CRC等;糾錯(cuò)碼同時(shí)具有檢錯(cuò)和糾錯(cuò)的功能,包括漢明碼、BCH碼、RS碼等。
[0016]本發(fā)明關(guān)注存儲(chǔ)器常使用的二進(jìn)制本原BCH碼
【發(fā)明內(nèi)容】
[0017]本發(fā)明要解決的技術(shù)問(wèn)題是提供一種通過(guò)二進(jìn)制本原BCH碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法,在保證檢錯(cuò)概率的情況下,能夠100%檢測(cè)因故障攻擊引起的特殊的錯(cuò)誤模式。
[0018]為解決上述技術(shù)問(wèn)題,本發(fā)明的通過(guò)二進(jìn)制本原BCH碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法,包括如下步驟:
[0019]步驟一、根據(jù)系統(tǒng)中需要檢測(cè)的數(shù)據(jù)單元的大小選擇合適的BCH碼的縮短碼;
[0020]步驟二、考慮系統(tǒng)將面臨的故障環(huán)境及數(shù)據(jù)可能出現(xiàn)的錯(cuò)誤模式并羅列出來(lái);
[0021]步驟三、在算法上構(gòu)造BCH碼被縮短的部分,使得當(dāng)數(shù)據(jù)和校驗(yàn)碼出現(xiàn)這些錯(cuò)誤模式時(shí)為非法碼,從而可以100%檢測(cè)出這些錯(cuò)誤模式,而不影響總的檢錯(cuò)概率。
[0022]步驟一中所述的BCH碼的縮短碼,如果數(shù)據(jù)和校驗(yàn)碼的長(zhǎng)度已經(jīng)符合BCH碼的分組要求n=2m-l (m為有限域GF(2m)的階),也就是縮短長(zhǎng)度為0,則可以通過(guò)使用有限域GF (2m+1)來(lái)構(gòu)造BCH碼的縮短碼。
[0023]步驟三中所述構(gòu)造BCH碼被縮短的部分,如果錯(cuò)誤模式較多而B(niǎo)CH碼被縮短的部分較少,有可能遍歷BCH碼被縮短部分的所有值也無(wú)法找到能夠?qū)⑺绣e(cuò)誤模式變成非法碼的一個(gè)縮短碼,則可以將有限域GF(2m)的階增加為m+1來(lái)重新構(gòu)造BCH碼的縮短碼。
[0024]本發(fā)明通過(guò)構(gòu)造被縮短部分的值將特殊的錯(cuò)誤模式變成非法碼字,從而能夠通過(guò)檢錯(cuò)電路100%被檢測(cè)出來(lái),而將特殊的錯(cuò)誤模式變成非法碼字可以通過(guò)構(gòu)造被縮短部分的值來(lái)實(shí)現(xiàn)。
【附圖說(shuō)明】
[0025]下面結(jié)合附圖與【具體實(shí)施方式】對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明:
[0026]圖1是本發(fā)明中BCH碼的碼字結(jié)構(gòu)。
[0027]圖2是本發(fā)明中縮短的BCH碼的碼字結(jié)構(gòu)。
【具體實(shí)施方式】
[0028]下面以使用二進(jìn)制本原BCH碼實(shí)現(xiàn)對(duì)32bits數(shù)據(jù)檢錯(cuò)的功能為例來(lái)介紹本發(fā)明。
[0029]1、系統(tǒng)需要使用BCH碼對(duì)ROM和EEPROM中的每個(gè)32bits數(shù)據(jù)單元實(shí)現(xiàn)檢錯(cuò)功能,BCH碼的分組長(zhǎng)度需滿足n=2m-l(m為有限域GF(2m)的階),其碼字結(jié)構(gòu)如圖1所示,而
25-1〈32+校驗(yàn)位〈26-1,所以選擇有限域GF(26),本原多項(xiàng)式P⑴=X6+X+1。
[0030]2、由于只需要實(shí)現(xiàn)檢錯(cuò)功能,所以只需要6bits的校驗(yàn)位;分組長(zhǎng)度為
26-l=63bits,實(shí)際需要38bits,需要縮短25bits,縮短是通過(guò)使用碼的部分而非全部信息比特來(lái)實(shí)現(xiàn),其碼字結(jié)構(gòu)如圖2所示。
[0031]3、縮短的BCH碼是線性碼,通常不再是循環(huán)碼,但適當(dāng)處理被縮短的比特后,可以使用同樣的編解碼器。
[0032]4、考慮故障可能將ROM和EEPROM中的38bits數(shù)據(jù)單元變成全O或者全1,如果BCH碼被縮短部分固定為全0,38bits全O為合法碼字,無(wú)法通過(guò)檢錯(cuò)電路檢測(cè)出來(lái);如果BCH碼被縮短部分固定為全l,38bits全I(xiàn)為合法碼字,無(wú)法通過(guò)檢錯(cuò)電路檢測(cè)出來(lái)。
[0033]5、要實(shí)現(xiàn)對(duì)38bits全O和全I(xiàn)的檢錯(cuò)功能,就需要通過(guò)構(gòu)造被縮短部分的值使得當(dāng)32bits數(shù)據(jù)為全O時(shí)其6bits的校驗(yàn)碼不為全0,并使得當(dāng)32bits數(shù)據(jù)為全I(xiàn)時(shí)其6bits的校驗(yàn)碼不為全1,也就是使得38bits全O和全I(xiàn)屬于非法碼字。
[0034]6、實(shí)驗(yàn)中發(fā)現(xiàn)將被縮短的25bits中緊接32bits數(shù)據(jù)的Ibit設(shè)為1,其余24bits設(shè)為O時(shí),32bits全O數(shù)據(jù)的校驗(yàn)碼不為全0,32bits全I(xiàn)數(shù)據(jù)的校驗(yàn)碼不為全1,這樣就實(shí)現(xiàn)了將38bits全O和全I(xiàn)變成非法碼字的目的,38bits全O和全I(xiàn)也就能夠被檢錯(cuò)電路檢測(cè)出來(lái)。
[0035]以上通過(guò)【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,但這些并非構(gòu)成對(duì)本發(fā)明的限制。在不脫離本發(fā)明原理的情況下,本領(lǐng)域的技術(shù)人員還可做出許多變形和改進(jìn),這些也應(yīng)視為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種通過(guò)二進(jìn)制本原BCH碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法,其特征在于,包括如下步驟: 步驟一、根據(jù)系統(tǒng)中需要檢測(cè)的數(shù)據(jù)單元的大小選擇合適的BCH碼的縮短碼; 步驟二、考慮系統(tǒng)將面臨的故障環(huán)境及數(shù)據(jù)可能出現(xiàn)的錯(cuò)誤模式并羅列出來(lái); 步驟三、在算法上構(gòu)造BCH碼被縮短的部分,使得當(dāng)數(shù)據(jù)和校驗(yàn)碼出現(xiàn)這些錯(cuò)誤模式時(shí)為非法碼,從而能夠100%檢測(cè)出這些錯(cuò)誤模式,而不影響總的檢錯(cuò)概率。
2.如權(quán)利要求1所述的方法,其特征在于:步驟一中所述的BCH碼的縮短碼,如果數(shù)據(jù)和校驗(yàn)碼的長(zhǎng)度已經(jīng)符合BCH碼的分組要求n=2m-l,則通過(guò)使用有限域GF (2m+1)來(lái)構(gòu)造BCH碼的縮短碼;其中,m為有限域GF (2m)的階。
3.如權(quán)利要求1所述的方法,其特征在于:步驟三中所述構(gòu)造BCH碼被縮短的部分,當(dāng)遍歷BCH碼被縮短部分的所有值也無(wú)法找到能夠?qū)⑺绣e(cuò)誤模式變成非法碼的一個(gè)縮短碼時(shí),則將有限域GF(2m)的階增加為m+1來(lái)重新構(gòu)造BCH碼的縮短碼。
【專利摘要】本發(fā)明公開(kāi)了一種通過(guò)二進(jìn)制本原BCH碼的縮短碼檢測(cè)特殊錯(cuò)誤模式的方法,屬于差錯(cuò)控制編碼和信息安全領(lǐng)域。包括以下步驟:根據(jù)系統(tǒng)中需要檢測(cè)的數(shù)據(jù)單元的大小選擇合適的BCH碼的縮短碼;考慮系統(tǒng)將面臨的故障環(huán)境及數(shù)據(jù)可能出現(xiàn)的錯(cuò)誤模式并羅列出來(lái);在算法上構(gòu)造BCH碼被縮短的部分,使得當(dāng)數(shù)據(jù)和校驗(yàn)碼出現(xiàn)這些錯(cuò)誤模式時(shí)為非法碼,從而可以100%檢測(cè)出這些錯(cuò)誤模式,而不影響總的檢錯(cuò)概率。本發(fā)明在保證檢錯(cuò)概率的情況下,能夠100%檢測(cè)因故障攻擊引起的特殊的錯(cuò)誤模式。
【IPC分類】H03M13-15
【公開(kāi)號(hào)】CN104639179
【申請(qǐng)?zhí)枴緾N201310563744
【發(fā)明人】徐云秀, 顧海華, 何玉明, 戴益君
【申請(qǐng)人】上海華虹集成電路有限責(zé)任公司
【公開(kāi)日】2015年5月20日
【申請(qǐng)日】2013年11月13日