Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request for information to enroll a User Certificate and Private key into the Virtual smart Card #280

Open
monojeets opened this issue Jun 13, 2024 · 1 comment

Comments

@monojeets
Copy link

I am looking for some information or pointers on how can i enroll a User Certificate and a Private Key into the VSC so that it can be used for Authentication.

I have successfully configured and started VPCD and VICC. I can see the VSC is now inserted into the virtual reader.
host@host:~$ pcsc_scan
Using reader plug'n play mechanism
Scanning present readers...
0: Virtual PCD 00 00
1: Virtual PCD 00 01

Fri Jun 14 00:54:28 2024
Reader 0: Virtual PCD 00 00
Event number: 1
Card state: Card inserted,
ATR: 3B 95 13 81 01 80 73 FF 01 00 0B

ATR: 3B 95 13 81 01 80 73 FF 01 00 0B

  • TS = 3B --> Direct Convention
  • T0 = 95, Y(1): 1001, K: 5 (historical bytes)
    TA(1) = 13 --> Fi=372, Di=4, 93 cycles/ETU
    43010 bits/s at 4 MHz, fMax for Fi = 5 MHz => 53763 bits/s
    TD(1) = 81 --> Y(i+1) = 1000, Protocol T = 1

TD(2) = 01 --> Y(i+1) = 0000, Protocol T = 1

  • Historical bytes: 80 73 FF 01 00
    Category indicator byte: 80 (compact TLV data object)
    Tag: 7, len: 3 (card capabilities)
    Selection methods: FF
    - DF selection by full DF name
    - DF selection by partial DF name
    - DF selection by path
    - DF selection by file identifier
    - Implicit DF selection
    - Short EF identifier supported
    - Record number supported
    - Record identifier supported
    Data coding byte: 01
    - Behaviour of write functions: one-time write
    - Value 'FF' for the first byte of BER-TLV tag fields: invalid
    - Data unit in quartets: 2
    Command chaining, length fields and logical channels: 00
    - Logical channel number assignment: No logical channel
    - Maximum number of logical channels: 1
  • TCK = 0B (correct checksum)

Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B 95 13 81 01 80 73 FF 01 00 0B
vsmartcard - iso7816 (Other)
https://frankmorgner.github.io/vsmartcard/

Would anyone have any pointers on how can i now enroll Cert and Private Key into this VSC? I think i need to use APDU commands but a little more details on the smart card structure or any other documentation will be really helpful.

Any help appreciated.

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants