splitkey –athreshold cryptography case study · 3/13/2019  · eidas qscd/common criteria...

33
SplitKey – A Threshold Cryptography Case Study Dr. Aivo Kalu – Security Engineer Maximiliaan van de Poll – Product Head March 13th 2019

Upload: others

Post on 09-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

SplitKey – A Threshold Cryptography Case Study

Dr. Aivo Kalu – Security Engineer

Maximiliaan van de Poll – Product Head

March 13th 2019

Page 2: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Estonia/Latvia/Lithuania so far had three widely used methods of authenticationID-cards (smart-cards), Mobile-ID (SIM based), and one-time code cards2014, EU PSD2 regulation came with strong authentication demandThere was a market need for new kind of approach

Company introduction and background R&D intensive ICT company in Estonia

Research applied to practical security solutions since 1996 Researched time stamping, PKI, digital signatures, multi-party computation, ... Developed and maintains Estonia’s X-Road (UXP), i-voting, Sharemind, ... Research and development projects funded mostly by Estonian government and companies, EU H2020, USA DARPA and NATO About 140 employees, 15% of them with PhDs

March 13th 2019 2

Page 3: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Company introduction and background R&D intensive ICT company in Estonia

Research applied to practical security solutions since 1996 Researched time stamping, PKI, digital signatures, multi-party computation, ... Developed and maintains Estonia’s X-Road (UXP), i-voting, Sharemind, ... Research and development projects funded mostly by Estonian government and companies, EU H2020, USA DARPA and NATO About 140 employees, 15% of them with PhDs

Estonia/Latvia/Lithuania so far had three widely used methods of authentication ID-cards (smart-cards), Mobile-ID (SIM based), and one-time code cards 2014, EU PSD2 regulation came with strong authentication demand There was a market need for new kind of approach

March 13th 2019 2

Page 4: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

SplitKey digital signature scheme

Software-based 2-out-of-2 threshold cryptosystem Based on:

Rivest, R., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. (1978) Desmedt, Y., Fraenkel, Y.: Threshold cryptosystems. (1990) Damgard, I., Mikkelsen, G. L., Skeltved, T.: On the security of distributed multiprime RSA. (2015) Camenisch, J., Lehmann, A., Neven, G., Samelin, K.: Virtual Smart Cards: How to sign with a password and a server. (2016)

March 13th 2019 3

Page 5: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Client’s private key sharing: d 01 Gen(k), d 0

1 + d 001 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 01 = md 0

1 (mod n1)Server’s part of the signature share: s 00

1 = md 001 (mod n1)

Client’s signature share: s1 = s 01 · s 00

1 (mod n1)Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

March 13th 2019 4

Page 6: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Server’s key pair generation: (d2, e), (n2, e) Gen(k)Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 01 = md 0

1 (mod n1)Server’s part of the signature share: s 00

1 = md 001 (mod n1)

Client’s signature share: s1 = s 01 · s 00

1 (mod n1)Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

d10 + d 00Client’s private key sharing: d1

