Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Для установки OpenSC следует ввести команду:$

Command
sudo apt install opensc

Opensc-tool

Идентификация

Для идентификация токена/смарт-карты и его серийного номера, следует ввести команду:

$ opensc-tool --name --atr --serial
$
Command
Блок кода
Title
opensc-tool
--name
--atr
--serial

Using

reader

with

a

card:

Aktiv

Co.

Rutoken

S

00

00


3b:6f:00:ff:00:56:72:73:54:ff:6b:6e:73:30:20:00:00:90:00


Rutoken

S

card

Содержимое токена/смарт карты

Для того чтобы рекурсивно отобразить список файлов в токене/смарткарте, следует ввести команду:

...

Command

opensc-tool

...

--list-files

Пример вывода команды:

Блок кода
$ opensc-tool --list-files

Using Using reader with a card: Aktiv Co. Rutoken S 00 00
3f00 type: DF, size: 0
select[NONE] lock[N/A] delete[NEVR] create[CHV2] rehab[N/A] inval[N/A] list[NONE] sec: 6F:01:01:01:01:00:FF:FF:02:00:00:00:02:00:00:00:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00

  3f000000 type: DF, size: 0
  select[NONE] lock[N/A] delete[NEVR] create[CHV2] rehab[N/A] inval[N/A] list[NONE] sec: 6F:01:01:01:01:00:FF:FF:02:00:00:00:02:00:00:00:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00

...

3f000000000000020a000a06 type: wEF, ef structure: transparent, size: 300
          read[N/A] update[CHV2] erase[CHV2] write[CHV2] rehab[N/A] inval[N/A] sec: 42:00:01:00:00:00:00:01:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00

00000000: 30 14 16 08 54 65 73 74 43 6F 6E 74 80 08 54 65 0...TestCont..Te
00000010: 73 74 43 6F 6E 74 00 00 00 00 00 00 00 00 00 00 stCont..........
00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

3f000000000000020a000a03 type: wEF, ef structure: transparent, size: 3072
          read[N/A] update[CHV2] erase[CHV2] write[CHV2] rehab[N/A] inval[N/A] sec: 42:00:01:00:00:00:00:01:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00

00000000: 30 82 04 4B 30 82 04 41 A0 0A 06 08 2A 85 03 02 0..K0..A....*...
00000010: 02 25 02 01 03 02 06 40 30 24 03 01 00 A0 1F 06 .%.....@0$......
00000020: 08 2A 85 03 07 01 01 01 01 30 13 06 07 2A 85 03 .*.......0...*..
00000030: 02 02 23 01 06 08 2A 85 03 07 01 01 02 02 82 04 ..#...*.........
00000040: 00 00 00 00 A4 25 03 02 05 20 A0 1F 06 08 2A 85 .....%... ....*.
00000050: 03 07 01 01 06 01 30 13 06 07 2A 85 03 02 02 24 ......0...*....$
00000060: 00 06 08 2A 85 03 07 01 01 02 02 86 82 03 82 30 ...*...........0
00000070: 82 03 7E 30 82 03 2D A0 03 02 01 02 02 13 12 00 ..~0..-.........
00000080: 2E 5F 42 04 FC 38 83 8E 34 42 9D 00 00 00 2E 5F ._B..8..4B....._
00000090: 42 30 08 06 06 2A 85 03 02 02 03 30 7F 31 23 30 B0...*.....0.1#0
000000A0: 21 06 09 2A 86 48 86 F7 0D 01 09 01 16 14 73 75 !..*.H........su
000000B0: 70 70 6F 72 74 40 63 72 79 70 74 6F 70 72 6F 2E pport@astralinux
000000C0: 72 75 31 0B 30 09 06 03 55 04 06 13 02 52 55 31 .ru.0...U....RU1
000000D0: 0F 30 0D 06 03 55 04 07 13 06 4D 6F 73 63 6F 77 .0...U....Moscow
000000E0: 31 17 30 15 06 03 55 04 0A 13 0E 43 52 59 50 54 1.0...U....ASTRA
000000F0: 4F 2D 50 52 4F 20 4C 4C 43 31 21 30 1F 06 03 55 - RBT LLC1!0...U
00000100: 04 03 13 18 43 52 59 50 54 4F 2D 50 52 4F 20 54 ....Astra-RBT0 T
00000110: 65 73 74 20 43 65 6E 74 65 72 20 32 30 1E 17 0D est Center 20...
00000120: 31 38 31 30 31 39 30 37 35 30 34 39 5A 17 0D 31 181019075049Z..1
00000130: 39 30 31 31 39 30 38 30 30 34 39 5A 30 81 8C 31 90119080049Z0..1
00000140: 21 30 1F 06 09 2A 86 48 86 F7 0D 01 09 01 16 12 !0...*.H........
00000150: 75 73 65 72 40 61 73 74 72 61 6C 69 6E 75 78 2E user@astralinux.

          3f000000000000020a000a02 type: wEF, ef structure: transparent, size: 70
          read[CHV2] update[CHV2] erase[CHV2] write[CHV2] rehab[N/A] inval[N/A] sec: 43:01:01:00:00:00:00:01:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00

          3f000000000000020a000a01 type: wEF, ef structure: transparent, size: 60
          read[CHV2] update[CHV2] erase[CHV2] write[CHV2] rehab[N/A] inval[N/A] sec: 43:01:01:00:00:00:00:01:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00

          3f000000000000020a000a05 type: wEF, ef structure: transparent, size: 70
          read[CHV2] update[CHV2] erase[CHV2] write[CHV2] rehabre$ opensc-tool --list-fileshab[N/A] inval[N/A] sec: 43:01:01:00:00:00:00:01:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00

          3f000000000000020a000a04 type: wEF, ef structure: transparent, size: 60
          read[CHV2] update[CHV2] erase[CHV2] write[CHV2] rehab[N/A] inval[N/A] sec: 43:01:01:00:00:00:00:01:02:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00


