SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
HOW TO ADD END TO END
ENCRYPTION TO YOUR REACT APP
// @IronCoreLabs @cipher_sift
Show of hands…
// @IronCoreLabs @cipher_sift
ENCRYPTION
// @IronCoreLabs @cipher_sift
HTTPS
// @IronCoreLabs @cipher_sift
DATA STORE ENCRYPTION
// @IronCoreLabs @cipher_sift
Loss of Data
Control
Encryption in Transit + Encryption at Rest
≠ End to End Encryption
// @IronCoreLabs @cipher_sift
DON’T GET
ZUCKED
// @IronCoreLabs @cipher_sift
END-TO-END ENCRYPTION
If your application is not using

end-to-end encryption 

it is not private or secure.
Concept
Code
Groups
Concept
Code
Groups
// @IronCoreLabs @cipher_sift
Data
INTEGRATE AT THE DATA SEAM
// @IronCoreLabs @cipher_sift
REDUX
// @IronCoreLabs @cipher_sift
REDUX
Middleware
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
import * as IronWeb from "@ironcorelabs/ironweb";
const encryptionMiddleware = () => (next) => (action) => {
if (action.type === “ADD_BLOOD_TEST") {
return encryptBloodTest(next, action, group.id);
}
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === "GET_BLOOD_TEST") {
if (action.payload.encrypted) {
return decryptBloodTest(next, action);
}
return next(action);
}
next(action);
};
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
import * as IronWeb from "@ironcorelabs/ironweb";
const encryptionMiddleware = () => (next) => (action) => {
if (action.type === “ADD_BLOOD_TEST") {
return encryptBloodTest(next, action, group.id);
}
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === "GET_BLOOD_TEST") {
if (action.payload.encrypted) {
return decryptBloodTest(next, action);
}
return next(action);
}
next(action);
};
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
import * as IronWeb from "@ironcorelabs/ironweb";
const encryptionMiddleware = () => (next) => (action) => {
if (action.type === “ADD_BLOOD_TEST") {
return encryptBloodTest(next, action, group.id);
}
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === "GET_BLOOD_TEST") {
if (action.payload.encrypted) {
return decryptBloodTest(next, action);
}
return next(action);
}
next(action);
};
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
import * as IronWeb from "@ironcorelabs/ironweb";
const encryptionMiddleware = () => (next) => (action) => {
if (action.type === “ADD_BLOOD_TEST") {
return encryptBloodTest(next, action, group.id);
}
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === "GET_BLOOD_TEST") {
if (action.payload.encrypted) {
return decryptBloodTest(next, action);
}
return next(action);
}
next(action);
};
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
import * as IronWeb from "@ironcorelabs/ironweb";
const encryptionMiddleware = () => (next) => (action) => {
if (action.type === “ADD_BLOOD_TEST") {
return encryptBloodTest(next, action, group.id);
}
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === "GET_BLOOD_TEST") {
if (action.payload.encrypted) {
return decryptBloodTest(next, action);
}
return next(action);
}
next(action);
};
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === “GET_BLOOD_TEST”) {
return decryptBloodTest(next, action);
}
next(action);
};
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === “GET_BLOOD_TEST”) {
return decryptBloodTest(next, action);
}
next(action);
};
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === “GET_BLOOD_TEST”) {
return decryptBloodTest(next, action);
}
next(action);
};
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === “GET_BLOOD_TEST”) {
return decryptBloodTest(next, action);
}
next(action);
};
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
next(action);
};
const decryptionMiddleware = () => (next) => (action) => {
if (action.type === “GET_BLOOD_TEST”) {
return decryptBloodTest(next, action);
}
next(action);
};
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospital }]
}
})
.then((encryptedDoc) => {
next({...action,
payload: { ...action.payload,
body: encryptedDoc.document,
id: encryptedDoc.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptBloodTest(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: personalHealthInfoID }]
}
})
.then((encryptedDoc) => {
next({...action,
payload: { ...action.payload,
body: encryptedDoc.document,
id: encryptedDoc.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptBloodTest(next, action, hospitalID) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospitalID }]
}
})
.then((encryptedDoc) => {
next({...action,
payload: { ...action.payload,
body: encryptedDoc.document,
id: encryptedDoc.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptBloodTest(next, action, hospitalID) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospitalID }]
}
})
.then((encryptedBloodTest) => {
next({...action,
payload: { ...action.payload,
body: encryptedBloodTest.document,
id: encryptedBloodTest.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptBloodTest(next, action, hospitalID) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: hospitalID }]
}
})
.then((encryptedDoc) => {
next({...action,
payload: { ...action.payload,
body: encryptedDoc.document,
id: encryptedDoc.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
…action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
...action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
...action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
...action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
...action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
.catch(() => {…});
}
function decryptBloodTest(next, action) {
IronWeb.document.decrypt(action.payload.id, action.payload.body)
.then((bloodTest) => {
next({
...action,
payload: {
…action.payload,
body: IronWeb.codec.utf8.fromBytes(bloodTest.data)
},
});
})
.catch(() => {...});
}
1
2
Middleware
Encryption
Decryption
3
// @IronCoreLabs @cipher_sift
…BONUS
// @IronCoreLabs @cipher_sift
IronCoreMiddleware.js
function encryptNewOrder(next, action, hospital) {
return IronWeb.document.encrypt(IronWeb.codec.utf8.toBytes(action.payload.body), {
accessList: {
groups: [{ id: personalHealthInfoID }]
}
})
.then((encryptedDoc) => {
next({...action,
payload: { ...action.payload,
body: encryptedDoc.document,
id: encryptedDoc.documentID,
encrypted: true
},
});
})
.catch(() => {...});
}
// @IronCoreLabs @cipher_sift
Group
Access
Encrypt
// @IronCoreLabs @cipher_sift
Personal
Health
Info
Group
// @IronCoreLabs @cipher_sift
Group
Hospital
Personal
Health
Info
// @IronCoreLabs @cipher_sift
Group
Hospital
Personal
Health
Info
Dr.,
Nurse,
Lab,
Insurance Company,
Blood Type Search Index (1x)
{
// @IronCoreLabs @cipher_sift
Group
Hospital
Dr.,
Nurse,
Lab,
Insurance Company,
Blood Type Search Index (1x)
{
Personal
Health
Info
// @IronCoreLabs @cipher_sift
Orthogonal
Access Control
// @IronCoreLabs @cipher_sift
Data control:
Data control is the ability for a data owner
to determine who can use their data, see how
it's used and by whom, and to change their
mind and revoke their access at any time,
regardless of where the data is stored.
If your application is not using

end-to-end encryption 

it is not private or secure.

Implement data control

for who, how, and revocation.
// @IronCoreLabs @cipher_sift
Questions?
IronCoreLabs
@ironcorelabs
madison-kerndt
@cipher_sift
ironcorelabs.com madison@ironcorelabs.com
// @IronCoreLabs @cipher_sift
Thank you!
IronCoreLabs
@ironcorelabs
madison-kerndt
@cipher_sift
ironcorelabs.com madison@ironcorelabs.com

Weitere ähnliche Inhalte

Was ist angesagt?

MySql Triggers Tutorial - The Webs Academy
MySql Triggers Tutorial - The Webs AcademyMySql Triggers Tutorial - The Webs Academy
MySql Triggers Tutorial - The Webs Academythewebsacademy
 
Information Assurance And Security - Chapter 1 - Lesson 1
Information Assurance And Security - Chapter 1 - Lesson 1Information Assurance And Security - Chapter 1 - Lesson 1
Information Assurance And Security - Chapter 1 - Lesson 1MLG College of Learning, Inc
 
Unicode and Collations in MySQL 8.0
Unicode and Collations in MySQL 8.0Unicode and Collations in MySQL 8.0
Unicode and Collations in MySQL 8.0Bernt Marius Johnsen
 
Design of security architecture in Information Technology
Design of security architecture in Information TechnologyDesign of security architecture in Information Technology
Design of security architecture in Information Technologytrainersenthil14
 
Information Security and Privacy - Public Sector actions, policies and regula...
Information Security and Privacy - Public Sector actions, policies and regula...Information Security and Privacy - Public Sector actions, policies and regula...
Information Security and Privacy - Public Sector actions, policies and regula...The University of Texas (UTRGV)
 
Building an Intelligence-Driven Security Operations Center
Building an Intelligence-Driven Security Operations CenterBuilding an Intelligence-Driven Security Operations Center
Building an Intelligence-Driven Security Operations CenterEMC
 
Windows Server 2008 Active Directory
Windows Server 2008 Active DirectoryWindows Server 2008 Active Directory
Windows Server 2008 Active Directoryanilinvns
 
C, C++ Interview Questions Part - 1
C, C++ Interview Questions Part - 1C, C++ Interview Questions Part - 1
C, C++ Interview Questions Part - 1ReKruiTIn.com
 
Object-Oriented Paradigm
Object-Oriented Paradigm Object-Oriented Paradigm
Object-Oriented Paradigm tamigayle
 
Network Security: Physical security
Network Security: Physical security Network Security: Physical security
Network Security: Physical security lalithambiga kamaraj
 
Information security principles an understanding
Information security principles an understandingInformation security principles an understanding
Information security principles an understandingHelpWithAssignment.com
 
Functions in c language
Functions in c language Functions in c language
Functions in c language tanmaymodi4
 

Was ist angesagt? (20)

Unit 03 dbms
Unit 03 dbmsUnit 03 dbms
Unit 03 dbms
 
MySql Triggers Tutorial - The Webs Academy
MySql Triggers Tutorial - The Webs AcademyMySql Triggers Tutorial - The Webs Academy
MySql Triggers Tutorial - The Webs Academy
 
MySQL Data types
MySQL Data typesMySQL Data types
MySQL Data types
 
Information Assurance And Security - Chapter 1 - Lesson 1
Information Assurance And Security - Chapter 1 - Lesson 1Information Assurance And Security - Chapter 1 - Lesson 1
Information Assurance And Security - Chapter 1 - Lesson 1
 
Unicode and Collations in MySQL 8.0
Unicode and Collations in MySQL 8.0Unicode and Collations in MySQL 8.0
Unicode and Collations in MySQL 8.0
 
Codds rules & keys
Codds rules & keysCodds rules & keys
Codds rules & keys
 
Design of security architecture in Information Technology
Design of security architecture in Information TechnologyDesign of security architecture in Information Technology
Design of security architecture in Information Technology
 
Information Security and Privacy - Public Sector actions, policies and regula...
Information Security and Privacy - Public Sector actions, policies and regula...Information Security and Privacy - Public Sector actions, policies and regula...
Information Security and Privacy - Public Sector actions, policies and regula...
 
Building an Intelligence-Driven Security Operations Center
Building an Intelligence-Driven Security Operations CenterBuilding an Intelligence-Driven Security Operations Center
Building an Intelligence-Driven Security Operations Center
 
Object oriented concepts
Object oriented conceptsObject oriented concepts
Object oriented concepts
 
Intruders
IntrudersIntruders
Intruders
 
Java access modifiers
Java access modifiersJava access modifiers
Java access modifiers
 
Windows Server 2008 Active Directory
Windows Server 2008 Active DirectoryWindows Server 2008 Active Directory
Windows Server 2008 Active Directory
 
C, C++ Interview Questions Part - 1
C, C++ Interview Questions Part - 1C, C++ Interview Questions Part - 1
C, C++ Interview Questions Part - 1
 
Object-Oriented Paradigm
Object-Oriented Paradigm Object-Oriented Paradigm
Object-Oriented Paradigm
 
Network Security: Physical security
Network Security: Physical security Network Security: Physical security
Network Security: Physical security
 
Oop Game Programming Concept
Oop Game Programming ConceptOop Game Programming Concept
Oop Game Programming Concept
 
Information security principles an understanding
Information security principles an understandingInformation security principles an understanding
Information security principles an understanding
 
Functions in c language
Functions in c language Functions in c language
Functions in c language
 
PLSQL Cursors
PLSQL CursorsPLSQL Cursors
PLSQL Cursors
 

Ähnlich wie How to Add End-to-End Encryption to Your React App

Automated malware analysis
Automated malware analysisAutomated malware analysis
Automated malware analysisIbrahim Baliç
 
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ -  Automated Malware AnalysisIstSec'14 - İbrahim BALİÇ -  Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ - Automated Malware AnalysisBGA Cyber Security
 
JS Fest 2019 Node.js Antipatterns
JS Fest 2019 Node.js AntipatternsJS Fest 2019 Node.js Antipatterns
JS Fest 2019 Node.js AntipatternsTimur Shemsedinov
 
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays
 
Terrastore - A document database for developers
Terrastore - A document database for developersTerrastore - A document database for developers
Terrastore - A document database for developersSergio Bossa
 
node.js and the AR.Drone: building a real-time dashboard using socket.io
node.js and the AR.Drone: building a real-time dashboard using socket.ionode.js and the AR.Drone: building a real-time dashboard using socket.io
node.js and the AR.Drone: building a real-time dashboard using socket.ioSteven Beeckman
 
Developing web-apps like it's 2013
Developing web-apps like it's 2013Developing web-apps like it's 2013
Developing web-apps like it's 2013Laurent_VB
 
async/await in Swift
async/await in Swiftasync/await in Swift
async/await in SwiftPeter Friese
 
Codestrong 2012 breakout session hacking titanium
Codestrong 2012 breakout session   hacking titaniumCodestrong 2012 breakout session   hacking titanium
Codestrong 2012 breakout session hacking titaniumAxway Appcelerator
 
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...Lviv Startup Club
 
Android Automated Testing
Android Automated TestingAndroid Automated Testing
Android Automated Testingroisagiv
 
Secure Coding For Java - Une introduction
Secure Coding For Java - Une introductionSecure Coding For Java - Une introduction
Secure Coding For Java - Une introductionSebastien Gioria
 
Server side data sync for mobile apps with silex
Server side data sync for mobile apps with silexServer side data sync for mobile apps with silex
Server side data sync for mobile apps with silexMichele Orselli
 
power-assert, mechanism and philosophy
power-assert, mechanism and philosophypower-assert, mechanism and philosophy
power-assert, mechanism and philosophyTakuto Wada
 
CouchDB on Android
CouchDB on AndroidCouchDB on Android
CouchDB on AndroidSven Haiges
 

Ähnlich wie How to Add End-to-End Encryption to Your React App (20)

Automated malware analysis
Automated malware analysisAutomated malware analysis
Automated malware analysis
 
Intro to Parse
Intro to ParseIntro to Parse
Intro to Parse
 
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ -  Automated Malware AnalysisIstSec'14 - İbrahim BALİÇ -  Automated Malware Analysis
IstSec'14 - İbrahim BALİÇ - Automated Malware Analysis
 
Nantes Jug - Java 7
Nantes Jug - Java 7Nantes Jug - Java 7
Nantes Jug - Java 7
 
JS Fest 2019 Node.js Antipatterns
JS Fest 2019 Node.js AntipatternsJS Fest 2019 Node.js Antipatterns
JS Fest 2019 Node.js Antipatterns
 
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
 
Terrastore - A document database for developers
Terrastore - A document database for developersTerrastore - A document database for developers
Terrastore - A document database for developers
 
node.js and the AR.Drone: building a real-time dashboard using socket.io
node.js and the AR.Drone: building a real-time dashboard using socket.ionode.js and the AR.Drone: building a real-time dashboard using socket.io
node.js and the AR.Drone: building a real-time dashboard using socket.io
 
Developing web-apps like it's 2013
Developing web-apps like it's 2013Developing web-apps like it's 2013
Developing web-apps like it's 2013
 
async/await in Swift
async/await in Swiftasync/await in Swift
async/await in Swift
 
Codestrong 2012 breakout session hacking titanium
Codestrong 2012 breakout session   hacking titaniumCodestrong 2012 breakout session   hacking titanium
Codestrong 2012 breakout session hacking titanium
 
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...
Lviv MDDay 2014. Ігор Коробка “забезпечення базової безпеки в андроїд аплікац...
 
Reduxing like a pro
Reduxing like a proReduxing like a pro
Reduxing like a pro
 
Android workshop
Android workshopAndroid workshop
Android workshop
 
Android Automated Testing
Android Automated TestingAndroid Automated Testing
Android Automated Testing
 
Secure Coding For Java - Une introduction
Secure Coding For Java - Une introductionSecure Coding For Java - Une introduction
Secure Coding For Java - Une introduction
 
Server side data sync for mobile apps with silex
Server side data sync for mobile apps with silexServer side data sync for mobile apps with silex
Server side data sync for mobile apps with silex
 
Coding Ajax
Coding AjaxCoding Ajax
Coding Ajax
 
power-assert, mechanism and philosophy
power-assert, mechanism and philosophypower-assert, mechanism and philosophy
power-assert, mechanism and philosophy
 
CouchDB on Android
CouchDB on AndroidCouchDB on Android
CouchDB on Android
 

Mehr von IronCore Labs

Rethinking the Enterprise Perimeter | SnowFROC Presentation
Rethinking the Enterprise Perimeter | SnowFROC PresentationRethinking the Enterprise Perimeter | SnowFROC Presentation
Rethinking the Enterprise Perimeter | SnowFROC PresentationIronCore Labs
 
How to Eat the Privacy and Security Elephant One Bite at a Time
How to Eat the Privacy and Security Elephant One Bite at a TimeHow to Eat the Privacy and Security Elephant One Bite at a Time
How to Eat the Privacy and Security Elephant One Bite at a TimeIronCore Labs
 
CCPA: What You Need to Know
CCPA: What You Need to KnowCCPA: What You Need to Know
CCPA: What You Need to KnowIronCore Labs
 
How to Add Data Privacy to Your Angular Application
How to Add Data Privacy to Your Angular ApplicationHow to Add Data Privacy to Your Angular Application
How to Add Data Privacy to Your Angular ApplicationIronCore Labs
 
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)IronCore Labs
 
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwear
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwearThe Internet is a dog-eat-dog world and your app is clad in Milk Bone underwear
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwearIronCore Labs
 
2018 acm-scc-presentation
2018 acm-scc-presentation2018 acm-scc-presentation
2018 acm-scc-presentationIronCore Labs
 

Mehr von IronCore Labs (7)

Rethinking the Enterprise Perimeter | SnowFROC Presentation
Rethinking the Enterprise Perimeter | SnowFROC PresentationRethinking the Enterprise Perimeter | SnowFROC Presentation
Rethinking the Enterprise Perimeter | SnowFROC Presentation
 
How to Eat the Privacy and Security Elephant One Bite at a Time
How to Eat the Privacy and Security Elephant One Bite at a TimeHow to Eat the Privacy and Security Elephant One Bite at a Time
How to Eat the Privacy and Security Elephant One Bite at a Time
 
CCPA: What You Need to Know
CCPA: What You Need to KnowCCPA: What You Need to Know
CCPA: What You Need to Know
 
How to Add Data Privacy to Your Angular Application
How to Add Data Privacy to Your Angular ApplicationHow to Add Data Privacy to Your Angular Application
How to Add Data Privacy to Your Angular Application
 
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)
Pairing Based Transform Cryptography (Proxy Re-Encryption - PRE)
 
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwear
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwearThe Internet is a dog-eat-dog world and your app is clad in Milk Bone underwear
The Internet is a dog-eat-dog world and your app is clad in Milk Bone underwear
 
2018 acm-scc-presentation
2018 acm-scc-presentation2018 acm-scc-presentation
2018 acm-scc-presentation
 

Kürzlich hochgeladen

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
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 WorkerThousandEyes
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Kürzlich hochgeladen (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

How to Add End-to-End Encryption to Your React App