Cryptography 456 Senior Seminar 599 USC Upstate Encrypted One-Way File Transfer on Android Devices. By Sheldon Smith, Instructor Dr.

Size: px
Start display at page:

Download "Cryptography 456 Senior Seminar 599 USC Upstate Encrypted One-Way File Transfer on Android Devices. By Sheldon Smith, Instructor Dr."

Transcription

1 Cryptography 456 Senior Seminar 599 USC Upstate Encrypted One-Way File Transfer on Android Devices By Sheldon Smith, Instructor Dr. Zhong

2 Contents One-Way File Transfer Diagram Utilizing Cryptography Asymmetric Algorithm Symmetric Algorithm The Cryptosystem The Project Code Overview Screen Shots Demonstration

3 One-Way File Transfer Diagram Phase 1 Client Socket Server Receive Server s Public Key Generate RSA Key Pair Private Key Generate AES Key Encrypt AES Key Receive Encrypted AES Key Decrypt AES Key

4 One-Way File Transfer Diagram Phase 2 Client Socket Server File Input Stream AES Decrypt Cipher Data Input Stream Read in File to Buffer Read in Data to Buffer Cipher Output Stream Data Output Stream Cipher Output Stream Data Input Stream Data Output Stream AES Encrypt Cipher File Output Stream

5 Utilizing Cryptography Asymmetric Algorithm RSA Symmetric Algorithm AES (Advanced Encryption Scheme)

6 Asymmetric Algorithm RSA Supported key lengths: 1,024 to 4,096 bits Two keys: Public and Private Public is used for encryption Private is used for decryption Used to encrypt symmetric key for transportation

7 Asymmetric Algorithm RSA (ctd.) Advantages: Solves the problem of distributing the key Disadvantages: Impractical for encryption or decryption

8 Symmetric Algorithm AES (Advanced Encryption Scheme) Supported key lengths: 128, 192, and 256 bits Single key, typically referred to as a symmetric key or session key Used to encrypt and decrypt data

9 Symmetric Algorithm AES (ctd.) Advantages: Quick encryption and decryption, unique key for each session Disadvantages: Need a secure channel to transfer the key

10 The Cryptosystem Implements both asymmetric and symmetric algorithms Asymmetric algorithm is used for distributing the symmetric key Symmetric algorithm is used for encryption and decryption

11 The Project Socket Programming The server opens a server socket on a unique port, and a user connects to the socket using the IP address and port number

12 The Project Thread Diagram A thread is a concurrent unit of execution UI Thread (progress bar) UI Thread (UI) Handler Handler File Transfer Thread

13 Android Manifest The manifest holds information about the app needed by the Android system <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.write_external_storage" /> <uses-permission android:name="android.permission.read_external_storage" />

14 Android Manifest <activity android:name="com.example.filetransferclient.menuactivity" android:label="file Transfer"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name="com.example.filetransferclient.serveractivity" android:label="server"> <intent-filter> <action android:name="android.intent.action.view" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity>..

15 Menu Activity - Overview The menu activity was designed and incorporated to improve the flexibility of the app. Instead of a distinguished client and server app, the menu activity allows the user to choose whether he/she wants to run the app as a server or client. To achieve this flexibility, intents were utilized An intent is a passive data structure holding an abstract description of an operation to be performed

16 Menu Activity XML Sample <RelativeLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#111111" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="horizontal" android:background="#111111" > <Button android:text="start Client android:textcolor="#ffffff" />..