Opensc-explorer

Для старта программы, следует запустить команду $openscзапуска программы opensc-explorer выплнить команду:

Command
opensc-explorer

Запрос информации о корневом файле

...

Блок кода
info 3F00

Dedicated File  ID 3F00

File path:     3F00
3F00$ opensc-tool --list-files File size:     0 bytes
ACL for SELECT:       NONE
ACL for LOCK:         N/A
ACL for DELETE:       NEVR
ACL for CREATE:       CHV2
ACL for REHABILITATE: N/A
ACL for INVALIDATE:   N/A
ACL for LIST FILES:   NONE
ACL for CRYPTO:       N/A
ACL for DELETE SELF:  N/A
Security attributes:     47 02 02 01 00 00 00 FF 00 00 00 00 00 00 00


Информация
  • где , 3F00 - id корневой директории


Создание файла на смарткарте/копирование/удаление.

...

Создаем

...

на

...

смарткарте

...

файл

...

8888/1F00

...

и

...

загружаем

...

его

...

обратно

...

на диск:

Создаем файл test.bin со случайным содержимым:

диск $ dd
Command
Titledd
if=/dev/urandom
of=test.bin
bs=1024
count=1

1+0

записей

считано


1+0

записей

написано


  скопировано

1024

байта

(1,0

kB),

0,000283354

c,

3,6

MB/c

$

Загружаем файл на смарткарту и выгружаем его копию:

Command
Titleopensc-explorer

OpenSC

[3F00]>

mkdir

8888

256



OpenSC

[3F00]>

cd

8888



OpenSC

[3F00/8888]>

create

1F00

1024



OpenSC

[3F00/8888]>

put

1F00

test.bin


Total

of

1024

bytes

written.



OpenSC

[3F00/8888]>

info

1F00



Elementary

File

ID

1F00



File

path:

3F00/8888/1F00


File

size:

1024

bytes


EF

structure:

Transparent


ACL

for

READ:

N/A


ACL

for

UPDATE:

N/A


ACL

for

DELETE:

N

N/A


ACL

for

WRITE:

N/A


ACL

for

REHABILITATE:

N/A


ACL

for

INVALIDATE:

N/A


ACL

for

LIST

FILES:

N/A


ACL

for

CRYPTO:

N/A



OpenSC

[3F00/8888]>

get

1F00

check.bin


Total

of

1024

bytes

read

from

1F00

and

saved

to

check.bin.



OpenSC

[3F00/8888]>

rm

1F00



OpenSC

[3F00/8888]>

cd

..



OpenSC

[3F00]>

rm

8888 Проверим, что содержимое файлов

8888

Проверить, что содержимое файлов test.bin

...

и

...

check.bin совпадает можно командой:

Command

md5sum

совпадает $ md5sum

test.bin

check.bin

804420d7560e82065b74eff561cfb2c8 test.bin 804420d7560e82065b74eff561cfb2c8 check.bin

при одинаковом содержимом файлов полученные контрольные суммы должны совпасть.