Monday, January 6, 2020

New generator for the CCID readers pages

Since Python 2.x is no more maintained from 1st January 2020 I had to move the script to generate some CCID pages to Python 3.

These pages are the famous ones available from

Technology update

The previous Python script used templayer. templayer is no more maintained since 2009 and only works with Python 2.
I now use Jinja2.

Request for comments

If you see a problem or want to propose a change to these web pages just email me or the pcsclite-muscle mailing list. It is the good time to make suggestions.
It can be about the information provided on the pages or the graphical design of the pages (you may have noted that I am not a website designer).

Saturday, January 4, 2020

New version of pcsc-tools: 1.5.5

I just released a new version of pcsc-tools, a suite of tools for PC/SC.


1.5.5 - 4 January 2020, Ludovic ROUSSEAU
  • 353 new ATRs
  • scriptor: add -u option to make stdout unbuffered

Friday, January 3, 2020

New version of pcsc-lite: 1.8.26

I just released a new version of pcsc-lite 1.8.26.
pcsc-lite is a Free Software implementation of the PC/SC (or WinSCard) API for Unix systems.


1.8.26: Ludovic Rousseau
3 January 2020
  • Use poll() instead of select() to allow file descriptor higher than FD_SETSIZE
  • Enable reader filtering by default
  • pcsc-spy:
    • Do not read output buffer after error
    • Adjust code to handle autoallocated buffers
    • fix year-2038 issue by using long instead of int
  • Android: fix compilation
  • if client/server protocol mismatch:
    • log an explicit message
    • SCardEstablishContext() returns SCARD_E_SERVICE_STOPPED
  • polkit: log the error message if polkit_authority_get_sync() fails
  • Exit with EXIT_SUCCESS on shutdown to please systemd
  • Doxygen: fix minor issues in the documentation
  • Add --disable-documentation option
  • Fix a minor memory leak


The major change is the use of reader filtering by default. No need to rebuild pcsc-lite using --enable-filter any more.
The feature was introduced in 2015 and is documented at "Remove and/or customize PC/SC reader names".

This feature is requested in packages by some users.

To avoid that each GNU/Linux distribution changes the packaging configuration to enable the feature I decided to enable the feature by default in the upstream project.

This change should not have any bad side effect. Only root can modify the configuration file /etc/default/pcscd or the systemd file /etc/systemd/system/pcscd.service.d/override.conf.

For systemd use: sudo systemctl edit pcscd to add something like:

You can get the previous behaviour by using
./configure --disable-filter

Wednesday, January 1, 2020

MUSCLE mailing list statistics for 2019

As I did in 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 and 2018 I propose some statistics of the MUSCLE mailing list usage.


YearTotal number of messages Progression
2010718+19 %
2011999+39 %
2012207-79 %
2013198-4 %
2014194-2 %
2014194-2 %
2015120-38 %
2016125+4 %
2017128+2 %
201866-51 %
201929-56 %


Again a high decrease in number of messages.
I note that I receive many messages directly by email instead of from the mailing list.

My interpretation is (same as one year ago) that the development of pcsc-lite and related software is now complete. Only rare bugs are reported.
Now users are asking for support or help and the easiest way to contact me is using one of my emails.

Statistics from 3.1.2019 to 24.11.2019

People who have written most messages:

 Author  Msg  Percent
1ludovic.rousseau@gmail.com1655.17 %
2wrosenauer@gmail.com310.34 %
3brice.gagnage@renault.com26.90 %
4ertan@cronosmedikal.com26.90 %
5frankmorgner@gmail.com13.45 %
6=?iso-8859-1?Q?Ralph_Pr=FCtting_=40_Active_Key_GmbH_=26_Co=2E_KG?=13.45 %
700cpxxx@gmail.com13.45 %
8godfreyhkchung@gmail.com13.45 %
9pnickerson@cashstar.com13.45 %
10gsvelto@mozilla.com13.45 %
other00.00 %

Best authors, by total size of their messages (w/o quoting):

 Author  KBytes

Best authors, by average size of their message (w/o quoting):

 Author  bytes

Table showing the most successful subjects:

 Subject  Msg  Percent
