SlideShare a Scribd company logo
1 of 11
Download to read offline
© WebPKI.org 2017-02-09 1/11
Universal Key Ring – The Time Has Come!
Anders Rundgren, WebPKI.org
This presentation outlines a security architecture, provisioning, and management scheme for secure
cryptographic keys, targeting a wide variety of applications including Virtual SIMs, On-line Banking,
Payments, e-Government Access, and Enterprise Login.
In the core of the architecture there is component coined SKS (Secure Key Store), which leverages the
TEE (possibly aided by a local security processor).
To facilitate easy enrollment of SKS keys, a matching browser-based provisioning protocol called
KeyGen2 has been developed as well.
Since cryptographic keys (unlike files), usually represent “relationships” to external parties, the scheme
provides extensive support for different policies including an ACL system which through the OS/TEE
layers, governs which applications a key may be used with.
A side-effect of this arrangement is that cryptographic keys become first-class OS objects like files.
This effort is complementary to FIDO alliance. In fact, it seems quite feasible building FIDO alliance
products and SKS/KeyGen2 on the very same security platform.
© WebPKI.org 2017-02-09 2/11
Core OS ObjectsFiles
Devices
Users
Processes Keys
© WebPKI.org 2017-02-09 3/11
Typical Applications
e-Government
Income declaration
Year:
Name:
Citizen code:
Declared income:
2016
Marion Anderson
19950710-1518
Fair ($30000-$99999)
eGovernment signature applications
like income declarations, change of
address and permits requests
Virtual SIM-cards enable you
to buy, carry and use multiple
subscriptions in an easy way
Secure payments on the web as
well as in brick and mortar shops
Virtualized SKS SIM Credentials =
© WebPKI.org 2017-02-09 4/11
Key ID ACL User PIN Status Pointer
Key ID ACL User PIN Status Pointer
SKS-SecureKeyStore
SKS Driver Module
Device
Certificate
SE- Security Element
(Optional Crypto Peripheral
inside of the CPU)
Attestation
Private Key
Symmetric
Master Key
Crypto
Processor
TEE – Trusted
Execution Environment
(like ARM TrustZoneTM
)
Operating System
Key ID ACL User PIN Status Pointer
Credential Database
Key Entries
The SE only holds static data: a Device Certificate, a matching Attestation Key and a Master Key which is used for wrapping user keys.
The Attestation Key signs session keys which KeyGen2 uses for secure key provisioning and management. The SE generates wrapped
keys and as well as performing standard cryptographic operations on wrapped keys. That is, user keys are never exposed in clear.
The TEE performs all access control to keys as well as having exclusive access to the SE. Core key data is
stored in the TEE while encrypted key material, logotypes and attributes are stored in the Credential Database.
The Operating System invokes the TEE and also provides the TEE with
User and Application data required for key access control based on ACLs
attached to key entries.
SKS Native API
Secure Key Store – A Three Layer Architecture
© WebPKI.org 2017-02-09 5/11
Element Description
Mandatory: Asymmetric (private) or Symmetric (secret) key
Mandatory: X.509 certificate having two uses:
• Support for PKI-based applications
• Providing a “name” for key management operations
Algorithms Optional: Set of algorithms permitted to use with the key
Images
Optional: For usage in GUIs. Type information enable
selecting appropriate images for different scenarios
PIN
Optional: For key unlock. May be substituted or complemented with biometrics
if the hardware supports that
Attributes
Optional: Arbitrary text and binary properties containing things like URIs, Public
keys, and Constants to be used by associated applications
ACL Optional: Access Control List protecting keys from illicit access
Key + “Decoration” = Credential
MyBank
Code Not Supported. Trusted Credentials != Trusted Applications
© WebPKI.org 2017-02-09 6/11
Demo - Saturn (Payment Authorization)
© WebPKI.org 2017-02-09 7/11
“AuthorizationResponse”
“AuthorizationRequest”
“PayerAuthorization”
(Signed & Encrypted)
Merchant User + Wallet
User BankMerchant Bank
Bank-to-Bank Payments
State Diagram “Checkout/Pay”
“PaymentClientRequest”
“Result”
Merchant Lookup
and Verification*
User Authorization
• Decryption
• Verification
User Bank Verification*
②
③
④
⑤
⑥
①
Existing Payment Rails
(Bank-to-Bank Payments)
Sample application that was built using SKS and KeyGen2 for Storing/Using respectively Issuing Virtual Cards
⑦
User Bank Lookup*
(HTTP POST)
(HTTP Response)
SKS
Select Card
● ● ● ●
Authorize
PIN
(Scenario-dependent “channel”
technology used for Merchant
to Wallet communication)
(Scenario-dependent)
Decryption Key
All transaction steps are now available
in a single object where each layer is
signed and embeds inner layers
Commit Signature
Request Signature
“Accept”
Virtual Cards
Virtual Card Properties
Signature Key
Encryption Key
• Account Type URI
• URL to User Bank
• User Account ID
• PIN
• Card Logotype
• …
© WebPKI.org 2017-02-09 8/11
SKS Native API
The Missing Link – Credential Provisioning
Standard Crypto API
App
AppApplication
Application Level
KeyGen2: End-to-end-secured credential
provisioning and management protocol
specifically designed for SKS
Browser
KeyGen2 Proxy • Networking
• JSON Processing
• Content Aggregation
• User Interaction
Bank Government Etc…
Credential Issuers
(CAs or IdPs)
© WebPKI.org 2017-02-09 9/11
Demo – Enrollment using KeyGen2
© WebPKI.org 2017-02-09 10/11
Project Status – February 2017
• SKS software emulator in Java
• Android “App” implementing SKS, KeyGen2 and two test
applications available on PlayStore
• Public test applications on the Web
• Extensive documentation
• Published on GitHub: https://github.com/cyberphone
Currently Missing
• SKS/TEE integration
• Browser integration
• and most of all, device vendor partners…
© WebPKI.org 2017-02-09 11/11
Related Standardization Efforts
JCS – JSON Clear-text Signature. Fully implemented reference
implementation in Java. JCS also runs in browsers and Node.js
{
"myProperty": "Some data",
"signature": {
"algorithm": "ES256",
"publicKey": {
"type": "EC",
"curve": "P-256",
"x": "vlYxD4dtFJOp1_8_QUcieWCW-4KrLMmFL2rpkY1bQDs",
"y": "fxEF70yJenP3SPHM9hv-EnvhG6nXr3_S-fDqoj-F6yM"
},
"value": "gNfr9Es0cnc263tmOYMsctBh … Qd2h8QSePPGsKdkLILVJDBlAbkQ1eA"
}
}

