加勒比一本heyzo高清视频-免费精品无码av片在线观看-无码国产精品一区二区免费模式-去干成人网-成在人线av无码免费

物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊(cè)

一卡通密鑰管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

作者:彭旭榮 ,陽(yáng)王東
來(lái)源:RFID世界網(wǎng)
日期:2010-10-22 14:23:59
摘要:校園一卡通既滿足學(xué)?,F(xiàn)代化管理的需要,又滿足師生El常生活的多種需求,其電子管理功能塊將使學(xué)校實(shí)現(xiàn)電子化管理,提高工作效率,加強(qiáng)校園管理,但其IC卡的安全性是一卡通應(yīng)用的保障基礎(chǔ)。針對(duì)一卡通中多種業(yè)務(wù)集成應(yīng)用的需求,提出了多級(jí)密鑰管理系統(tǒng)的解決方案,以根密鑰、母密鑰和用戶密鑰三層密碼機(jī)制來(lái)充分保障密碼生成、保存以及l(fā)c卡使用的安全。
  作為現(xiàn)代信息平臺(tái)的熱門應(yīng)用,校園“一卡通”是集成了考勤、門禁、信息咨詢、教務(wù)服務(wù)、圖書借閱、實(shí)驗(yàn)計(jì)費(fèi)、醫(yī)療支付、學(xué)費(fèi)繳付、獎(jiǎng)學(xué)金發(fā)放、工資福利發(fā)放、科研經(jīng)費(fèi)核算等各種校園消費(fèi)的結(jié)算,甚至包括銀行金融交易等在內(nèi)的眾多服務(wù)功能“ ,可滿足不同層次的各類學(xué)校的應(yīng)用需求,深受教育行業(yè)用戶的歡迎。

  對(duì)于IC卡的應(yīng)用最重要的是IC卡的密碼安全問(wèn)題,要保證I C卡密碼的應(yīng)用安全,就必須有一個(gè)安全可靠的密鑰管理系統(tǒng)。有些IC卡的密碼管理系統(tǒng)為單層密鑰系統(tǒng),也就是直接根據(jù)一個(gè)通用的根密鑰來(lái)生成用戶消費(fèi)卡的密鑰,這種密鑰生成需要系統(tǒng)的根密鑰,根密鑰的安全性難以保證,而且難以對(duì)IC的應(yīng)用系統(tǒng)的密碼進(jìn)行擴(kuò)展,不能適應(yīng)一張IC卡 集成多種IC卡應(yīng)用系統(tǒng),他們既要有統(tǒng)一的安全體系,又有獨(dú)立密碼安全機(jī)制。既能夠?qū)崿F(xiàn)在校園的真正一一卡通,又能保證不同應(yīng)用相互之間的安全性和可靠性。本文探討構(gòu)建一種多層的密鑰安全管理機(jī)制來(lái)滿足校園一卡通的安全應(yīng)用需要。 
 
  1 密鑰管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 

  1.1 密鑰管理系統(tǒng)的體系結(jié)構(gòu)


  密鑰管理包括密鑰的生成、裝入、傳遞、存儲(chǔ)、恢復(fù)、銷毀等內(nèi)容。一卡通生成的主密鑰稱為根密鑰, 由公司或團(tuán)體的三位領(lǐng)導(dǎo)各輸入8字節(jié)密碼,經(jīng)3DES數(shù)據(jù)加密算法按照一定規(guī)則多次加密并截取得到,存儲(chǔ)在系統(tǒng)惟一的根卡上。一卡通系統(tǒng)每個(gè)應(yīng)用對(duì)應(yīng)一個(gè)母密鑰,母密鑰由根密鑰加密8位隨機(jī)整數(shù)得到,隨機(jī)數(shù)加密存儲(chǔ)在根卡上,母密鑰加密持卡人密碼可以制作母卡,一個(gè)母密鑰可以發(fā)放多張母卡,母卡與根卡都通過(guò)持卡人的輸入的Pin碼進(jìn)行驗(yàn)證訪問(wèn),這樣保證密碼存儲(chǔ)的安全性。消費(fèi)系統(tǒng)的發(fā)卡子系統(tǒng)則是利用相應(yīng)業(yè)務(wù)的母卡來(lái)初始化用戶消費(fèi)卡。一卡通密鑰管理系統(tǒng)的實(shí)現(xiàn)結(jié)構(gòu)如圖1所示。 


圖1一卡通密鑰管理系統(tǒng)的實(shí)現(xiàn)結(jié)構(gòu)

  1.2 根密鑰的生成

  由公司或團(tuán)體的三位領(lǐng)導(dǎo)各輸入8字節(jié)字符串,分別為a、b、c,轉(zhuǎn)化為字節(jié)類型為aKey、bKey、cKey。先使用bKey加密aKey得到dKey,然后用cKey加密dKey得到r,截取r的前8位則得到根密鑰rKey,存入根卡的指定位置。具體流程如圖2所示。 


圖2根密鑰的生成

  1.3 根卡的生成 

  由根卡持卡人輸入8字節(jié)的密碼cOde,用COde對(duì)根密鑰進(jìn)行加密得到rcodel,截取rcodel前面16位作為一級(jí)密文rcodel 16,然后再用COde對(duì)rcodel 16進(jìn)行加密得到rcode2,截取rcode2前面l6位作為二級(jí)密文rcode216,將rcodel 16和rcode2l6寫入根卡指定位置,完成根卡的生成。具體流程如圖3所示。 