17 Menu Activity Code Sample public void onclick(view v){ try{ switch(v.getid()){ case R.id.client_activity: Intent i = new Intent(MenuActivity.this, ClientActivity.class); startactivity(i); break; case R.id.server_activity: Intent j = new Intent(MenuActivity.this, ServerActivity.class); startactivity(j);..

18 Client and Server Activities - Overview Methods: oncreate() (Client side only) onclick() uihandler() progressbarhandler() getlocalipaddress() (Server side only) isexternalstorageusable()

19 Client and Server Activities XML Sample <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center_vertical center_horizontal....android:textcolor="#00ff00" android:visibility="gone" /> <ProgressBar android:layout_width="fill_parent" android:visibility="gone" />..

20 Client and Server Activities Methods oncreate() Find all our views by their XML id mstatusmessagestv = (TextView) findviewbyid (R.id.client_local_ip_status_tv); (Client side only) Instantiate an Alert Dialog to manually input the server device s IP address alert = new AlertDialog.Builder(this); (Server side only) Creates and starts an instance of the File Transfer Server class ftransferserver = new FileTransferServer( ) ftransferserver.start();

21 Client and Server Activities Methods (Client side only) onclick() Contains the hardcoded file name and retrieves the file size on the client side Creates and starts an instance of the File Transfer Client class ftransferclient = new FileTransferClient(SERVERIP, serverport, new uihandler(), new progressbarhandler(), filename, filesize, progressbar, progressstatus); ftransferclient.start();

22 Client and Server Activities - Methods uihandler() Extends the handler class Handles messages sent back from the File Transfer Client or Server Thread message = msg.getdata().getstring("message"); mchatboxtv.settext(mchatboxtv.gettext().tostring () + "\n" + message);

23 Client and Server Activities Methods progressbarhandler() Extends the handler class Handles updates sent back from the File Transfer Client or Server Thread int progress = msg.getdata().getint("int"); progressbar.setprogress(progress); progressstatus.settext(progress + " %");

24 Client and Server Activities Methods getlocalipaddress() Returns a String representation of a device s IPv4 address or null if none was found (Server side only) isexternalstorageusable() Returns true if external storage can be read and written to Returns false for any other combination of access permissions

25 File Transfer Client and File Transfer Server - Overview The File Transfer Client and File Transfer Server classes are where all the work is done They run alongside the uihandler and progressbarhandler threads Methods: updateui() updateprogressbar() run()

26 File Transfer Client and File Transfer Server - Methods updateui() Sends bundled message back to the UI handler Message msg = mhandler.obtainmessage(); Bundle b = new Bundle(); b.putstring("message", message); b.putstring("type", "message_display_status"); msg.setdata(b); mhandler.sendmessage(msg);

27 File Transfer Client and File Transfer Server - Methods updateprogressbar() Sends bundled message back to the progress bar handler Message msg = phandler.obtainmessage(); Bundle b = new Bundle(); b.putint("int", percent); msg.setdata(b); phandler.sendmessage(msg);

28 File Transfer Client run() run() Connect to the server socket socket = new Socket(serverIP, serverport); Create data input and output streams DataOutputStream dos = new DataOutputStream(socket.getOutputStream()); Read in server s public key bytes from socket int keylength = dis.readint(); byte[] serverpubkey = new byte[keylength]; dis.readfully(serverpubkey);

29 File Transfer Client run() run() (ctd.) Generate server s public key using key bytes X509EncodedKeySpec keyspec = new X509EncodedKeySpec(serverPubKey); KeyFactory myfactory = KeyFactory.getInstance("RSA"); PublicKey pubkey = myfactory.generatepublic(keyspec); Create AES key and IV Key symmetrickey = CryptoUtils.createAESKey(256, random); IvParameterSpec ivspec = CryptoUtils.createAESCtrIv(random);

30 File Transfer Client run() run() (ctd.) Initialize RSA cipher for encryption Cipher pubcipher = Cipher.getInstance("RSA/NONE/OAEPWithSHA1AndMGF1Pa dding"); pubcipher.init(cipher.encrypt_mode, pubkey); Encrypt the AES key for transmission byte[] encraesbytes = pubcipher.dofinal(symmetrickey.getencoded());

31 File Transfer Client run() run() (ctd.) Send the encrypted AES key and the IV bytes over the socket dos.writeint(encraesbytes.length); dos.write(encraesbytes); dos.write(ivspec.getiv()); Create and initialize the AES cipher for encrypting Cipher symcipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); symcipher.init(cipher.encrypt_mode, symmetrickey, ivspec);

32 File Transfer Client run() run() (ctd.) Create a data input stream DataInputStream file = new DataInputStream(new FileInputStream(fileName)); Send the packet size and file size over the socket dos.writeint(filesend_packet_size); dos.writeint(bytestosend); Create a cipher output stream CipherOutputStream cos = new CipherOutputStream(dos, symcipher);

33 File Transfer Client run() run() (ctd.) Transfer the file, simultaneously update the progress bar while((bytesread = file.read(data))!= -1) { cos.write(data, 0, bytesread); store += bytesread; progress = ((float)store/(float)filesize)*100; phandler.post(new Runnable(){ public void run() { updateprogressbar((int)progress); } }); }

34 File Transfer Server run() run() Create the server socket serversocket = new ServerSocket(serverPort); Wait for the client to connect client = serversocket.accept(); Create the data input and output streams DataOutputStream dos = new DataOutputStream(client.getOutputStream());

35 File Transfer Server run() run() (ctd.) Create the RSA key pair generator KeyPairGenerator generator = KeyPairGenerator.getInstance( RSA, BC ); generator.initialize(1024, random); Create an RSA key pair KeyPair pair = generator.generatekeypair(); PublicKey pubkey = pair.getpublic(); PrivateKey privkey = pair.getprivate();

36 File Transfer Server run() run() (ctd.) Send the RSA public key over the socket dos.writeint(pubkey.getencoded().length); dos.write(pubkey.getencoded()); Read in the encrypted AES key bytes from the socket byte[] encraeskey = new byte[dis.readint()]; dis.readfully(encraeskey); Read in the IV bytes from the socket byte[] IV = new byte[16]; dis.readfully(iv);

37 File Transfer Server run() run() (ctd.) Initialize the RSA cipher for decryption Cipher privcipher = Cipher.getInstance( RSA/NONE/OAEPWITHSHA1ANDMGF1P adding ); privcipher.init(cipher.decrypt_mode, privkey); Decrypt the AES key bytes byte[] AESKey = privcipher.dofinal(encraeskey); Recreate the AES key and IV SecretKeySpec keyspec = new SecretKeySpec(AESKey, AES );

38 File Transfer Server run() run() (ctd.) Initialize the AES cipher for decryption Cipher aescipher = Cipher.getInstance( AES/CBC/PKCS5Padding ); aescipher.init(cipher.decrypt_mode, keyspec, ivspec); Create a data output stream DataOutputStream file = new DataOutputStream(new FileOutputStream(fileName)); Create a cipher output stream CipherOutputStream cos = new CipherOutputStream(file, aescipher);

39 File Transfer Server run() run() (ctd.) Receive the file, simultaneously update the progress bar while((bytesread = dis.read(data))!= -1){ cos.write(data, 0, bytesread); byteswritten += bytesread; progress = ((float)byteswritten/(float)filesize)*100; phandler.post(new Runnable() { public void run() { updateprogressbar((int)progress); } }); }

40 Screenshots This is the menu activity.

41 Client: Manual inputting server IP address. Server: Waiting for a connection to be established.

42 Client: Connected to server. Server: Connection has been established.

43 Client: Reading in server s RSA public key. Server: Creating and sending RSA public key.

44 Client: Generate AES key and IV. Send both over the socket. Server: Read in encrypted AES key and IV. Recreate both of them.

45 Client: Initialize AES cipher for encryption. Create file input stream and cipher output stream. Server: Initialize AES cipher for decryption. Create file output stream and cipher output stream.

46 Client and Server: File transfer is complete.

CRYPTOGRAPHY 456 ANDROID SECURE FILE TRANSFER W/ SSL

CRYPTOGRAPHY 456 ANDROID SECURE FILE TRANSFER W/ SSL CRYPTOGRAPHY 456 ANDROID SECURE FILE TRANSFER W/ SSL Daniel Collins Advisor: Dr. Wei Zhong Contents Create Key Stores and Certificates Multi-Threaded Android applications UI Handlers Creating client and

More information

First Semester Examinations 2011/12 INTERNET PRINCIPLES

First Semester Examinations 2011/12 INTERNET PRINCIPLES PAPER CODE NO. EXAMINER : Martin Gairing COMP211 DEPARTMENT : Computer Science Tel. No. 0151 795 4264 First Semester Examinations 2011/12 INTERNET PRINCIPLES TIME ALLOWED : Two Hours INSTRUCTIONS TO CANDIDATES

More information

Overview. SSL Cryptography Overview CHAPTER 1

Overview. SSL Cryptography Overview CHAPTER 1 CHAPTER 1 Note The information in this chapter applies to both the ACE module and the ACE appliance unless otherwise noted. The features in this chapter apply to IPv4 and IPv6 unless otherwise noted. Secure

More information

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Overview of CSS SSL. SSL Cryptography Overview CHAPTER CHAPTER 1 Secure Sockets Layer (SSL) is an application-level protocol that provides encryption technology for the Internet, ensuring secure transactions such as the transmission of credit card numbers

More information

AWS Encryption SDK. Developer Guide

AWS Encryption SDK. Developer Guide AWS Encryption SDK Developer Guide AWS Encryption SDK: Developer Guide Copyright 2016 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be

More information

Chapter 10. Network Security

Chapter 10. Network Security Chapter 10 Network Security 10.1. Chapter 10: Outline 10.1 INTRODUCTION 10.2 CONFIDENTIALITY 10.3 OTHER ASPECTS OF SECURITY 10.4 INTERNET SECURITY 10.5 FIREWALLS 10.2 Chapter 10: Objective We introduce

More information

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL)

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL) CSCD27 Computer and Network Security HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL) 11 SSL CSCD27 Computer and Network Security 1 CSCD27F Computer and Network Security 1 TLS (Transport-Layer

More information

EDA385 Embedded Systems Design. Advanced Course

EDA385 Embedded Systems Design. Advanced Course EDA385 Embedded Systems Design. Advanced Course Encryption for Embedded Systems Supervised by Flavius Gruian Submitted by Ahmed Mohammed Youssef (aso10ayo) Mohammed Shaaban Ibraheem Ali (aso10mib) Orges

More information

TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO

TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO some pre requirements by :-Lohit Jain *First of all download arduino software from www.arduino.cc *download software serial

More information

FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE. SSL/FTP (File Transfer Protocol over Secure Sockets Layer)

FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE. SSL/FTP (File Transfer Protocol over Secure Sockets Layer) FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE This troubleshooting guide covers secure file transfers using the SFTP and SSL/FTP file transfer protocols for Claims, POC, and Medical EDI transmissions.

More information

Table of Contents. Bibliografische Informationen http://d-nb.info/996514864. digitalisiert durch

Table of Contents. Bibliografische Informationen http://d-nb.info/996514864. digitalisiert durch 1 Introduction to Cryptography and Data Security 1 1.1 Overview of Cryptology (and This Book) 2 1.2 Symmetric Cryptography 4 1.2.1 Basics 4 1.2.2 Simple Symmetric Encryption: The Substitution Cipher...

More information

How To Create A Digital Signature Certificate

How To Create A Digital Signature Certificate Tool. For Signing & Verification Submitted To: Submitted By: Shri Patrick Kishore Chief Operating Officer Sujit Kumar Tiwari MCA, I Year University Of Hyderabad Certificate by Guide This is certifying

More information

Spring Design ScreenShare Service SDK Instructions

Spring Design ScreenShare Service SDK Instructions Spring Design ScreenShare Service SDK Instructions V1.0.8 Change logs Date Version Changes 2013/2/28 1.0.0 First draft 2013/3/5 1.0.1 Redefined some interfaces according to issues raised by Richard Li

More information

Transport layer protocols. Message destination: Socket +Port. Asynchronous vs. Synchronous. Operations of Request-Reply. Sockets

Transport layer protocols. Message destination: Socket +Port. Asynchronous vs. Synchronous. Operations of Request-Reply. Sockets Transport layer protocols Interprocess communication Synchronous and asynchronous comm. Message destination Reliability Ordering Client Server Lecture 15: Operating Systems and Networks Behzad Bordbar

More information

Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23 Network Security Computer Networking Lecture 08 HKU SPACE Community College March 19, 2012 HKU SPACE CC CN Lecture 08 1/23 Outline Introduction Cryptography Algorithms Secret Key Algorithm Message Digest

More information

Chapter 7 Transport-Level Security

Chapter 7 Transport-Level Security Cryptography and Network Security Chapter 7 Transport-Level Security Lectured by Nguyễn Đức Thái Outline Web Security Issues Security Socket Layer (SSL) Transport Layer Security (TLS) HTTPS Secure Shell

More information

How to develop your own app

How to develop your own app How to develop your own app It s important that everything on the hardware side and also on the software side of our Android-to-serial converter should be as simple as possible. We have the advantage that

More information

Security Policy Revision Date: 23 April 2009

Security Policy Revision Date: 23 April 2009 Security Policy Revision Date: 23 April 2009 Remote Desktop Support Version 3.2.1 or later for Windows Version 3.1.2 or later for Linux and Mac 4 ISL Light Security Policy This section describes the procedure

More information

Secure Data Transfer

Secure Data Transfer Secure Data Transfer INSTRUCTIONS 3 Options to SECURELY TRANSMIT DATA 1. FTP 2. WinZip 3. Password Protection Version 2.0 Page 1 Table of Contents Acronyms & Abbreviations...1 Option 1: File Transfer Protocol

More information

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213 Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213 UNCLASSIFIED Example http ://www. greatstuf f. com Wants credit card number ^ Look at lock on browser Use https

More information

Cryptosystems. Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K.

Cryptosystems. Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K. Cryptosystems Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K. C= E(M, K), Bob sends C Alice receives C, M=D(C,K) Use the same key to decrypt. Public

More information

Building a Multi-Threaded Web Server

Building a Multi-Threaded Web Server Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous

More information

Lecture 9: Application of Cryptography

Lecture 9: Application of Cryptography Lecture topics Cryptography basics Using SSL to secure communication links in J2EE programs Programmatic use of cryptography in Java Cryptography basics Encryption Transformation of data into a form that

More information

Ky Vu DeVry University, Atlanta Georgia College of Arts & Science

Ky Vu DeVry University, Atlanta Georgia College of Arts & Science Ky Vu DeVry University, Atlanta Georgia College of Arts & Science Table of Contents - Objective - Cryptography: An Overview - Symmetric Key - Asymmetric Key - Transparent Key: A Paradigm Shift - Security

More information

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室 Network Security 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室 Security Attacks Normal flow: sender receiver Interruption: Information source Information destination

More information

Software Engineering 4C03 Research Project. An Overview of Secure Transmission on the World Wide Web. Sean MacDonald 0043306

Software Engineering 4C03 Research Project. An Overview of Secure Transmission on the World Wide Web. Sean MacDonald 0043306 Software Engineering 4C03 Research Project An Overview of Secure Transmission on the World Wide Web Sean MacDonald 0043306 Tuesday April 5, 2005 Introduction Software Engineering 4C03 Research Project

More information

FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE. SFTP (Secure File Transfer Protocol)

FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE. SFTP (Secure File Transfer Protocol) FL EDI SECURE FTP CONNECTIVITY TROUBLESHOOTING GUIDE This troubleshooting guide covers secure file transfers using the SFTP file transfer protocols for Claims, POC, and Medical EDI transmissions. SFTP

More information

CS 348: Computer Networks. - Security; 30 th - 31 st Oct 2012. Instructor: Sridhar Iyer IIT Bombay

CS 348: Computer Networks. - Security; 30 th - 31 st Oct 2012. Instructor: Sridhar Iyer IIT Bombay CS 348: Computer Networks - Security; 30 th - 31 st Oct 2012 Instructor: Sridhar Iyer IIT Bombay Network security Security Plan (RFC 2196) Identify assets Determine threats Perform risk analysis Implement

More information

Using etoken for SSL Web Authentication. SSL V3.0 Overview

Using etoken for SSL Web Authentication. SSL V3.0 Overview Using etoken for SSL Web Authentication Lesson 12 April 2004 etoken Certification Course SSL V3.0 Overview Secure Sockets Layer protocol, version 3.0 Provides communication privacy over the internet. Prevents

More information

SSL A discussion of the Secure Socket Layer

SSL A discussion of the Secure Socket Layer www.harmonysecurity.com info@harmonysecurity.com SSL A discussion of the Secure Socket Layer By Stephen Fewer Contents 1 Introduction 2 2 Encryption Techniques 3 3 Protocol Overview 3 3.1 The SSL Record

More information

Lukasz Pater CMMS Administrator and Developer

Lukasz Pater CMMS Administrator and Developer Lukasz Pater CMMS Administrator and Developer EDMS 1373428 Agenda Introduction Why do we need asymmetric ciphers? One-way functions RSA Cipher Message Integrity Examples Secure Socket Layer Single Sign

More information

VoIP Security. Seminar: Cryptography and Security. 07.06.2006 Michael Muncan

VoIP Security. Seminar: Cryptography and Security. 07.06.2006 Michael Muncan VoIP Security Seminar: Cryptography and Security Michael Muncan Overview Introduction Secure SIP/RTP Zfone Skype Conclusion 1 Introduction (1) Internet changed to a mass media in the middle of the 1990s

More information

Cryptography and Security

Cryptography and Security Cunsheng DING Version 3 Lecture 17: Electronic Mail Security Outline of this Lecture 1. Email security issues. 2. Detailed introduction of PGP. Page 1 Version 3 About Electronic Mail 1. In virtually all

More information

Client Server Registration Protocol

Client Server Registration Protocol Client Server Registration Protocol The Client-Server protocol involves these following steps: 1. Login 2. Discovery phase User (Alice or Bob) has K s Server (S) has hash[pw A ].The passwords hashes are

More information

Securing Ship-to-Shore Data Flow

Securing Ship-to-Shore Data Flow Securing Ship-to-Shore Data Flow Background on Common File Transfer Methods Today corporations, government entities, and other organizations rely on Electronic File Transfers as an important part of their

More information

TLS/SSL in distributed systems. Eugen Babinciuc

TLS/SSL in distributed systems. Eugen Babinciuc TLS/SSL in distributed systems Eugen Babinciuc Contents 1. Introduction to TLS/SSL 2. A quick review of cryptography 3. TLS/SSL in distributed systems 4. Conclusions Introduction to TLS/SSL TLS/SSL History

More information

Software Tool for Implementing RSA Algorithm

Software Tool for Implementing RSA Algorithm Software Tool for Implementing RSA Algorithm Adriana Borodzhieva, Plamen Manoilov Rousse University Angel Kanchev, Rousse, Bulgaria Abstract: RSA is one of the most-common used algorithms for public-key

More information

CS 758: Cryptography / Network Security

CS 758: Cryptography / Network Security CS 758: Cryptography / Network Security offered in the Fall Semester, 2003, by Doug Stinson my office: DC 3122 my email address: dstinson@uwaterloo.ca my web page: http://cacr.math.uwaterloo.ca/~dstinson/index.html

More information

Security. Contents. S-72.3240 Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

Security. Contents. S-72.3240 Wireless Personal, Local, Metropolitan, and Wide Area Networks 1 Contents Security requirements Public key cryptography Key agreement/transport schemes Man-in-the-middle attack vulnerability Encryption. digital signature, hash, certification Complete security solutions

More information

Chapter 8. Network Security

Chapter 8. Network Security Chapter 8 Network Security Cryptography Introduction to Cryptography Substitution Ciphers Transposition Ciphers One-Time Pads Two Fundamental Cryptographic Principles Need for Security Some people who

More information

Creating a Simple, Multithreaded Chat System with Java

Creating a Simple, Multithreaded Chat System with Java Creating a Simple, Multithreaded Chat System with Java Introduction by George Crawford III In this edition of Objective Viewpoint, you will learn how to develop a simple chat system. The program will demonstrate

More information

Programming with cryptography

Programming with cryptography Programming with cryptography Chapter 11: Building Secure Software Lars-Helge Netland larshn@ii.uib.no 10.10.2005 INF329: Utvikling av sikre applikasjoner Overview Intro: The importance of cryptography

More information

Lab 7. Answer. Figure 1

Lab 7. Answer. Figure 1 Lab 7 1. For each of the first 8 Ethernet frames, specify the source of the frame (client or server), determine the number of SSL records that are included in the frame, and list the SSL record types that

More information

TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION

TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION Cleveland State University CIS493. Mobile Application Development Using Android TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION The goal of this tutorial is to create a simple mapping application that

More information

SFWR ENG 4C03 - Computer Networks & Computer Security

SFWR ENG 4C03 - Computer Networks & Computer Security KEY MANAGEMENT SFWR ENG 4C03 - Computer Networks & Computer Security Researcher: Jayesh Patel Student No. 9909040 Revised: April 4, 2005 Introduction Key management deals with the secure generation, distribution,

More information

CS5008: Internet Computing

CS5008: Internet Computing CS5008: Internet Computing Lecture 22: Internet Security A. O Riordan, 2009, latest revision 2015 Internet Security When a computer connects to the Internet and begins communicating with others, it is

More information

qwertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnmqwertyuiopasdfghjklzxcvb

qwertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnmqwertyuiopasdfghjklzxcvb qwertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnmqwertyuiopasdfghjklzxcvb The e-cheque System nmqwertyuiopasdfghjklzxcvbnmqwer System Specification tyuiopasdfghjklzxcvbnmqwertyuiopas

More information

Kerberos. Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530 520 BC. From Italy (?).

Kerberos. Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530 520 BC. From Italy (?). Kerberos Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530 520 BC. From Italy (?). 1 Kerberos Kerberos is an authentication protocol and a software suite implementing this

More information

Login with Amazon Getting Started Guide for Android. Version 2.0

Login with Amazon Getting Started Guide for Android. Version 2.0 Getting Started Guide for Android Version 2.0 Login with Amazon: Getting Started Guide for Android Copyright 2016 Amazon.com, Inc., or its affiliates. All rights reserved. Amazon and the Amazon logo are

More information

Disfer. Sink - Sensor Connectivity and Sensor Android Application. Protocol implementation: Charilaos Stais (stais AT aueb.gr)

Disfer. Sink - Sensor Connectivity and Sensor Android Application. Protocol implementation: Charilaos Stais (stais AT aueb.gr) Disfer Sink - Sensor Connectivity and Sensor Android Application Protocol implementation: Charilaos Stais (stais AT aueb.gr) Android development: Dimitri Balerinas (dimi.balerinas AT gmail.com) Supervised

More information

Encryption Libraries

Encryption Libraries Encryption Libraries Index Document version: v0.1-11/2012 Libelium Comunicaciones Distribuidas S.L. INDEX 1. General Concepts...4 2. Integrity...9 2.1. Waspmote Libraries...9 2.1.1. Waspmote Hash Files...9

More information

Oracle IVR Integrator

Oracle IVR Integrator Oracle IVR Integrator Concepts and Procedures Release 11i for Windows NT July 2001 Part No. A86103-03 1 Understanding Oracle IVR Integrator This topic group provides overviews of the application and its

More information

Three attacks in SSL protocol and their solutions

Three attacks in SSL protocol and their solutions Three attacks in SSL protocol and their solutions Hong lei Zhang Department of Computer Science The University of Auckland zhon003@ec.auckland.ac.nz Abstract Secure Socket Layer (SSL) and Transport Layer

More information

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms Radhika G #1, K.V.V. Satyanarayana *2, Tejaswi A #3 1,2,3 Dept of CSE, K L University, Vaddeswaram-522502,

More information

App Development for Smart Devices. Lec #4: Services and Broadcast Receivers Try It Out

App Development for Smart Devices. Lec #4: Services and Broadcast Receivers Try It Out App Development for Smart Devices CS 495/595 - Fall 2013 Lec #4: Services and Broadcast Receivers Try It Out Tamer Nadeem Dept. of Computer Science Try It Out Example 1 (in this slides) Example 2 (in this

More information

Network FAX Driver. Operation Guide

Network FAX Driver. Operation Guide Network FAX Driver Operation Guide About this Operation Guide This Operation Guide explains the settings for the Network FAX driver as well as the procedures that are required in order to use the Network

More information

As enterprises conduct more and more

As enterprises conduct more and more Efficiently handling SSL transactions is one cornerstone of your IT security infrastructure. Do you know how the protocol actually works? Wesley Chou Inside SSL: The Secure Sockets Layer Protocol Inside

More information

1. a. Define the properties of a one-way hash function. (6 marks)

1. a. Define the properties of a one-way hash function. (6 marks) 1. a. Define the properties of a one-way hash function. (6 marks) A hash function h maps arbitrary length value x to fixed length value y such that: Hard to reverse. Given value y not feasible to find

More information

Overview Keys. Overview

Overview Keys. Overview Overview Keys Overview The PGPmail program performs fast, high-security, public-key encrypting (with optional compression), decrypting, and authenticating of electronic messages and files. The program

More information

SBClient SSL. Ehab AbuShmais

SBClient SSL. Ehab AbuShmais SBClient SSL Ehab AbuShmais Agenda SSL Background U2 SSL Support SBClient SSL 2 What Is SSL SSL (Secure Sockets Layer) Provides a secured channel between two communication endpoints Addresses all three

More information

ZVA64EE3110.2 PERFORMANCE BENCHMARK SOFINTEL IT ENGINEERING, S.L.

ZVA64EE3110.2 PERFORMANCE BENCHMARK SOFINTEL IT ENGINEERING, S.L. SOFINTEL IT ENGINEERING, S.L. JUN 2014 Table of Contents 1 Benchmark scenario... 3 2 Benchmark cases... 4 2.1 HTTP Profile with HTTPS Offload Listener, 1k key ssl certificate with RC4-SHA algorithm (stronger

More information

Evaluation of the RC4 Algorithm for Data Encryption

Evaluation of the RC4 Algorithm for Data Encryption Evaluation of the RC4 Algorithm for Data Encryption Allam Mousa (1) and Ahmad Hamad (2) (1) Electrical Engineering Department An-Najah University, Nablus, Palestine (2) Systems Engineer PalTel Company,

More information

Network-Enabled Devices, AOS v.5.x.x. Content and Purpose of This Guide...1 User Management...2 Types of user accounts2

Network-Enabled Devices, AOS v.5.x.x. Content and Purpose of This Guide...1 User Management...2 Types of user accounts2 Contents Introduction--1 Content and Purpose of This Guide...........................1 User Management.........................................2 Types of user accounts2 Security--3 Security Features.........................................3

More information

, ) I Transport Layer Security

, ) I Transport Layer Security Secure Sockets Layer (SSL, ) I Transport Layer Security _ + (TLS) Network Security Products S31213 UNCLASSIFIED Location of SSL -L Protocols TCP Ethernet IP SSL Header Encrypted SSL data= HTTP " Independent

