By: Shay Amosi & Jasmin Amitai Mentor: Mony Orbach Spring 2013. Encryption/Decryption system Project Characterization. Our challenge. Today, encryption is used in many fields and consuming significant processor resources, therefore causes a decrease in performance.
Today, encryption is used in many fields and consuming significant processor resources, therefore causes a decrease in performance.
We can find various encryption uses: sites such as FACEBOOK and Bank accounts, wireless networks, digitally signed messages, military communication equipments and so on.
Because encryption is implemented by a computer processor, it consumes substantial resources which could have channeled for other programs, and the stronger the encryption is, the greater need of CPU resources.
Our goal is to find a way to still maintain a strong encryption, however, not detract from the overall computer performance.
encrypts the data quickly and efficiently.
between a PC and USB using FPGA.
There are two common approaches for
Symmetric encryption is the process of converting readable data to unreadable format and converting it back to readable format using the same key (*). Symmetric encryption algorithms use the same key for encryption and decryption.
The key must be exchangedso that both the data sender and the data recipient can access the plaintext data. The plaintext (Readable Text) is converted to cipher-text (unreadable text) using a key and at the receiving side the same key is used to covert back the cipher-text to plaintext.
Asymmetric encryption increases the security of the encryption process by utilizing two separate but mathematically related keys known as a public key and a private key. Asymmetric encryption algorithms use a mathematically related key pair for encryption and decryption.
The private key is possessed only by the user or computer that generates the key pair. The public key can be distributed to any person who wishes to send encrypted data to the private key holder. It is impossible to compute the private key if you know the public key.
Considerations and Requirements:
Encryption speed (Saves time)
\ Our Vision...
The TwofishConsists of the following steps:
DE2 Development and Education Board
Altera’s FPGA Cyclon II
Hardware description language:
Synthesis and Simulation:
Is symmetric structure used to build blocks ciphers.
Feistel network is built so that it divides the visible text into two parts, right and left. Each iteration step function is enabled on one side and at the end the two parts connect.The next iteration exchanging between the parts so that the output from the right side becomes the input to the left and vice versa.
Whitening operation include XOR of input and output with sub-keys.
Contains the following operations:
S-box is a basic component of symmetric key algorithms which preforms substitution.
In general S-box take input bit and transform them into output bites .(the number of the input bitesdoes not necessarily equal to the number of the output bites ).
MDS-Maximum Distance Separable
is a matrix representing a function with certain properties that have useful applications in cryptography.
Given two inputs, a and b, the n bit PHT is: