防偽碼生成方法
【專(zhuān)利摘要】本發(fā)明提供的防偽碼生成方法,具有這樣的特征,具體包括以下步驟:1.對(duì)產(chǎn)品信息以一定的預(yù)定規(guī)則進(jìn)行編碼生成產(chǎn)品序列號(hào),2.對(duì)產(chǎn)品序列號(hào)和秘鑰進(jìn)行AES加密算法運(yùn)算,得到加密數(shù)據(jù),3.將加密數(shù)據(jù)分割為前加密數(shù)據(jù)和后加密數(shù)據(jù),4.對(duì)秘鑰按照預(yù)定規(guī)則處理得到DES秘鑰和IDEA秘鑰,5.對(duì)前加密數(shù)據(jù)和DES秘鑰進(jìn)行DES加密算法運(yùn)算,得到物流防偽完全碼,6.對(duì)后加密數(shù)據(jù)和IDEA秘鑰進(jìn)行IDEA加密算法運(yùn)算,得到產(chǎn)品防偽完全碼,以及7.根據(jù)預(yù)定長(zhǎng)度分別從物流防偽完全碼和產(chǎn)品防偽完全碼中截取出相應(yīng)的物流防偽應(yīng)用碼和產(chǎn)品防偽應(yīng)用碼。因此,本發(fā)明防偽碼生成方法,與現(xiàn)有技術(shù)相比具有加密強(qiáng)度高、不易破解的特點(diǎn)。
【專(zhuān)利說(shuō)明】防偽碼生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種防偽碼的生成方法,具體涉及一種根據(jù)包含物流信息的產(chǎn)品信息和秘鑰生成預(yù)定長(zhǎng)度的物流防偽應(yīng)用碼和預(yù)定長(zhǎng)度的產(chǎn)品防偽應(yīng)用碼的的防偽碼生成方法。
【背景技術(shù)】
[0002]當(dāng)今社會(huì)假冒偽劣商品泛濫,是我國(guó)經(jīng)濟(jì)生活中的突出問(wèn)題,打擊假冒偽劣商品的生產(chǎn)與流通,事關(guān)凈化流通秩序、保障消費(fèi)者權(quán)益、保護(hù)合法知識(shí)產(chǎn)權(quán),也與提高我國(guó)商品在國(guó)際市場(chǎng)的信譽(yù)直接相關(guān)。假冒產(chǎn)品不但侵害了廣大消費(fèi)者的利益,擾亂了正常的市場(chǎng)秩序,而且給廠(chǎng)商帶來(lái)了巨大的經(jīng)濟(jì)損失。各生產(chǎn)企業(yè)為了保護(hù)自己的利益不受假冒產(chǎn)品侵害,大多會(huì)在產(chǎn)品上印刷防偽碼。
[0003]目前,生成防偽碼的加密算法雖然有很多,但大部分加密算法的加密強(qiáng)度不是很理想,加密速度也較慢?,F(xiàn)有技術(shù)中缺乏一種加密強(qiáng)度高、不易破解的防偽碼生成方法。
【發(fā)明內(nèi)容】
[0004]本發(fā)明是為了解決上述課題而進(jìn)行的,目的在于提供一種加密強(qiáng)度高、不易破解的能夠根據(jù)包含物流信息的產(chǎn)品信息和秘鑰生成預(yù)定長(zhǎng)度的物流防偽應(yīng)用碼和預(yù)定長(zhǎng)度的產(chǎn)品防偽應(yīng)用碼的防偽碼生成方法。
[0005]本發(fā)明提供的防偽碼生成方法,具有這樣的特征,具體包括以下步驟:(I)對(duì)產(chǎn)品信息以一定的預(yù)定規(guī)則進(jìn)行編碼生成產(chǎn)品序列號(hào),(2)對(duì)產(chǎn)品序列號(hào)和秘鑰進(jìn)行AES加密算法運(yùn)算,得到加密數(shù)據(jù),(3)將加密數(shù)據(jù)分割為前加密數(shù)據(jù)和后加密數(shù)據(jù),(4)對(duì)秘鑰按照預(yù)定規(guī)則處理得到DES秘鑰和IDEA秘鑰,(5)對(duì)前加密數(shù)據(jù)和DES秘鑰進(jìn)行DES加密算法運(yùn)算,得到物流防偽完全碼,(6)對(duì)后加密數(shù)據(jù)和IDEA秘鑰進(jìn)行IDEA加密算法運(yùn)算,得到產(chǎn)品防偽完全碼,以及(7)根據(jù)預(yù)定長(zhǎng)度分別從物流防偽完全碼和產(chǎn)品防偽完全碼中截取出相應(yīng)的物流防偽應(yīng)用碼和產(chǎn)品防偽應(yīng)用碼。
[0006]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,AES加密算法包括以下步驟:al.根據(jù)產(chǎn)品序列號(hào)的長(zhǎng)度和秘鑰的長(zhǎng)度確定迭代次數(shù)Nr,a2.對(duì)秘鑰進(jìn)行10次擴(kuò)展得到10組輪秘鑰組成的擴(kuò)展秘鑰,a3.對(duì)產(chǎn)品序列號(hào)與秘鑰按位進(jìn)行異或運(yùn)算得到第I運(yùn)算值,a4.對(duì)第I運(yùn)算值進(jìn)行Nr-1次AES加密迭代得到第5運(yùn)算值,a5.對(duì)第5運(yùn)算值進(jìn)行S盒置換操作得到第6運(yùn)算值,a6.對(duì)第6運(yùn)算值每行進(jìn)行循環(huán)移字節(jié)操作得到第7運(yùn)算值,以及a7.對(duì)第7運(yùn)算值與第10組輪秘鑰按位進(jìn)行異或運(yùn)算得到加密數(shù)據(jù)。
[0007]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,Nr-1次AES加密迭代中的單次AES加密迭代包括以下步驟:bl.對(duì)第I運(yùn)算值進(jìn)行S盒置換操作得到第2運(yùn)算值,b2.對(duì)第2運(yùn)算值每行進(jìn)行循環(huán)移字節(jié)操作得到第3運(yùn)算值,b3.對(duì)第3運(yùn)算值進(jìn)行混列變換操作得到第4運(yùn)算值,b4.根據(jù)擴(kuò)展秘鑰確定本次加密迭代的輪秘鑰,以及b5.將第4運(yùn)算值與輪秘鑰按位進(jìn)行異或運(yùn)算得到第5運(yùn)算值。[0008]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,DES加密算法包括以下步驟:el.對(duì)前加密數(shù)據(jù)進(jìn)行IP置換運(yùn)算得到第8運(yùn)算值,并將第8運(yùn)算值分割為左數(shù)據(jù)和右數(shù)據(jù),e2.對(duì)DES秘鑰進(jìn)行秘鑰變換得到16個(gè)DES子秘鑰組成的DES子秘鑰組,e3.對(duì)左數(shù)據(jù)和右數(shù)據(jù)進(jìn)行16次DES加密迭代得到新左數(shù)據(jù)和新右數(shù)據(jù),以及e4.將由新左數(shù)據(jù)和新右數(shù)據(jù)組成的新數(shù)據(jù)進(jìn)行末置換函數(shù)運(yùn)算得到物流防偽完全碼。
[0009]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,16次DES加密迭代中的單次DES加密迭代包括以下步驟:fl.對(duì)右數(shù)據(jù)進(jìn)行擴(kuò)展置換操作得到第9運(yùn)算值,f2.根據(jù)DES子秘鑰組確定本次加密迭代的DES子秘鑰,f3.將第9運(yùn)算值與DES子秘鑰進(jìn)行異或運(yùn)算得到第10運(yùn)算結(jié)值,并將第10運(yùn)算值分割為八個(gè)數(shù)據(jù)塊,f4.對(duì)八個(gè)數(shù)據(jù)塊分別進(jìn)行S盒置換操作得到相應(yīng)的八個(gè)輸出數(shù)據(jù),f5.對(duì)由八個(gè)輸出數(shù)據(jù)組成的第11運(yùn)算值進(jìn)行P盒置換操作得到第12運(yùn)算值,f6.對(duì)第12運(yùn)算值與左數(shù)據(jù)進(jìn)行異或運(yùn)算得到第13運(yùn)算值,以及f7.將第13運(yùn)算值作為新左數(shù)據(jù),將左數(shù)據(jù)作為新右數(shù)據(jù),進(jìn)入下一輪迭代。
[0010]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,IDEA加密算法包括以下步驟:gl.對(duì)IDEA秘鑰進(jìn)行運(yùn)算得到52個(gè)IDEA子秘鑰組成的IDEA子秘鑰組,g2.將后加密數(shù)據(jù)分割為第I數(shù)據(jù)、第2數(shù)據(jù)、第3數(shù)據(jù)和第4數(shù)據(jù),g3.對(duì)第I數(shù)據(jù)、第2數(shù)據(jù)、第3數(shù)據(jù)和第4數(shù)據(jù)進(jìn)行8次IDEA加密迭代得到新第I數(shù)據(jù)、新第2數(shù)據(jù)、新第3數(shù)據(jù)和新第4數(shù)據(jù),g4.對(duì)新第I數(shù)據(jù)和第49IDEA子秘鑰做模2161乘運(yùn)算得到第I子數(shù)據(jù),對(duì)新第3數(shù)據(jù)和第50IDEA子秘鑰做模216加運(yùn)算得到第2子數(shù)據(jù),對(duì)新第2數(shù)據(jù)和第51IDEA子秘鑰做模216加運(yùn)算得到第3子數(shù)據(jù),對(duì)新第4數(shù)據(jù)和第52IDEA子秘鑰做模2161乘運(yùn)算得到第4子數(shù)據(jù),以及g5.由第I子數(shù)據(jù)、第2子數(shù)據(jù)、第3子數(shù)據(jù)和第4子數(shù)據(jù)按順序進(jìn)行整合得到產(chǎn)品防偽完全碼。
[0011]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,8次IDEA加密迭代中的單次IDEA加密迭代包括以下步驟:hl.根據(jù)IDEA子秘鑰組確定本次迭代的第IIDEA子秘鑰、第2IDEA子秘鑰、第3IDEA子秘鑰、第4IDEA子秘鑰、第5IDEA子秘鑰和第6IDEA子秘鑰,h2.對(duì)第I數(shù)據(jù)和第I子秘鑰做模2161乘運(yùn)算得到第14運(yùn)算值,對(duì)第2數(shù)據(jù)和第2子秘鑰做模216加運(yùn)算得到第15運(yùn)算值,對(duì)第3數(shù)據(jù)和第3子秘鑰做模216加運(yùn)算得到第16運(yùn)算值,對(duì)第4數(shù)據(jù)和第4子秘鑰做模2161乘運(yùn)算得到第17運(yùn)算值,h3.對(duì)第14運(yùn)算值和第16運(yùn)算值進(jìn)行異或運(yùn)算得到第18運(yùn)算值,對(duì)第15運(yùn)算值和第17運(yùn)算值進(jìn)行異或運(yùn)算得到第19運(yùn)算值,h4.對(duì)第18運(yùn)算值和第5IDEA子秘鑰做模2161乘運(yùn)算得到第20運(yùn)算值,對(duì)第19運(yùn)算值和第20運(yùn)算值做模216加運(yùn)算得到第21運(yùn)算值,對(duì)第21運(yùn)算值和第6IDEA子秘鑰進(jìn)行模2161乘運(yùn)算得到第2運(yùn)算值,對(duì)第20運(yùn)算值和第22運(yùn)算值進(jìn)行模216加運(yùn)算得到第23運(yùn)算值,h5.對(duì)第14運(yùn)算值和第22運(yùn)算值進(jìn)行異或運(yùn)算得到第24運(yùn)算值,對(duì)第16運(yùn)算值和第22運(yùn)算值進(jìn)行異或運(yùn)算得到第25運(yùn)算值,對(duì)第15運(yùn)算值和第23運(yùn)算值進(jìn)行異或運(yùn)算得到第26運(yùn)算值,對(duì)第17運(yùn)算值和第23運(yùn)算值進(jìn)行異或運(yùn)算得到第27運(yùn)算值,以及h6.將第24運(yùn)算值、第26運(yùn)算值、第25運(yùn)算值和第27運(yùn)算值依次作為新第I數(shù)據(jù)、新第2數(shù)據(jù)、新第3數(shù)據(jù)和新第4數(shù)據(jù),進(jìn)入下一輪迭代。
[0012]在本發(fā)明的防偽碼生成方法中,還可以具有這樣的特征:其中,產(chǎn)品信息包含規(guī)格代碼、機(jī)臺(tái)代碼、標(biāo)志代碼、班次代碼、生產(chǎn)日期和時(shí)間、產(chǎn)品編號(hào)、以及物流信息。
[0013]發(fā)明的作用和效果[0014]根據(jù)本發(fā)明所涉及的防偽碼生成方法,由于首先對(duì)產(chǎn)品序列號(hào)采用AES算法進(jìn)行加密,然后將AES算法加密的結(jié)果分成兩部分,一部分采用DES算法進(jìn)行加密得到物流防偽完全碼,從物流防偽完全碼中截取出物流防偽應(yīng)用碼,另一部分采用IDEA算法進(jìn)行加密得到產(chǎn)品防偽完全碼,從產(chǎn)品防偽完全碼中截取出產(chǎn)品防偽應(yīng)用碼,因此與現(xiàn)有技術(shù)相比本發(fā)明的防偽碼生成方法具有加密強(qiáng)度高、不易破解的特點(diǎn)。另外,由于本發(fā)明是根據(jù)包含物流信息的產(chǎn)品信息生成預(yù)定長(zhǎng)度的物流防偽應(yīng)用碼和預(yù)定長(zhǎng)度的產(chǎn)品防偽應(yīng)用碼,所生成的物流防偽應(yīng)用碼的長(zhǎng)度和產(chǎn)品防偽應(yīng)用碼的長(zhǎng)度可根據(jù)需要而改變,因此本發(fā)明還具有靈活性強(qiáng)、可變性高的特點(diǎn)。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0015]圖1是本發(fā)明實(shí)施例中防偽碼生成方法流程圖;
[0016]圖2是本發(fā)明實(shí)施例中產(chǎn)品信息編碼規(guī)則示意圖;
[0017]圖3是本發(fā)明實(shí)施例中AES加密算法流程圖;
[0018]圖4是本發(fā)明實(shí)施例中DES加密算法流程圖;以及
[0019]圖5是本發(fā)明實(shí)施例中IDEA加密算法流程圖。
【具體實(shí)施方式】
[0020]為了使本發(fā)明實(shí)現(xiàn)的技術(shù)手段、創(chuàng)作特征、達(dá)成目的與功效易于明白了解,以下實(shí)施例結(jié)合附圖對(duì)本發(fā)明防偽碼生成方法作具體闡述。
[0021]圖1是本發(fā)明實(shí)施例中防偽碼生成方法流程圖。
[0022]如圖1所示,防偽碼生成方法100是根據(jù)包含物流信息的產(chǎn)品信息和128位的秘鑰K生成預(yù)定長(zhǎng)度的物流防偽應(yīng)用碼和預(yù)定長(zhǎng)度的產(chǎn)品防偽應(yīng)用碼。這里,產(chǎn)品信息包含規(guī)格代碼、機(jī)臺(tái)代碼、標(biāo)志代碼、班次代碼、生產(chǎn)日期和時(shí)間、產(chǎn)品編號(hào)、以及物流信息。
[0023]物流防偽應(yīng)用碼是直接印刷在商品外包裝上的一組16位字符串,字符串由A-F, 0-9字符組成,由經(jīng)授權(quán)的用戶(hù)通過(guò)網(wǎng)站對(duì)商品流通信息如批發(fā)商,經(jīng)銷(xiāo)商等信息進(jìn)行查詢(xún)和更新,從而達(dá)到對(duì)商品的流通過(guò)程進(jìn)行管理和監(jiān)控的目的,當(dāng)消費(fèi)者查詢(xún)商品真?zhèn)涡畔r(shí),根據(jù)需求,同時(shí)也可以給消費(fèi)者顯示商品的流通信息。
[0024]產(chǎn)品防偽應(yīng)用碼印刷在商品包裝上,但是要刮開(kāi)一層覆蓋膜才能看到,它是由字符0-9組成的一組20位字符串,分成4段,每段5個(gè)字符,由消費(fèi)者通過(guò)網(wǎng)站、電話(huà)等方式進(jìn)行商品真?zhèn)尾樵?xún),查詢(xún)結(jié)果顯示產(chǎn)品真?zhèn)涡畔ⅲ瑫r(shí)可以顯示產(chǎn)品生產(chǎn)和流通等信息。
[0025]下面結(jié)合流程圖來(lái)詳細(xì)闡述本實(shí)施例的防偽碼生成方法根據(jù)包含物流信息的產(chǎn)品信息生成16位的物流防偽應(yīng)用碼和20位的產(chǎn)品防偽應(yīng)用碼的過(guò)程。
[0026]圖1是本發(fā)明實(shí)施例中防偽碼生成方法流程圖。
[0027]圖2是本發(fā)明實(shí)施例中產(chǎn)品信息編碼規(guī)則示意圖。
[0028]步驟S-1:
[0029]將產(chǎn)品信息按照?qǐng)D2所示的編碼規(guī)則進(jìn)行編碼,生成128位的產(chǎn)品序列號(hào)D,然后進(jìn)入步驟S-2。
[0030]圖3是本發(fā)明實(shí)施例中AES加密算法流程圖。
[0031]步驟S-2:[0032]對(duì)產(chǎn)品序列號(hào)D和秘鑰K進(jìn)行如圖3所示的AES加密算法運(yùn)算。AES具體的加密過(guò)程為:
[0033]根據(jù)產(chǎn)品序列號(hào)D的長(zhǎng)度和秘鑰K的長(zhǎng)度確定迭代次數(shù)Nr,即128位的產(chǎn)品序列號(hào)D和128位的秘鑰K確定迭代次數(shù)為10次。
[0034]步驟S_2a:對(duì)秘鑰K進(jìn)行10次擴(kuò)展得到10組輪秘鑰組成的擴(kuò)展秘鑰E。
[0035]步驟S_2b:對(duì)產(chǎn)品序列號(hào)D與秘鑰K按位進(jìn)行異或運(yùn)算得到第I運(yùn)算值Cl。
[0036]步驟S_2c:對(duì)第I運(yùn)算值Cl進(jìn)行9次AES加密迭代得到第5運(yùn)算值C5。
[0037]步驟S_2d:對(duì)第5運(yùn)算值C5進(jìn)行S盒置換操作得到第6運(yùn)算值C6。
[0038]步驟S_2e:對(duì)第6運(yùn)算值C6每行進(jìn)行循環(huán)移字節(jié)操作得到第7運(yùn)算值C7,即第二行循環(huán)左移I位,第三行循環(huán)左移2位,第三行循環(huán)左移3位。
[0039]步驟S_2f:對(duì)第7運(yùn)算值與第10組輪秘鑰E [10]按位進(jìn)行異或運(yùn)算,得到所述加密數(shù)據(jù)M。
[0040]其中,10次AES加密迭代中的單次AES加密迭代包括以下步驟:
[0041]步驟S_2cl:對(duì)第I運(yùn)算值Cl進(jìn)行S盒置換操作得到第2運(yùn)算值C2。
[0042]步驟S_2c2:對(duì)第2運(yùn)算值C2每行進(jìn)行循環(huán)移字節(jié)操作得到第3運(yùn)算值C3,即第二行循環(huán)左移I位,第三行循環(huán)左移2位,第三行循環(huán)左移3位。
[0043]步驟S_2c3:對(duì)第3運(yùn)算值C3進(jìn)行混列變換操作得到第4運(yùn)算值C4。
[0044]根據(jù)擴(kuò)展秘鑰E確定本次加密迭代的輪秘鑰E[i]。
[0045]步驟S_2c4:對(duì)第4運(yùn)算值C4與輪秘鑰E [i]按位進(jìn)行異或運(yùn)算得到第5運(yùn)算值C5。
[0046]AES加密算法結(jié)束得到加密數(shù)據(jù)M,然后進(jìn)入步驟S-3。
[0047]步驟S-3:
[0048]將加密數(shù)據(jù)M分割為兩部分,即前加密數(shù)據(jù)Ml和后加密數(shù)據(jù)M2,然后進(jìn)入步驟S-4o
[0049]步驟S-4:
[0050]對(duì)秘鑰K進(jìn)行處理得到用于DES加密的DES秘鑰和用于IDEA加密的IDEA秘鑰,這里從秘鑰K中取前64位作為DES秘鑰,后64位作為IDEA秘鑰,然后進(jìn)入步驟S-5。
[0051]圖4是本發(fā)明實(shí)施例中DES加密算法流程圖。
[0052]步驟S-5:
[0053]對(duì)前加密數(shù)據(jù)Ml和DES秘鑰進(jìn)行如圖4所示的DES加密算法運(yùn)算。DES具體的加密過(guò)程為:
[0054]步驟S_5a:對(duì)前加密數(shù)據(jù)Ml進(jìn)行IP置換運(yùn)算得到第8運(yùn)算值CS,并將第8運(yùn)算值C8分割為左數(shù)據(jù)L和右數(shù)據(jù)R。
[0055]步驟S_5b:對(duì)DES秘鑰進(jìn)行秘鑰變換得到16個(gè)DES子秘鑰組成的DES子秘鑰組DS0
[0056]步驟S_5c:對(duì)左數(shù)據(jù)L和右數(shù)據(jù)R進(jìn)行16次DES加密迭代得到新左數(shù)據(jù)NL和新右數(shù)據(jù)NR。
[0057]步驟S_5d:將由新左數(shù)據(jù)NL和新右數(shù)據(jù)NR組成的新數(shù)據(jù)N進(jìn)行末置換函數(shù)運(yùn)算得到物流防偽完全碼。[0058]其中,16次DES加密迭代中的單次DES加密迭代包括以下步驟:
[0059]步驟S_5cl:對(duì)右數(shù)據(jù)L進(jìn)行擴(kuò)展置換操作得到第9運(yùn)算值C9。
[0060]根據(jù)DES子秘鑰組DS確定本次加密迭代的DES子秘鑰DS [i]。
[0061]步驟S_5c2:將第9運(yùn)算值C9與DES子秘鑰DS[i]進(jìn)行異或運(yùn)算得到第10運(yùn)算結(jié)值C10,并將第10運(yùn)算值ClO分割為八個(gè)數(shù)據(jù)塊。
[0062]步驟S_5c3:對(duì)八個(gè)數(shù)據(jù)塊分別進(jìn)行S盒置換操作得到相應(yīng)的八個(gè)輸出數(shù)據(jù)。
[0063]步驟S_5c4:對(duì)由八個(gè)輸出數(shù)據(jù)組成的第11運(yùn)算值Cll進(jìn)行P盒置換操作得到第12運(yùn)算值C12。
[0064]步驟S_5c5:對(duì)第12運(yùn)算值C12與左數(shù)據(jù)L進(jìn)行異或運(yùn)算得到第13運(yùn)算值C13。
[0065]步驟S_5c6:將第13運(yùn)算值C13作為新左數(shù)據(jù)NL,將左數(shù)據(jù)L作為新右數(shù)據(jù)NR,進(jìn)入下一輪迭代。
[0066]DES加密算法結(jié)束得到物流防偽完全碼,然后進(jìn)入步驟S-6。
[0067]圖5是本發(fā)明實(shí)施例中IDEA加密算法流程圖。
[0068]步驟S-6:
[0069]對(duì)后加密數(shù)據(jù)M2和IDEA秘鑰進(jìn)行如圖5所示的IDEA加密算法運(yùn)算。IDEA具體的加密過(guò)程為:
[0070]步驟S_6a:對(duì)IDE A秘鑰進(jìn)行運(yùn)算得到52個(gè)IDEA子秘鑰組成的IDEA子秘鑰組ISo
[0071]步驟S_6b:將后加密數(shù)據(jù)M2分割為第I數(shù)據(jù)X1、第2數(shù)據(jù)X2、第3數(shù)據(jù)X3和第4數(shù)據(jù)X4。
[0072]步驟S_6c:對(duì)第I數(shù)據(jù)X1、第2數(shù)據(jù)X2、第3數(shù)據(jù)X3和第4數(shù)據(jù)X4進(jìn)行8次IDEA加密迭代得到新第I數(shù)據(jù)NX1、新第2數(shù)據(jù)NX2、新第3數(shù)據(jù)NX3和新第4數(shù)據(jù)NX4。
[0073]步驟S-6d:對(duì)新第I數(shù)據(jù)NXl和第49IDEA子秘鑰S [49]做模2161乘運(yùn)算得到第I子數(shù)據(jù)Zl ;對(duì)新第3數(shù)據(jù)NX3和第50IDEA子秘鑰S [50]做模216加運(yùn)算得到第2子數(shù)據(jù)Z2 ;對(duì)新第2數(shù)據(jù)NX2和第51IDEA子秘鑰S [51]做模216加運(yùn)算得到第3子數(shù)據(jù)Z3 ;對(duì)新第4數(shù)據(jù)NX4和第52IDEA子秘鑰S [52]做模2161乘運(yùn)算得到第4子數(shù)據(jù)TA。
[0074]步驟S_6e.由第I子數(shù)據(jù)Z1、第2子數(shù)據(jù)Z2、第3子數(shù)據(jù)Z3和第4子數(shù)據(jù)TA按順序進(jìn)行整合得到產(chǎn)品防偽完全碼。
[0075]其中,8次IDEA加密迭代中的單次IDEA加密迭代包括以下步驟:
[0076]根據(jù)IDEA子秘鑰組IS確定本次迭代的第IIDEA子秘鑰IS[I]、第2IDEA子秘鑰13[2]、第3^^么子秘鑰13[3]、第4^^么子秘鑰IS[4]、第5IDEA子秘鑰IS [5]和第6IDEA子秘鑰IS [6];
[0077]步驟S_6cl:對(duì)第I數(shù)據(jù)Xl和第IIDEA子秘鑰IS[I]做模2161乘運(yùn)算得到第14運(yùn)算值C14 ;對(duì)第2數(shù)據(jù)X2和第2IDEA子秘鑰IS [2]做模216加運(yùn)算得到第15運(yùn)算值C15 ;對(duì)第3數(shù)據(jù)X3和第3IDEA子秘鑰IS [3]做模216加運(yùn)算得到第16運(yùn)算值C16 ;對(duì)第4數(shù)據(jù)X4和第4IDEA子秘鑰IS [4]做模2161乘運(yùn)算得到第17運(yùn)算值C17。
[0078]步驟S_6c2:對(duì)第14運(yùn)算值C14和第16運(yùn)算值C16進(jìn)行異或運(yùn)算得到第18運(yùn)算值C18 ;對(duì)第15運(yùn)算值C15和第17運(yùn)算值C17進(jìn)行異或運(yùn)算得到第19運(yùn)算值C19。
[0079]步驟S_6c3:對(duì)第18 運(yùn)算值C18和第5IDEA子秘鑰S [5]做模2161乘運(yùn)算得到第20運(yùn)算值C20 ;對(duì)第19運(yùn)算值C19和第20運(yùn)算值C20做模216加運(yùn)算得到第21運(yùn)算值C21 ;對(duì)第21運(yùn)算值C21和第6IDEA子秘鑰S [6]做模2161乘運(yùn)算得到第22運(yùn)算值C22 ;對(duì)第20運(yùn)算值C20和第22運(yùn)算值C22做模216加運(yùn)算得到第23運(yùn)算值C23。
[0080]步驟S_6c4:對(duì)第14運(yùn)算值C14和第22運(yùn)算值C22進(jìn)行異或運(yùn)算得到第24運(yùn)算值C24 ;對(duì)第16運(yùn)算值C16和第22運(yùn)算值C22進(jìn)行異或運(yùn)算得到第25運(yùn)算值C25 ;對(duì)第15運(yùn)算值C15和第23運(yùn)算值C23進(jìn)行異或運(yùn)算得到第26運(yùn)算值C26 ;對(duì)第17運(yùn)算值C17和第23運(yùn)算值C23進(jìn)行異或運(yùn)算得到第27運(yùn)算值C27。
[0081]步驟S-6c5:由第24運(yùn)算值C24、第26運(yùn)算值C26、第25運(yùn)算值C25和第27運(yùn)算值C27依次作為新第I數(shù)據(jù)NX1、新第2數(shù)據(jù)NX2、新第3數(shù)據(jù)NX3和新第4數(shù)據(jù)NX4,進(jìn)入下一輪迭代。
[0082]IDEA加密算法結(jié)束得到產(chǎn)品防偽完全碼,然后進(jìn)入步驟S-7。
[0083]步驟S-7:
[0084]從加密得到的物流防偽完全碼和產(chǎn)品防偽完全碼中截取出16位的物流防偽應(yīng)用碼和20位的產(chǎn)品防偽應(yīng)用碼。
[0085]實(shí)施例的作用與效果
[0086]本實(shí)施例提供的防偽碼生成方法,由于首先對(duì)產(chǎn)品序列號(hào)采用AES算法進(jìn)行加密,然后將AES算法加密的結(jié)果分成兩部分,一部分采用DES算法進(jìn)行加密得到物流防偽完全碼,從物流防偽完全碼中截取出物流防偽應(yīng)用碼,另一部分采用IDEA算法進(jìn)行加密得到產(chǎn)品防偽完全碼,從產(chǎn)品防偽完全碼中截取出產(chǎn)品防偽應(yīng)用碼,因此與現(xiàn)有技術(shù)相比本發(fā)明的防偽碼生成方法具有加密強(qiáng)度高、不易破解的特點(diǎn)。
[0087]本實(shí)施例中的防偽碼生成方法,是根據(jù)包含物流信息的產(chǎn)品信息生成16位的物流防偽應(yīng)用碼和20位的產(chǎn)品防偽應(yīng)用碼,本發(fā)明中物流防偽應(yīng)用碼的長(zhǎng)度和產(chǎn)品防偽應(yīng)用碼的長(zhǎng)度可根據(jù)需要改變,因此本發(fā)明具有靈活性強(qiáng)、可變性高的特點(diǎn)。
[0088]上述實(shí)施方式為本發(fā)明的優(yōu)選案例,并不用來(lái)限制本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種根據(jù)包含物流信息的產(chǎn)品信息和秘鑰分別生成預(yù)定長(zhǎng)度的物流防偽應(yīng)用碼和預(yù)定長(zhǎng)度的產(chǎn)品防偽應(yīng)用碼的防偽碼生成方法,其特征在于,具體包括以下步驟: (1)對(duì)所述產(chǎn)品信息以一定的預(yù)定規(guī)則進(jìn)行編碼生成產(chǎn)品序列號(hào); (2)對(duì)所述產(chǎn)品序列號(hào)和所述秘鑰進(jìn)行AES加密算法運(yùn)算,得到加密數(shù)據(jù); (3)將所述加密數(shù)據(jù)分割為前加密數(shù)據(jù)和后加密數(shù)據(jù); (4)對(duì)所述秘鑰按照預(yù)定規(guī)則處理得到DES秘鑰和IDEA秘鑰; (5)對(duì)所述前加密數(shù)據(jù)和所述DES秘鑰進(jìn)行DES加密算法運(yùn)算,得到物流防偽完全碼; (6)對(duì)所述后加密數(shù)據(jù)和所述IDEA秘鑰進(jìn)行IDEA加密算法運(yùn)算,得到產(chǎn)品防偽完全碼;以及 (7)根據(jù)所述預(yù)定長(zhǎng)度分別從所述物流防偽完全碼和所述產(chǎn)品防偽完全碼中截取出相應(yīng)的物流防偽應(yīng)用碼和產(chǎn)品防偽應(yīng)用碼。
2.根據(jù)權(quán)利要求1所述的防偽碼生成方法,其特征在于: 其中,所述AES加密算法包括以下步驟: al.根據(jù)所述產(chǎn)品序列號(hào)的長(zhǎng)度和所述秘鑰的長(zhǎng)度確定迭代次數(shù)Nr ; a2.對(duì)所述秘鑰進(jìn)行10次擴(kuò)展得到10組輪秘鑰組成的擴(kuò)展秘鑰; a3.對(duì)所述產(chǎn)品序列號(hào)與所述秘鑰按位進(jìn)行異或運(yùn)算得到第I運(yùn)算值; a4.對(duì)所述第I運(yùn)算值進(jìn)行Nr-1`次AES加密迭代得到第5運(yùn)算值; a5.對(duì)所述第5運(yùn)算值進(jìn)行S盒置換操作得到第6運(yùn)算值; a6.對(duì)所述第6運(yùn)算值每行進(jìn)行循環(huán)移字節(jié)操作得到第7運(yùn)算值;以及 a7.對(duì)所述第7運(yùn)算值與第10組所述輪秘鑰按位進(jìn)行異或運(yùn)算得到所述加密數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的防偽碼生成方法,其特征在于: 其中,所述Nr-1次AES加密迭代中的單次AES加密迭代包括以下步驟: bl.對(duì)所述第I運(yùn)算值進(jìn)行S盒置換操作得到第2運(yùn)算值; b2.對(duì)所述第2運(yùn)算值每行進(jìn)行循環(huán)移字節(jié)操作得到第3運(yùn)算值; b3.對(duì)所述第3運(yùn)算值進(jìn)行混列變換操作得到第4運(yùn)算值; b4.根據(jù)所述擴(kuò)展秘鑰確定本次加密迭代的輪秘鑰;以及 b5.將所述第4運(yùn)算值與所述輪秘鑰按位進(jìn)行異或運(yùn)算得到第5運(yùn)算值。
4.根據(jù)權(quán)利要求1所述的防偽碼生成方法,其特征在于: 其中,所述DES加密算法包括以下步驟: el.對(duì)所述前加密數(shù)據(jù)進(jìn)行IP置換運(yùn)算得到第8運(yùn)算值,并將所述第8運(yùn)算值分割為左數(shù)據(jù)和右數(shù)據(jù); e2.對(duì)所述DES秘鑰進(jìn)行秘鑰變換得到16個(gè)DES子秘鑰組成的DES子秘鑰組; e3.對(duì)所述左數(shù)據(jù)和所述右數(shù)據(jù)進(jìn)行16次DES加密迭代得到新左數(shù)據(jù)和新右數(shù)據(jù);以及 e4.將由所述新左數(shù)據(jù)和所述新右數(shù)據(jù)組成的新數(shù)據(jù)進(jìn)行末置換函數(shù)運(yùn)算得到所述物流防偽完全碼。
5.根據(jù)權(quán)利要求4所述的防偽碼生成方法,其特征在于: 其中,所述16次DES加密迭代中的單次DES加密迭代包括以下步驟: fl.對(duì)所述右數(shù)據(jù)進(jìn)行擴(kuò)展置換操作得到第9運(yùn)算值;f2.根據(jù)所述DES子秘鑰組確定本次加密迭代的DES子秘鑰;f3.將所述第9運(yùn)算值與所述DES子秘鑰進(jìn)行異或運(yùn)算得到第10運(yùn)算結(jié)值,并將所述第10運(yùn)算值分割為八個(gè)數(shù)據(jù)塊; f4.對(duì)所述八個(gè)數(shù)據(jù)塊分別進(jìn)行S盒置換操作得到相應(yīng)的八個(gè)輸出數(shù)據(jù); f5.對(duì)由所述八個(gè)輸出數(shù)據(jù)組成的第11運(yùn)算值進(jìn)行P盒置換操作得到第12運(yùn)算值; f6.對(duì)所述第12運(yùn)算值與所述左數(shù)據(jù)進(jìn)行異或運(yùn)算得到第13運(yùn)算值;以及 f7.將所述第13運(yùn)算值作為新左數(shù)據(jù),將所述左數(shù)據(jù)作為新右數(shù)據(jù),進(jìn)入下一輪迭代。
6.根據(jù)權(quán)利要求1所述的防偽碼生成方法,其特征在于: 其中,所述IDEA加密算法包括以下步驟: gl.對(duì)所述IDEA秘鑰進(jìn)行運(yùn)算得到52個(gè)IDEA子秘鑰組成的IDEA子秘鑰組;g2.將所述后加密數(shù)據(jù)分割為第I數(shù)據(jù)、第2數(shù)據(jù)、第3數(shù)據(jù)和第4數(shù)據(jù);g3.對(duì)所述第I數(shù)據(jù)、所述第2數(shù)據(jù)、所述第3數(shù)據(jù)和所述第4數(shù)據(jù)進(jìn)行8次IDEA加密迭代得到新第I數(shù)據(jù)、新第2數(shù)據(jù)、新第3數(shù)據(jù)和新第4數(shù)據(jù); g4.對(duì)所述新第I數(shù)據(jù)和所述第49IDEA子秘鑰做模2161乘運(yùn)算得到第I子數(shù)據(jù),對(duì)所述新第3數(shù)據(jù)和所述第50IDEA子秘鑰做模216加運(yùn)算得到第2子數(shù)據(jù),對(duì)所述新第2數(shù)據(jù)和所述第51IDEA子秘鑰做模216加運(yùn)算得到第3子數(shù)據(jù),對(duì)所述新第4數(shù)據(jù)和所述第52IDEA子秘鑰做模2161乘運(yùn)算得到第4子數(shù)據(jù);以及 g5.由所述第I子數(shù)據(jù)、所述第2子數(shù)據(jù)、所述第3子數(shù)據(jù)和所述第4子數(shù)據(jù)按順序進(jìn)行整合得到所述產(chǎn)品防偽完全碼。
7.根據(jù)權(quán)利要求6所述的防偽碼生成方法,其特征在于: 其中,所述8次IDEA加密迭代中的單次IDEA加密迭代包括以下步驟:h1.根據(jù)所述IDEA子秘鑰組確定本次迭代的第IIDEA子秘鑰、第2IDEA子秘鑰、第3IDEA子秘鑰、第4IDEA子秘鑰、第5IDEA子秘鑰和第6IDEA子秘鑰; h2.對(duì)所述第I數(shù)據(jù)和所述第I子秘鑰做模2161乘運(yùn)算得到第14運(yùn)算值,對(duì)所述第2數(shù)據(jù)和所述第2子秘鑰做模216加運(yùn)算得到第15運(yùn)算值,對(duì)所述第3數(shù)據(jù)和所述第3子秘鑰做模216加運(yùn)算得到第16運(yùn)算值,對(duì)所述第4數(shù)據(jù)和所述第4子秘鑰做模2161乘運(yùn)算得到第17運(yùn)算值; h3.對(duì)所述第14運(yùn)算值和所述第16運(yùn)算值進(jìn)行異或運(yùn)算得到第18運(yùn)算值,對(duì)所述第15運(yùn)算值和所述第17運(yùn)算值進(jìn)行異或運(yùn)算得到第19運(yùn)算值; h4.對(duì)所述第18運(yùn)算值和所述第5IDEA子秘鑰做模2161乘運(yùn)算得到第20運(yùn)算值,對(duì)所述第19運(yùn)算值和所述第20運(yùn)算值做模216加運(yùn)算得到第21運(yùn)算值,對(duì)所述第21運(yùn)算值和所述第6IDEA子秘鑰進(jìn)行模2161乘運(yùn)算得到第2運(yùn)算值,對(duì)所述第20運(yùn)算值和所述第22運(yùn)算值進(jìn)行模216加運(yùn)算得到第23運(yùn)算值; h5.對(duì)所述第14運(yùn)算值和所述第22運(yùn)算值進(jìn)行異或運(yùn)算得到第24運(yùn)算值,對(duì)所述第16運(yùn)算值和所述第22運(yùn)算值進(jìn)行異或運(yùn)算得到第25運(yùn)算值,對(duì)所述第15運(yùn)算值和所述第23運(yùn)算值進(jìn)行異或運(yùn)算得到第26運(yùn)算值,對(duì)所述第17運(yùn)算值和所述第23運(yùn)算值進(jìn)行異或運(yùn)算得到第27運(yùn)算值;以及 h6.將所述第24運(yùn)算值、 所述第26運(yùn)算值、所述第25運(yùn)算值和所述第27運(yùn)算值依次作為新第I數(shù)據(jù)、新第2數(shù)據(jù)、新第3數(shù)據(jù)和新第4數(shù)據(jù),進(jìn)入下一輪迭代。
8.根據(jù)權(quán)利要求1所述的防偽碼生成方法,其特征在于: 其中,所述產(chǎn)品信息包含規(guī)格代碼、機(jī)臺(tái)代碼、標(biāo)志代碼、班次代碼、生產(chǎn)日期和時(shí)間、產(chǎn)品編號(hào)、以及所述物流信息。`
【文檔編號(hào)】G06K19/06GK103886464SQ201410084455
【公開(kāi)日】2014年6月25日 申請(qǐng)日期:2014年3月10日 優(yōu)先權(quán)日:2014年3月10日
【發(fā)明者】李軍祥, 劉桂祥 申請(qǐng)人:上海理工大學(xué)