More information

Intel Retail Client Manager Audience Analytics

Intel Retail Client Manager Audience Analytics Intel Retail Client Manager Audience Analytics By using this document, in addition to any agreements you have with Intel, you accept the terms set forth below. You may not use or facilitate the use of

More information

SSL Handshake Analysis

SSL Handshake Analysis SSL Handshake Analysis Computer Measurement Group Webinar Nalini Elkins Inside Products, Inc. nalini.elkins@insidethestack.com Inside Products, Inc. (831) 659-8360 www.insidethestack.com www.ipproblemfinders.com

More information

Communication Systems 16 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009

Communication Systems 16 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009 16 th lecture Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009 1 25 Organization Welcome to the New Year! Reminder: Structure of Communication Systems lectures

More information

ELECTRONIC COMMERCE OBJECTIVE QUESTIONS

ELECTRONIC COMMERCE OBJECTIVE QUESTIONS MODULE 13 ELECTRONIC COMMERCE OBJECTIVE QUESTIONS There are 4 alternative answers to each question. One of them is correct. Pick the correct answer. Do not guess. A key is given at the end of the module

More information

TLS and SRTP for Skype Connect. Technical Datasheet

TLS and SRTP for Skype Connect. Technical Datasheet TLS and SRTP for Skype Connect Technical Datasheet Copyright Skype Limited 2011 Introducing TLS and SRTP Protocols help protect enterprise communications Skype Connect now provides Transport Layer Security

