@@ -433,48 +433,212 @@ <h3>
433
433
< h2 >
434
434
Security Considerations
435
435
</ h2 >
436
- < p class ="issue " title ="Work in Progress ">
437
- This section is a work in progress as this document evolves.
438
- </ p >
439
- < p >
440
- The documents listed below outline initial security considerations for
441
- Digital Credentials, both broadly and for presentation on the web.
442
- Their contents will be integrated into this document gradually.
443
- </ p >
444
- < ul >
445
- < li >
446
- < a href =
447
- "https://github.com/WICG/digital-credentials/blob/main/horizontal-reviews/security-privacy.md ">
448
- TAG Security and Privacy Considerations Questionnaire (WIP)</ a >
449
- </ li >
450
- </ ul >
436
+ < div class ="issue " title ="Security Considerations section is a work in progress ">
437
+ < p >
438
+ This section is a work in progress as this document evolves.
439
+ </ p >
440
+
441
+ < p >
442
+ The documents listed below outline initial security considerations for
443
+ Digital Credentials, both broadly and for presentation on the web.
444
+ Their contents will be integrated into this document gradually.
445
+ </ p >
446
+ < ul >
447
+ < li >
448
+ < a href =
449
+ "https://github.com/WICG/digital-credentials/blob/main/horizontal-reviews/security-privacy.md ">
450
+ TAG Security and Privacy Considerations Questionnaire (WIP)</ a >
451
+ </ li >
452
+ < li >
453
+ < a href ="https://github.com/w3c-cg/threat-modeling/blob/main/models/decentralized-identities.md ">
454
+ Threat Model for Decentralized Identities</ a >
455
+ </ li >
456
+ </ ul >
457
+ </ div >
458
+
459
+ < section >
460
+ < h3 > Credential Protocols</ h3 >
461
+
462
+ < p class ="issue " title ="Work in progress ">
463
+ Explain that while the API provides security at the browser API level, that
464
+ security for the underlying credential issuance or presentation protocol is a
465
+ separate concern and that developers need to understand that layer of the stack
466
+ to get a total picture of the protections that are in place during any given
467
+ transaction.
468
+ </ p >
469
+ </ section >
470
+
471
+ < section >
472
+ < h3 > Cross-device Protocols</ h3 >
473
+
474
+ < p class ="issue " title ="Work in progress ">
475
+ Explain that cross-device issuance or presentation uses a separate protocol
476
+ that has its own security characteristics.
477
+ </ p >
478
+ </ section >
479
+
480
+ < section >
481
+ < h3 > Quishing</ h3 >
482
+
483
+ < p class ="issue " title ="Work in progress ">
484
+ Explain that the API is designed to avoid the problem of quishing
485
+ (phishing via QR Codes) and other QR Code and non-browser API-based attacks
486
+ and to be aware of exposure of QR Codes during digital credential interactions.
487
+ </ p >
488
+ </ section >
489
+
490
+ < section >
491
+ < h3 > Data Integrity</ h3 >
492
+
493
+ < p class ="issue " title ="Work in progress ">
494
+ Explain that the API does not provide data integrity on the digital
495
+ credential requests or responses and that responsibility is up to the
496
+ underlying protocol used for the request or response.
497
+ </ p >
498
+ </ section >
499
+
500
+ < section >
501
+ < h3 > Authentication</ h3 >
502
+
503
+ < p class ="issue " title ="Work in progress ">
504
+ Explain that authentication (such as a PIN code to unlock) to a particular app,
505
+ such as a digital wallet, that responds to an API request is crucial in
506
+ high-risk use cases.
507
+ </ p >
508
+ </ section >
509
+
510
+ < section >
511
+ < h3 > Cross-Site Scripting (XSS) and Cross-Site Request Forgery (CSRF)</ h3 >
512
+
513
+ < p class ="issue " title ="Work in progress ">
514
+ Explain what attacks are possible via XSS and CSRF, if any.
515
+ </ p >
516
+ </ section >
517
+
518
+ < section >
519
+ < h3 > Session Security</ h3 >
520
+
521
+ < p class ="issue " title ="Work in progress ">
522
+ Explain that once a secure session is established at a website using
523
+ credentials exchanged over this API, that the subsequent security is no
524
+ longer a function of the credential used or this API and is up to the
525
+ session management utilized on the website.
526
+ </ p >
527
+ </ section >
528
+
451
529
</ section >
530
+
452
531
< section class ="informative ">
453
532
< h2 >
454
533
Privacy Considerations
455
534
</ h2 >
456
- < p class ="issue " title ="Work in Progress ">
535
+ < div class ="issue " title ="Privacy Considerations section is a work in progress ">
536
+ < p >
457
537
This section is a work in progress as this document evolves.
458
- </ p >
459
- < p >
460
- The documents listed below outline various privacy considerations for
461
- Digital Credentials, both broadly and for presentation on the web.
462
- Their contents will be integrated into this document gradually.
463
- </ p >
464
- < ul >
465
- < li >
466
- < a href =
467
- "https://github.com/WICG/digital-credentials/blob/main/horizontal-reviews/security-privacy.md ">
468
- TAG Security and Privacy Considerations Questionnaire (WIP)</ a >
469
- </ li >
470
- < li >
471
- < a href ="https://github.com/w3cping/credential-considerations "> W3C
472
- Privacy Interest Group (PING) Credentials Considerations
473
- repository</ a > which contains in-progress list of concerns and
474
- implications of identity-verification and credential presentation,
475
- for consideration in Internet and Web standardization
476
- </ li >
477
- </ ul >
538
+ </ p >
539
+ < p >
540
+ The documents listed below outline various privacy considerations for
541
+ Digital Credentials, both broadly and for presentation on the web.
542
+ Their contents will be integrated into this document gradually.
543
+ </ p >
544
+ < ul >
545
+ < li >
546
+ < a href =
547
+ "https://github.com/WICG/digital-credentials/blob/main/horizontal-reviews/security-privacy.md ">
548
+ TAG Security and Privacy Considerations Questionnaire (WIP)</ a >
549
+ </ li >
550
+ < li >
551
+ < a href ="https://github.com/w3cping/credential-considerations "> W3C
552
+ Privacy Interest Group (PING) Credentials Considerations
553
+ repository</ a > which contains in-progress list of concerns and
554
+ implications of identity-verification and credential presentation,
555
+ for consideration in Internet and Web standardization
556
+ </ li >
557
+ < li >
558
+ < a href ="https://github.com/w3c-cg/threat-modeling/blob/main/models/decentralized-identities.md ">
559
+ Threat Model for Decentralized Identities</ a >
560
+ </ li >
561
+ </ ul >
562
+ </ div >
563
+
564
+ < section >
565
+ < h3 > Unnecessary Requests for Credentials</ h3 >
566
+
567
+ < p class ="issue " title ="Work in progress ">
568
+ Explain how the API could be used to unnecessarily request digital credentials
569
+ from individuals such as requesting a driver's license to log into a
570
+ movie rating website and how the ecosystem can mitigate this risk.
571
+ </ p >
572
+ </ section >
573
+
574
+ < section >
575
+ < h3 > Over Collection of Data</ h3 >
576
+
577
+ < p class ="issue " title ="Work in progress ">
578
+ Explain how the API could be used to request more data than necessary for
579
+ a transaction and how the ecosystem can mitigate that over collection.
580
+ </ p >
581
+ </ section >
582
+
583
+ < section >
584
+ < h3 > Individual Consent</ h3 >
585
+
586
+ < p class ="issue " title ="Work in progress ">
587
+ Explain how the API acquires an individual's consent to share a digital
588
+ credential and how digital wallets can also provide further consent when
589
+ sharing information.
590
+ </ p >
591
+ </ section >
592
+
593
+ < section >
594
+ < h3 > Data Retention</ h3 >
595
+
596
+ < p class ="issue " title ="Work in progress ">
597
+ Explain how verifiers might retain data and what the ecosystem does to
598
+ mitigate excessive data retention policies.
599
+ </ p >
600
+ </ section >
601
+
602
+ < section >
603
+ < h3 > Compliance with Privacy Regulations</ h3 >
604
+
605
+ < p class ="issue " title ="Work in progress ">
606
+ Explain to what extent the API complies with known privacy regulations (e.g.,
607
+ consent) and what parts of those regulations are not possible to enforce via the
608
+ API (e.g., retention).
609
+ </ p >
610
+ </ section >
611
+
612
+ < section >
613
+ < h3 > Selective and Unlinkable Disclosure</ h3 >
614
+
615
+ < p class ="issue " title ="Work in progress ">
616
+ Explain how selective disclosure and unlinkable disclosure help preserve
617
+ privacy as well as their limitations in doing so.
618
+ </ p >
619
+ </ section >
620
+
621
+ < section >
622
+ < h3 > Phoning Home</ h3 >
623
+
624
+ < p class ="issue " title ="Work in progress ">
625
+ Explain how some systems might "phone home", the impact on privacy that
626
+ might have, and what the ecosystem provides to mitigate the risk.
627
+ </ p >
628
+ </ section >
629
+
630
+ < section >
631
+ < h3 > Transmission of Personally Identifiable Information</ h3 >
632
+
633
+ < p class ="issue " title ="Work in progress ">
634
+ Explain that the API does enable the transmission of personally identifiable
635
+ information and that it does its best to ensure there is informed consent
636
+ by the individual, but that the consent might be provided due to exhaustion
637
+ or not understanding what PII is being transmitted and how to mitigate those
638
+ concerns.
639
+ </ p >
640
+ </ section >
641
+
478
642
</ section >
479
643
< section class ="informative ">
480
644
< h2 >
0 commit comments