SlideShare a Scribd company logo
1 of 20
Cryptography
PRESENTED TO
Prof. Nesreen I. Ziedan
PRESENTED BY
Ashraf Saeed Teleb
Aly Mahmoud Samy Radwan
Muhamad Gameel
Sara Abd Elhamid
Implementing Vigenere cipher using
logic gates
contents :
1-Aknowlegment
2-Introduction to cryptography
3-Historical timeline
4-Veginere cipher
5-Project parts
5.1-Input
5.2-Adder
5.3-Mermory
5.4-Correction Circuit
5.5-Display
5.6-Power
6-Notes on ic’s
7-References and resources
1-aknowlegment
Prof. Nesreen I. Ziedan
Computer and Systems Engineering Department
Zagazig University
For giving us the chance to live this wonderful experience
Prof.Dan Boneh
computer science
stanford university
For providing us with the theoretical basis through his great mooc on corsera platform .
2-Cryptography
Cryptography is the science of encoding messages or information in such a way that only authorized parties
can read it.
In an encryption scheme, the message or information, referred to as plaintext, is encrypted using an
encryption algorithm, generating ciphertext that can only be read if decrypted.
Decryption is the reverse process to Encryption. Decryption creates a Plaintext from a Ciphertext only and
only if the keys is known .
Cryptography has a wide range of applications : Electronic Money , Secure Network Communications ,
Electronic Signatures and of caurse military applications .
Spies, soldiers, hackers, pirates, royalty, merchants, tyrants, political activists, Internet shoppers, and
anyone who has ever needed to share secrets with trusted friends have relied on cryptography to make sure
their secrets stay secret.
3-History of cryptography:
it’s clear that the need of secret way of writting was demanding since early ages such that most of the
ancient civilizations had there own cryptography machines .
ancient roma : Julius Caesar used what is know after him - Caesar cipher- in which each letter in the
plaintext was replaced by a letter some fixed number of positions further down the alphabet. Suetonius
reports that Julius Caesar used it with a shift of three to communicate with his generals.
The Greeks of Classical times are said to have known of ciphers (e.g., the scytale transposition cipher
claimed to have been used by the Spartan military).
transposition ciphers, which rearrange the order of letters in a message (e.g., 'hello world' becomes
'ehlol owrdl' in a trivially simple rearrangement scheme).
Reconstructed ancient Greek scytale
Ancient Egypt
Atbash is an example of an early Hebrew cipher. The earliest known use of cryptography is some
carved ciphertext on stone in Egypt (ca 1900 BCE).
In India, the 2000-year old Kamasutra of Vātsyāyana speaks of two different kinds of ciphers called
Kautiliyam and Mulavediya. In the Kautiliyam, the cipher letter substitutions are based on phonetic
relations, such as vowels becoming consonants. In the Mulavediya, the cipher alphabet consists of
pairing letters and using the reciprocal ones.
4-veginere cipher
It was possibly first described in 1553 by Italian cryptographer Giovan
Battista Bellaso (though it has been reinvented many times, including by
Blaise de Vigenère). It is thought to have remained unbroken until Charles
Babbage, considered to be the father of computers, broke it in the 19th
century.
Blaise de Vigenère
The Vigenère cipher consists of several Caesar ciphers in sequence
with different shift values.
Algebraic description:
5-PROJECT LAYOUT
•letters are represented in integer numbers , from 1 to 26
•character's are received as ascii codes from ps/2 keyboard and then modulated using Arduino
into corresponding integers
•key character's are saved in the memory while text head to the adder where it’s simply added
to the key
•the modulo function as achieved using the correction circuit
•integers are transformed back into ascii and finally displayed on LCD
5.1-Input
The project uses ps2 keyboard
physically , ps2 connector consisits of 6 pins as shown below .
data (ASCII code ) are transmitted serially over one line synchronous with a clock which
make a challenge to transform it into parallel form .
This problem was solved using Arduino giving
an output of five data lines for five data bits
representing all the 26 English character's .
Arduino code :
#include <LiquidCrystal.h>
#include <PS2Keyboard.h>
//LiquidCrystal lcd(A0 , A1, A2, A3,A4, A5);
const int DataPin = 8;
const int IRQpin = 3;
PS2Keyboard keyboard;
void setup() {
pinMode(7, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);
pinMode(A3, INPUT);
pinMode(A4, INPUT);
pinMode(A5, INPUT);
pinMode(6, OUTPUT);
keyboard.begin(DataPin, IRQpin,
PS2Keymap_US);
Serial.begin(9600);
Serial.println("Enter your text: ");
// lcd.println("Enter your text: "); }
void loop() {
int y;
digitalWrite(6,LOW) ;
if (keyboard.available()) {
char c = keyboard.read();
int x=int(c)-96;
Serial.print(c);
Serial.print(" ");
Serial.println( x);
// lcd.print(c);
// lcd.display(); // convert character
from keyboard to binary start from 0 to 25
if(x==-64){ x=0;}
if(x==31){x=27; // lcd.clear(); }
if((x>-1 && x<28) ){
digitalWrite(6,HIGH);
for(int i=0;i<5;i++){
if(x%2==0){
digitalWrite(9+i, LOW);
}else if(x%2==1){
digitalWrite(9+i, HIGH); }
x=x/2;
}}}
}
5.2-Adder
A Long - term outlook would show an overflow problem that takes another bit being added to the
five data bit .
overcoming this problem . two-four- bit full adder can simply add the text and key characters
generating the cipher text or subtracting them and retrieving plain text again .
the full adder ic is 74HC283 which is a 4 bit full adder with fast carry
six xor gates are used to add the functionality of suntraction( Decrption ).
the xor ic is 74LS86
both of the xor and the full adder make ripple adder capable of encrypting and decrypting
massages .
5.3-Mermory
A small (8*5 bit ) memory is built using 5 ic each contains 8 latches .
Used to save the key such that each character is saved in parallel in the five ic’s .
the latches ic can work on four modes controlled by 2 enable lines
the latches shows the stored bit all the time so in order to read one character , 5 multiplexer are
used.
A counter is used to address the memory , such that it’s activated with each key stroke .it also
plays a vital role when entering the plain text.
5.4-Correction Circuit (round robin )
Consists of detection and a ripple adder
The detection circuit detects error resulting from the absence of the modulo function
and reports with a single bit flag .
The ripple adder adds or subtract 26 depending on the operation, encryption or decryption
****************************
normally ... the input of the xor gates is -26 and one flag (ENC/DEC) . in case ENC , the flage is zero so
the input to the adder is 26.
in case of DEC , the flag is 1 so the input to the adder is 26.
5.5-Display
Again with the five data bit representing integers from 1 to 26.. the arduino transforms this output
into ASCII code which is displayed on the LCD.
The Arduino has an enable to read every key stroke .
5.6-Power
The project uses 17805 which has a fixed output of 5 volt and mac current of 1.5 amperes.
This ic is going to power the ic’s of the circuit and it’s fed from a 9 volt battery.
The arduino is directly connected to a 9-volt battery.
6-Notes on ic’s :
The projects uses 74HC family which is CMOS technology,, it has a propagation delay of 9 ns and
toggle speed of 50MHz .
The typical supply voltage is 5 volt anf the consumption of the gate per 1MHz is 0.5mW .
7-Refrences and Resouces
1- Cryptography…. mooc …. stanford university
https://www.coursera.org/course/crypto
2-Cryptography…. mooc …. University of Maryland
https://www.coursera.org/course/cryptography
3-Hacking Secret Ciphers with Python: A beginner's
guide to cryptography and computer programming with
Python

More Related Content

What's hot

Verilog VHDL code Decoder and Encoder
Verilog VHDL code Decoder and EncoderVerilog VHDL code Decoder and Encoder
Verilog VHDL code Decoder and EncoderBharti Airtel Ltd.
 
Chapter 3-block-cipher-des1
Chapter 3-block-cipher-des1Chapter 3-block-cipher-des1
Chapter 3-block-cipher-des1Shiraz316
 
Tensorflow lite for microcontroller
Tensorflow lite for microcontrollerTensorflow lite for microcontroller
Tensorflow lite for microcontrollerRouyun Pan
 
Embedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOSEmbedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOS艾鍗科技
 
ParallelLogicToEventDrivenFirmware_Doin
ParallelLogicToEventDrivenFirmware_DoinParallelLogicToEventDrivenFirmware_Doin
ParallelLogicToEventDrivenFirmware_DoinJonny Doin
 
AES by example
AES by exampleAES by example
AES by exampleShiraz316
 
Aes128 bit project_report
Aes128 bit project_reportAes128 bit project_report
Aes128 bit project_reportNikhil Gupta
 
Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Mohamed Loey
 
Socket programming
Socket programmingSocket programming
Socket programmingharsh_bca06
 
Custard pi 7 user information
Custard pi 7 user informationCustard pi 7 user information
Custard pi 7 user informationSeggy Segaran
 
4. The Advanced Encryption Standard (AES)
4. The Advanced Encryption Standard (AES)4. The Advanced Encryption Standard (AES)
4. The Advanced Encryption Standard (AES)Sam Bowne
 
Basic Consensus Algorithms
Basic Consensus AlgorithmsBasic Consensus Algorithms
Basic Consensus Algorithms상문 오
 
IoT Gateway實現專題
IoT Gateway實現專題IoT Gateway實現專題
IoT Gateway實現專題艾鍗科技
 

What's hot (20)

Verilog VHDL code Decoder and Encoder
Verilog VHDL code Decoder and EncoderVerilog VHDL code Decoder and Encoder
Verilog VHDL code Decoder and Encoder
 
Chapter 3-block-cipher-des1
Chapter 3-block-cipher-des1Chapter 3-block-cipher-des1
Chapter 3-block-cipher-des1
 
Tensorflow lite for microcontroller
Tensorflow lite for microcontrollerTensorflow lite for microcontroller
Tensorflow lite for microcontroller
 
Quiz 9
Quiz 9Quiz 9
Quiz 9
 
Embedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOSEmbedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOS
 
Fault Detection AES
Fault Detection AESFault Detection AES
Fault Detection AES
 
ParallelLogicToEventDrivenFirmware_Doin
ParallelLogicToEventDrivenFirmware_DoinParallelLogicToEventDrivenFirmware_Doin
ParallelLogicToEventDrivenFirmware_Doin
 
Boolean Logic
Boolean LogicBoolean Logic
Boolean Logic
 
Symmetric encryption
Symmetric encryptionSymmetric encryption
Symmetric encryption
 
AES by example
AES by exampleAES by example
AES by example
 
Aes128 bit project_report
Aes128 bit project_reportAes128 bit project_report
Aes128 bit project_report
 
Seven segment display
Seven segment displaySeven segment display
Seven segment display
 
Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2
 
Socket programming
Socket programmingSocket programming
Socket programming
 
Custard pi 7 user information
Custard pi 7 user informationCustard pi 7 user information
Custard pi 7 user information
 
Aes
AesAes
Aes
 
4. The Advanced Encryption Standard (AES)
4. The Advanced Encryption Standard (AES)4. The Advanced Encryption Standard (AES)
4. The Advanced Encryption Standard (AES)
 
Linux Device Tree
Linux Device TreeLinux Device Tree
Linux Device Tree
 
Basic Consensus Algorithms
Basic Consensus AlgorithmsBasic Consensus Algorithms
Basic Consensus Algorithms
 
IoT Gateway實現專題
IoT Gateway實現專題IoT Gateway實現專題
IoT Gateway實現專題
 

Similar to Cryptography

Data Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyData Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyIJCERT
 
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”IOSR Journals
 
Aes 128 192_256_bits_project_report
Aes 128 192_256_bits_project_reportAes 128 192_256_bits_project_report
Aes 128 192_256_bits_project_reportsakhi rehman
 
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSOR
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSORIMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSOR
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSORacijjournal
 
Hardware implementation of the serpent block cipher using fpga technology
Hardware implementation of the serpent block cipher using fpga technologyHardware implementation of the serpent block cipher using fpga technology
Hardware implementation of the serpent block cipher using fpga technologyIAEME Publication
 
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdf
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdfA VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdf
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdfRamRaja15
 
One library for all Java encryption
One library for all Java encryptionOne library for all Java encryption
One library for all Java encryptionDan Cvrcek
 
Iisrt swathi priya(26 30)
Iisrt swathi priya(26 30)Iisrt swathi priya(26 30)
Iisrt swathi priya(26 30)IISRT
 
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...IJCSIS Research Publications
 
Final Report - morse code.pdf
Final Report - morse code.pdfFinal Report - morse code.pdf
Final Report - morse code.pdfHanaBaSabaa
 
Jaimin chp-8 - network security-new -use this - 2011 batch
Jaimin   chp-8 - network security-new -use this -  2011 batchJaimin   chp-8 - network security-new -use this -  2011 batch
Jaimin chp-8 - network security-new -use this - 2011 batchJaimin Jani
 
Using Cipher Key to Generate Dynamic S-Box in AES Cipher System
Using Cipher Key to Generate Dynamic S-Box in AES Cipher SystemUsing Cipher Key to Generate Dynamic S-Box in AES Cipher System
Using Cipher Key to Generate Dynamic S-Box in AES Cipher SystemCSCJournals
 
Cryptography and applications
Cryptography and applicationsCryptography and applications
Cryptography and applicationsthai
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network SecurityDr. Rupa Ch
 
An Efficient FPGA Implementation of the Advanced Encryption Standard Algorithm
An Efficient FPGA Implementation of the Advanced Encryption Standard AlgorithmAn Efficient FPGA Implementation of the Advanced Encryption Standard Algorithm
An Efficient FPGA Implementation of the Advanced Encryption Standard Algorithmijsrd.com
 

Similar to Cryptography (20)

Data Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyData Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve Cryptography
 
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”
“Proposed Model for Network Security Issues Using Elliptical Curve Cryptography”
 
Aes 128 192_256_bits_project_report
Aes 128 192_256_bits_project_reportAes 128 192_256_bits_project_report
Aes 128 192_256_bits_project_report
 
Implementation of Fast Pipelined AES Algorithm on Xilinx FPGA
Implementation of Fast Pipelined AES Algorithm on Xilinx FPGAImplementation of Fast Pipelined AES Algorithm on Xilinx FPGA
Implementation of Fast Pipelined AES Algorithm on Xilinx FPGA
 
Aes
AesAes
Aes
 
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSOR
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSORIMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSOR
IMPLEMENTATION OF AES AS A CUSTOM HARDWARE USING NIOS II PROCESSOR
 
Hardware implementation of the serpent block cipher using fpga technology
Hardware implementation of the serpent block cipher using fpga technologyHardware implementation of the serpent block cipher using fpga technology
Hardware implementation of the serpent block cipher using fpga technology
 
Js2517181724
Js2517181724Js2517181724
Js2517181724
 
Js2517181724
Js2517181724Js2517181724
Js2517181724
 
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdf
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdfA VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdf
A VHDL Implemetation of the Advanced Encryption Standard-Rijndael.pdf
 
One library for all Java encryption
One library for all Java encryptionOne library for all Java encryption
One library for all Java encryption
 
Iisrt swathi priya(26 30)
Iisrt swathi priya(26 30)Iisrt swathi priya(26 30)
Iisrt swathi priya(26 30)
 
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...
FPGA and ASIC Implementation of Speech Encryption and Decryption using AES Al...
 
Final Report - morse code.pdf
Final Report - morse code.pdfFinal Report - morse code.pdf
Final Report - morse code.pdf
 
Jaimin chp-8 - network security-new -use this - 2011 batch
Jaimin   chp-8 - network security-new -use this -  2011 batchJaimin   chp-8 - network security-new -use this -  2011 batch
Jaimin chp-8 - network security-new -use this - 2011 batch
 
Using Cipher Key to Generate Dynamic S-Box in AES Cipher System
Using Cipher Key to Generate Dynamic S-Box in AES Cipher SystemUsing Cipher Key to Generate Dynamic S-Box in AES Cipher System
Using Cipher Key to Generate Dynamic S-Box in AES Cipher System
 
Cryptography and applications
Cryptography and applicationsCryptography and applications
Cryptography and applications
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network Security
 
40120130406011 2-3
40120130406011 2-340120130406011 2-3
40120130406011 2-3
 
An Efficient FPGA Implementation of the Advanced Encryption Standard Algorithm
An Efficient FPGA Implementation of the Advanced Encryption Standard AlgorithmAn Efficient FPGA Implementation of the Advanced Encryption Standard Algorithm
An Efficient FPGA Implementation of the Advanced Encryption Standard Algorithm
 

Recently uploaded

定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一zul5vf0pq
 
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》o8wvnojp
 
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311  Call Girls in Thane , Independent Escort Service ThanePallawi 9167673311  Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service ThanePooja Nehwal
 
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...Authentic No 1 Amil Baba In Pakistan
 
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...Suhani Kapoor
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsappssapnasaifi408
 
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一ss ss
 
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service GayaGaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service Gayasrsj9000
 
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Pooja Nehwal
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查awo24iot
 
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...ranjana rawat
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一ga6c6bdl
 
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...srsj9000
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...nagunakhan
 
Thane Escorts, (Pooja 09892124323), Thane Call Girls
Thane Escorts, (Pooja 09892124323), Thane Call GirlsThane Escorts, (Pooja 09892124323), Thane Call Girls
Thane Escorts, (Pooja 09892124323), Thane Call GirlsPooja Nehwal
 
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 

Recently uploaded (20)

定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
 
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》
《1:1仿制麦克马斯特大学毕业证|订制麦克马斯特大学文凭》
 
9953330565 Low Rate Call Girls In Jahangirpuri Delhi NCR
9953330565 Low Rate Call Girls In Jahangirpuri  Delhi NCR9953330565 Low Rate Call Girls In Jahangirpuri  Delhi NCR
9953330565 Low Rate Call Girls In Jahangirpuri Delhi NCR
 
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311  Call Girls in Thane , Independent Escort Service ThanePallawi 9167673311  Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
 
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
 
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
 
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一
定制(Salford学位证)索尔福德大学毕业证成绩单原版一比一
 
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service GayaGaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
 
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
 
CIVIL ENGINEERING
CIVIL ENGINEERINGCIVIL ENGINEERING
CIVIL ENGINEERING
 
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...
(MEGHA) Hinjewadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune E...
 
Low rate Call girls in Delhi Justdial | 9953330565
Low rate Call girls in Delhi Justdial | 9953330565Low rate Call girls in Delhi Justdial | 9953330565
Low rate Call girls in Delhi Justdial | 9953330565
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
 
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
 
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...
Hifi Defence Colony Call Girls Service WhatsApp -> 9999965857 Available 24x7 ...
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
 
Thane Escorts, (Pooja 09892124323), Thane Call Girls
Thane Escorts, (Pooja 09892124323), Thane Call GirlsThane Escorts, (Pooja 09892124323), Thane Call Girls
Thane Escorts, (Pooja 09892124323), Thane Call Girls
 
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service
(ZARA) Call Girls Jejuri ( 7001035870 ) HI-Fi Pune Escorts Service
 

Cryptography

  • 2. PRESENTED BY Ashraf Saeed Teleb Aly Mahmoud Samy Radwan Muhamad Gameel Sara Abd Elhamid
  • 3. Implementing Vigenere cipher using logic gates contents : 1-Aknowlegment 2-Introduction to cryptography 3-Historical timeline 4-Veginere cipher 5-Project parts 5.1-Input 5.2-Adder 5.3-Mermory 5.4-Correction Circuit 5.5-Display 5.6-Power 6-Notes on ic’s 7-References and resources
  • 4. 1-aknowlegment Prof. Nesreen I. Ziedan Computer and Systems Engineering Department Zagazig University For giving us the chance to live this wonderful experience Prof.Dan Boneh computer science stanford university For providing us with the theoretical basis through his great mooc on corsera platform .
  • 5. 2-Cryptography Cryptography is the science of encoding messages or information in such a way that only authorized parties can read it. In an encryption scheme, the message or information, referred to as plaintext, is encrypted using an encryption algorithm, generating ciphertext that can only be read if decrypted. Decryption is the reverse process to Encryption. Decryption creates a Plaintext from a Ciphertext only and only if the keys is known . Cryptography has a wide range of applications : Electronic Money , Secure Network Communications , Electronic Signatures and of caurse military applications . Spies, soldiers, hackers, pirates, royalty, merchants, tyrants, political activists, Internet shoppers, and anyone who has ever needed to share secrets with trusted friends have relied on cryptography to make sure their secrets stay secret.
  • 6. 3-History of cryptography: it’s clear that the need of secret way of writting was demanding since early ages such that most of the ancient civilizations had there own cryptography machines . ancient roma : Julius Caesar used what is know after him - Caesar cipher- in which each letter in the plaintext was replaced by a letter some fixed number of positions further down the alphabet. Suetonius reports that Julius Caesar used it with a shift of three to communicate with his generals. The Greeks of Classical times are said to have known of ciphers (e.g., the scytale transposition cipher claimed to have been used by the Spartan military). transposition ciphers, which rearrange the order of letters in a message (e.g., 'hello world' becomes 'ehlol owrdl' in a trivially simple rearrangement scheme). Reconstructed ancient Greek scytale Ancient Egypt Atbash is an example of an early Hebrew cipher. The earliest known use of cryptography is some carved ciphertext on stone in Egypt (ca 1900 BCE). In India, the 2000-year old Kamasutra of Vātsyāyana speaks of two different kinds of ciphers called Kautiliyam and Mulavediya. In the Kautiliyam, the cipher letter substitutions are based on phonetic relations, such as vowels becoming consonants. In the Mulavediya, the cipher alphabet consists of pairing letters and using the reciprocal ones.
  • 7. 4-veginere cipher It was possibly first described in 1553 by Italian cryptographer Giovan Battista Bellaso (though it has been reinvented many times, including by Blaise de Vigenère). It is thought to have remained unbroken until Charles Babbage, considered to be the father of computers, broke it in the 19th century. Blaise de Vigenère The Vigenère cipher consists of several Caesar ciphers in sequence with different shift values. Algebraic description:
  • 8. 5-PROJECT LAYOUT •letters are represented in integer numbers , from 1 to 26 •character's are received as ascii codes from ps/2 keyboard and then modulated using Arduino into corresponding integers •key character's are saved in the memory while text head to the adder where it’s simply added to the key •the modulo function as achieved using the correction circuit •integers are transformed back into ascii and finally displayed on LCD
  • 9. 5.1-Input The project uses ps2 keyboard physically , ps2 connector consisits of 6 pins as shown below . data (ASCII code ) are transmitted serially over one line synchronous with a clock which make a challenge to transform it into parallel form .
  • 10. This problem was solved using Arduino giving an output of five data lines for five data bits representing all the 26 English character's . Arduino code : #include <LiquidCrystal.h> #include <PS2Keyboard.h> //LiquidCrystal lcd(A0 , A1, A2, A3,A4, A5); const int DataPin = 8; const int IRQpin = 3; PS2Keyboard keyboard; void setup() { pinMode(7, OUTPUT); pinMode(9, OUTPUT); pinMode(10, OUTPUT); pinMode(11, OUTPUT); pinMode(12, OUTPUT); pinMode(13, OUTPUT); pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(A2, INPUT); pinMode(A3, INPUT); pinMode(A4, INPUT);
  • 11. pinMode(A5, INPUT); pinMode(6, OUTPUT); keyboard.begin(DataPin, IRQpin, PS2Keymap_US); Serial.begin(9600); Serial.println("Enter your text: "); // lcd.println("Enter your text: "); } void loop() { int y; digitalWrite(6,LOW) ; if (keyboard.available()) { char c = keyboard.read(); int x=int(c)-96; Serial.print(c); Serial.print(" "); Serial.println( x); // lcd.print(c); // lcd.display(); // convert character from keyboard to binary start from 0 to 25
  • 12. if(x==-64){ x=0;} if(x==31){x=27; // lcd.clear(); } if((x>-1 && x<28) ){ digitalWrite(6,HIGH); for(int i=0;i<5;i++){ if(x%2==0){ digitalWrite(9+i, LOW); }else if(x%2==1){ digitalWrite(9+i, HIGH); } x=x/2; }}} }
  • 13. 5.2-Adder A Long - term outlook would show an overflow problem that takes another bit being added to the five data bit . overcoming this problem . two-four- bit full adder can simply add the text and key characters generating the cipher text or subtracting them and retrieving plain text again . the full adder ic is 74HC283 which is a 4 bit full adder with fast carry six xor gates are used to add the functionality of suntraction( Decrption ). the xor ic is 74LS86 both of the xor and the full adder make ripple adder capable of encrypting and decrypting massages .
  • 14. 5.3-Mermory A small (8*5 bit ) memory is built using 5 ic each contains 8 latches . Used to save the key such that each character is saved in parallel in the five ic’s . the latches ic can work on four modes controlled by 2 enable lines the latches shows the stored bit all the time so in order to read one character , 5 multiplexer are used. A counter is used to address the memory , such that it’s activated with each key stroke .it also plays a vital role when entering the plain text.
  • 15. 5.4-Correction Circuit (round robin ) Consists of detection and a ripple adder The detection circuit detects error resulting from the absence of the modulo function and reports with a single bit flag . The ripple adder adds or subtract 26 depending on the operation, encryption or decryption **************************** normally ... the input of the xor gates is -26 and one flag (ENC/DEC) . in case ENC , the flage is zero so the input to the adder is 26. in case of DEC , the flag is 1 so the input to the adder is 26.
  • 16.
  • 17. 5.5-Display Again with the five data bit representing integers from 1 to 26.. the arduino transforms this output into ASCII code which is displayed on the LCD. The Arduino has an enable to read every key stroke .
  • 18. 5.6-Power The project uses 17805 which has a fixed output of 5 volt and mac current of 1.5 amperes. This ic is going to power the ic’s of the circuit and it’s fed from a 9 volt battery. The arduino is directly connected to a 9-volt battery.
  • 19. 6-Notes on ic’s : The projects uses 74HC family which is CMOS technology,, it has a propagation delay of 9 ns and toggle speed of 50MHz . The typical supply voltage is 5 volt anf the consumption of the gate per 1MHz is 0.5mW .
  • 20. 7-Refrences and Resouces 1- Cryptography…. mooc …. stanford university https://www.coursera.org/course/crypto 2-Cryptography…. mooc …. University of Maryland https://www.coursera.org/course/cryptography 3-Hacking Secret Ciphers with Python: A beginner's guide to cryptography and computer programming with Python