More information

OOo Digital Signatures. Malte Timmermann Technical Architect Sun Microsystems GmbH

OOo Digital Signatures. Malte Timmermann Technical Architect Sun Microsystems GmbH OOo Digital Signatures Malte Timmermann Technical Architect Sun Microsystems GmbH About the Speaker Technical Architect in OpenOffice.org/StarOffice development OOo/StarOffice developer since 1991/94 Main

More information

Waspmote Encryption Libraries. Programming guide

Waspmote Encryption Libraries. Programming guide Waspmote Encryption Libraries Programming guide Index Document version: v4.3-01/2015 Libelium Comunicaciones Distribuidas S.L. INDEX 1. General Concepts... 4 2. Integrity... 7 2.1. Waspmote Libraries...7

More information

18-731 Midterm. Name: Andrew user id:

18-731 Midterm. Name: Andrew user id: 18-731 Midterm 6 March 2008 Name: Andrew user id: Scores: Problem 0 (10 points): Problem 1 (10 points): Problem 2 (15 points): Problem 3 (10 points): Problem 4 (20 points): Problem 5 (10 points): Problem

More information

Using PI to Exchange PGP Encrypted Files in a B2B Scenario

Using PI to Exchange PGP Encrypted Files in a B2B Scenario Using PI to Exchange PGP Encrypted Files in a B2B Scenario Applies to: SAP Net Weaver Process Integration 7.1 (SAP PI 7.1). For more information, visit the SOA Management homepage. Summary This document

