An toàn thông tin - Chủ đề 6: Chữ kí điện tử

pdf 25 trang phuongnguyen 4810
Bạn đang xem 20 trang mẫu của tài liệu "An toàn thông tin - Chủ đề 6: Chữ kí điện tử", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfan_toan_thong_tin_chu_de_6_chu_ki_dien_tu.pdf

Nội dung text: An toàn thông tin - Chủ đề 6: Chữ kí điện tử

  1. ChChủđủđềề6:6: ChChữữ kýký đđiiệệntntửử
  2. NNộộii dungdung MMởở đđầầuu ChChữữ kýký đđiiệệnn ttửử PhPhươươngng phpháápp RSARSA PhPhươươngng phpháápp DSADSA
  3. MMởđởđầầuu
  4. NhNhắắclclạạiHiHààmmBBăămMmMậậtMtMãã HHààmm bbăămm mmậậtt mãmã TTíínhnh chchấấtt ccủủaa hhààmm bbăămm mmậậtt mãmã HHạạnn chchếế ??????
  5. MMởđởđầầuu MMụụcc tiêutiêu ccủủaa chchữữ kýký đđiiệệnn ttửử (Digital(Digital Signature)Signature) :: XXáácc nhnhậậnn ngngưườờii ddùùngng (Authentication)(Authentication) TTíínhnh totoàànn vvẹẹnn thôngthông tintin (Data(Data Integrity)Integrity) KhôngKhông ththểể ttừừ chchốốii trtrááchch nhinhiệệmm (Non(Non Repudiation)Repudiation)
  6. Demo1Demo1 Văn phòng B cầnthựchiệngiaKháchodịch hàngrút tiềphnvảiớđếiNngânhàngA $ 5,000,000t?ậnnơi để giao dịch. OK ! Ngườigửi: VăGn pửhòngibằBng email Ngườinhận: Ngân hàng A Ngườigửi: Văn phòng B Ngày gửi: 10 / 10 / 2007 Ngườinhận: Ngân hàng A Nộidung: Ngày gửi: 1 0/ 10? / 2007 Nộidung: Rút $5,000,000 Mã tài khoản: NHB-212551245 Rút $5,000,000 Mã tài khoản: NHB-212551245 Văn phòng B Ngân hàng A Gửi
  7. Demo2Demo2 Giảimã& kiểmtrachữ ký Ok! Chấpnhậnyêu cầu& gửitiền $ 5,000,000 email Mã hóa & Ký Ngườigửi: Văn phòng B Ngườigửi: Văn phòng B Ngườinhận: Ngân hàng A Ngườinhận: Ngân hàng A Ngày gửi: 10 / 10 / 2007 Ngày gửi: 10 / 10 / 2007 Nộidung: Nộidung: Rút $5,000,000 Rút $5,000,000 Mã tài khoản: NHB-212551245 Mã tài khoản: NHB-212551245
  8. MMởđởđầầuu MMộộtt ssốố khkhááii niniệệmm ccơơ bbảảnn:: ChChữữ kýký đđiiệệnn ttửử:: chuchuỗỗii ddữữ liliệệuu chocho phphéépp xxáácc đđịịnhnh ngunguồồnn ggốốc/xuc/xuấấtt xxứứ/th/thựựcc ththểể đđãã ttạạoo rara 11 thôngthông đđiiệệpp ThuThuậậtt totoáánn phpháátt sinhsinh chchữữ kýký đđiiệệnn ttửử:: phphươươngng phpháápp ttạạoo rara chchữữ kýký đđiiệệnn ttửử ChiChiếếnn llưượợcc chchữữ kýký đđiiệệnn ttửử:: baobao ggồồmm thuthuậậtt totoáánn phpháátt sinhsinh chchữữ kýký đđiiệệnn ttửử vvàà thuthuậậtt totoáánn ttươươngng ứứngng đđểể kikiểểmm chchứứngng chchữữ kýký đđiiệệnn ttửử DigitalDigital SignatureSignature SchemeScheme == DigitalDigital SignatureSignature GenerationGeneration AlgorithmAlgorithm ++ DigitalDigital SignatureSignature VerificationVerification AlgorithmAlgorithm
  9. MMởđởđầầuu MMộộtt ssốố kýký hihiệệuu:: MM KhôngKhông giangian thôngthông đđiiệệpp MMS KhôngKhông giangian thôngthông đđiiệệpp đưđượợcc kýký SS KhôngKhông giangian chchữữ kýký RR ÁÁnhnh xxạạ 11 11 ttừừ MM vvààoo MMS (redundancy(redundancy function)function) MMR ẢẢnhnh ccủủaa RR RR-1 HHààmm ngngưượợcc ccủủaa RR hh HHààmm mmộộtt chichiềềuu vvớớii ttậậpp ngunguồồnn MM MMh KhôngKhông giangian gigiáá trtrịị hashhash ((hh:: MM→→ MMh))
  10. MMởởđở đđầầuu PhânPhân loloạạii chchữữ kýký đđiiệệnn ttửử Đính kèm (Appendix) Chiến lược chữ ký Khôi phục thông điệp (Message Recovery)
  11. MMởởđở đđầầuu CCáácc chichiếếnn llưượợcc chchữữ kýký vvớớii phphầầnn đđíínhnh kkèèmm (appendix)(appendix) ChChữữ kýký đđiiệệnn ttửử đđii kkèèmm vvớớii thôngthông đđiiệệpp ggốốcc CCầầnn ccóó thôngthông đđiiệệpp ((ggốốcc)) chocho ququáá trtrììnhnh kikiểểmm tratra chchữữ kýký đđiiệệnn ttửử SSửử ddụụngng hhààmm bbăămm mmậậtt mãmã ((thaythay vvìì redundancyredundancy function)function) VVíí ddụụ:: DSA,DSA, ElGamalElGamal,, SchnorrSchnorr
  12. MMởởđở đđầầuu ChChữữ kýký đđiiệệnn ttửử vvớớii phphầầnn đđíínhnh kkèèmm MM MMhh SS SS mm hh A,kA,k mmhh s*s* s* = SA,k(mh) u = VA(mh, s*) MMhh xx SS VV AA uu ∈∈ {{truetrue,, falsefalse}}
  13. MMởởđở đđầầuu YêuYêu ccầầuu:: VVớớii mmỗỗii kk ∈∈ R,R, ccóó ththểể ddễễ ddààngng ttíínhnh SSA,k PhPhảảii ddễễ ddààngng ttíínhnh đưđượợcc VVA RRấấtt khkhóó đđểể mmộộtt ngngưườờii khôngkhông phphảảii llàà signersigner ccóó ththểể ttììmm rara mm ∈∈ MM vvàà s*s*∈∈ SS saosao chocho VVA((mm’’,, s*s*)) == truetrue,, vvớớii mm’’ == hh((mm))
  14. MMởởđở đđầầuu ChChữữ kýký đđiiệệnn ttửử ccóó khkhảả nnăăngng chocho phphéépp khôikhôi phphụụcc llạạii thôngthông đđiiệệpp MM MMRR SS SS mm RR A,kA,k mmrr s*s* MMSS SS MMRR MM VV -1-1 AA RR mm s*s* mmrr
  15. MMởởđở đđầầuu YêuYêu ccầầuu:: VVớớii mmỗỗii kk ∈∈ R,R, ccóó ththểể ddễễ ddààngng ttíínhnh SSA,k CCóó ththểể ddễễ ddààngng ttíínhnh VVA RRấấtt khkhóó (computationally(computationally infeasible)infeasible) đđểể mmộộtt ngngưườờii khôngkhông phphảảii llàà AA ccóó ththểể ttììmm rara ss ∈∈ SS saosao chocho VVA((ss*)*) ∈∈ MMR VD:VD: RSARSA
  16. MMởởđở đđầầuu ChuyChuyểểnn ttừừ ChChữữ kýký đđiiệệnn ttửử ccóó khkhảả nnăăngng chocho phphéépp khôikhôi phphụụcc llạạii thôngthông đđiiệệpp ÆÆ ChChữữ kýký đđiiệệnn ttửử vvớớii phphầầnn đđíínhnh kkèèmm MM MMhh MMRR SS SS mm hh RR A,kA,k mmhh mmrr s*s* MMSS
  17. TTạạoCoChhữữ kýký đđiiệệntntửử TTạạoo chchữữ kýký Dữ liệu Dữ liệu Hash MessageHash Sign Signature Khoá bí mật
  18. KiKiểểmtmtrraaCChhữữ kýký đđiiệệntntửử KiKiểểmm tratra chchữữ kýký Dữ liệu Hash Signature Verify ? Khoá công cộng
  19. PhPhươươngng pháppháp RSARSA
  20. PhPhươươngng pháppháp RSARSA PhPháátt sinhsinh khkhóóaa n,n, p,p, q,q, e,e, dd TTạạoo chchữữ kýký TTíínhnh mmr == RR((mm)) d TTíínhnh ss == mmr modmod nn ChChữữ kýký ttươươngng ứứngng vvớớii mm llàà ss KiKiểểmm tratra chchữữ kýký NhNhậậnn đưđượợcc publicpublic keykey ((nn,, ee)) e TTíínhnh mmr == ss modmod nn KiKiểểmm tratra mmr ∈∈ MMr -1 KhôiKhôi phphụụcc mm == RR ((mmr))
  21. PhPhươươngng pháppháp DSADSA DigitalDigital SignatureSignature AlgorithmAlgorithm DigitalDigital SignatureSignature StandardStandard (DSS)(DSS)
  22. PhPhươươngng pháppháp DSADSA PhPháátt sinhsinh khkhóóaa:: 1.1. ChChọọnn 11 ssốố nguyênnguyên ttốố qq 160160 bitbit 2.2. ChChọọnn 00≤≤tt≤≤8,8, chchọọnn 22511+64t <<pp<< 22512+64t vvớớii qq||pp 11 * (p-1)/q 3.3. ChChọọnn gg trongtrong ZZp ,, vvàà αα == gg modmod pp,, αα≠≠11 ((αα llàà * phphầầnn ttửử sinhsinh ccủủaa nhnhóómm concon bbậậcc qq ccủủaa ZZp )) 4.4. ChChọọnn 11 ≤≤ aa ≤≤qq 1,1, ttíínhnh yy== ααa modmod pp 5.5. publicpublic keykey ((pp,,qq,, αα,,yy),), privateprivate keykey aa
  23. PhPhươươngng pháppháp DSADSA TTạạoo chchữữ kýký:: ChChọọnn ngngẫẫuu nhiênnhiên ssốố nguyênnguyên kk,, 00 << kk << qq TTíínhnh rr=(=(ααk modmod pp)) modmod qq TTíínhnh kk-1 modmod qq TTíínhnh ss==kk-1 ∗∗((hh((mm)) ++ arar)) modmod qq ChChữữ kýký == ((rr,, ss))
  24. PhPhươươngng pháppháp DSADSA KiKiểểmm tratra chchữữ kýký KiKiểểmm tratra 0<0<rr<<qq vvàà 0<0<ss<<qq,, nnếếuu khôngkhông ththỏỏaa ththìì kkếếtt luluậậnn llàà khôngkhông chchữữ kýký hhợợpp llệệ TTíínhnh ww== ss-1modmod qq vvàà hh((mm)) TTíínhnh uu1==ww∗∗hh((mm)mod)mod qq,, uu2==rr∗∗ww modmod qq TTíínhnh vv == ((ααu1yyu2 modmod pp)) modmod qq ChChữữ kýký hhợợpp llệệ ⇔⇔ vv == rr
  25. PhPhươươngng pháppháp DSADSA TTíínhnh hihiệệuu ququảả TTạạoo chchữữ kýký Một thao tác tính lũy thừa modulo Một số thao tác 160-bit (nếu p ~ 768 bit) Việc tính lũy thừa có thể được tính sẵn trước Nhanh hơn phương pháp RSA KiKiểểmm tratra chchữữ kýký Hai thao tác tính lũy thừa modulo Châm hơn phương pháp RSA