SlideShare a Scribd company logo
1 of 72
ENCRYPTION WITHOUT
MAGIC,
RISK MANAGEMENT
WITHOUT PAIN
#qconlondon @vixentael
InfoQ.com: News & Community Site
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
encryption-risk-management
• Over 1,000,000 software developers, architects and CTOs read the site world-
wide every month
• 250,000 senior developers subscribe to our weekly newsletter
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• 2 dedicated podcast channels: The InfoQ Podcast, with a focus on
Architecture and The Engineering Culture Podcast, with a focus on building
• 96 deep dives on innovative topics packed as downloadable emags and
minibooks
• Over 40 new content items per week
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon London
www.qconlondon.com
@vixentael Product Engineer
Feel free to reach me with
security questions.
I do check my inbox :)
CRYPTOGRAPHY?
CRYPTOGRAPHY?
AES
DES
3DES
CBC
CFB
SEAL
Salsa20
RSA
DSA
OFB
Blowfish
SHARK
RC4
DSS
ECB
CTR
Twofish
Camelia
SEED
Rabbit
ECDSA
#qconlondon @vixentael
CRYPTOGRAPHY?
AES
#qconlondon @vixentael
DES
3DES
CBC
CFB
SEAL
Salsa20
RSA
DSA
OFB
Blowfish
SHARK
RC4
DSS
ECB
CTR
Twofish
Camelia
SEED
Rabbit
ECDSA
MD5
SHA1
SHA3
#qconlondon @vixentael
algorithms
elliptic curves
key management
public key validity
storing secrets
CRYPTOGRAPHY
cool, but…
#qconlondon @vixentael
crypto is not a
but a method to manage
the attack surface
#qconlondon @vixentael
ATTACK SURFACE
– all the possible places
where sensitive data may be
stolen by adversary
https://www.owasp.org/index.php/Attack_Surface_Analysis_Cheat_Sheet
#qconlondon @vixentael
it’s easier to monitor
the suspicious behavior
in a small place
#qconlondon @vixentael
HANDLING SECRET DATA WITH CARE
avoid plain text as possible
manage keys properly
decrease time of plaintext secrets in memory
log, monitor and inspect
– HOW TO MANAGE
THE ATTACK SURFACE
OF MY DATA?
#qconlondon @vixentael
one container one key
symmetric encryption
with poor key management
#qconlondon @vixentael
attack surface
is arbitrary
one container one key
symmetric encryption
with poor key management
key leaked
→ data leaked
#qconlondon @vixentael
WHAT IS A CRYPTO-SYSTEM
https://en.wikipedia.org/wiki/Cryptosystem
#qconlondon @vixentael
KEY AND TRUST MANAGEMENT
SHOULD REFLECT YOUR SYSTEM
#qconlondon @vixentael
MESSAGING
https://core.telegram.org/api/end-to-end
#qconlondon @vixentael
GOOD MESSAGING
IS E2EE
…but your infrastructuresare not only for messaging
#qconlondon @vixentael
NAIVE DATABASE ENCRYPTION
attack surface
is almost everywhere
#qconlondon @vixentael
NARROWING ATTACK SURFACE
middleware-side
encryption
client-side
encryption
MIDDLEWARE-SIDE
ENCRYPTION
#qconlondon @vixentael
SQL injections
code injections
execution flow attacks
reflection attacks
XSS
crypto-miners everywhere
MitM
REAL-WORLD WEB SERVER
#qconlondon @vixentael
ATTACK SURFACE IS
EVERYWHERE :(
REAL-WORLD WEB SERVER
monitor everything
#qconlondon @vixentael
TRY SYMMETRIC ENCRYPTION?
encrypt/decrypt data
using symm key
#qconlondon @vixentael
TRY SYMMETRIC ENCRYPTION?
encrypt/decrypt data
using symm key
easy to steal a key
https://www.alibabacloud.com/
help/faq-detail/37505.htm
#qconlondon @vixentael
ASYMMETRIC ENCRYPTION
wrapped data = Enc(data,
random symm key)
container = Enc(wrapped
data, PKweb, PubKtds)
#qconlondon @vixentael
wrapped data = Enc(data,
random symm key)
container = Enc(wrapped
data, PKweb, PubKtds)
PubKey of ‘trusted
decryption service’
ASYMMETRIC ENCRYPTION
#qconlondon @vixentael
TRUSTED DECRYPTION SERVICE
wrapped_data = Dec(container,
PKtds, PubKweb)
data = Dec(wrapped_data,
random symm key)
decrypts data
#qconlondon @vixentael
trusted element in
infrastructure
SEPARATION OF DUTIES
no decryption
keys
monitor & log
NARROWED ATTACK
SURFACE
TRUSTED DECRYPTION SERVICE
#qconlondon @vixentael
#qconlondon @vixentael
monitor everything
monitor decryption proxy
#qconlondon @vixentael
WHERE TO USE THIS TECHNIQUE?
micro-services infrastructure
public-oriented interfaces
non trusted client side (browsers, IoT devices)
hard to store keys securely
#qconlondon @vixentael
HOW TO IMPLEMENT?
ACRA
https://github.com/cossacklabs/acra
GREEN SQL
https://github.com/larskanis/greensql-fw
HEXATIER
http://www.hexatier.com/
ORACLE DATABASE
FIREWALL / TDE
http://www.oracle.com/
CLIENT-SIDE
ENCRYPTION
#qconlondon @vixentael
MOVE TRUST TO CLIENTS
session hijacking
unattended backups
MitM
replay attacks
misconfigured ACL
trusted element in
infrastructure
#qconlondon @vixentael
P2P TRUST
system doesn’t know
anything about data
encrypted
containers
user-generated
keys
ZERO KNOWLEDGE
ARCHITECTURES
#qconlondon @vixentael
ZKA is a design principle that
enables software to provide services
over protected client data without
having an unencrypted access to it.
#qconlondon @vixentael
e2ee clients
ZKA INCLUDES:
#qconlondon @vixentael
e2ee clients
all operations are on encrypted data:
– control access to data from different users
– CRUD
– search (in encrypted data)
ZKA INCLUDES:
#qconlondon @vixentael
#qconlondon @vixentael
weak key management
algorithm weakness
user pocket
attack surface
RISKS FOR ZKA:
WHEN TO USE ZKA?
#qconlondon @vixentael
trusted client side (mobile, HSM/TPM)
ZKA is already solved for
specific use-cases or
in a naive ways
#qconlondon @vixentael
MESSAGING END-TO-END
ENCRYPTION
#qconlondon @vixentael
AUTHENTICATION ZERO KNOWLEDGE
PROOF
https://www.cossacklabs.com/zero-
knowledge-protocols-without-magic.html
#qconlondon @vixentael
COLLABORATING
ON DATA
– store encrypted
– share with others
– manage access to
parties
#qconlondon @vixentael
???
naive approach
– duplications
– key management
problems
#qconlondon @vixentael
SHARING ENCRYPTED DATA
give access to
certain blocks of
data to exact users
https://github.com/
cossacklabs/hermes-core
#qconlondon @vixentael
OUR TAKE
– Key wrapping
storage keys user keysblocks
#qconlondon @vixentael
HOW TO BUILD IT?
#qconlondon @vixentael
HOW TO BUILD IT?
– Key wrapping
– Manage privileges
– Key wrapping
– Manage privileges
– Control requests
#qconlondon @vixentael
HOW TO BUILD IT?
shared
audit logs complex docs,
spreadsheets
config files
file system
document store
protection
#qconlondon @vixentael
MORE POSSIBLE USE-CASES
OTHER IMPLEMENTATIONS
#qconlondon @vixentael
HERMES
https://github.com/cossacklabs/hermes-core
ZEROKIT
https://tresorit.com/zerokit
LAFS
https://tahoe-lafs.org/trac/tahoe-lafs
#qconlondon @vixentael
monitor everything
monitor client side
MORE GOODIES TO
THINK ABOUT
Cryptography is well implemented,
if it allows to narrow attack surface,
and increase control of data.
#qconlondon @vixentael
if the system has
one perimeter,
it will fail!
ECHELONIZATION
#qconlondon @vixentael
#qconlondon @vixentael
..add more layers
of defense
ECHELONIZATION
EXCEPT CRYPTO, YOU ALSO NEED
log and monitor events
intrusion pattern detection
access control
firewall
...
https://pdos.csail.mit.edu/papers/cryptobugs:apsys14.pdf
269 CVEs
from 2011-2014
17%
83%
bugs inside crypto libs
misuses of crypto libs
by individual apps
#qconlondon @vixentael
RECAP
2
#qconlondon @vixentael
THINGS TO REMEMBER
1. cryptography aims to narrow the attack surface
2. choose relevant encryption scheme
3. combine crypto and classic techniques
4. there is a lib for that
https://hackernoon.com/eli5-zero-knowledge-proof-78a276db9eff
Explain Like I’m 5: Zero Knowledge Proof
https://medium.com/@9gunpi/devops-and-security-from-trenches-to-command-
centers-466dfb58fe5b
DevOps and security: from trenches to command centers
https://medium.com/@cossacklabs/12-and-1-ideas-how-to-enhance-backend-data-
security-4b8ceb5ccb88
12 and 1 ideas how to enhance backend data security
LINKS
https://www.smashingmagazine.com/2018/02/gdpr-for-web-developers/
How GDPR Will Change The Way You Develop
https://github.com/
vixentael/my-talks
…and more
MY OTHER SECURITY SLIDES
@vixentael Product Engineer
Feel free to reach me with
security questions.
I do check my inbox :)
IMAGE CREDITS
www.flaticon.com 
freepik, linector, switficons, pixelperfect, smashicons, icon pond,
dinosoftlabs
Authors:
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
encryption-risk-management

More Related Content

More from C4Media

Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDC4Media
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine LearningC4Media
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at SpeedC4Media
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsC4Media
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerC4Media
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleC4Media
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeC4Media
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereC4Media
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing ForC4Media
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data EngineeringC4Media
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreC4Media
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsC4Media
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechC4Media
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/awaitC4Media
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaC4Media
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayC4Media
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?C4Media
 
CockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseCockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseC4Media
 
A Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinA Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinC4Media
 

More from C4Media (20)

Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery Teams
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in Adtech
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/await
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven Utopia
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?
 
CockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseCockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL Database
 
A Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinA Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with Brooklin
 

Recently uploaded

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Recently uploaded (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Encryption without Magic, Risk Management without Pain