N-of-m authentication doesn't support pin pad reader?

Hi,

In smart card shell gui there is a “Login with PIN PAD” option in the context menu (which works fine) but it is not present when trying to authenticate a user with a nitrokey setup with n-of-m.

Would it be possible to add this? How would i go about it?
Or maybe the feature exists but just not showing for me? I tried using a Cyberjack One from Reiner.

Many thanks,
Doug

That is indeed missing in the KeyManager class. You could add in keymanager/KeyManager.js in method authenticateWithPublicKey() the following:

var pin = Dialog.prompt("Enter PIN", "*");
if (pin == null) {
	return;
}

if (pin.length == 0) {
	var cs = sc.getNativeCardService();
	cs.useClassThreePinPad(true);

	var sw = sc.verifyUserPIN();
	if (sw != 0x9000) {
		print("PIN verification failed");
		return;
	}
} else {
	sc.verifyUserPIN(new ByteString(pin, ASCII));
}

So when you leave the PIN entry empty, it will prompt for the PIN on the attached PIN pad.