More information

ELECTRONIC COMMERCE WORKED EXAMPLES

ELECTRONIC COMMERCE WORKED EXAMPLES MODULE 13 ELECTRONIC COMMERCE WORKED EXAMPLES 13.1 Explain B2B e-commerce using an example of a book distributor who stocks a large number of books, which he distributes via a large network of book sellers.

More information

JAVA Program For Processing SMS Messages

JAVA Program For Processing SMS Messages JAVA Program For Processing SMS Messages Krishna Akkulu The paper describes the Java program implemented for the MultiModem GPRS wireless modem. The MultiModem offers standards-based quad-band GSM/GPRS

More information

CRYPTOGRAPHY IN NETWORK SECURITY

CRYPTOGRAPHY IN NETWORK SECURITY ELE548 Research Essays CRYPTOGRAPHY IN NETWORK SECURITY AUTHOR: SHENGLI LI INSTRUCTOR: DR. JIEN-CHUNG LO Date: March 5, 1999 Computer network brings lots of great benefits and convenience to us. We can

More information

A Novel Approach to combine Public-key encryption with Symmetric-key encryption

A Novel Approach to combine Public-key encryption with Symmetric-key encryption Volume 1, No. 4, June 2012 ISSN 2278-1080 The International Journal of Computer Science & Applications (TIJCSA) RESEARCH PAPER Available Online at http://www.journalofcomputerscience.com/ A Novel Approach