1[Pcsclite-muscle] Interaction pcsc-lite and Yubikey413.79 %
2[Pcsclite-muscle] Bug fix for ccid-1.4.31310.34 %
3[Pcsclite-muscle] pcscd errors break https for chromium-based browsers26.90 %
4[Pcsclite-muscle] Stuck in a CCID_Receive Overrun error loop26.90 %
5[Pcsclite-muscle] Yubico YubiKey 5: RFInitializeReader() Open Port13.45 %
6[Pcsclite-muscle] Yubico YubiKey 5: RFInitializeReader() Open13.45 %
7[Pcsclite-muscle] Multiple command processing and card recognition13.45 %
8[Pcsclite-muscle] Very low cost PCSC card reader13.45 %
9[Pcsclite-muscle] Multiple command processing and card13.45 %
10New version of pcsc-lite: 1.8.2513.45 %
11[Pcsclite-muscle] What happened to the PC/SC workgroup (and site)?13.45 %
12[Pcsclite-muscle] CCID driver release13.45 %
13[Pcsclite-muscle] pcscd unable to handle second interface on ACS ACR1281U-C113.45 %
14[Muscle] Is there a way to know if a reader is contactless?13.45 %
15[Pcsclite-muscle] [Muscle] Is there a way to know if a reader is contactless?13.45 %
16[Pcsclite-muscle] acsccid 1.1.7 Released13.45 %
17New version of libccid: 1.4.3113.45 %
18[Pcsclite-muscle] Raise SCardTransmit timeout13.45 %
19[Pcsclite-muscle] looking for fast ISO7816-3 card (clock and baud rates)13.45 %
20[PATCH] Use poll() instead of select()13.45 %
21[Pcsclite-muscle] select()-induced crashes (and attached13.45 %
22[Pcsclite-muscle] NFC13.45 %
other00.00 %

Most used email clients:

 Mailer  Msg  Percent
1(unknown)2689.66 %
2Microsoft Outlook 16.026.90 %
3Mozilla/5.x13.45 %
other00.00 %

Table of maximal quoting:

 Author  Percent
1wrosenauer@gmail.com39.19 %
2godfreyhkchung@gmail.com16.23 %
3ertan@cronosmedikal.com9.90 %
400cpxxx@gmail.com3.77 %
5ludovic.rousseau@gmail.com2.78 %
6brice.gagnage@renault.com0.87 %
7frankmorgner@gmail.com0.00 %
8=?iso-8859-1?Q?Ralph_Pr=FCtting_=40_Active_Key_GmbH_=26_Co=2E_KG?=0.00 %
9pnickerson@cashstar.com0.00 %
10gsvelto@mozilla.com0.00 %
average2.99 %

Maximal quoting:

Author :
Subject : [Pcsclite-muscle] Interaction pcsc-lite and Yubikey

Date : Thu, 31 Jan 2019 11:49:26 +0100

Quote ratio: 78.91% / 4505 bytes

Longest message:

Author :
Subject : [Pcsclite-muscle] pcscd errors break https for chromium-based browsers
Date : Tue, 26 Feb 2019 20:28:50 +0200
Size : 363885 bytes

Most successful subject:

Subject : [Pcsclite-muscle] Interaction pcsc-lite and Yubikey
No. of msgs: 4
Total size : 19290 bytes

Final summary:

Total number of messages: 29
Total number of different authors: 10
Total number of different subjects: 22
Total size of messages (w/o headers): 1518712 bytes
Average size of a message: 52369 bytes

Input file last updated: Wed Jan 1 16:53:58 2020Generated by MailListStat v1.3

Happy new year 2020

Dear readers,

I wish you a happy new year for 2020.

In 2019 I published 25 articles on this blog (24 in 2018, 34 in 2017 and 49 in 2016 and 51 in 2015). It is stable compared to 2018.


The number of readers in 2019 is also stable compared to 2018.

A large part of readers came from the USA. This year Germany is second followed by France.

Most read articles

PCSC sample in C15.15 %=
Blog homepage24.80 %=
PC/SC sample in different languages34.62 %=
Smart card integration in macOS Sierra: CryptoTokenKit plugin43.42 %new
PCSC sample in C# 53.02 %-1
PCSC sample in Python 62,81 %-1
pcscd auto start using systemd 72.80 %=
PCSC sample in Java 82,19 %-2
Linux NFC driver conflicts with CCID driver for ACS ACR122U 92.12 %+1
PCSC sample in JavaScript (Node.js) 101.92 %-1

PC/SC sample articles are always successful. I wrote them in 2010.

The first article from those I wrote in 2019 is at position 20 and is "macOS Catalina and smart cards status".

If I use the results for the previous month (Dec 2019) I find a different picture:
We still have the old PC/SC samples (in C, Python, Java and C#) but also 4 articles about smart card and macOS.
I am happy to see my blog is useful to macOS users, developers, etc.

Thank you

Thank you to you, readers.

This blog has no advertising. If you want to support me you can send me some bitcoins. If you want to send $ or € instead of bitcoins then contact me.

Wednesday, December 18, 2019

New PyKCS11 1.5.7 available

I just released a new version of PyKCS11, a Python wrapper above the PKCS#11 API.
See "PyKCS11 introduction" or "PyKCS11’s documentation".


1.5.7 - December 2019, Ludovic Rousseau
  • add missing files in the .tar.gz

1.5.6 - December 2019, Ludovic Rousseau
  • AppVeyor:
    • generate bdist_wheel
    • add Python 3.7 and 3.8
  • Sample add a -f/--full argument
  • Add support of CKM_AES_GCM mechanism
  • CPKCS11Lib::Load(): return different error codes
  • minor improvements

Thursday, December 12, 2019

tokend support is NOT broken Catalina

Upgrade regression

3 weeks ago I wrote the article "tokend support is broken Catalina 10.15.1" because I could no more use the tokend I am working on after the upgrade from Catalina 10.15.0 to Catalina 10.15.1.

Fake news?

Today I upgraded to Catalina 10.15.2 and the problem is still present.
To be sure I installed OpenSC and the tokend from OpenSC works fine on Catalina 10.15.2. Good job OpenSC team.

So the problem is not Catalina but my tokend.
I then noticed a line in the system logs:
kernel Sandbox: securityd(638) deny(1) process-exec* [...]

I have a problem with the tokend sandbox and need to fix it. The problem is on my side :-(


I wrongly accused Apple to have introduced a bug in macOS. I am sorry for that.
Next time I will double check the problem is really not on my side.