Для чего нужны модули безопасного доступа (SAM)? - PullRequest
0 голосов
/ 31 августа 2018

Я работаю над пониманием модулей безопасного доступа (SAM). Зачем они нужны? В чем разница между подходом на основе SAM и без SAM при использовании вместе со считывателями RFID-карт?

1 Ответ

0 голосов
/ 14 сентября 2018

Модуль безопасного доступа (SAM) - это безопасное место для хранения конфиденциального ключевого материала, используемого для доступа к контенту / приложениям на смарт-картах. Обычно SAM - это сама смарт-карта. Идея, лежащая в основе использования SAM, заключается в том, что вы храните ключи для доступа к какому-либо приложению смарт-карты и т. Д., И ключи больше никогда не могут покинуть SAM (то есть злоумышленник не сможет извлечь из него исходный материал ключа). Вместо этого, всякий раз, когда приложение для чтения обращается к приложению смарт-карты, оно фактически позволяет SAM взаимодействовать со смарт-картой. Это можно сделать, используя SAM в качестве прокси-сервера между приложением считывателя и приложением смарт-карты, чтобы незашифрованная / неаутентифицированная связь на стороне читателя была преобразована в зашифрованную / аутентифицированную связь, которая затем перенаправлялась в приложение смарт-карты:

                        unencrypted/            encrypted/
                      unauthenticated         authenticated/
READER APPLICATION  <-----------------> SAM <=================> SMARTCARD APPLICATION

Обратите внимание, что на самом деле фактические APDU, вероятно, будут маршрутизироваться немного по-другому:

+--------------------+                    +--------+                    +-----+
| READER APPLICATION | <----------------> |        | <----------------> |     |
+--------------------+                    |  SAM   |                    |     |
                                          | READER |                    | SAM |
       +-------------+                    |        |                    |     |
       |             | <================> |        | <================> |     |
       |    PROXY    |                    +--------+                    +-----+
       | APPLICATION |
       |             |               +------------------+               +-----------------------+
       |             | <===========> | SMARTCARD READER | <===========> | SMARTCARD APPLICATION |
       +-------------+               +------------------+               +-----------------------+

В качестве альтернативы SAM можно использовать только для вычисления эфемерных вызовов, ответов, сеансовых ключей и т. Д. Для аутентификации и шифрования, которые затем интегрируются в реальный протокол связи приложением для чтения.

При использовании подхода без SAM ключевой материал для доступа к приложению смарт-карты должен быть доступен для самого приложения считывателя. Поскольку приложение обычно запускается на платформе, неспособной обеспечить достаточную защиту материала секретного ключа, это может привести к угрозе безопасности.

...