Usr6 Posted June 13, 2014 Report Posted June 13, 2014 Ancient cryptography Explore how we have hidden secret messages through history. What is cryptography?The Caesar cipherCaesar Cipher ExplorationFrequency Fingerprint Exploration Polyalphabetic cipherPolyalphabetic ExplorationThe one-time padPerfect Secrecy ExplorationFrequency stabilityFrequency stability explorationCoin flip sequencesThe Enigma encryption machinePerfect secrecyPseudorandom number generatorsRandom Walk ExplorationModern cryptography A new problem emerges in the 20th century. What happens if Alice and Bob can never meet to share a key in the first place? The fundamental theorem of arithmeticPublic key cryptography: What is it?The discrete logarithm problemDiffie-hellman key exchangeRSA encryption: Step 1RSA encryption: Step 2RSA encryption: Step 3Time Complexity (Exploration)Euler's totient functionEuler Totient ExplorationRSA encryption: Step 4What should we learn next?Ciphers Learn about algorithms for performing encryption & decryption. Then practice making and breaking codes! Ciphers vs. codesShift cipherCaesar cipher encryptionCaesar cipher decryptionCaesar cipher frequency analysisVigenere cipher encryptionXOR bitwise operationXOR and the one-time padXOR explorationBitwise operatorsWhat's next?Modular arithmetic This is a system of arithmetic for integers. These lessons provide a foundation for the mathematics presented in the Modern Cryptography tutorial. What is modular arithmetic?Modulo operatorCongruence moduloCongruence relationEquivalence relationsThe quotient remainder theoremModular addition and subtractionModular additionModular multiplicationModular multiplicationModular exponentiationFast modular exponentiationFast Modular ExponentiationModular inversesThe Euclidean AlgorithmPrimality test Why do Primes make some problems fundamentally hard? Build machines to perform primality tests! IntroductionPrimality test challengeTrial divisionRunning timeLevel 2: measuring running timeComputer memory (space)Binary memory explorationAlgorithmic efficiencyLevel 3: ChallengeSieve of EratosthenesLevel 4: Sieve of EratosthenesPrimality test with sieveLevel 5: Trial division using sieveThe prime number theoremPrime density spiralPrime GapsTime space tradeoffSummary (what's next?)Randomized algorithms Would access to coin flips speed up a primality test? How would this work? Randomized algorithms (intro)Conditional probability warmupGuess the coinRandom primality test (warm up)Level 9: Trial Divison vs Random DivisionFermat's little theoremFermat primality testLevel 10: Fermat Primality TestLink: https://www.khanacademy.org/computing/computer-science/cryptography Quote