圖3根卡的制作

  1.4 根卡的驗(yàn)證
 
  從根卡中指定位置獲得根卡的一級(jí)密文rcodel 16和二級(jí)密文rcode216,用根卡持卡人輸入的8字節(jié)密碼對(duì)一級(jí)密文rcodel 16進(jìn)行加密得到rcodel,截取rcodel的前面l6位并將其轉(zhuǎn)化為字符串strl, 將二級(jí)密文rcode216轉(zhuǎn)化為字符串str2,比較strl和str2,若相等,則根卡驗(yàn)證成功,反之失敗。具體流程如圖4所示。 


圖4 根卡的驗(yàn)證

  1.5 母密鑰的生成

  使用從根卡中得到的根密鑰加密系統(tǒng)生成的8位隨機(jī)整數(shù)得到mk,截取mk的前面8位得到母密鑰,并將母密鑰和該母密鑰的應(yīng)用類型索引一起存入根卡指定位置。具體流程如圖5所示。 


圖5母密鑰的生成

  1.6 母卡的制作

  由母卡持卡人輸入8字節(jié)的密碼code,用code對(duì)母密鑰進(jìn)行加密得到mcodel,截取mcodel前面16位作為一級(jí)密文rcodel 16,然后再用code對(duì)rcodel 16進(jìn)行加密得到mcode2,截取mcode2的前面l6位作為二級(jí)密文rcode216,將rcodel16和rcode216寫入母卡指定位置,完成母卡的生成。具體流程如圖6所示。 


圖6母卡的制作

  1.7 母卡的驗(yàn)證

  從母卡中指定位置獲得母卡的一級(jí)密文rcodel16和二級(jí)密文rcode216,用母卡持卡人輸入的8字節(jié)密碼對(duì)一級(jí)密文rcodel 16進(jìn)行加密得到rcodel,截取reodel的前面16位并將其轉(zhuǎn)化為字符串strl, 將二級(jí)密文rcode216轉(zhuǎn)化為字符串str2,比較strl和str2,若相等,則母卡驗(yàn)證成功,反之失敗。具體流程如圖7所示。  


圖7母卡的驗(yàn)證

  1.8 密鑰管理實(shí)現(xiàn)

  1.8.1根密鑰的生成 
  private void b— — creatRootMy——Click(object sender, 
  EventArgs e) 
  { 
 ?。?nbsp;字符串書寫檢查部分代碼已省略 / 
  byte[】dKey Encoding.Default.GetBytes(ds. 
  DesEncrypt(aKey8,bKey8,”zhanshen”)); 
  Array.Copy(dKey,0,temp,0,8); 
  byte[】r = Encoding.Default.GetBytes(ds. 
  DesEncrypt(temp,cKey8,”zhanshen”)); 
  Array.Copy(r,0,rKey8,0,8);//根密鑰的字節(jié) 
  數(shù)組形式 
  isCanOperate = true; 
  groupBox2.Enabled = true 
  log.Info(”根密鑰生成成功! ”); 
  MessageBox.Show(”根密鑰生成成功! ”, ”提示! 
  ”); 
  } 
  實(shí)現(xiàn)界面如圖8所示。


圖8根密鑰生成界面

  1.8.2母密鑰的生成 
  DesSecurity ds= new DesSecurity(); 
  byte[】mk = Encoding.Default.GetBytes(ds. 
  DesEncrypt(ran8,Card—root.rKey8, ”zhanshen’ )); 
 ?。肈ES算法生成母密鑰(根密鑰加密分散因子) 
  Array.Copy(mk,0,mKey8,0,8);//取前面?zhèn)€字節(jié)作為母密鑰 
  monisCanOperate : true: 
  groupBox4.Enabled = true: 
  log.Info(”母密鑰生成成功! ”); 
  } 
  實(shí)現(xiàn)界面如圖9所示。


圖9母密鑰生成界面

  1.9 系統(tǒng)測(cè)試

  在測(cè)試過(guò)程中,根密碼和母密碼的產(chǎn)生采用分段密碼產(chǎn)生和保存機(jī)制,在應(yīng)用過(guò)程中難以復(fù)制,也在一定程度上杜絕個(gè)別人為的不安全因素。而且可以根據(jù)應(yīng)用來(lái)制作不同業(yè)務(wù)的母卡,不同業(yè)務(wù)之問(wèn)如果未經(jīng)授權(quán)是不能夠互訪的,這樣也系統(tǒng)的安全的分層管理。在加密算法中,在3D ES算法的基礎(chǔ)上增加了分散算法和隨機(jī)算法,并在加密解密過(guò)程進(jìn)行分散操作,增加r解密的難度,提高了密碼的安全性。并且系統(tǒng)具有良好可實(shí)現(xiàn)性和性能,表l是發(fā)卡的時(shí)間統(tǒng)計(jì)表。從統(tǒng)計(jì)表中可以得出該密鑰管理系統(tǒng)能夠適應(yīng)較大規(guī)模的發(fā)卡應(yīng)用。 

  2 結(jié)束語(yǔ)

  本文以密鑰管理在校園園一卡通系統(tǒng)中的一應(yīng)用為中心。研究密鑰管理系統(tǒng)在一卡通系統(tǒng)中的具體應(yīng)用模式,并以IC卡技術(shù)和密碼算法技術(shù)為基礎(chǔ),提出了一卡通系統(tǒng)的密鑰管理系統(tǒng)的解決方案。該解決方案具有較好的實(shí)用性和安全性,能夠支持豐富的校園智能卡的應(yīng)用。@