Download presentation
Presentation is loading. Please wait.
Published byHope Manning Modified over 9 years ago
1
Data Encryption Chris Mraovich
2
Overview Purpose of EncryptionPurpose of Encryption Permutations Bases and FactoradicsPermutations Bases and Factoradics Project SummaryProject Summary
3
Purpose of Encryption
4
Protecting Digital Content DVDs use CSS (Content Scramble System)DVDs use CSS (Content Scramble System) Weak Algorithm -Cracked by Jon Johansen in 1999
5
Protecting Digital Content Uses encryption on program ROM chipsUses encryption on program ROM chips Arcade Printed Circuit Boards Capcom Play System 2 (CPS2)Capcom Play System 2 (CPS2) -Used in mid 1990s for 2D games Graphic ROM chips are not encryptedGraphic ROM chips are not encrypted Cracked by teamCracked by team
6
Protecting Digital Content Why use encryption on an arcade board? 1.ROM chips can be copied to a PC as binary data 2. Program can be written to interpret binary data 3. PC can then run the arcade without the board
7
Permutations, Bases, and Factoradics
8
Permutations Goal is to rearrange bits into a different pattern 1 0 1 1 110 1 Permutation – rearrangement of a set of objects Original Form: Encrypted Form:
9
Factoradic – mixed radix numbering system that uses multiple bases to represent a single number Bases and Factoradics Factoradics provide a way of generating permutationsFactoradics provide a way of generating permutations Why are they important? Generate Factoradic Obtain permutation from factoradic Use permutation to rearrange bits Summary of Encryption Process
10
Order & Total Permutations Suppose there are 4 objects Order – number of objects (N) Total number of permutations for N objects is N! N = 4, so there are 4! or 24 ways to rearrange 4 objects
11
0{ 0 0 0 0 } ( 0 1 2 3 ) 1 { 0 0 1 0 } ( 0 1 3 2 ) 2 { 0 1 0 0 } ( 0 2 1 3 ) 3 { 0 1 1 0 } ( 0 2 3 1 ) 4 { 0 2 0 0 } ( 0 3 1 2 ) 5 { 0 2 1 0 } ( 0 3 2 1 ) 6 { 1 0 0 0 } ( 1 0 2 3 ) 7 { 1 0 1 0 } ( 1 0 3 2 ) 8{ 1 1 0 0 } ( 1 2 0 3 ) 9{ 1 1 1 0 } ( 1 2 3 0 ) 10 { 1 2 0 0 } ( 1 3 0 2 ) 11 { 1 2 1 0 } ( 1 3 2 0 ) 12 { 2 0 0 0 } ( 2 0 1 3 ) 13 { 2 0 1 0 } ( 2 0 3 1 ) 14 { 2 1 0 0 } ( 2 1 0 3 ) 15 { 2 1 1 0 } ( 2 1 3 0 ) 16 { 2 2 0 0 } ( 2 3 0 1 ) 17 { 2 2 1 0 } ( 2 3 1 0 ) 18 { 3 0 0 0 } ( 3 0 1 2 ) 19 { 3 0 1 0 } ( 3 0 2 1 ) 20 { 3 1 0 0 } ( 3 1 0 2 ) 21 { 3 1 1 0 } ( 3 1 2 0 ) 22 { 3 2 0 0 } ( 3 2 0 1 ) 23 { 3 2 1 0 } ( 3 2 1 0 ) Each factoradic uniquely identifies a particular permutationEach factoradic uniquely identifies a particular permutation Total Permutations of order 4 FactoradicPermutationInt Int is the base 10 representation of the factoradicInt is the base 10 representation of the factoradic Walkthrough of how 20 10 is converted to a permutation of order 4Walkthrough of how 20 10 is converted to a permutation of order 4
12
Bases – Generate Factoradic Write 20 10 in Base 2 2 4 2 3 2 2 2 1 2 0 (16) (8) (4) (2) (1) 1 0 1 0 0 Expand the Binary Number ( x ) + ( x ) + ( x ) + ( x ) + ( x ) = 20 10 (1 2 x 2 4 ) + (0 2 x 2 3 ) + (1 2 x 2 2 ) + (0 2 x 2 1 ) + (0 2 x 2 0 ) = 20 10 Base 10Base 2Multi-Base Factoradic 20101003100
13
From Base 2 to Factoradic ( x ) + ( x ) + ( x ) + ( x ) + ( x ) (E 2 x 2 4 ) + (D 2 x 2 3 ) + (C 2 x 2 2 ) + (B 2 x 2 1 ) + (A 2 x 2 0 ) Factoradic Expansion are all numbers in base 2 (0 or 1) A 2, B 2, C 2, D 2, E 2 are all numbers in base 2 (0 or 1) 2 n are powers of 2 ( x ) + ( x ) + ( x ) + ( x ) + ( x ) (E 5 x 4!) + (D 4 x 3!) + (C 3 x 2!) + (B 2 x 1!) + (A 1 x 0!) 2 n n! The bases of increase from right to left The bases of A 2, B 2, C 2, D 2, E 2 increase from right to left Generalization of Base 2 Expansion What Changes : 1.) 2.) … … (Mixed Radix - multiple bases used)
14
Factoradic Number System Factoradic Expansion ( x ) + ( x ) + ( x ) + ( x ) + ( x ) (E 5 x 4!) + (D 4 x 3!) + (C 3 x 2!) + (B 2 x 1!) + (A 1 x 0!) Simplify Factorials ( x ) + ( x ) + ( x ) + ( x ) + ( x ) (E 5 x 24) + (D 4 x 6) + (C 3 x 2) + (B 2 x 1) + (A 1 x 1) 00000 1111 222 33 4 Since,,,, and have different bases, they have different ranges of valid values Since A, B, C, D, and E have different bases, they have different ranges of valid values …
15
( x ) + ( x ) + ( x ) + ( x ) + ( x ) (E 5 x 24) + (D 4 x 6) + (C 3 x 2) + (B 2 x 1) + (A 1 x 1) 00000 1111 222 33 4 Factoradic Number System Write 20 10 in Factoradic notation ( x ) + ( x ) + ( x ) + ( x ) = 20 (3 x 6) + (1 x 2) + (0 x 1) + (0 x 1) = 20 ( x ) + ( x ) + ( x ) + ( x ) = (3 x 3!) + (1 x 2!) + (0 x 1!) + (0 x 0!) = Final Factoradic for 20 10 : Final Factoradic for 20 10 : 3 1 0 0
16
Obtain Permutation from Factoradic Initial Factoradic: Initial Factoradic: 3 1 0 0
17
1) Increment every digit by 1 4 2 1 1 Obtain Permutation from Factoradic
18
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 1 Obtain Permutation from Factoradic
19
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 11 3)This is the “new value” (N) 3)This 1 is the “new value” (N) If any red value to the right of N is >= N, it gets incremented by 1 1 Obtain Permutation from Factoradic
20
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 1 21 3)This is the “new value” (N) 3)This 1 is the “new value” (N) If any red value to the right of N is >= N, it gets incremented by 1 Obtain Permutation from Factoradic
21
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 1 21 3)This is the “new value” (N) 3)This 1 is the “new value” (N) If any red value to the right of N is >= N, it gets incremented by 1 4) Repeat step 3 until all red numbers have been used 21 2 Obtain Permutation from Factoradic
22
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 1 21 3)This is the “new value” (N) 3)This 1 is the “new value” (N) If any red value to the right of N is >= N, it gets incremented by 1 4) Repeat step 3 until all red numbers have been used 312 4 312 Obtain Permutation from Factoradic
23
Initial Factoradic: Initial Factoradic: 3 1 0 0 1) Increment every digit by 1 4 2 1 1 2) Replace right-most digit with a 1 4 2 1 1 21 3)This is the “new value” (N) 3)This 1 is the “new value” (N) If any red value to the right of N is >= N, it gets incremented by 1 4) Repeat step 3 until all red numbers have been used 312 4312 4) Decrement all numbers by 1 3 1 0 2 Obtain Permutation from Factoradic
24
3 1 0 2 Original Binary Data: Use Permutation to swap bits Obtained Permutation: 1 0 1 0 Encrypted Bit Array Data: 01 23
25
3 1 0 2 Original Binary Data: Use Permutation to swap bits Obtained Permutation: 1 0 1 0 Encrypted Bit Array Data: 1 01 23
26
3 1 0 2 Original Binary Data: Use Permutation to swap bits Obtained Permutation: 1 0 1 0 Encrypted Bit Array Data: 10 01 23
27
3 1 0 2 Original Binary Data: Use Permutation to swap bits Obtained Permutation: 1 0 1 0 Encrypted Bit Array Data: 10 1 01 23
28
3 1 0 2 Original Binary Data: Use Permutation to swap bits Obtained Permutation: 1 0 1 0 Encrypted Bit Array Data: 10 1 0 01 23
29
Project Summary Encrypt/Decrypt any binary file on theEncrypt/Decrypt any binary file on the Windows platform Generate keys to decrypt filesGenerate keys to decrypt files Like a really long password stored in a text file Use the principles of factoradics to:
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.