More information

Network Security Essentials Chapter 5

Network Security Essentials Chapter 5 Network Security Essentials Chapter 5 Fourth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 5 Transport-Level Security Use your mentality Wake up to reality From the song, "I've Got

More information

Network Security Technology Network Management

Network Security Technology Network Management COMPUTER NETWORKS Network Security Technology Network Management Source Encryption E(K,P) Decryption D(K,C) Destination The author of these slides is Dr. Mark Pullen of George Mason University. Permission

More information

Chapter 3. Internet Applications and Network Programming

Chapter 3. Internet Applications and Network Programming Chapter 3 Internet Applications and Network Programming 1 Introduction The Internet offers users a rich diversity of services none of the services is part of the underlying communication infrastructure

More information

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash

More information

Chapter 17. Transport-Level Security

Chapter 17. Transport-Level Security Chapter 17 Transport-Level Security Web Security Considerations The World Wide Web is fundamentally a client/server application running over the Internet and TCP/IP intranets The following characteristics

More information

Network Security Protocols

Network Security Protocols Network Security Protocols EE657 Parallel Processing Fall 2000 Peachawat Peachavanish Level of Implementation Internet Layer Security Ex. IP Security Protocol (IPSEC) Host-to-Host Basis, No Packets Discrimination

More information

