300 likes | 530 Views
CRYPTOGRAPHY. Giảng viên hướng dẫn : Ms. Lê Thị Kim Tuyến. Sinh viên thực hiện : Phan Huỳnh Quy 51002652 Nguyễn Văn Bộ 51004179 Phan Trần Ngọc An 51000019. Nội Dung. Một số khái niệm cơ bản về khoa học mật mã : Khoa học mật mã – Từ Cổ Điển Đến Lượng Tử :
E N D
CRYPTOGRAPHY Giảngviênhướngdẫn: Ms. LêThị Kim Tuyến Sinhviênthựchiện: Phan HuỳnhQuy 51002652 NguyễnVănBộ 51004179 Phan TrầnNgọc An 51000019
Nội Dung Mộtsốkháiniệmcơbảnvềkhoahọcmậtmã: Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: ỨngdụngcủakhoahọcmậtmãtrongThươngmạiĐiệnTử: TổngKết:
I. Mộtsốkháiniệmcơbản Cryptology Cryptography Cryptanalysis • Cryptology: mậtmãhọc. • Cryptography: nghiêncứucáckĩthuật, cácthuậttoánđểchedấuvàgiảimãthông tin. • Cryptanalysis: nghiêncứuphươngphápđểphávỡcáckĩthuậtvàthuậttoán do Cryptography tạorađểđọcđượcnội dung ban đầu.
I. Mộtsốkháiniệmcơbản - Sender/Receiver: Người gửi/Người nhận dữ liệu. - Plaintext (Cleartext): Thông tin trước khi được mã hóa.Đây là dữ liệu ban đầu ở dạng có thể đọc hiểu được. - Ciphertext: Thông tin, dữ liệu đã được mã hóa.Ở dạng đọc nhưng không thể hiểu được. - Encryption: Quá trình mã hóa, che dấu nội dung của thông tin, dữ liệu (Plaintext -> Ciphertext). - Decryption: Quá trình lấy lại thông tin ban đầu của dữ liệu (Ciphertext -> Plaintext). - Key: Thành phần quan trọng trong việc mã hóa và giải mã. - CryptoGraphic Algorithm: Là các thuật toán được sử dụng trong việc mã hóa hoặc giải mã thông tin. - CryptoSystem: Hệ thống mã hóa bao gồm thuật toán mã hóa, khóa, Plaintext, Ciphertext.
I. Mộtsốkháiniệmcơbản Cóthểphânloạimậtmãbằngnhiềucáchkhácnhau - Theo cáchmãhóa: hoánvị, thaythế… - Theo sốlượngkhóasửdụng: single-key or private/ two-key or public - Theo cáchmà plaintext đượctríchxuất: block, stream…
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Lịchsửghinhậnmộtsốkĩthuậtgiấuthưđầutiênxảyravàothếkỉthứ V trướcCôngNguyên: - TrongcuộcchiếncủaHyLạpvớiquân Ba Tư do vua Xerxes lãnhđạo: nội dung bứcthưđượcDematarusviếtbênngoàihaithanhgỗdày, sauđóđượcphủmộtlớpsápbênngoài. - Trongkếhoạchchốnglạivua Ba Tưcủangườixứ Miletus: thưđượcviếtlênđầucủamộtngườicạotrọc, sauđóchờngườinàymọcdàitócrarồichuyểnnội dung thưđi. Mộtsốphươngphápgiấuthưcổđiểnkhác: giấucácbứcthưtrongcơthể, “mực” vôhình… • Chưacósựbiếnđổinội dung thư, do đódễbịlộthông tin nếuđốiphươngbiếtđượccáchthứcgiấu thư. • Nhucầubímậtthông tin vàsựthấtbạicủakĩthuậtgiấuthưđãthúcđẩymộtphươngphápsựrađờicủamộtkĩthuậtkhác: Cryptography. Sựrađờicủa Cryptography
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Scytalecủangười Sparta(thếkỉ V trướcCôngNguyên). • Mậtmãthaythếsơkhaiđầutiên: xuấthiệntrongKama-Sutra, đượcviếtvàothếkỉthứ IV trước CN. • MậtmãCeasar. • Mậtmãdùngmộtbảngchữcái. • Mậtmãthaythếdùngmộtbảngchữcáilàmộtphươngphápđơngiảnđểthựchiện. Nhưng so vớikỹthuậtgiảimã ở thờiđiểmđóthìdườngnhưMậtmãthaythếlàkhôngthểgiảimãnếukhôngbiếtđượckhóa (sốlượngkhóalà 26!). • Mậtmãthaythếđãbảođảm an toànthông tin chonhânloạitrongsuốtmộtthờigiandài, chođếnkhinhữngnhàphântíchmã Ả Rậpgiảimãvàothếkỉthứ VII. Nhữngkỹthuậtmãhóacổđiểnđầutiên
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • MậtmãVigenère (1586): dùngnhiềubảngchữcáivàmộttừkhóađểmãhóa. • Đượcgiảimãbởi Charles Babbage(1854), Friedrich WilheimKasiski(1863). Nhữngkỹthuậtmãhóacổđiểncậnđại
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • SaukhimậtmãVigenèrebịgiảimã, nhiềuloạimậtmãmớirađờinhưngnhanhchóngbịgiảimãvìvẫndựatrêncơchếthaythế - chuyểnvịcũkỹ. • Ngànhmậtmãchỉđạtđượcbướctiếnmớibằngviệccơgiớihóaquátrìnhmãhóamàđiểnhìnhlàmáy Enigma do Arthur Schiberusphátmình, phụcvụchoquânđộiĐức. • Đượcgiảimãbởithiêntàingười Ba Lan Marian Rejewski.Sauđó Alan Turing cơgiớihóaviệcgiảimãbằngviệcphát minh racácmáybom. Cơgiớihóaviệcmãhóa- Bướcđầucủakỉnguyênmáytính
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • VídụđiểnhìnhlàMậtmã Navajo đượcquânđộiMỹápdụngthànhcôngtrongThếchiếnthứ Hai. • Điểmmạnhcủaloạimậtmãnàylàsửdụngràocảnngônngữđểngănchặnviệcgiảimã. Đoạnvănbảngốcsẽđượctruyền qua song vôtuyếnbằngtiếng Navajo, sauđóngườinhậnsẽdịchlại sang vănbảngốc. • Mậtmã Navajo làmộttrongsốítnhữngmậtmãchưabaogiờbịđánhbạitronglịchsử. Mậtmãsửdụngràocảnngônngữ
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Symmetric-key cryptography • + Stream cipher • + Block cipher • + Hash function • Public-key cryptography • + Encryption/Decryption. • + Key Exchange. • + Digital Signatures. Cryptography trongkỷnguyênmáytính
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Mỗi bit hoặc byte plaintext sẽđượcmãhóathànhmột bit hoặc byte ở ciphertext. • Tiêubiểu: RC4. Modern Cryptography - Symmetric Cryptography-Stream Cipher
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Mãhóatừng Block. Tiêubiểu: DES, IDEA, AES, RC5, Blowfish… • Vềcơbản, Block Cipher giốngnhưlàmộtphépthaythếcựckìlớn: 64-bits với IDEA; 32-bits, 64-bits hoặc 128-bits với RC5. • Đasố Block Cipher sửdụngmôhìnhFeistel Cipher Structure. • + Block được chia làmhainửa. • + Quátrìnhdiễnratrongnhiềuvòng. • + Nửatráisẽsẽápdụngcácphépthaythế. • + Nửaphảiđượcápdụngcácthuậttoánbiếnđổi. • + Saumỗithựchiệnhoánvịhainửacủa Block. Modern Cryptography - Symmetric Cryptography-Block Cipher
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Modern Cryptography - Symmetric Cryptography-Block Cipher
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Block Cipher cónhiềuphươngthứchoạtđộngnhư: ECB, CBC, CFB, OFB, CRT… • ECB Modern Cryptography - Block Cipher - ECB Mode of Operation
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Modern Cryptography - Block Cipher - CBC Mode of Operation
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Modern Cryptography - Block Cipher - CFB Mode of Operation
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Modern Cryptography - Block Cipher - CRT Mode of Operation
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Mãhóabằngphươngphápsửdụngmộtkhóadầnđiđếngiớihạncủanó, đặtrayêucầuchocácnhàtạomãphảitạoramộtphươngphápmãhóamới. • Public-Key Cryptography saukhirađờichẳngnhữngđápứngxuấtsắcnhucầumãhóa/giảimã, màđồngthờicòngiảiquyếtthêmđượchaivấnđềtraođổikhóavàxácthựcngườigửi (chữkíđiệntử). • Ý tưởngcủaphươngphápnàylàdùnghaikhóakhácnhauđểtraođổikhóa, mãhóa/giảimãthôngđiệp. Đểthựchiệnđiềunày, cácnhàtạomãphảisửdụnghàmmộtchiềuđểthựchiện, màcụthểlàlýthuyếtsốvềhàmđồngdư. Modern Cryptography - Public-Key Cryptography
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Đượcphát minh rabởi Whitfield Diffievà Martin Hellman vàđượccôngkhaivàonăm 1976. • CơchếhoạtđộngcủaphươngpháptraođổikhóaDiffie-Hellman: • + Cácsốnguyêntốbiếttrước p, g. • + Alice chọnmộtsốnguyêntố a bímậtvàtính • A ≡ gamod p • + Bob chọnmộtsốnguyêntố b bímậtvàtính • B ≡ gbmod p • + Hai ngườitraođổi A và B. • + Họđềutínhđượckếtquảsau: • KAB = Ab = Ba = gab mod p Modern Cryptography - Public-Key Cryptography – Key Exchange
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Đượcphát minh rabởiRivest, Shamir & Adlemanvàonăm 1977. • Cơchếhoạtđộngcủa RSA: • + Mỗingườidùngtạoramộtcặpkhóa private/public : • - Chọnhaisốnguyêntốp,q • - Tính n=p.q, ø(n)=(p-1)(q-1) • - Chọn e thỏagcd(e, ø(n))=1. • - Tính d thỏad.e ≡ 1 mod ø(n) (d<ø(n)): • - Khóa public PU={e,n}, khóa private PR={d,n} • + Đểmãhóathôngđiệp M: • C = Me mod n (0≤M<n) • + Đểgiảimãđoạnciphertext C: • M = Cd mod n Modern Cryptography - Public-Key Cryptography – RSA Encryption/Decryption
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Thuậttoán El Gamalđượcsửdụngđểxácthựcchữkýngườigửi. • Cơchếcủagiảithuật El Gamal (Bob cầngửichữký P cho Alice): • + Cácsốnguyêntốbiếttrước p, g. • + Alice chọnmộtsốnguyêntố a bímậtvàtính • A ≡ gamod p • + Bob chọnmộtsố k vàtính • B ≡ gkmod p • + Bob gửi C = PAkvà B cho Alice. • + Alice tínhđược Ba ≡ (gk)a≡ (gk)a≡ Ak. Ngoài Bob và Alice khôngaikhácbiếtđượcsốAknày. • + Alice tính v saochov.Ba≡ 1 mod p. • + Alice đọcđượcchữký P=C.v mod p. Modern Cryptography - Public-Key Cryptography – El Gamal
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: • Kháiniệmmậtmãlượngtửxuấtpháttừ ý tưởngđitrướcthờiđạicủa Stephen Wiesnervàonăm 1960. • Ban đầu, ý tưởngcủaWiesnerchỉlàmộtphươngphápchốnglạinạntiềngiả. • Ý tưởngnàysauđóđược Charles Bennett vàGilles Brassard pháttriểnthànhmộtloạimậtmãmới: mậtmãlượngtử. • Mộtthôngđiệpdùngphươngphápmãhóalượngtửsẽsửdụngngẫunhiênkhôngtheothứtựbiếttrướchaisơđồthẳngvàchéo. Vídụ: Quantum Cryptography
II. Khoahọcmậtmã – TừCổĐiểnĐếnLượngTử: Quantum Cryptography
III. ỨngdụngtrongThươngmạiđiệntử • MậtmãhọclàphầnkhôngthểthiếucủaThươngmạiĐiệntử, cungcấpcáccơchếđảmbảochocáchoạtđộngcủanódiễnrađúngđắnvà an toàn: • + Bảođảmcácyêucầuvềbảomậtthông tin: bímật, toànvẹn, xácthựcvàchốngthoáithác. • + Chữkýđiệntử. • + Hệthốnggiaodịch, thanhtoán. Ứngdụngcủa Cryptography trongThươngmạiđiệntử
IV. Tổngkết • Mậtmãhọclàmộtngànhkhoahọcđãgắnliềnvới con ngườitừrấtlâuđời. Mậtmãhọcđónggópmộtphầnkhôngnhỏtrongsựpháttriển tri thứcvàcôngnghệcủanhânloại. • Mậtmãhọccóứngdụngsâurộngtrongđờisống, đặcbiệtlàtrongThươngMạiĐiệnTử, sẽkhôngquáđángnếuchorằng: khôngcómậtmãhọc, thìThươngMạiĐiệnTửsẽkhôngthểtồntại. Tổngkết
IV. Tổngkết • The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography - Simon Singh. • Bộ slide mônhọcMậtmãvà An ninhMạng, khoaKhoahọcvàKỹthuậtMáytính, ĐạihọcBáchkhoaHồChí Minh. • Bộ slide mônhọcThươngmạiĐiệntử, khoaKhoahọcvàKỹthuậtMáytính, ĐạihọcBáchkhoaHồChí Minh. • Google.com • Wikipedia.com • … Tàiliệuthamkhảo
“There are two types of cyptography: one that allows the Government to use brute force to break the code, and one that requires the Government to use brute force to break you.” CảmƠnCôvàCácBạnĐãChú Ý Theo Dõi