More Related Content

More from Linaro

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloLinaro
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaLinaro
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraLinaro
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaLinaro
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018Linaro
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018Linaro
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...Linaro
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Linaro
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Linaro
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Linaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteLinaro
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopLinaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allLinaro
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorLinaro
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMULinaro
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MLinaro
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation Linaro
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootLinaro
 

More from Linaro (20)

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qa
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening Keynote
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP Workshop
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMU
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8M
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted boot
 

Recently uploaded

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
[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
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Recently uploaded (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[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
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

BUD17-203: Universal Keyring - The Time has Come

  • 1. © WebPKI.org 2017-02-09 1/11 Universal Key Ring – The Time Has Come! Anders Rundgren, WebPKI.org This presentation outlines a security architecture, provisioning, and management scheme for secure cryptographic keys, targeting a wide variety of applications including Virtual SIMs, On-line Banking, Payments, e-Government Access, and Enterprise Login. In the core of the architecture there is component coined SKS (Secure Key Store), which leverages the TEE (possibly aided by a local security processor). To facilitate easy enrollment of SKS keys, a matching browser-based provisioning protocol called KeyGen2 has been developed as well. Since cryptographic keys (unlike files), usually represent “relationships” to external parties, the scheme provides extensive support for different policies including an ACL system which through the OS/TEE layers, governs which applications a key may be used with. A side-effect of this arrangement is that cryptographic keys become first-class OS objects like files. This effort is complementary to FIDO alliance. In fact, it seems quite feasible building FIDO alliance products and SKS/KeyGen2 on the very same security platform.
  • 2. © WebPKI.org 2017-02-09 2/11 Core OS ObjectsFiles Devices Users Processes Keys
  • 3. © WebPKI.org 2017-02-09 3/11 Typical Applications e-Government Income declaration Year: Name: Citizen code: Declared income: 2016 Marion Anderson 19950710-1518 Fair ($30000-$99999) eGovernment signature applications like income declarations, change of address and permits requests Virtual SIM-cards enable you to buy, carry and use multiple subscriptions in an easy way Secure payments on the web as well as in brick and mortar shops Virtualized SKS SIM Credentials =
  • 4. © WebPKI.org 2017-02-09 4/11 Key ID ACL User PIN Status Pointer Key ID ACL User PIN Status Pointer SKS-SecureKeyStore SKS Driver Module Device Certificate SE- Security Element (Optional Crypto Peripheral inside of the CPU) Attestation Private Key Symmetric Master Key Crypto Processor TEE – Trusted Execution Environment (like ARM TrustZoneTM ) Operating System Key ID ACL User PIN Status Pointer Credential Database Key Entries The SE only holds static data: a Device Certificate, a matching Attestation Key and a Master Key which is used for wrapping user keys. The Attestation Key signs session keys which KeyGen2 uses for secure key provisioning and management. The SE generates wrapped keys and as well as performing standard cryptographic operations on wrapped keys. That is, user keys are never exposed in clear. The TEE performs all access control to keys as well as having exclusive access to the SE. Core key data is stored in the TEE while encrypted key material, logotypes and attributes are stored in the Credential Database. The Operating System invokes the TEE and also provides the TEE with User and Application data required for key access control based on ACLs attached to key entries. SKS Native API Secure Key Store – A Three Layer Architecture
  • 5. © WebPKI.org 2017-02-09 5/11 Element Description Mandatory: Asymmetric (private) or Symmetric (secret) key Mandatory: X.509 certificate having two uses: • Support for PKI-based applications • Providing a “name” for key management operations Algorithms Optional: Set of algorithms permitted to use with the key Images Optional: For usage in GUIs. Type information enable selecting appropriate images for different scenarios PIN Optional: For key unlock. May be substituted or complemented with biometrics if the hardware supports that Attributes Optional: Arbitrary text and binary properties containing things like URIs, Public keys, and Constants to be used by associated applications ACL Optional: Access Control List protecting keys from illicit access Key + “Decoration” = Credential MyBank Code Not Supported. Trusted Credentials != Trusted Applications
  • 6. © WebPKI.org 2017-02-09 6/11 Demo - Saturn (Payment Authorization)
  • 7. © WebPKI.org 2017-02-09 7/11 “AuthorizationResponse” “AuthorizationRequest” “PayerAuthorization” (Signed & Encrypted) Merchant User + Wallet User BankMerchant Bank Bank-to-Bank Payments State Diagram “Checkout/Pay” “PaymentClientRequest” “Result” Merchant Lookup and Verification* User Authorization • Decryption • Verification User Bank Verification* ② ③ ④ ⑤ ⑥ ① Existing Payment Rails (Bank-to-Bank Payments) Sample application that was built using SKS and KeyGen2 for Storing/Using respectively Issuing Virtual Cards ⑦ User Bank Lookup* (HTTP POST) (HTTP Response) SKS Select Card ● ● ● ● Authorize PIN (Scenario-dependent “channel” technology used for Merchant to Wallet communication) (Scenario-dependent) Decryption Key All transaction steps are now available in a single object where each layer is signed and embeds inner layers Commit Signature Request Signature “Accept” Virtual Cards Virtual Card Properties Signature Key Encryption Key • Account Type URI • URL to User Bank • User Account ID • PIN • Card Logotype • …
  • 8. © WebPKI.org 2017-02-09 8/11 SKS Native API The Missing Link – Credential Provisioning Standard Crypto API App AppApplication Application Level KeyGen2: End-to-end-secured credential provisioning and management protocol specifically designed for SKS Browser KeyGen2 Proxy • Networking • JSON Processing • Content Aggregation • User Interaction Bank Government Etc… Credential Issuers (CAs or IdPs)
  • 9. © WebPKI.org 2017-02-09 9/11 Demo – Enrollment using KeyGen2
  • 10. © WebPKI.org 2017-02-09 10/11 Project Status – February 2017 • SKS software emulator in Java • Android “App” implementing SKS, KeyGen2 and two test applications available on PlayStore • Public test applications on the Web • Extensive documentation • Published on GitHub: https://github.com/cyberphone Currently Missing • SKS/TEE integration • Browser integration • and most of all, device vendor partners…
  • 11. © WebPKI.org 2017-02-09 11/11 Related Standardization Efforts JCS – JSON Clear-text Signature. Fully implemented reference implementation in Java. JCS also runs in browsers and Node.js { "myProperty": "Some data", "signature": { "algorithm": "ES256", "publicKey": { "type": "EC", "curve": "P-256", "x": "vlYxD4dtFJOp1_8_QUcieWCW-4KrLMmFL2rpkY1bQDs", "y": "fxEF70yJenP3SPHM9hv-EnvhG6nXr3_S-fDqoj-F6yM" }, "value": "gNfr9Es0cnc263tmOYMsctBh … Qd2h8QSePPGsKdkLILVJDBlAbkQ1eA" } }