The Misuse of RC4 in Microsoft Word and Excel

The Misuse of RC4 in Microsoft Word and Excel The Misuse of RC4 in Microsoft Word and Excel Hongjun Wu Institute for Infocomm Research, Singapore hongjun@i2r.a-star.edu.sg Abstract. In this report, we point out a serious security flaw in Microsoft

More information

E-commerce. Security. Learning objectives. Internet Security Issues: Overview. Managing Risk-1. Managing Risk-2. Computer Security Classifications

E-commerce. Security. Learning objectives. Internet Security Issues: Overview. Managing Risk-1. Managing Risk-2. Computer Security Classifications Learning objectives E-commerce Security Threats and Protection Mechanisms. This lecture covers internet security issues and discusses their impact on an e-commerce. Nov 19, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html

More information

AN IMPLEMENTATION OF HYBRID ENCRYPTION-DECRYPTION (RSA WITH AES AND SHA256) FOR USE IN DATA EXCHANGE BETWEEN CLIENT APPLICATIONS AND WEB SERVICES

AN IMPLEMENTATION OF HYBRID ENCRYPTION-DECRYPTION (RSA WITH AES AND SHA256) FOR USE IN DATA EXCHANGE BETWEEN CLIENT APPLICATIONS AND WEB SERVICES HYBRID RSA-AES ENCRYPTION FOR WEB SERVICES AN IMPLEMENTATION OF HYBRID ENCRYPTION-DECRYPTION (RSA WITH AES AND SHA256) FOR USE IN DATA EXCHANGE BETWEEN CLIENT APPLICATIONS AND WEB SERVICES Kalyani Ganesh

