SlideShare a Scribd company logo
1 of 39
Download to read offline
BARCELONA IOS DEVEOPERS
Ronan O Ciosoig
Show and Tell
14th May 2012
Thursday, May 16, 13
Thursday, May 16, 13
Why do we need it?
Thursday, May 16, 13
What is wrong with other solutions?
Thursday, May 16, 13
What is it that is being offered here?
Thursday, May 16, 13
FOOD SAFETY PLATFORM
• Food safety web site (for reference hospital)
• Manufacturers web site
• Web only widget to embed in manufacturer’s and food
regulatory or safety web sites
• Consumers web site
• Mobile app for iOS and Android
Thursday, May 16, 13
APP - KEY FEATURES
• Simple to read
• Downloadable database
• Customized user profile
• Allergen information provided by a leading hospital
• Apple Push to update
• Secure
Thursday, May 16, 13
DEMO
Thursday, May 16, 13
USINGTHE APP
• Use anonymously - no registration is required
• Register and define intolerances / allergies
• Download database
• Select by
• Brand
• Barcode scanning
• Text search
Thursday, May 16, 13
INTERNAL FEATURES
• English and Spanish supported
• Voice support (deactivated)
• Image cache
• System-wide logging and usage tracking
• not using any 3rd party lib.
• Encryption
Thursday, May 16, 13
SECURITY INTHE APP
Thursday, May 16, 13
SECURITY INTHE APP
Why do you need security here?
Gives manufacturers confidence in the platform
Thursday, May 16, 13
CORE DATA ENCRYPTION
Thursday, May 16, 13
CORE DATA ENCRYPTION
• Add 2 classes (from Pro Core Data book):
• EncryptedStringTransformer
• NSData+Encryption
Thursday, May 16, 13
CORE DATA ENCRYPTION
• Add 2 classes (from Pro Core Data book):
• EncryptedStringTransformer
• NSData+Encryption
• Change properties to ‘transformable’
Thursday, May 16, 13
CORE DATA ENCRYPTION
• Add 2 classes (from Pro Core Data book):
• EncryptedStringTransformer
• NSData+Encryption
• Change properties to ‘transformable’
• Set the name to “EncryptedStringTransformer”
Thursday, May 16, 13
CORE DATA ENCRYPTION
• Add 2 classes (from Pro Core Data book):
• EncryptedStringTransformer
• NSData+Encryption
• Change properties to ‘transformable’
• Set the name to “EncryptedStringTransformer”
• Set the key in the EncryptedStringTransformer.m class
Thursday, May 16, 13
CORE DATA ENCRYPTION
Thursday, May 16, 13
CORE DATA ENCRYPTION
Thursday, May 16, 13
CORE DATA ENCRYPTION
Thursday, May 16, 13
THE KEY?
Thursday, May 16, 13
THE KEY?
• Add it into the code?
Thursday, May 16, 13
THE KEY?
• Add it into the code? Not a good idea
Thursday, May 16, 13
THE KEY?
• Add it into the code?
• Can you store it in the Key Chain?
Not a good idea
Thursday, May 16, 13
THE KEY?
• Add it into the code?
• Can you store it in the Key Chain?
Not a good idea
Not secure
Thursday, May 16, 13
THE KEY?
• Add it into the code?
• Can you store it in the Key Chain?
• Don’t store it.
Not a good idea
Not secure
Generate it!
Thursday, May 16, 13
SECURE CODING
Thursday, May 16, 13
SECURE CODING
... is about increasing the complexity
demanded for an attack against the
application to succeed.
Thursday, May 16, 13
SECURE CODING
Don’t make it easy
Thursday, May 16, 13
KEY GENERATION
Complex non-
obvious operation
Seed
Seed
Seed
Read Core
Data DB
Thursday, May 16, 13
NON-OBVIOUS OPERATION
Thursday, May 16, 13
SECURITY INTHE APP
• Core Data SQLite entries are encrypted
• Key is generated and never stored
• Seed for key stored in KeyChain
Thursday, May 16, 13
Thursday, May 16, 13
Thursday, May 16, 13
SIMPLICITY
Thursday, May 16, 13
SIMPLICITY
Thursday, May 16, 13
SIMPLICITY
...is about subtracting the obvious and adding the
meaningful.”
Thursday, May 16, 13
QUESTIONS?
Thursday, May 16, 13
REFERENCES
Pro Core Data 2nd Edition (Michael Privat,
Robert Warner)
Hacking and securing iOS Applications, Jonathan
Zdziarski
The Laws of Simplicity, John Maeda
Thursday, May 16, 13

