Cybersecurity Basics Key Requirements of Encryption Algorithms
591Lab
[{'start': '15.440', 'end': '20.240', 'text': "welcome today we'll explore the key\xa0\nrequirements for encryption algorithms"}, {'start': '20.240', 'end': '27.280', 'text': "let's examine these requirements in detail if\xa0\nthe encryption key is used just once then the"}, {'start': '27.280', 'end': '32.800', 'text': 'encryption system remains secure however\xa0\nthis is rarely practical consider keeping'}, {'start': '32.800', 'end': '38.400', 'text': 'the encryption algorithm private but if we\xa0\nkeep it private it prevents proper security'}, {'start': '38.400', 'end': '45.120', 'text': 'analysis of the algorithm historically some\xa0\nencryption methods were indeed kept secret'}, {'start': '45.120', 'end': '51.520', 'text': 'the Navajo code is a famous example\xa0\nused by US forces in World War during'}, {'start': '51.520', 'end': '59.760', 'text': 'the Pacific campaign based on the Navajo\xa0\nlanguage this became known as the Navajo'}, {'start': '59.760', 'end': '67.520', 'text': 'code to study an encryption algorithm security\xa0\nwe assume everything except the key is'}, {'start': '67.520', 'end': '72.000', 'text': 'public and keys are'}, {'start': '72.000', 'end': '81.440', 'text': 'reusable an effective encryption\xa0\nalgorithm must meet this criteria'}, {'start': '81.440', 'end': '87.280', 'text': 'first computational efficiency second\xa0\nresistance to statistical analysis'}, {'start': '89.840', 'end': '97.760', 'text': 'third protection against brute force attacks\xa0\nfourth immunity to mathematical analysis'}, {'start': '97.760', 'end': '103.760', 'text': "fifth side channel attack prevention\xa0\nlet's look at what makes an operation"}, {'start': '103.760', 'end': '110.560', 'text': 'efficient algorithm operations must be easy\xa0\nto implement in both software and hardware'}, {'start': '111.680', 'end': '116.320', 'text': 'in other words the time and space\xa0\ncomplexity should be a linear function'}, {'start': '116.320', 'end': '121.200', 'text': 'with small coefficients of the input\xa0\nsus common efficient operations include'}, {'start': '121.200', 'end': '125.920', 'text': 'XR'}, {'start': '125.920', 'end': '129.760', 'text': 'permutation'}, {'start': '129.760', 'end': '139.120', 'text': 'substitution circular shift which\xa0\nis a special type of permutation'}, {'start': '140.640', 'end': '142.640', 'text': 'and arithmetic operations in finite'}, {'start': '142.640', 'end': '150.960', 'text': 'fields note division is not considered\xa0\nan efficient operation hence the vision'}, {'start': '150.960', 'end': '155.920', 'text': 'should be avoided in encryption\xa0\nand decryption algorithms what'}, {'start': '155.920', 'end': '161.040', 'text': 'is a statistical analysis attack a\xa0\nstatistical analysis attack analyzes'}, {'start': '161.040', 'end': '168.400', 'text': 'character frequencies in the cipher text to\xa0\nreveal the original characters in plain text M'}, {'start': '171.040', 'end': '178.240', 'text': 'how can we prevent this we can use two\xa0\ntechniques diffusion and confusion what'}, {'start': '178.240', 'end': '186.480', 'text': 'is diffusion diffusion ensures that each bit in\xa0\ncipher text depends on multiple bits from plain'}, {'start': '186.480', 'end': '196.000', 'text': 'text in a uniformly distributed manner how do we\xa0\nachieve diffusion we can apply specific operations'}, {'start': '196.000', 'end': '203.760', 'text': 'to the plain text like substitution operations\xa0\nthen process the resulting binary string repeat'}, {'start': '203.760', 'end': '210.880', 'text': 'this process iteratively what is confusion\xa0\nin cryptography confusion ensures each bit in'}, {'start': '210.880', 'end': '219.440', 'text': 'cipher text C depends on multiple bits of the key\xa0\nK with uniform distribution how do we implement'}, {'start': '219.440', 'end': '226.480', 'text': 'confusion we generate sub keys derived from\xa0\nkey and apply different sub keys in each round'}, {'start': '228.320', 'end': '234.560', 'text': 'the encryption algorithm must withstand\xa0\nbrute force attacks algorithm security'}, {'start': '234.560', 'end': '242.480', 'text': 'depends on both the algorithm and key\xa0\nlength assuming a key length of L bits'}, {'start': '242.480', 'end': '250.480', 'text': 'the key space equals 2 to the power of L\xa0\nif an attacker intercepts a cipher text C'}, {'start': '250.480', 'end': '255.120', 'text': 'and has knowledge of the encryption algorithm\xa0\nthey can try every possible key to break the'}, {'start': '255.120', 'end': '261.360', 'text': 'encryption this means the brute\xa0\nforce search space is two to the'}, {'start': '261.360', 'end': '271.280', 'text': 'power of L with current technology a key\xa0\nlength of 128 bits is considered secure'}, {'start': '271.280', 'end': '275.920', 'text': 'the computational complexity of brute\xa0\nforce attacks serves as a benchmark for'}, {'start': '275.920', 'end': '283.600', 'text': "other crypalytic attacks if you develop a new\xa0\ncrypalytic method that's much faster than brute"}, {'start': '283.600', 'end': '293.280', 'text': 'force then this attack this would be considered\xa0\nan effective attack encryption algorithms need'}, {'start': '293.280', 'end': '299.120', 'text': 'to withstand mathematical analysis attacks\xa0\nthis includes chosen plain text attacks'}, {'start': '299.120', 'end': '303.040', 'text': "so what exactly is a chosen plain text\xa0\nattack it's when attackers deliberately"}, {'start': '303.040', 'end': '307.680', 'text': 'choose specific plain text messages and\xa0\nfeed them into the encryption system to'}, {'start': '307.680', 'end': '312.720', 'text': "crack the resulting cipher text here's\xa0\na historical example during World War"}, {'start': '312.720', 'end': '318.960', 'text': 'II US intercepted Japanese encrypted messages\xa0\ncontaining a recurring encrypted sequence they'}, {'start': '318.960', 'end': '325.360', 'text': 'suspected it referred to Miway Island so the US\xa0\nmilitary crafted a deliberate plain text message'}, {'start': '325.360', 'end': '330.640', 'text': 'a device on Mayway Island needed repairs due to\xa0\nmalfunction the Japanese intelligence encrypted'}, {'start': '330.640', 'end': '338.960', 'text': 'this information by comparing cipher texts US\xa0\nforces confirmed their theory differential cryp'}, {'start': '338.960', 'end': '343.040', 'text': 'analysis is one type of mathematical\xa0\nattack linear and algebraic analysis'}, {'start': '343.040', 'end': '350.480', 'text': 'require advanced mathematical expertise strong\xa0\nencryption must withstand side channel attacks'}, {'start': '351.840', 'end': '354.560', 'text': 'crypto implementations must be resistant to side'}, {'start': '354.560', 'end': '359.120', 'text': 'channel attacks side channel attacks\xa0\nexploit vulnerabilities in the system'}, {'start': '359.120', 'end': '365.920', 'text': 'environment this includes timing attacks what is'}, {'start': '365.920', 'end': '371.680', 'text': 'a timing attack attackers measure\xa0\nthe time of specific computations'}, {'start': '371.680', 'end': '377.520', 'text': 'when different key bits are used specific\xa0\noperations take noticeably different times'}, {'start': '378.240', 'end': '386.480', 'text': 'this makes timing attacks possible one of the keys\xa0\nzero bits and one bits have different processing'}, {'start': '386.480', 'end': '391.920', 'text': 'times attackers can analyze encryption'}, {'start': '391.920', 'end': '397.440', 'text': 'timing to guess the number\xa0\nof zeros and ones in your'}, {'start': '397.440', 'end': '406.720', 'text': 'key how can we prevent timing attacks by adding\xa0\nextra calculations to normalize processing'}, {'start': '406.720', 'end': '418.160', 'text': 'time this covers encryption algorithm\xa0\nrequirements that concludes this topic'}, {'start': '418.160', 'end': '418.756', 'text': '[Music]'}]