More information

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173 Security & Privacy on the WWW Briefing for CS4173 Topic Outline 1. Information Security Relationship to safety Definition of important terms Where breaches can occur Web techniques Components of security

More information

Mobile Solutions for Data Collection. Sarah Croft and Laura Pierik

Mobile Solutions for Data Collection. Sarah Croft and Laura Pierik Mobile Solutions for Data Collection Sarah Croft and Laura Pierik Presentation Overview Project Overview Benefits of using Mobile Technology Mobile Solutions- two different approaches Results and Recommendations

More information

VALLIAMMAI ENGINEERING COLLEGE

VALLIAMMAI ENGINEERING COLLEGE VALLIAMMAI ENGINEERING COLLEGE (A member of SRM Institution) SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year and Semester : I / II Section : 1 Subject Code : NE7202

More information

Implementation of Cloud Repository for Secure Data Sharing

Implementation of Cloud Repository for Secure Data Sharing Implementation of Cloud Repository for Secure Data Sharing GRADUATE PROJECT REPORT Submitted to the Faculty of The School of Engineering & Computing Sciences Texas A&M University-Corpus Christi Corpus

More information

An Android-based Instant Message Application

An Android-based Instant Message Application An Android-based Instant Message Application Qi Lai, Mao Zheng and Tom Gendreau Department of Computer Science University of Wisconsin - La Crosse La Crosse, WI 54601 mzheng@uwlax.edu Abstract One of the

More information

Lecture 9 - Network Security TDTS41-2006 (ht1)

Lecture 9 - Network Security TDTS41-2006 (ht1) Lecture 9 - Network Security TDTS41-2006 (ht1) Prof. Dr. Christoph Schuba Linköpings University/IDA Schuba@IDA.LiU.SE Reading: Office hours: [Hal05] 10.1-10.2.3; 10.2.5-10.7.1; 10.8.1 9-10am on Oct. 4+5,

More information

Iowa Immunization Registry Information System (IRIS) Web Services Data Exchange Setup. Version 1.1 Last Updated: April 14, 2014

Iowa Immunization Registry Information System (IRIS) Web Services Data Exchange Setup. Version 1.1 Last Updated: April 14, 2014 Iowa Immunization Registry Information System (IRIS) Web Services Data Exchange Setup Version 1.1 Last Updated: April 14, 2014 Table of Contents SSL Certificate Creation... 3 Option 1: Complete the Provider

More information

Encryption and Decryption for Secure Communication

Encryption and Decryption for Secure Communication Encryption and Decryption for Secure Communication Charu Rohilla Rahul Kumar Yadav Sugandha Singh Research Scholar, M.TECH CSE Dept. Asst. Prof. IT Dept. Asso. Prof. CSE Dept. PDMCE, B.Garh PDMCE, B.Garh

More information

Cryptography: Motivation. Data Structures and Algorithms Cryptography. Secret Writing Methods. Many areas have sensitive information, e.g.

Cryptography: Motivation. Data Structures and Algorithms Cryptography. Secret Writing Methods. Many areas have sensitive information, e.g. Cryptography: Motivation Many areas have sensitive information, e.g. Data Structures and Algorithms Cryptography Goodrich & Tamassia Sections 3.1.3 & 3.1.4 Introduction Simple Methods Asymmetric methods:

More information

Configuring Security Features of Session Recording

Configuring Security Features of Session Recording Configuring Security Features of Session Recording Summary This article provides information about the security features of Citrix Session Recording and outlines the process of configuring Session Recording

More information

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean Course Description Getting Started with Android Programming is designed to give students a strong foundation to develop apps

More information

SECURE SOCKET LAYER PROTOCOL SIMULATION IN JAVA. A Research Project NAGENDRA KARRI

SECURE SOCKET LAYER PROTOCOL SIMULATION IN JAVA. A Research Project NAGENDRA KARRI SECURE SOCKET LAYER PROTOCOL SIMULATION IN JAVA A Research Project By NAGENDRA KARRI Submitted to the College of Graduate Studies Oregon State University in partial fulfillment of the requirements for

More information

SSL/TLS. What Layer? History. SSL vs. IPsec. SSL Architecture. SSL Architecture. IT443 Network Security Administration Instructor: Bo Sheng

SSL/TLS. What Layer? History. SSL vs. IPsec. SSL Architecture. SSL Architecture. IT443 Network Security Administration Instructor: Bo Sheng What Layer? /TLS IT443 Network Security Administration Instructor: Bo Sheng Application TCP IPSec IP LAN layer Application TCP IP LAN layer 1 2 History v2 proposed and deployed in Netscape 1.1 (1995) PCT

More information

ODROID Multithreading in Android

ODROID Multithreading in Android Multithreading in Android 1 Index Android Overview Android Stack Android Development Tools Main Building Blocks(Activity Life Cycle) Threading in Android Multithreading via AsyncTask Class Multithreading

More information