690 likes | 717 Views
CIS514 Computer Communication and Networks การสื่อสารคอมพิวเตอร์และเครือข่าย. Asst.Dr.Surasak Mungsing surasak.mu@spu.ac.th mungsing@gmail.com http://www.spu.ac.th/teacher/surasak.mu. Sripatum University. Network Security. Security. Information Security
E N D
CIS514 Computer Communication and Networks การสื่อสารคอมพิวเตอร์และเครือข่าย Asst.Dr.Surasak Mungsing surasak.mu@spu.ac.th mungsing@gmail.com http://www.spu.ac.th/teacher/surasak.mu Sripatum University
Security • Information Security • protecting information and information systems from unauthorized access, use, disclosure, disruption, modification, perusal, inspection, recording or destruction • Computer Security • a branch of computer technology known as information security as applied to computers and networks • protection of information and property from theft, corruption, or natural disaster, while allowing the information and property to remain accessible and productive to its intended users • Network Security • provisions and policies adopted by the network administrator to prevent and monitor unauthorized access, misuse, modification, or denial of the computer network and network-accessible resourcesork Security
Need for Security Some people who cause security problems and why.
Security Threats • Passive attacks(eavesdropping) • Release of message contents - ลักลอบนำข้อมูลออกไป • Traffic analysis–แอบวิเคราะห์สภาวะการจราจร และสังเกตุกระบวนการรับส่งข้อมูล • Difficult to detect because there is no data alteration • Emphasis on prevention through encryption • Active attacks - เกี่ยวข้องกับการแก้ไขเปลี่ยนแปลงสายข้อมูลสายข้อมูล • Masquerade–ปลอมเป็นผู้ใช้ที่ได้รับอนุญาต • Replay –ดักจับข้อมูลโดยไม่ให้รู้ตัว แล้วนำมาส่งใหม่โดยมีวัตถุประสงค์ร้าย • Modification of messages- เปลี่ยนแปลงแก้ไขบางส่วนของข้อความโดยมีวัตถุประสงค์ร้าย • Denial of Service–ป้องกันการใช้งานตามปกติหรือการทำให้ server ทำงานมากผิดปกติจนไม่สามารถให้บริการได้ตามปกติ
Security Requirements • Confidentiality–ความลับของข้อมูล เฉพาะผู้ที่ได้รับอนุญาตเท่านั้นจึงจะสามารถเข้าถึงข้อมูลได้เท่านั้น • Integrity–ความมั่นคงของข้อมูล เฉพาะผู้ที่ได้รับอนุญาตเท่านั้นจึงจะสามารถเปลี่ยนแปลงแก้ไขข้อมูลได้ • Availability - ความพร้อมให้บริการข้อมูลเพาะกับผู้ที่ได้รับอนุญาต • Authenticity - ความสามารถในการพิสูจน์ทราบผู้ใช้
Cryptography The encryption model (for a symmetric-key cipher).
Substitution Ciphers • เป็นวิธีการแทนตัวอักษรหนึ่งตัวหรือหนึ่งกลุ่มด้วยตัวอักษรอีกตัวหนึ่งเพื่อปิดบังค่าที่แท้จริง วิธีการแบบนี้ที่เก่าแก่ที่สุดเรียกว่า Caesar cipher Plaintext: a b c d e f g h i j k l m n o p q r s t u v w x y z Ciphertext: Q W E R T Y U I O P A S D F G H J K L Z X C V B N M ตัวอย่างเช่น “attack”จะถูกแปลงเป็น“QZZQEA” What is plain text for Caesar cipher text “exxegoexsrgi” ? Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ Plaintext: the quick brown fox jumps over the lazy dog
Transposition Ciphers เป็นแบบที่ตัวอักษรยังรักษาลำดับเดิมของตัวอักษรในข้อความต้นฉบับเอาไว้แต่จัดการสับเปลี่ยนตัวอักษรเหล่านั้นเป็นตัวอื่นทั้งหมด A transposition cipher.
One-Time Pads เป็นการสร้าง ciphertext ที่ไม่สามารถถอดรหัส (โดยผู้ที่ไม่ได้รับอนุญาต) ได้ ขั้นตอนแรกให้เลือก bit string แบบสุ่มเลือก จากนั้นเปลี่ยน plaintext ให้เป็น bit string แล้วทำการ exclusive OR bit string ทั้งสองเข้าด้วยกันทีละบิต
Quantum Cryptography เป็นการเข้ารหัสที่ใช้กับการสื่อสารสัญญาณผ่านใยแก้วนำแสงโดยใช้หลักการของ quantum mechanics ซึ่งจะมีการใช้ polarizing filter เพื่อปรับความเข้มของแสงที่ลอดออกมา 2 ชุดสำหรับทั้งฝ่ายผู้รับและฝ่ายผู้ส่งคือ rectilinear basis และ diagonal basis
Symmetric Encryption • The only form of encryption prior to late 1970s • Five components to the algorithm • Plaintext-เอกสารหรือข้อมูลต้นฉบับ • Encryption algorithm -ขั้นตอนวิธีการเข้ารหัสข้อมูล • Secret key-กุญแจที่ใช้ในการเข้ารหัส • Ciphertext-ข้อความใหม่ที่ผ่านการเข้ารหัสแล้ว • Decryption algorithm-ขั้นตอนวิธีในการถอดรหัสโดยใช้กุญแจตัวเดิม • Two requirements • Strong encryption algorithm • Secure exchange of keys
Symmetric Encryption Attacks • Cryptanalysis • เป็นความพยายามที่จะวิเคราะห์ขั้นตอนวิธีการเข้ารหัส หากมีตัวอย่างของข้อความก่อนเข้ารหัสและหลังเข้ารหัสด้วยแล้วก็ยิ่งมีโอกาสที่จะนำไปสู่กุญแจที่ใช้ในการเข้ารหัสได้ • ถ้าประสบความสำเร็จ ข้อความที่ส่งไปแล้วและที่จะส่งใหม่ในอนาคตซึ่งใช้กุญแจดังกล่าวเข้ารหัสจะถูกถอดรหัสได้ • Brute Force • เป็นการพยายามใช้กุญแจที่คิดว่าเป็นไปได้ทุกตัวในการถอดรหัส จนกว่าจะได้ข้อความที่อ่านได้อย่างมีเหตุผล • โดยเฉลี่ยแล้วต้องใช้กุญแจในความพยายามถึงครึ่งของกุญแจที่เป็นไปได้ทั้งหมดจึงจะประสบความสำเร็จ
Symmetric Key Encryption Algorithm • Most commonly used symmetric encryption algorithm are block ciphers. A block cipher processes the plaintext input in fixed-size blocks and produce a block of ciphertext of equal size for each plaintext block. • Two most important symmetric algorithms • DES– Data Encryption Standard • AES– Advanced Encryption Standard
Data Encryption Standard (DES) • เป็นencryption algorithmที่มีความโดดเด่นหลังจากที่เริ่มใช้งานในปี1977 • กุญแจขนาด56-bitทำให้algorithmนี้ง่ายเกินไปที่จะถูกcrackได้ภายในไม่เกินปี1998 • ได้มีการยืดอายุการใช้DESโดยใช้เทคนิคtriple DES (3DES) • Repeats basic DES algorithm three times, using either two or three unique keys • Key size of 112 or 168 bits • Drawbacks: Algorithm is sluggish in software, 64-bit block size is inefficient
Data Encryption Standard The data encryption standard. (a) General outline.(b) Detail of one iteration. The circled + means exclusive OR.
Advanced Encryption Standard • 3DES is not a reasonable candidate for long-term use • National Institute of Standard and Technology (NIST) proposes AES with equal or better strength than 3DES • AES be symmetric cipher with a block length of 128 bits and support for key lengths of 128, 192, and 256 bits
Location of Encryption Devices • Link encryption • Each vulnerable communications link is equipped on both ends with an encryption device. • All traffic over all communications links is secured. • Vulnerable at each switch • End-to-end encryption • Encryption process carried out at two end systems • Encrypted data transmitted unaltered across network; destination shares key with source to decrypt data • Packet headers cannot be secured
Symmetric Encryption Key Distribution • Both parties must have the secret key • Key is changed frequently • Requires either manual delivery of keys, or a third-party encrypted channel • Most effective method is a Key Distribution Center (e.g. Kerberos)
End-to-End Encryption • Two types of keys • Session keys–data are encrypted with one-time session key • Permanent keys–used between entities for the purpose of distributing session keys • Required components • Key distribution center–determines which systems are allowed to communicate with each other and provides one-time session key for that connection • Security service module (SSM)–performs end-to-end encryption and obtain session keys on behalf of users.
Traffic Padding เพื่อป้องกันการโจมตีแบบCryptanalysis • A function that produces ciphertext output continuously, even in the absence of plaintext • Continuous random data stream is generated. When plaintext is available, it is encrypted and transmitted. When input plaintext is not present, the random data are encrypted and transmitted • Makes it impossible for an attacker to distinguish between true data flow and noise and therefore impossible to deduce the amount of traffic
Message Authentication • Must verify that contents have not been altered and that source is authentic • Approaches • Authentication using symmetric encryption • Authentication without message encryption • Message authentication code • One-way hash function
Message Authentication using One-Way Hash Function Only sender and receiver share the encryption key.
Message Authentication using One-Way Hash Function (cont.) Technique that uses a hash function but no encryption.
Hash Function (H) Requirements • Can be applied to a block of data of any size. • Produces a fixed-length output. • H(x) is relatively easy to compute for any given x • For any given code h, it is computationally infeasible to find x such that H(x) = h. • For any given block x, it is computationally infeasible to find y≠x with H(y) = H(x). • It is computationally infeasible to find any pair (x, y) such that H(x) = H(y).
Public-Key Encryption • ใช้วิธีการเข้ารหัสที่ใช้คีย์ในการเข้ารหัสและถอดรหัสแตกต่างกัน และคีย์ที่ใช้ถอดรหัสนั้นไม่สามารถสร้างขึ้นมาจากคีย์ที่ใช้เข้ารหัสได้ • การเข้ารหัส (E) และการถอดรหัส (D) จะต้องอยู่ในเงื่อนไข 3 ประการ 1. D(E(P))=P 2. เป็นการยากที่จะสร้าง D ขึ้นมาจาก E 3. E จะต้องทนทานต่อวิธีการถอดรหัสแบบ chosen plaintext attack • Asymmetric, involving the use of two separate keys • ความเข้าใจผิดเกี่ยวกับการเข้ารหัสด้วย public key • คิดว่ามีความปลอดภัยสูงจากการโจมตีแบบ cryptanalysis • คิดว่าเป็นเทคนิคที่ใช้ได้เอนกประสงค์ที่ทำให้ conventional encryption ล้าสมัย • คิดว่ามีความยุ่งยากน้อยกว่า conventional encryption
Public-Key Encryption Components • Plaintext • Encryption algorithm • Public and private key • Ciphertext • Decryption algorithm
Public-Key Encryption Operation Encryption
Public-Key Signature Operation Authentication
Characteristics of Public-Key • Computationally infeasible to determine the decryption key given knowledge of the cryptographic algorithm and the encryption key • Either of the two related keys can be used for encryption, with the other used for decryption
Steps in Public Key Encryption • Each user generates a pair of keys to be used for the encryption and decryption of messages. • Each user places one of the two keys in a public register or other accessible file. This is the public key. The companion key is kept private. • If Bob wishes to send a private message to Alice, Bob encrypts the message using Alice's public key. • When Alice receives the message, she decryptsit using her private key. No other recipient can decrypt the message because only Alice knows Alice's private key.
RSA Encryption Algorithm • Developed in 1977, by Ron Rivest, Adi Schamir and Len Adleman at MIT, first published in 1978 • Widely accepted and implemented approach to public-key encryption • For plaintext block M and ciphertext block C • C = Me mod n • M = Cd mod n = (Me)d mod n = Med mod n • Both sender and receiver must know values ofnand e; only receiver knows value ofd • Public key of KU = {e, n} • Private key of KR = {d, n}.
RSA Encryption Algorithm(cont.) • วิธีการแบบ RSA นั้นนำพื้นฐานของทฤษฎีตัวเลขมาใช้ มีขั้นตอนการทำงานดังนี้ 1. เลือกตัวเลขที่เป็น prime number ขนาดใหญ่ p และ q(โดยทั่วไปขนาด 1024 bit) 2. คำนวณ n=pxq และz=(p-1) x (q-1) 3.เลือกตัวเลขที่เป็น prime numberเรียกว่า d 4. หาค่า eซึ่ง e x d =1 mod z
RSA An example of the RSA algorithm.
RSA Requirements • It is possible to find values of e, d, n such that Med = Mmodn for all M < n. • It is relatively easy to calculate Me and Cdfor all values of M < n. • It is infeasible to determine d given e and n. • This requirement can be met with large values of e and n
Approaches to Defeating RSA • Brute force approach: try all possible private keys. • The larger the number of bits in e and d, the more secure the algorithm. • However, the larger the size of the key, the slower the system will run. • Cryptanalysis: factoring n into its two prime factors • A hard problem, but not as hard as it used to be • Currently, a 1024-bit key size is considered strong enough for virtually all applications
Key Management • Symmetric encryption requires both parties to share a secret key • Secure distribution of keys is the most difficult problem for symmetric encryption • Public key encryption solves this problem, but adds the issue of authenticity • Public key certificates address this issue
Public Key Certificate Process Public-key Certificate consists of a public key plus a User ID of the key owner, with the whole block signed by the third trusted party.
Public Key Certificate Process 1. A public key is generated by the user and submitted to Agency X for certification. 2. X determines by some procedure, such as a face-to-face meeting, that this is authentically the user’s public key. 3. X appends a timestamp to the public key, generates the hash code of the result, and encrypts that result with X’s private key forming the signature. 4. The signature is attached to the public key.
Virtual Private Networks (VPNs) • Internet connectivity provides easier access for telecommuters and off-site employees • Use of a public network exposes corporate traffic to eavesdropping and provides an entry point for unauthorized users • A variety of encryption and authentication packages and products are available to secure and authenticate remote access • Need for a standard that allows a variety of platforms to interconnect securely
Virtual Private Networks (a) A leased-line private network. (b) A virtual private network.