7
GROUP MEMEBERS Robbie Bridgewater Dawit Woldegiorgis Ryan Zavoral

GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

G R O U P M E M E B E R S

Robbie Bridgewater

Dawit Woldegiorgis

Ryan Zavoral

Page 2: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

SUMMARY• What is Authentichat?

– Secure messaging client for iPhone

• How is it special?

– Physical proximity for establishing connection

– Private keys for verification

• Why use it?

– Difficult to impersonate another user

– Encryption reduces network sniffing risks

– Authentic chat experience!

Page 3: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

SECURITY MODEL• Identity:

– Phone Number - Primary

– Device ID – Secondary

• Communication:

– Authentication by user (one-time)

– Private key sharing for establishing secure channel

– Message encryption

– Evaluate integrity via encrypted checksum

Page 4: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

SECURITY MODEL - IDENTITY• Establishing Identity

– Confirm via text

– Reset mechanism

1. ID

2. Confirmation Msg.

3. Confirm

Client Server

Page 5: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

SECURITY MODEL - COMMUNICATIONEstablishing Identity

1. Request

2. Confirm

3. KEY

5. Add a connection

AirdropInternet

1. Encrypt via Key

3. Verify

4. Find connection

5. Forward

7. Decrypt via Key

Sending Message

Server

A B

Server

A B

Page 6: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

IMPLEMENTATION• Application source code

– Swift: backend/frontend

– Objective C: Wrapper for C++ code (security/low level)

• Messaging API – Sinch– Parse web server

• Task division– Ryan: Implement security algorithm

– Robbie: Backend development

– Dawit: Frontend development & Security penetration testing

Page 7: GROUP MEMEBERSnemo/cis4360/Woldegiorgis... · 2015-10-26 · SECURITY MODEL • Identity: – Phone Number - Primary – Device ID – Secondary • Communication: – Authentication

REFERENCESC++ Documentation : http://www.cplusplus.com/

Objective-C Tutorial and Documentation: http://www.tutorialspoint.com/ios/ios_objective_c.htm

Swift Documentation: https://developer.apple.com/swift/

Airdrop Usage with IOS Applicationshttps://developer.apple.com/library/ios/samplecode/sc2273/Introduction/Intro.html

Symmetric Key Encryption Linkshttps://en.wikipedia.org/wiki/Symmetric-key_algorithm

Parse Web Serverhttps://parse.com/

Sinchhttps://www.sinch.com