Рубрика «TLV»

Я хотел бы рассказать о форматах данных, распространенных в ИТ-индустрии, в том числе в области инфраструктур открытых ключей (ИОК), смарт-картах, включая документы нового поколения на базе смарт-карт, в мобильной связи. Хотя рассматриваемые форматы и связаны с ASN.1, но некоторые из них ушли далеко за пределы этой области. О некоторых из них многие знают, но не все знают настолько, чтобы, допустим, уметь отличать BER от DER, а некоторые варианты типа PER вообще являются экзотикой.

Читать полностью »

В прошлой части мы видели как происходит общение между терминалом и картой. Мы посмотрели форматы C-APDU и R-APDU, но мы не обращали внимания на то, какие данные содержат эти APDU. В этой части мы рассмотрим самые распространенные форматы, в которых передается информация между терминалом и картой (и наоборот). Все они относятся к одному семейству — TLV.

TLV означает Tag, Length, Value и используется для того, чтобы структурировать информацию. На очень абстрактном уровне, TLV можно рассматривать как бинарную версию XML. Однако что такое Tag, Length, Value?

  • Tag: он говорит, какой вид информации находится в TLV. Видом может быть, к примеру, простая строка или номер, идентификатор или даже сложная структура. В некоторых вариантах Tag также содержит мета-информацию о TLV.
  • Length: длина, в байтах, элемента Value.
  • Value: данные, содержащиеся в TLV

Каждый вариант TLV имеет свои правила кодирования каждого элемента. Далее мы посмотрим самые распространенные варианты TLV. Хочу сразу отметить, что данная статья будет, в основном, посвящена BER-TLV, поскольку это самый распространенный, гибкий и сложный формат. Остальные варианты TLV будут рассмотрены лишь вкратце.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js