More Related Content

Similar to FoodLinker

Ot pt apps 2012 updated
Ot pt apps 2012 updatedOt pt apps 2012 updated
Ot pt apps 2012 updated
Ellen Deutsch
 

Similar to FoodLinker (20)

Android meetup
Android meetupAndroid meetup
Android meetup
 
Finding sensitive information in text data
Finding sensitive information in text dataFinding sensitive information in text data
Finding sensitive information in text data
 
Native Javascript apps with PhoneGap
Native Javascript apps with PhoneGapNative Javascript apps with PhoneGap
Native Javascript apps with PhoneGap
 
7 things one should learn from iOS
7 things one should learn from iOS7 things one should learn from iOS
7 things one should learn from iOS
 
How ChatGPT led OpenAPI's Recent Spike in Popularity
How ChatGPT led OpenAPI's Recent Spike in PopularityHow ChatGPT led OpenAPI's Recent Spike in Popularity
How ChatGPT led OpenAPI's Recent Spike in Popularity
 
CocoaConf Austin 2014 | Demystifying Security Best Practices
CocoaConf Austin 2014 | Demystifying Security Best PracticesCocoaConf Austin 2014 | Demystifying Security Best Practices
CocoaConf Austin 2014 | Demystifying Security Best Practices
 
CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...CTOs in London "The Challenges of Evaluating Development Technology Within th...
CTOs in London "The Challenges of Evaluating Development Technology Within th...
 
Nonprofit Data: What to Visualize
Nonprofit Data: What to VisualizeNonprofit Data: What to Visualize
Nonprofit Data: What to Visualize
 
(java2days) The Anatomy of Java Vulnerabilities
(java2days) The Anatomy of Java Vulnerabilities(java2days) The Anatomy of Java Vulnerabilities
(java2days) The Anatomy of Java Vulnerabilities
 
WSO2Con ASIA 2016: Keynote: Want to Improve Customer Experience? Analytics Ca...
WSO2Con ASIA 2016: Keynote: Want to Improve Customer Experience? Analytics Ca...WSO2Con ASIA 2016: Keynote: Want to Improve Customer Experience? Analytics Ca...
WSO2Con ASIA 2016: Keynote: Want to Improve Customer Experience? Analytics Ca...
 
Deployments in one click!
Deployments in one click!Deployments in one click!
Deployments in one click!
 
Making Secure Choices
Making Secure ChoicesMaking Secure Choices
Making Secure Choices
 
IPSA India Price List May 2018
IPSA India Price List May 2018IPSA India Price List May 2018
IPSA India Price List May 2018
 
Superman or Ironman - can everyone be a 10x developer?
Superman or Ironman - can everyone be a 10x developer?Superman or Ironman - can everyone be a 10x developer?
Superman or Ironman - can everyone be a 10x developer?
 
IOTDB - Semantic Metadata for the Internet of Things
IOTDB - Semantic Metadata for the Internet of ThingsIOTDB - Semantic Metadata for the Internet of Things
IOTDB - Semantic Metadata for the Internet of Things
 
Practical iOS App Security
Practical iOS App SecurityPractical iOS App Security
Practical iOS App Security
 
Ot pt apps 2012 updated
Ot pt apps 2012 updatedOt pt apps 2012 updated
Ot pt apps 2012 updated
 
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
 
PyData: Past, Present Future (PyData SV 2014 Keynote)
PyData: Past, Present Future (PyData SV 2014 Keynote)PyData: Past, Present Future (PyData SV 2014 Keynote)
PyData: Past, Present Future (PyData SV 2014 Keynote)
 
LUISS - Deep Learning and data analyses - 09/01/19
LUISS - Deep Learning and data analyses - 09/01/19LUISS - Deep Learning and data analyses - 09/01/19
LUISS - Deep Learning and data analyses - 09/01/19
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 

FoodLinker