[macOS] Chrome fails with ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED using Spanish DNIe (CTK/Tokend issue)
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 46/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- c, macos
- Lĩnh vực
- authentication, security
Hướng nghiên cứu
Start by tracing the macOS CryptoTokenKit/Tokend integration used by Chrome and Safari; the report does not identify a source file or test. Compare its signature handling with the working PKCS#11 path in Firefox, focusing on TLS signature algorithm and PSS-padding negotiation. Done means DNIe client-certificate authentication completes in Chrome with the reported reader and card, without breaking the working Firefox path.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Bug Report
System Information:
- OS: macOS Tahoe 26.2
- OpenSC Version: 0.26.1 (Installed via DMG installer)
- Reader: ACS CCID USB Reader
- Smart Card: Spanish DNIe (DNI electrónico 3.0/4.0)
- Browser: Google Chrome (Latest stable)
Description of the Issue
I am trying to use the Spanish National ID (DNIe) to authenticate on government websites.
While OpenSC correctly detects the card and I have manually trusted the Intermediate CAs (AC DNIE 004) in the macOS Keychain, resulting in Chrome showing the certificate as "Valid" during selection, the authentication handshake fails immediately after selecting the certificate.
The Error:
Chrome displays: ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED.
It appears to be an issue with how OpenSC via the macOS CryptoTokenKit (CTK) bridge handles the signature request during the TLS handshake in Chrome (likely related to TLS 1.3 signature algorithms or PSS padding requirements not being correctly negotiated/passed to the OS).
Steps to Reproduce
- Install OpenSC via the official DMG installer on macOS.
- Connect an ACS CCID USB Reader and insert the Spanish DNIe.
- Verify detection with
opensc-tool -n(Output:dnie). - Ensure Root and Intermediate CAs (AC DNIE 004) are installed and set to "Always Trust" in macOS Keychain.
- Open Google Chrome and navigate to a site requiring client certificate authentication.
- Chrome prompts to select the certificate. Select the valid DNIe certificate.
- Result: The browser fails to complete the handshake and returns
ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED.
Logs / Technical Details
opensc-tool -n output:
Using reader with a card: ACS CCID USB Reader
dnie
security list-smartcards output:
(Shows the card is recognized by the system)
Additional Context
- Firefox works: If I use Firefox and manually load the PKCS#11 module (
/Library/OpenSC/lib/opensc-pkcs11.so), authentication works perfectly. This confirms the card, reader, and OpenSC core library are functional. - Problem is isolated to System/Chrome integration: The issue only arises when relying on the system-wide integration (CTK/Tokend) used by Chrome/Safari.
- The official proprietary driver from the Spanish Police (FNMT) does not work with this specific reader (ACS), so OpenSC is the only viable option for this hardware.
- Ngôn ngữ chính
- C
- Star
- 3.1k
- Fork
- 858
- Merge trung bình
- 4 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 16
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của OpenSC/OpenSC
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
OpenSC/OpenSC#3881 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
card lock not released in error pathCó thể đã có người làm @mvogt1 đã nhận 6 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Commit from 08.10.26 breaks cachingCó thể đã có người làm @mvogt1 đã nhận 6 ngày trước. Đang mởbug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 18/100
OpenSC/OpenSC#3878 · 7 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
enhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 66/100
OpenSC/OpenSC#3864 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của OpenSC/OpenSC
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
Maintainer thường phản hồi trong vòng 8 ngày
-
native-cpu: -Wreturn-type in skainet_row_threads.c:150 (worker fn has no return)Có thể đã có người làm @Doomguy-BFG9000 đã nhận hôm nay. Đang mởgood first issue size:xs skill:native
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
SKaiNET-developers/SKaiNET#1358 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
I/O internal correctness medium priority rt_lib
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
libsdl-org/SDL#16539 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
git-workflow task-4
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100