EE 595 (PMP) Advanced Topics in Communication Theory Handout #1

Total Page:16

File Type:pdf, Size:1020Kb

EE 595 (PMP) Advanced Topics in Communication Theory Handout #1 EE 595 (PMP) Advanced Topics in Communication Theory Handout #1 Introduction to Cryptography. Symmetric Encryption.1 Wednesday, January 13, 2016 Tamara Bonaci Department of Electrical Engineering University of Washington, Seattle Outline: 1. Review - Security goals 2. Terminology 3. Secure communication { Symmetric vs. asymmetric setting 4. Background: Modular arithmetic 5. Classical cryptosystems { The shift cipher { The substitution cipher 6. Background: The Euclidean Algorithm 7. More classical cryptosystems { The affine cipher { The Vigen´erecipher { The Hill cipher { The permutation cipher 8. Cryptanalysis { The Kerchoff Principle { Types of cryptographic attacks { Cryptanalysis of the shift cipher { Cryptanalysis of the affine cipher { Cryptanalysis of the Vigen´erecipher { Cryptanalysis of the Hill cipher Review - Security goals Last lecture, we introduced the following security goals: 1. Confidentiality - ability to keep information secret from all but authorized users. 2. Data integrity - property ensuring that messages to and from a user have not been corrupted by communication errors or unauthorized entities on their way to a destination. 3. Identity authentication - ability to confirm the unique identity of a user. 4. Message authentication - ability to undeniably confirm message origin. 5. Authorization - ability to check whether a user has permission to conduct some action. 6. Non-repudiation - ability to prevent the denial of previous commitments or actions (think of a con- tract). 7. Certification - endorsement of information by a trusted entity. In the rest of today's lecture, we will focus on three of these goals, namely confidentiality, integrity and authentication (CIA). In doing so, we begin by introducing the necessary terminology. 1 We thank Professors Radha Poovendran and Andrew Clark for the help in preparing this material. 1 1 Terminology 1.1 Crytpology, cryptography and cryptanalysis: Cryptology is an all-inclusive term for the study of communication over insecure and unreliable communi- cation channels. Cryptography is an algorithmic process of designing communication systems capable of realizing secure communication, and cryptanalysis is a process of analyzing cryptosystems, for the purpose of breaking the secrecy of the communication. 1.2 Communication channel and communicating parties A communication channel is a physical medium over which communication occurs. It can be either wired (e.g. copper wire, optic fiber) or wireless (e.g. radio). Communicating parties are entities wishing to (secretly) communicate. In the case of two-party communication, they are often referred to as (A)lice and (B)ob. Communicating parties can employ different modes of communication, such as: { Unicast: One-to-one or point-to-point communication. { Multicast: One-to-many or point-to-multipoint communication. { Broadcast: One-to-any or point-to-any point communication.2 1.3 Attacker Attacker, adversary or opponent is an entity communicating parties wish to conceal the information from. We typically differentiate between two types of attackers: { Eavesdropper - an attacker passively observing the communication channel (referred to as Eve). { An attacker actively trying to manipulate (decrypt) the communicated information (referred to as Mal- lory). 1.4 Plaintext and Ciphertext Plaintext is any information that Alice may wish to communicate to Bob. It can be text, numerical data, or anything else. Ciphertext is defined as a message that is transmitted over an insecure channel after the plaintext has been encrypted. Decryption of the ciphertext using the correct decryption algorithm and decryption key should produce the corresponding plaintext. 1.5 Encryption and Decryption Encryption is defined as a process of creating a ciphertext from a plaintext by using an encryption key K and following an encryption rule (algorithm) eK . Similarly, decryption is the process of obtaining the plaintext from a ciphertext by using a decryption key K and following a decryption rule (algorithm) dK . Encryption/decryption key(s) is secret shared by the communicating parties that is used in cryptographic operations. Thus, a cryptographic system can formally be described as follows. 1.6 Formal description of a cryptosystems A cryptosystem is a 5-tuple (P; C; K; E; D). 1. P is the set of possible plaintexts. 2. C is the set of possible ciphers. 3. K is the set of possible keys. 4. E is the encryption rule set. 5. D is the decryption rule set. 2 Multicast can be seen as a special case of broadcast communication. 2 Let x 2 P, K 2 K. Encryption is a rule eK 2 E, and decryption is a rule dK 2 D. In order to have a well-defined cryptosystem, we require: dK (eK (x)) = x: (1) In words, decryption should recover the original plaintext. 2 Secure Communication Let's now assume that Alice wants to send a message to Bob over an insecure channel, and that neither Alice nor Bob want this information to be readable by any other parties. 1. What does Alice do? (a) Alice takes plaintext x = x1x2 : : : xn for some integer n ≥ 1; where 8i; xi 2 P; and encrypts it with a key K 2 K, using the encryption rule eK to generate ciphertext (cipher) y = y1y2 : : : yn: (b) She then transmits the cipher y over the insecure channel. 2. What does Bob do? (a) Bob knows the key K and the decryption algorithm dK . (b) He receives the cipher y and runs decryption. (c) Bob recovers the plaintext x = dK (y). 2.1 Symmetric vs. Asymmetric Setting Encryption/decryption algorithms can broadly be divided into two groups: symmetric key and public key. In symmetric key algorithms, the encryption and decryption keys are known to both Alice and Bob. For example, the encryption and the decryption key might be the same, or the encryption key is shared, and the decryption key is easily calculated from it. In public key algorithms (also known as asymmetric key algorithms), the encryption key is made public, but it is computationally infeasible to find the decryption key without information known only to a party intended to receive the ciphertext. Simple (non-mathematical) way of thinking about public key communication: Bob sends Alice a box and an unlocked padlock. Alice puts her message in the box, locks Bob's lock on it, and sends the box back to Bob. Now only Bob can open the box, and read the message. 3 Background: Modular Arithmetic In many cryptographic systems, the communicated messages are represented by numerical values prior to being encrypted and transmitted. For example, the English alphabet consists of 26 letters. As shown in Table 1, we can denote the element of the alphabet with corresponding numbers. A B C D E F G H I J K L M 0 1 2 3 4 5 6 7 8 9 10 11 12 N O P Q R S T U V W X Y Z 13 14 15 16 17 18 19 20 21 22 23 24 25 Table 1. Mapping of alphabets to numerals The encryption processes can now be thought of as mathematical operations that turn the input nu- merical values into output numerical values. Building, analyzing and attacking such cryptosystems requires mathematical tools, and the most important of these is number theory. 3 Definition 1. Let a and b be integers, a; b 2 Z and let m be a positive integer, m 2 Z+: If m divides (a − b), we can write: a ≡ b (mod m) (2) or mj(a − b) (3) The operator ≡ is called congruence and a ≡ b (mod m) is read: \a is congruent to b modulo m:" The positive integer m is known as the modulus. 3.1 Properties of modulo arithmetic Let Zm denote the set of integers f0; 1; 2; : : : ; m − 1g: 1. a ≡ b (mod m) if and only if a (mod m) = b (mod m); i.e. the remainders of a and b modulo m are equal. 2. Addition is closed: for any a; b 2 Zm; a + b 2 Zm: 3. Addition is commutative: for any a; b 2 Zm; a + b = b + a: 4. Addition is associative: for any a; b; c 2 Zm; (a + b) + c = a + (b + c): 5. 0 is an additive identity: for any a 2 Zm; a + 0 = 0 + a = a: 6. The additive inverse of any a 2 Zm is m − a: that is a + (m − a) = (m − a) + a = 0; 8a 2 Zm: 7. Multiplication is closed: for any a; b 2 Zm; ab 2 Zm: 8. Multiplication is commutative: for any a; b 2 Zm; ab = ba: 9. Multiplication is associative: for any a; b; c 2 Zm; (ab)c = a(bc): 10. 1 is the multiplicative identity: for any a 2 Zm; a × 1 = 1 × a = a: 11. The distributive property is satisfied: for any a; b; c 2 Zm; (a+b)c = (ac)+(bc) and a(b+c) = (ab)+(ac): Properties 1, 3-5, say that Zm forms a group. Since property 2 also holds, the group is called an abelian group. Properties 1-10 make Zm a ring. We can also define subtraction in Zm as (a − b) mod m: 4 Classical Cryptosystems Methods of making communicated messages unintelligible to attackers have been important throughout history. In this section, we cover some of this older cryptosystems that were primarily used before the advent of computers. In doing so, we will make use of number theory, especially modular arithmetic we just reviewed. We start with the shift cipher. 4.1 The Shift Cipher The shift cipher is one of the oldest known cryptosystems, often attributed to Julius Caesar. The idea used in this cryptosystem is to replace each letter in an alphabet by another letter at a distance K from it. Formally, let's associate each letter A; B; :::; Z with an integer 0;:::; 25. If we allow the key K to be any integer with 0 ≤ K ≤ 25, the shift cipher can be defined as: P = C = K = Z26.
Recommended publications
  • Modular Arithmetic
    CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 5 Modular Arithmetic One way to think of modular arithmetic is that it limits numbers to a predefined range f0;1;:::;N ¡ 1g, and wraps around whenever you try to leave this range — like the hand of a clock (where N = 12) or the days of the week (where N = 7). Example: Calculating the day of the week. Suppose that you have mapped the sequence of days of the week (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday) to the sequence of numbers (0;1;2;3;4;5;6) so that Sunday is 0, Monday is 1, etc. Suppose that today is Thursday (=4), and you want to calculate what day of the week will be 10 days from now. Intuitively, the answer is the remainder of 4 + 10 = 14 when divided by 7, that is, 0 —Sunday. In fact, it makes little sense to add a number like 10 in this context, you should probably find its remainder modulo 7, namely 3, and then add this to 4, to find 7, which is 0. What if we want to continue this in 10 day jumps? After 5 such jumps, we would have day 4 + 3 ¢ 5 = 19; which gives 5 modulo 7 (Friday). This example shows that in certain circumstances it makes sense to do arithmetic within the confines of a particular number (7 in this example), that is, to do arithmetic by always finding the remainder of each number modulo 7, say, and repeating this for the results, and so on.
    [Show full text]
  • Discrete Mathematics
    Slides for Part IA CST 2016/17 Discrete Mathematics <www.cl.cam.ac.uk/teaching/1617/DiscMath> Prof Marcelo Fiore [email protected] — 0 — What are we up to ? ◮ Learn to read and write, and also work with, mathematical arguments. ◮ Doing some basic discrete mathematics. ◮ Getting a taste of computer science applications. — 2 — What is Discrete Mathematics ? from Discrete Mathematics (second edition) by N. Biggs Discrete Mathematics is the branch of Mathematics in which we deal with questions involving finite or countably infinite sets. In particular this means that the numbers involved are either integers, or numbers closely related to them, such as fractions or ‘modular’ numbers. — 3 — What is it that we do ? In general: Build mathematical models and apply methods to analyse problems that arise in computer science. In particular: Make and study mathematical constructions by means of definitions and theorems. We aim at understanding their properties and limitations. — 4 — Lecture plan I. Proofs. II. Numbers. III. Sets. IV. Regular languages and finite automata. — 6 — Proofs Objectives ◮ To develop techniques for analysing and understanding mathematical statements. ◮ To be able to present logical arguments that establish mathematical statements in the form of clear proofs. ◮ To prove Fermat’s Little Theorem, a basic result in the theory of numbers that has many applications in computer science. — 16 — Proofs in practice We are interested in examining the following statement: The product of two odd integers is odd. This seems innocuous enough, but it is in fact full of baggage. — 18 — Proofs in practice We are interested in examining the following statement: The product of two odd integers is odd.
    [Show full text]
  • Quaternion Algebra and Calculus
    Quaternion Algebra and Calculus David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. Created: March 2, 1999 Last Modified: August 18, 2010 Contents 1 Quaternion Algebra 2 2 Relationship of Quaternions to Rotations3 3 Quaternion Calculus 5 4 Spherical Linear Interpolation6 5 Spherical Cubic Interpolation7 6 Spline Interpolation of Quaternions8 1 This document provides a mathematical summary of quaternion algebra and calculus and how they relate to rotations and interpolation of rotations. The ideas are based on the article [1]. 1 Quaternion Algebra A quaternion is given by q = w + xi + yj + zk where w, x, y, and z are real numbers. Define qn = wn + xni + ynj + znk (n = 0; 1). Addition and subtraction of quaternions is defined by q0 ± q1 = (w0 + x0i + y0j + z0k) ± (w1 + x1i + y1j + z1k) (1) = (w0 ± w1) + (x0 ± x1)i + (y0 ± y1)j + (z0 ± z1)k: Multiplication for the primitive elements i, j, and k is defined by i2 = j2 = k2 = −1, ij = −ji = k, jk = −kj = i, and ki = −ik = j. Multiplication of quaternions is defined by q0q1 = (w0 + x0i + y0j + z0k)(w1 + x1i + y1j + z1k) = (w0w1 − x0x1 − y0y1 − z0z1)+ (w0x1 + x0w1 + y0z1 − z0y1)i+ (2) (w0y1 − x0z1 + y0w1 + z0x1)j+ (w0z1 + x0y1 − y0x1 + z0w1)k: Multiplication is not commutative in that the products q0q1 and q1q0 are not necessarily equal.
    [Show full text]
  • WORKSHEET # 7 QUATERNIONS the Set of Quaternions Are the Set Of
    WORKSHEET # 7 QUATERNIONS The set of quaternions are the set of all formal R-linear combinations of \symbols" i; j; k a + bi + cj + dk for a; b; c; d 2 R. We give them the following addition rule: (a + bi + cj + dk) + (a0 + b0i + c0j + d0k) = (a + a0) + (b + b0)i + (c + c0)j + (d + d0)k Multiplication is induced by the following rules (λ 2 R) i2 = j2 = k2 = −1 ij = k; jk = i; ki = j ji = −k kj = −i ik = −j λi = iλ λj = jλ λk = kλ combined with the distributive rule. 1. Use the above rules to carefully write down the product (a + bi + cj + dk)(a0 + b0i + c0j + d0k) as an element of the quaternions. Solution: (a + bi + cj + dk)(a0 + b0i + c0j + d0k) = aa0 + ab0i + ac0j + ad0k + ba0i − bb0 + bc0k − bd0j ca0j − cb0k − cc0 + cd0i + da0k + db0j − dc0i − dd0 = (aa0 − bb0 − cc0 − dd0) + (ab0 + a0b + cd0 − dc0)i (ac0 − bd0 + ca0 + db0)j + (ad0 + bc0 − cb0 + da0)k 2. Prove that the quaternions form a ring. Solution: It is obvious that the quaternions form a group under addition. We just showed that they were closed under multiplication. We have defined them to satisfy the distributive property. The only thing left is to show the associative property. I will only prove this for the elements i; j; k (this is sufficient by the distributive property). i(ij) = i(k) = ik = −j = (ii)j i(ik) = i(−j) = −ij = −k = (ii)k i(ji) = i(−k) = −ik = j = ki = (ij)i i(jj) = −i = kj = (ij)j i(jk) = i(i) = (−1) = (k)k = (ij)k i(ki) = ij = k = −ji = (ik)i i(kk) = −i = −jk = (ik)k j(ii) = −j = −ki = (ji)i j(ij) = jk = i = −kj = (ji)j j(ik) = j(−j) = 1 = −kk = (ji)k j(ji) = j(−k) = −jk = −i = (jj)i j(jk) = ji = −k = (jj)k j(ki) = jj = −1 = ii = (jk)i j(kj) = j(−i) = −ji = k = ij = (jk)j j(kk) = −j = ik = (jk)k k(ii) = −k = ji = (ki)i k(ij) = kk = −1 = jj = (ki)j k(ik) = k(−j) = −kj = i = jk = (ki)k k(ji) = k(−k) = 1 = (−i)i = (kj)i k(jj) = k(−1) = −k = −ij = (kj)j k(jk) = ki = j = −ik = (kj)k k(ki) = kj = −i = (kk)i k(kj) = k(−i) = −ki = −j = (kk)j 1 WORKSHEET #7 2 3.
    [Show full text]
  • Math 412. §3.2, 3.3: Examples of Rings and Homomorphisms Professors Jack Jeffries and Karen E. Smith
    Math 412. x3.2, 3.3: Examples of Rings and Homomorphisms Professors Jack Jeffries and Karen E. Smith DEFINITION:A subring of a ring R (with identity) is a subset S which is itself a ring (with identity) under the operations + and × for R. DEFINITION: An integral domain (or just domain) is a commutative ring R (with identity) satisfying the additional axiom: if xy = 0, then x or y = 0 for all x; y 2 R. φ DEFINITION:A ring homomorphism is a mapping R −! S between two rings (with identity) which satisfies: (1) φ(x + y) = φ(x) + φ(y) for all x; y 2 R. (2) φ(x · y) = φ(x) · φ(y) for all x; y 2 R. (3) φ(1) = 1. DEFINITION:A ring isomorphism is a bijective ring homomorphism. We say that two rings R and S are isomorphic if there is an isomorphism R ! S between them. You should think of a ring isomorphism as a renaming of the elements of a ring, so that two isomorphic rings are “the same ring” if you just change the names of the elements. A. WARM-UP: Which of the following rings is an integral domain? Which is a field? Which is commutative? In each case, be sure you understand what the implied ring structure is: why is each below a ring? What is the identity in each? (1) Z; Q. (2) Zn for n 2 Z. (3) R[x], the ring of polynomials with R-coefficients. (4) M2(Z), the ring of 2 × 2 matrices with Z coefficients.
    [Show full text]
  • Vector Spaces
    Chapter 1 Vector Spaces Linear algebra is the study of linear maps on finite-dimensional vec- tor spaces. Eventually we will learn what all these terms mean. In this chapter we will define vector spaces and discuss their elementary prop- erties. In some areas of mathematics, including linear algebra, better the- orems and more insight emerge if complex numbers are investigated along with real numbers. Thus we begin by introducing the complex numbers and their basic✽ properties. 1 2 Chapter 1. Vector Spaces Complex Numbers You should already be familiar with the basic properties of the set R of real numbers. Complex numbers were invented so that we can take square roots of negative numbers. The key idea is to assume we have i − i The symbol was√ first a square root of 1, denoted , and manipulate it using the usual rules used to denote −1 by of arithmetic. Formally, a complex number is an ordered pair (a, b), the Swiss where a, b ∈ R, but we will write this as a + bi. The set of all complex mathematician numbers is denoted by C: Leonhard Euler in 1777. C ={a + bi : a, b ∈ R}. If a ∈ R, we identify a + 0i with the real number a. Thus we can think of R as a subset of C. Addition and multiplication on C are defined by (a + bi) + (c + di) = (a + c) + (b + d)i, (a + bi)(c + di) = (ac − bd) + (ad + bc)i; here a, b, c, d ∈ R. Using multiplication as defined above, you should verify that i2 =−1.
    [Show full text]
  • Number Theory
    CS 5002: Discrete Structures Fall 2018 Lecture 5: October 4, 2018 1 Instructors: Tamara Bonaci, Adrienne Slaugther Disclaimer: These notes have not been subjected to the usual scrutiny reserved for formal publications. They may be distributed outside this class only with the permission of the Instructor. Number Theory Readings for this week: Rosen, Chapter 4.1, 4.2, 4.3, 4.4 5.1 Overview 1. Review: set theory 2. Review: matrices and arrays 3. Number theory: divisibility and modular arithmetic 4. Number theory: prime numbers and greatest common divisor (gcd) 5. Number theory: solving congruences 6. Number theory: modular exponentiation and Fermat's little theorem 5.2 Introduction In today's lecture, we will dive into the branch of mathematics, studying the set of integers and their properties, known as number theory. Number theory has very important practical implications in computer science, but also in our every day life. For example, secure online communication, as we know it today, would not be possible without number theory because many of the encryption algorithms used to enable secure communication rely heavily of some famous (and in some cases, very old) results from number theory. We will first introduce the notion of divisibility of integers. From there, we will introduce modular arithmetic, and explore and prove some important results about modular arithmetic. We will then discuss prime numbers, and show that there are infinitely many primes. Finaly, we will explain how to solve linear congruences, and systems of linear congruences. 5-1 5-2 Lecture 5: October 4, 2018 5.3 Review 5.3.1 Set Theory In the last lecture, we talked about sets, and some of their properties.
    [Show full text]
  • Number Theory & Asymmetric Cryptography
    Number Theory & Asymmetric Cryptography Modular Arithmetic Notations Ζ={−∞,⋯−2,−1,0,1,2,⋯,∞} Ζm={0,1,2,⋯,m−2,m−1} a≡b mod m⇒ a=b+km, integer k Addition mod m Given a≡b mod m and c≡d mod m (a+c)≡(b+d) mod m a−b=km ,c−d=lm, integers k ,l (a+c)=b+d+(k+l)m=(b+d)+ jm Examples (25+15)≡(1+3)≡0 mod 4 (25+15)≡(4+1)≡5 mod 7 Multiplication mod m a≡b mod m,c≡d mod ac≡bd mod m ac=(b+km)(d+lm)=bd+(bl+kd+klm)m Example 26≡2 mod 4,11≡3 mod 4 26∗11=286≡2 mod 4 2∗3=6≡2 mod 4 What about division? Is division possible in Zm? (A long detour necessary at this point) Group, Abelian Group, Ring and Field Abelian Group Field Ring Group Group, Ring and Field Group: Addition is closed, and associative, additive identity and additive inverse exist Abelian group: Addition is also commutative Ring: Multiplication is closed, associative, commutative, and distributive; multiplicative identity exists Field: Every element except “additive identity” has multiplicative inverse In Zm additive identity is 0, multiplicative identity is 1. Its a Ring. Is Zm a Field? Multiplicative Inverse Consider m = 5, or {0,1,2,3,4} – 2*3 = 3*2 = 1 mod 5. So 2↔3 ● (3 and 2 are multiplicative inverses in Z5) – 4*4 = 1 mod 5, or 4 ↔ 4 – obviously, 1 ↔ 1 Z5 is clearly a field (all elements except additive identity have a multiplicative inverse) Consider m = 6, or {0,1,2,3,4,5} – 5↔5 , 1 ↔ 1 – No inverses for 2,3 and 4? (why?) – Z6 is not a Field (it is a Ring) – (As we shall see soon) the reason for this is that 6 is not a prime mumber Basic Theorems of Arithmetic Any number can be represented as a product th of powers of primes.
    [Show full text]
  • MAT 240 - Algebra I Fields Definition
    MAT 240 - Algebra I Fields Definition. A field is a set F , containing at least two elements, on which two operations + and · (called addition and multiplication, respectively) are defined so that for each pair of elements x, y in F there are unique elements x + y and x · y (often written xy) in F for which the following conditions hold for all elements x, y, z in F : (i) x + y = y + x (commutativity of addition) (ii) (x + y) + z = x + (y + z) (associativity of addition) (iii) There is an element 0 ∈ F , called zero, such that x+0 = x. (existence of an additive identity) (iv) For each x, there is an element −x ∈ F such that x+(−x) = 0. (existence of additive inverses) (v) xy = yx (commutativity of multiplication) (vi) (x · y) · z = x · (y · z) (associativity of multiplication) (vii) (x + y) · z = x · z + y · z and x · (y + z) = x · y + x · z (distributivity) (viii) There is an element 1 ∈ F , such that 1 6= 0 and x·1 = x. (existence of a multiplicative identity) (ix) If x 6= 0, then there is an element x−1 ∈ F such that x · x−1 = 1. (existence of multiplicative inverses) Remark: The axioms (F1)–(F-5) listed in the appendix to Friedberg, Insel and Spence are the same as those above, but are listed in a different way. Axiom (F1) is (i) and (v), (F2) is (ii) and (vi), (F3) is (iii) and (vii), (F4) is (iv) and (ix), and (F5) is (vii). Proposition. Let F be a field.
    [Show full text]
  • Modular Arithmetic Some Basic Number Theory: CS70 Summer 2016 - Lecture 7A Midterm 2 Scores Out
    Announcements Agenda Modular Arithmetic Some basic number theory: CS70 Summer 2016 - Lecture 7A Midterm 2 scores out. • Modular arithmetic Homework 7 is out. Longer, but due next Wednesday before class, • GCD, Euclidean algorithm, and not next Monday. multiplicative inverses David Dinh • Exponentiation in modular There will be no homework 8. 01 August 2016 arithmetic UC Berkeley Mathematics is the queen of the sciences and number theory is the queen of mathematics. -Gauss 1 2 Modular Arithmetic Motivation: Clock Math Congruences Modular Arithmetic If it is 1:00 now. What time is it in 2 hours? 3:00! Theorem: If a c (mod m) and b d (mod m), then a + b c + d x is congruent to y modulo m, denoted “x y (mod m)”... ≡ ≡ ≡ What time is it in 5 hours? 6:00! ≡ (mod m) and a b = c d (mod m). · · What time is it in 15 hours? 16:00! • if and only if (x y) is divisible by m (denoted m (x y)). Proof: Addition: (a + b) (c + d) = (a c) + (b d). Since a c − | − − − − ≡ Actually 4:00. • if and only if x and y have the same remainder w.r.t. m. (mod m) the first term is divisible by m, likewise for the second 16 is the “same as 4” with respect to a 12 hour clock system. • x = y + km for some integer k. term. Therefore the entire expression is divisible by m, so Clock time equivalent up to to addition/subtraction of 12. a + b c + d (mod m). What time is it in 100 hours? 101:00! or 5:00.
    [Show full text]
  • Algebra and Geometry of Hamilton's Quaternions
    GENERAL ARTICLE Algebra and Geometry of Hamilton’s Quaternions ‘Well, Papa, Can You Multiply Triplets?’ Govind S Krishnaswami and Sonakshi Sachdev Inspired by the relation between the algebra of complex numbers and plane geometry, William Rowan Hamilton sought an algebra of triples for application to three-dimensional geometry. Un- able to multiply and divide triples, he invented a non-commutative division algebra of quadru- ples, in what he considered his most significant (left) Govind Krishnaswami is on the faculty of the work, generalizing the real and complex number Chennai Mathematical systems. We give a motivated introduction to Institute. His research in quaternions and discuss how they are related to theoretical physics spans Pauli matrices, rotations in three dimensions, the various topics three sphere, the group SU(2) and the celebrated from quantum field theory and particle physics to fluid, Hopf fibrations. plasma and non-linear dynamics. 1. Introduction (right) Sonakshi Sachdev is Every morning in the early part of the above-cited month a PhD student at the [October 1843], on my coming down to breakfast, your Chennai Mathematical (then) little brother William Edwin, and yourself, used Institute. She has worked on to ask me, “Well, Papa, can you multiply triplets”? the dynamics of rigid bodies, Whereto I was always obliged to reply, with a sad shake fluids and plasmas. of the head: “No, I can only add and subtract them.” W R Hamilton in a letter dated August 5, 1865 to his son A H Hamilton [1]. Imaginary and complex numbers arose in looking for ‘impossible’ solutions to polynomial equations such as x2 + 1 = 0.
    [Show full text]
  • Finite Fields (PART 2): Modular Arithmetic
    Lecture 5: Finite Fields (PART 2) PART 2: Modular Arithmetic Theoretical Underpinnings of Modern Cryptography Lecture Notes on “Computer and Network Security” by Avi Kak ([email protected]) February 2, 2021 5:20pm ©2021 Avinash Kak, Purdue University Goals: To review modular arithmetic To present Euclid’s GCD algorithms To present the prime finite field Zp To show how Euclid’s GCD algorithm can be extended to find multiplica- tive inverses Perl and Python implementations for calculating GCD and mul- tiplicative inverses CONTENTS Section Title Page 5.1 Modular Arithmetic Notation 3 5.1.1 Examples of Congruences 5 5.2 Modular Arithmetic Operations 6 5.3 The Set Zn and Its Properties 9 5.3.1 So What is Zn? 11 5.3.2 Asymmetries Between Modulo Addition and Modulo 13 Multiplication Over Zn 5.4 Euclid’s Method for Finding the Greatest Common Divisor 16 of Two Integers 5.4.1 Steps in a Recursive Invocation of Euclid’s GCD Algorithm 18 5.4.2 An Example of Euclid’s GCD Algorithm in Action 19 5.4.3 Proof of Euclid’s GCD Algorithm 21 5.4.4 Implementing the GCD Algorithm in Perl and Python 22 5.5 Prime Finite Fields 29 5.5.1 What Happened to the Main Reason for Why Zn Could Not 31 be an Integral Domain 5.6 Finding Multiplicative Inverses for the Elements of Zp 32 5.6.1 Proof of Bezout’s Identity 34 5.6.2 Finding Multiplicative Inverses Using Bezout’s Identity 37 5.6.3 Revisiting Euclid’s Algorithm for the Calculation of GCD 39 5.6.4 What Conclusions Can We Draw From the Remainders? 42 5.6.5 Rewriting GCD Recursion in the Form of Derivations for 43 the Remainders 5.6.6 Two Examples That Illustrate the Extended Euclid’s Algorithm 45 5.7 The Extended Euclid’s Algorithm in Perl and Python 47 5.8 Homework Problems 54 Computer and Network Security by Avi Kak Lecture 5 Back to TOC 5.1 MODULAR ARITHMETIC NOTATION Given any integer a and a positive integer n, and given a division of a by n that leaves the remainder between 0 and n − 1, both inclusive, we define a mod n to be the remainder.
    [Show full text]