0 Gen(k), 1 � d1 (mod '(n1))

March 13th 2019 4

Page 7: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 01 = md 0

1 (mod n1)Server’s part of the signature share: s 00

1 = md 001 (mod n1)

Client’s signature share: s1 = s 01 · s 00

1 (mod n1)Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

Client’s private key sharing: d 01 Gen(k), d 0

1 + d 001 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

March 13th 2019 4

Page 8: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Client’s part of the signature share: s 01 = md 0

1 (mod n1)Server’s part of the signature share: s 00

1 = md 001 (mod n1)

Client’s signature share: s1 = s 01 · s 00

1 (mod n1)Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

1 + d 00Client’s private key sharing: d10 Gen(k), d 0

1 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

Composite public key generation: n = n1 · n2

March 13th 2019 4

Page 9: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Client’s signature share: s1 = s 01 · s 00

1 (mod n1)Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

d10 + d 00Client’s private key sharing: d1

0 Gen(k), 1 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 0 = md1 0 (mod n1)1

s 00 = md 00Server’s part of the signature share: 1 1 (mod n1)

March 13th 2019 4

Page 10: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Server’s signature share: s2 = md2 (mod n2)Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

1 + d 00Client’s private key sharing: d10 Gen(k), d 0

1 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

Composite public key generation: n = n1 · n2

Client’s part of the signature share: s10 = md1

0 (mod n1)

s 00 = md 00Server’s part of the signature share: 1 1 (mod n1)

s 00Client’s signature share: s1 = s10 · 1 (mod n1)

March 13th 2019 4

Page 11: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Composite signature: s = CRTn1,n2(s1, s2)

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

d10 + d 00Client’s private key sharing: d1

0 Gen(k), 1 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 0 = md1 0 (mod n1)1

s 00 = md 00Server’s part of the signature share: 1 1 (mod n1)

s 00Client’s signature share: s1 = s10 · 1 (mod n1)

Server’s signature share: s2 = md2 (mod n2)

March 13th 2019 4

Page 12: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

SplitKey key pair generation and signing operation

Client’s key pair generation: (d1, e), (n1, e) Gen(k)

1 + d 00Client’s private key sharing: d10 Gen(k), d 0

1 � d1 (mod '(n1))

Server’s key pair generation: (d2, e), (n2, e) Gen(k)

Composite public key generation: n = n1 · n2

Client’s part of the signature share: s 0 = md1 0 (mod n1)1

s 00 = md 00Server’s part of the signature share: 1 1 (mod n1)

s 00Client’s signature share: s1 = s10 · 1 (mod n1)

Server’s signature share: s2 = md2 (mod n2)

Composite signature: s = CRTn1,n2 (s1, s2)

March 13th 2019 4

Page 13: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

tex shows how much more RSA exponentiation operation is slower than AESencryption operation, experimentally measured to be about 213

Security reduction to the RSA

If RSA is S-secure against existential forgeries via adaptive chosen message attack, Sthen the composite signature is about tex

-secure against the same attack, where tex

is the time for one modular exponentiation

March 13th 2019 5

Page 14: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Security reduction to the RSA

If RSA is S-secure against existential forgeries via adaptive chosen message attack, then the composite signature is about S -secure against the same attack, where textexis the time for one modular exponentiation tex shows how much more RSA exponentiation operation is slower than AES encryption operation, experimentally measured to be about 213

March 13th 2019 5

Page 15: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Security reduction to the RSA

If RSA is S-secure against existential forgeries via adaptive chosen message attack, then the composite signature is about S -secure against the same attack, where textexis the time for one modular exponentiation tex shows how much more RSA exponentiation operation is slower than AES encryption operation, experimentally measured to be about 213

Security strength (bits)

Symmetric key algorithms

RSA modulus n (bits)

SplitKey composite modulus n1n2 (bits)

112 3TDEA 2048 6144 128 AES-128 3072 8192 192 AES-192 7680 16384

March 13th 2019 5

Page 16: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Evaluation lab: TÜViT in GermanyConsultant lab: CCLabs in HungaryEvaluation process started in the beginning of 2017 and fnished in the end of 2018Evaluation assurance level for server-side component: EAL4 + AVA VAN.5Evaluation assurance level for client-side component: EAL2

eIDAS QSCD/Common Criteria evaluation

Based on the eIDAS regulation. Old Secure Signature Creation Device PP: prEN 14169-2:2012 Draft Server Signing PP: prEN 419 241-2

March 13th 2019 6

Page 17: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

eIDAS QSCD/Common Criteria evaluation

Based on the eIDAS regulation. Old Secure Signature Creation Device PP: prEN 14169-2:2012 Draft Server Signing PP: prEN 419 241-2

Evaluation lab: TÜViT in Germany Consultant lab: CCLabs in Hungary Evaluation process started in the beginning of 2017 and fnished in the end of 2018 Evaluation assurance level for server-side component: EAL4 + AVA VAN.5 Evaluation assurance level for client-side component: EAL2

March 13th 2019 6

Page 18: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN
Page 19: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Covered threats in eIDAS QSCD Signer enrolment: Enrolment Forgery, Random Guessable, PubKey Forgery, MITM Signing process: PIN Guessing, Authentication Forgery, Access Control ByPass, Replay, MITM, Cloning, Tampering Cryptographic: Signature Forgery, Hash Forgery Other: Unauthorized System Access, Audit Log Forgery

March 13th 2019 8

Page 20: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Reduced threats, because of applied TC

Signer enrolment: Enrolment Forgery, Random Guessable, PubKey Forgery, MITM Signing process: PIN Guessing, Authentication Forgery, Access Control ByPass, Replay, MITM, Cloning, Tampering Cryptographic: Signature Forgery, Hash Forgery Other: Unauthorized System Access, Audit Log Forgery

March 13th 2019 9

Page 21: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Policy security requirements for eIDAS QSCD

Private key: Randomness, Confdentiality, Sole Control to Signer Signing process: Hash Integrity Cryptographic: Cryptographically Secure Signature Scheme Organisational: Qualifed Trust Service Provider

March 13th 2019 10

Page 22: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Fulflled requirements, because of applied TC

Private key: Randomness, Confdentiality, Sole Control to Signer Signing process: Hash Integrity Cryptographic: Cryptographically Secure Signature Scheme Organisational: Qualifed Trust Service Provider

March 13th 2019 11

Page 23: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Used by online banking, retail, telcos,government, etc.SplitKey was originally developed for theSmart-ID service, now spun o˙ to independentproduct line

Smart-ID – A commercial service with SplitKey

Legally compliant digital signature (eIDAS) and strong authentication service (PSD2) in Europe Developed and operated by SK Identity Solutions AS, a private company in Estonia.

March 13th 2019 12

Page 24: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

SplitKey was originally developed for theSmart-ID service, now spun o˙ to independentproduct line

Smart-ID – A commercial service with SplitKey

Legally compliant digital signature (eIDAS) and strong authentication service (PSD2) in Europe Developed and operated by SK Identity Solutions AS, a private company in Estonia. Used by online banking, retail, telcos, government, etc.

March 13th 2019 12

Page 25: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Smart-ID – A commercial service with SplitKey

Legally compliant digital signature (eIDAS) and strong authentication service (PSD2) in Europe Developed and operated by SK Identity Solutions AS, a private company in Estonia. Used by online banking, retail, telcos, government, etc. SplitKey was originally developed for the Smart-ID service, now spun o˙ to independent product line

March 13th 2019 12

Page 26: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Smart-ID authentication fow Authentication is started from the RP’s webpage or RP’s app, custom REST API. OpenID Connect API supported, but not widely used.

March 13th 2019 13

Page 27: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Smart-ID uptake since the launch

Page 28: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Smart-ID uptake and usage

1.88 M active users in total 35% of adult population in Estonia, Latvia, and Lithuania 43% - 49% of smartphone users 30 M transactions per month

March 13th 2019 15

Page 29: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

to create an eÿcient digital signature schemeease security evaluation and reduce risksto reach about 2 million users in production within 3 years

Questions?

Summary

Successful example of how to use threshold cryptography:

March 13th 2019 16

Page 30: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

ease security evaluation and reduce risksto reach about 2 million users in production within 3 years

Questions?

Summary

Successful example of how to use threshold cryptography:

to create an eÿcient digital signature scheme

March 13th 2019 16

Page 31: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

to reach about 2 million users in production within 3 years

Questions?

Summary

Successful example of how to use threshold cryptography:

to create an eÿcient digital signature scheme ease security evaluation and reduce risks

March 13th 2019 16

Page 32: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Questions?

Summary

Successful example of how to use threshold cryptography:

to create an eÿcient digital signature scheme ease security evaluation and reduce risks to reach about 2 million users in production within 3 years

March 13th 2019 16

Page 33: SplitKey –AThreshold Cryptography Case Study · 3/13/2019  · eIDAS QSCD/Common Criteria evaluation : Based on the eIDAS regulation. Old SecureSignature Creation Device PP:prEN

Summary

Successful example of how to use threshold cryptography:

to create an eÿcient digital signature scheme ease security evaluation and reduce risks to reach about 2 million users in production within 3 years

Questions?

March 13th 2019 16