Как работает эмулятор карт
Перейти к содержимому

Как работает эмулятор карт

  • автор:

Как работает эмулятор карт

Почему не работает Google Pay и что делать

Сервис электронных платежей, созданный компанией Гугл и запущенный в 2017 году, функционирует на мобильных устройствах,

мобильный билет билайн

Современные технологии позволяют совершенствовать различные сферы повседневной жизни обычных людей. Например, создание банковских карт

nfc в телефоне что это

В современном гаджете, как в сундуке Пандоры, хранится немало секретов. Остановимся сегодня на модулях

мобильный билет

Совсем недавно появилась возможность производить оплату за проезд с помощью банковских карт. Однако технологии

nfc не работает

Нередко приходится наблюдать такую картину: покупатель на кассе в супермаркете судорожно пытается осуществить платеж

nfc сбербанк

Привыкли расплачиваться за покупки в магазинах бесконтактными пластиковыми карточками? Теперь это прошлый век, пора

apple pay втб

Hi, всем доблестным владельцам яблочных гаджетов. Все кто использует iPhone априори любят идти в

xiaomi pay

Производитель цифровой техники Сяоми активно развивается и штурмует российский рынок. Большинство любителей гаджетов сейчас

кольцо nfc

Уже трудно кого либо удивить банковской карточкой с возможностью бесконтактной оплаты. Но вот платить

Xamarin.Forms — простой пример Host-based Card Emulation

В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практических задач. Да, понадобятся 2 устройства с nfc.

Сценариев использования очень много: система пропусков, карты лояльности, транспортные карты, получение дополнительной информации об экспонатах в музее, менеджер паролей.

При этом приложение на телефоне, эмулирующем карту, может быть запущено или нет и экран вашего телефона может быть заблокирован.

Для Xamarin Android есть готовые примеры эмулятора карты и ридера.
Попробуем с помощью этих примеров сделать 2 приложения Xamarin Forms, эмулятор и ридер, и решить в них следующие задачи:

  1. выводить данные от эмулятора на экране ридера
  2. выводить данные от ридера на экране эмулятора
  3. эмулятор должен работать с незапущенным приложением и заблокированным экраном
  4. управление настройками эмулятора
  5. запуск приложения эмулятора при обнаружении ридера
  6. проверка состояния nfc-адаптера и переход в настройки nfc

Как написано в документации android, начиная с версии 4.4 (kitkat) добавлена возможность эмулировать ISO-DEP карты, и обрабатывать APDU-команды.

Эмуляция карт основана на сервисах android, известных как «HCE services».

Когда пользователь прикладывает устройство к NFC-ридеру, андроиду необходимо понять к какому HCE-сервису хочет подключиться ридер. В ISO/IEC 7816-4 описан способ выбора приложения, основанный на Application ID (AID).

Если интересно углубиться в прекрасный мир байтовых массивов, то здесь и здесь подробнее про APDU-команды. В данной статье используется всего пара команд, необходимых для обмена данными.

Приложение «Ридер»

Начнём с ридера, т.к. он проще.

Создаём в Visual Studio новый проект типа «Mobile App(Xamarin.Forms)» далее выбираем шаблон «Blank» и оставляем только галочку «Android» в разделе «Platforms».

В андроид-проекте надо сделать следующее:

  • Класс CardReader — в нём несколько констант и метод OnTagDiscovered
  • MainActivity — инициализация класса CardReader, а также методы OnPause и OnResume для включения/выключения ридера при сворачивании приложения
  • AndroidManifest.xml — разрешения для nfc
  • Метод для вывода сообщения пользователю
Класс CardReader
using Android.Nfc; using Android.Nfc.Tech; using System; using System.Linq; using System.Text; namespace ApduServiceReaderApp.Droid.Services < public class CardReader : Java.Lang.Object, NfcAdapter.IReaderCallback < // ISO-DEP command HEADER for selecting an AID. // Format: [Class | Instruction | Parameter 1 | Parameter 2] private static readonly byte[] SELECT_APDU_HEADER = new byte[] < 0x00, 0xA4, 0x04, 0x00 >; // AID for our loyalty card service. private static readonly string SAMPLE_LOYALTY_CARD_AID = "F123456789"; // "OK" status word sent in response to SELECT AID command (0x9000) private static readonly byte[] SELECT_OK_SW = new byte[] < 0x90, 0x00 >; public async void OnTagDiscovered(Tag tag) < IsoDep isoDep = IsoDep.Get(tag); if (isoDep != null) < try < isoDep.Connect(); var aidLength = (byte)(SAMPLE_LOYALTY_CARD_AID.Length / 2); var aidBytes = StringToByteArray(SAMPLE_LOYALTY_CARD_AID); var command = SELECT_APDU_HEADER .Concat(new byte[] < aidLength >) .Concat(aidBytes) .ToArray(); var result = isoDep.Transceive(command); var resultLength = result.Length; byte[] statusWord = < result[resultLength - 2], result[resultLength - 1] >; var payload = new byte[resultLength - 2]; Array.Copy(result, payload, resultLength - 2); var arrayEquals = SELECT_OK_SW.Length == statusWord.Length; if (Enumerable.SequenceEqual(SELECT_OK_SW, statusWord)) < var msg = Encoding.UTF8.GetString(payload); await App.DisplayAlertAsync(msg); >> catch (Exception e) < await App.DisplayAlertAsync("Error communicating with card: " + e.Message); >> > public static byte[] StringToByteArray(string hex) => Enumerable.Range(0, hex.Length) .Where(x => x % 2 == 0) .Select(x => Convert.ToByte(hex.Substring(x, 2), 16)) .ToArray(); > > 

В режиме чтения nfc-адаптера при обнаружении карты будет вызван метод OnTagDiscovered. В нём IsoDep — это объект с помощью которого мы будем обмениваться с картой командами (isoDep.Transceive(command)). Команды — это массивы байт.

В коде видно, что мы отправляем эмулятору последовательность, состоящую из заголовка SELECT_APDU_HEADER, длины нашего AID в байтах и самого AID:

0 164 4 0 // SELECT_APDU_HEADER 5 // длина AID в байтах 241 35 69 103 137 // SAMPLE_LOYALTY_CARD_AID (F1 23 45 67 89) 
MainActivity ридера

Здесь надо объявить поле ридера:

public CardReader cardReader; 

и два вспомогательных метода:

private void EnableReaderMode() < var nfc = NfcAdapter.GetDefaultAdapter(this); if (nfc != null) nfc.EnableReaderMode(this, cardReader, READER_FLAGS, null); >private void DisableReaderMode()

в методе OnCreate() инициализируем ридер и включаем режим чтения:

protected override void OnCreate(Bundle savedInstanceState)

а также, включаем/выключаем режим чтения при сворачивании/открытии приложения:

protected override void OnPause() < base.OnPause(); DisableReaderMode(); >protected override void OnResume()
App.xaml.cs

Статический метод для вывода сообщения:

public static async Task DisplayAlertAsync(string msg) => await Device.InvokeOnMainThreadAsync(async () => await Current.MainPage.DisplayAlert("message from service", msg, "ok")); 
AndroidManifest.xml

В документации android написано, что для использования nfc в своём приложении и правильной с ним работы, надо объявить эти элементы в AndroidManifest.xml:

  а лучше  

При этом, если ваше приложение может использовать nfc, но это не обязательная функция, то можете пропустить элемент uses-feature и проверять доступность nfc в процессе работы.

Это всё, что касается ридера.

Приложение «Эмулятор»

Опять создаём в Visual Studio новый проект типа «Mobile App(Xamarin.Forms)» далее выбираем шаблон «Blank» и оставляем только галочку «Android» в разделе «Platforms».

В Android-проекте надо сделать следующее:

  • Класс CardService — здесь нужны константы и метод ProcessCommandApdu(), а также метод SendMessageToActivity()
  • Описание сервиса в файле aid_list.xml
  • Механизм отправки сообщений в MainActivity
  • Запуск приложения (при необходимости)
  • AndroidManifest.xml — разрешения для nfc
  • Метод для вывода сообщения пользователю
Класс CardService
using Android.App; using Android.Content; using Android.Nfc.CardEmulators; using Android.OS; using System; using System.Linq; using System.Text; namespace ApduServiceCardApp.Droid.Services < [Service(Exported = true, Enabled = true, Permission = "android.permission.BIND_NFC_SERVICE"), IntentFilter(new[] < "android.nfc.cardemulation.action.HOST_APDU_SERVICE" >, Categories = new[] < "android.intent.category.DEFAULT" >), MetaData("android.nfc.cardemulation.host_apdu_service", Resource = "@xml/aid_list")] public class CardService : HostApduService < // ISO-DEP command HEADER for selecting an AID. // Format: [Class | Instruction | Parameter 1 | Parameter 2] private static readonly byte[] SELECT_APDU_HEADER = new byte[] < 0x00, 0xA4, 0x04, 0x00 >; // "OK" status word sent in response to SELECT AID command (0x9000) private static readonly byte[] SELECT_OK_SW = new byte[] < 0x90, 0x00 >; // "UNKNOWN" status word sent in response to invalid APDU command (0x0000) private static readonly byte[] UNKNOWN_CMD_SW = new byte[] < 0x00, 0x00 >; public override byte[] ProcessCommandApdu(byte[] commandApdu, Bundle extras) < if (commandApdu.Length >= SELECT_APDU_HEADER.Length && Enumerable.SequenceEqual(commandApdu.Take(SELECT_APDU_HEADER.Length), SELECT_APDU_HEADER)) < var hexString = string.Join("", Array.ConvertAll(commandApdu, b =>b.ToString("X2"))); SendMessageToActivity($"Recieved message from reader: "); var messageToReader = "Hello Reader!"; var messageToReaderBytes = Encoding.UTF8.GetBytes(messageToReader); return messageToReaderBytes.Concat(SELECT_OK_SW).ToArray(); > return UNKNOWN_CMD_SW; > public override void OnDeactivated(DeactivationReason reason) < >private void SendMessageToActivity(string msg) < Intent intent = new Intent("MSG_NAME"); intent.PutExtra("MSG_DATA", msg); SendBroadcast(intent); >> > 

При получении APDU-команды от ридера, будет вызван метод ProcessCommandApdu и в него передана команда в виде массива байтов.

Сначала проверяем, что сообщение начинается на SELECT_APDU_HEADER и если это так, составляем ответ ридеру. В реальности обмен может проходить в несколько шагов вопрос-ответ вопрос-ответ итд.

Перед классом в атрибуте Service описаны параметры сервиса android. При сборке xamarin преобразует это описание в такой элемент в AndroidManifest.xml:

Описание сервиса в файле aid_list.xml

В папке xml надо создать файл aid_list.xml:

Ссылка на него есть в атрибуте Service в классе CardService — Resource = «@xml/aid_list»
Здесь задан AID нашего приложения, по которому ридер будет к нему обращаться и атрибут requireDeviceUnlock=«false» чтобы карта считывалась при неразблокированном экране.

В коде есть 2 константы: @string/service_name и @string/card_title . Они объявляются в файле values/strings.xml:

 My Loyalty Card My Company  
Механизм отправки сообщений:

Сервис не имеет ссылок на MainActivity, которая в момент получения APDU команды может быть и вовсе не запущена. Поэтому отправляем сообщения из CardService в MainActivity с помощью BroadcastReceiver следующим образом:

Метод для отправки сообщения из CardService:

private void SendMessageToActivity(string msg)

Получение сообщения:
Создаём класс MessageReceiver:

using Android.Content; namespace ApduServiceCardApp.Droid.Services < public class MessageReceiver : BroadcastReceiver < public override async void OnReceive(Context context, Intent intent) < var message = intent.GetStringExtra("MSG_DATA"); await App.DisplayAlertAsync(message); >> > 

Регистрируем MessageReceiver в MainActivity:

protected override void OnCreate(Bundle savedInstanceState)
App.xaml.cs

Такой же как в ридере метод для вывода сообщения:

public static async Task DisplayAlertAsync(string msg) => await Device.InvokeOnMainThreadAsync(async () => await Current.MainPage.DisplayAlert("message from service", msg, "ok")); 
AndroidManifest.xml
      или 14 

На данный момент у нас уже есть следующие функции:

  • выводить данные от эмулятора на экране ридера
  • выводить данные от ридера на экране эмулятора
  • эмулятор должен работать с незапущенным приложением и с выключенным экраном.
Управление эмулятором

Настройки буду хранить с помощью Xamarin.Essentials.

Сделаем так: при перезапуске приложения эмулятора будем обновлять настройку:

Xamarin.Essentials.Preferences.Set("key1", Guid.NewGuid().ToString()); 

а в методе ProcessCommandApdu будем каждый раз заново брать это значение:

var messageToReader = $"Hello Reader! - "; 

теперь при каждом перезапуске(не сворачивании) приложения эмулятора видим новый guid, например:

Hello Reader! - 76324a99-b5c3-46bc-8678-5650dab0529d

Так же через настройки включаем/выключаем эмулятор:

Xamarin.Essentials.Preferences.Set("IsEnabled", false); 

а в начало метода ProcessCommandApdu добавляем:

var IsEnabled = Xamarin.Essentials.Preferences.Get("IsEnabled", false); if (!IsEnabled) return UNKNOWN_CMD_SW; // 0x00, 0x00 

Это простой способ, но есть и другие.

Запуск приложения эмулятора при обнаружении ридера

Если надо просто открыть приложение эмулятора, то в методе ProcessCommandApdu добавьте строку:

StartActivity(typeof(MainActivity)); 

Если необходимо передать в приложение параметры, то так:

var activity = new Intent(this, typeof(MainActivity)); intent.PutExtra("MSG_DATA", "data for application"); this.StartActivity(activity); 

Прочитать переданные параметры можно в классе MainActivity в методе OnCreate:

. LoadApplication(new App()); if (Intent.Extras != null)
Проверка состояния nfc-адаптера и переход в настройки nfc

Этот раздел применим и к ридеру и к эмулятору.

Создадим в андроид-проекте NfcHelper и используем DependencyService для доступа к нему из кода страницы MainPage.

using Android.App; using Android.Content; using Android.Nfc; using ApduServiceCardApp.Services; using Xamarin.Forms; [assembly: Dependency(typeof(ApduServiceCardApp.Droid.Services.NfcHelper))] namespace ApduServiceCardApp.Droid.Services < public class NfcHelper : INfcHelper < public NfcAdapterStatus GetNfcAdapterStatus() < var adapter = NfcAdapter.GetDefaultAdapter(Forms.Context as Activity); return adapter == null ? NfcAdapterStatus.NoAdapter : adapter.IsEnabled ? NfcAdapterStatus.Enabled : NfcAdapterStatus.Disabled; >public void GoToNFCSettings() < var intent = new Intent(Android.Provider.Settings.ActionNfcSettings); intent.AddFlags(ActivityFlags.NewTask); Android.App.Application.Context.StartActivity(intent); >> > 

Теперь в кроссплатформенном проекте добавим интерфейс INfcHelper:

namespace ApduServiceCardApp.Services < public interface INfcHelper < NfcAdapterStatus GetNfcAdapterStatus(); void GoToNFCSettings(); >public enum NfcAdapterStatus < Enabled, Disabled, NoAdapter >> 

и используем всё это в коде MainPage.xaml.cs:

 protected override async void OnAppearing() < base.OnAppearing(); await CheckNfc(); >private async Task CheckNfc() < var nfcHelper = DependencyService.Get(); var status = nfcHelper.GetNfcAdapterStatus(); switch (status) < case NfcAdapterStatus.Enabled: default: await App.DisplayAlertAsync("nfc enabled!"); break; case NfcAdapterStatus.Disabled: nfcHelper.GoToNFCSettings(); break; case NfcAdapterStatus.NoAdapter: await App.DisplayAlertAsync("no nfc adapter found!"); break; >> 

Что такое эмуляция карты NFC Android и как это работает

chto takoe emulyaciya karty nfc android i kak eto rabotaet

NFC

Погрузившись в мили описаний преобразования реальных банковских карт в виртуальные аналоги, я понял, что просто не могу передать эту информацию, даже в сжатом виде, в поле статьи. Он не написан для массового читателя, набит специальными терминами и выглядит слишком научным. В статье речь пойдет об эмуляции карт NFC на Android. Поэтому — более-менее сложно!

Что такое эмуляция карты

Существует очень специфическая технология HCE (Host Card Emulation), которая позволяет воссоздать дублирующую карту NFC, которая является бесконтактным методом подключения к внешнему миру. Это, безусловно, требует некоторого программного обеспечения, которое поможет вам во втором рождении вашего «пластика». О чем мы говорим?

В него входят банковские карты, карты общественного транспорта, рабочие пропуска и множество других необходимых для повседневной жизни «электронных ключей».

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

На протяжении всей этой истории нас в первую очередь интересовали банковские карты и связанная с ними концепция бесконтактных платежей.

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

Следует отметить, что NFC-кластер Android работает с учетной записью Google, предварительно определенной вами, в случае, если на мобильном устройстве установлена ​​другая операционная система (на ум приходит только продукция Apple), сделать двойной платежный инструмент будет работать с телефоном. Это означает, что он имеет встроенный чип, в котором хранится буквально все, что связано с вашим банковским счетом и идентификационной информацией.

В целом, все устройства, имеющие собственный «банк данных», имеют одну очень привлекательную особенность. Доступ к нему ограничен. Строго говоря, его нет даже в операционной системе устройства, и никто не сможет что-либо извлечь без вашей помощи.

Более того, такие устройства позволяют совершать бесконтактные платежи без помощи Интернета. Все необходимое для транзакции теперь у вас под рукой.

Как это работает

До 2017 года на эту тему было написано около десятка статей. С появлением новых приложений, таких как Google Pay, Samsung Pay и Apple Pay, страсти были поддержаны. Процесс виртуализации физического «пластика» был заметно упрощен, и многие проблемы, связанные с этой процедурой, исчезли сами собой. В марте прошлого года был запущен проект Android Pay (создатель Google, который затем был преобразован в современную версию), описанный подробно и очень конкретно. С тех пор в алгоритм эмуляции было внесено очень мало изменений.

Вот как это работает сегодня.

  1. Прежде всего, выберите и скачайте необходимое приложение из предложенных.
  2. Установите его на свой смартфон.
  3. Затем переходите к главному — имитировать банковскую карту. Его необходимо отсканировать, а оставшиеся необходимые данные ввести вручную. Ничего особенного, информация о владельце банковского счета, домашний адрес, код CVV на обратной стороне «пластика», номер телефона.
  4. Согласитесь с пользовательским соглашением.
  5. Подтвердите по SMS, что введенные данные верны.
  6. Карта эмулируется, она у вас есть и хранится в приложении. В нужный момент просто активируйте модуль NFC и саму программу. Оплата будет произведена немедленно.

Отдельно остановлюсь на процедуре «депонирования» куда-нибудь дубликата пластиковой карты; все другие небанковские носители данных могут быть отнесены к этой категории.

Интересные китайские умы сделали процедуру переноса физического объекта в память смартфона столь же удобной и несложной. Вам необходимо загрузить эмулятор карты NFC из Play Market и установить его на свое устройство. Затем активируйте чип NFC (без него вам не обойтись), запустите приложение и верните в телефон то, что вы хотите скопировать.«Пластик» появится на виртуальном изображении в самой программе, затем вам нужно будет щелкнуть по нему и переместить на объект взаимодействия.

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

Что требуется для эмуляции

Эмулятор карты NFC и рут-права на вашем устройстве уже упоминались. Дело в том, что для изменения настроек в NFC (без него никак не обойтись) придется что-то менять в системных файлах. Что может сделать только суперпользователь.

Вот уловка, которую нельзя не заметить. Предыдущее описание изготовления виртуальной платежной карты возможно только на полностью «чистом» телефоне. Что я имею в виду. У вас должна быть официальная прошивка, Root-права должны отсутствовать.

Только в этом случае можно будет произвести оплату. Это означает, что если вы хотите, чтобы на вашем устройстве было буквально все, что должно вас расстраивать. Вам придется что-то выбрать. Вы либо платите в магазине, либо идете в бассейн с эмулированным пропуском. Это так сегодня, может быть, в будущем произойдут изменения к лучшему.

Безопасность

Недавно он заглянул в мой старый Xiaomi MI3 и был очень удивлен. Устройство имеет собственный элемент безопасности! В меню настроек есть возможность выбрать место хранения: встроенное или на SIM-карте. Что касается последнего расположения, то на практике оно не учитывалось из-за сложности реализации. В настоящее время облачное хранилище Google широко распространено, и те, кому повезло, могут похвастаться наличием собственного специального чипа.

Возможные проблемы

Среди возможных ошибок отмечу одну, но самую «сложную» для пользователей. Несколько лет назад мы боролись с сообщением операционной системы: «Нет безопасности». Эмуляция карты NFC будет отключена ». С появлением реально работающих инструментов передачи платежных карт в виртуальном мире эти ошибки исчезли. Это многое говорит об уровне последних разработок.

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

Как добавить пропуск в телефон через NFC – алгоритм действий

kak dobavit propusk v telefon cherez nfc algoritm dejstvij

NFC

Сегодняшняя бесконтактная технология имеет ограниченный диапазон — не более десяти сантиметров. Этот процесс происходит на частоте 13,56 МГц. Информация считывается автоматически, если пара гаджетов находится в зоне действия соединения. Устройство NFS не только передает информацию, но и считывает теги, служит эмулятором пластиковых карт, выполняет идентификацию пользователя, позволяя использовать мобильное устройство вместо платежной карты. Предлагаем вам понять, как добавить пропуск на телефон с помощью NFC.

Суть работы

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

Для стабильной работы вам потребуются:

  • Мобильный гаджет на операционной системе Android или iOS;
  • установка мобильного приложения;
  • Модуль NFS в телефоне;
  • Система ACS.

Преимущества применения НФС в СКУД

В этой системе можно использовать любое устройство NFS как:

  • ID — сотрудник со смартфоном использует его вместо карты доступа;
  • считыватель — контроль доступа можно организовать с помощью смартфона.

Преимущества использования NFS в ACS следующие:

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

Мобильный телефон с NFC можно использовать как пропуск для одновременной работы в нескольких системах управления.

Следует отметить, что NFC, как эмулятор значка, удобен в использовании. Например, при плановой смене системы паролей присутствие сотрудника с его мобильным устройством не обязательно, что очень важно для срочных мер по обеспечению безопасности.

Для сотрудника организации такой вариант пропускной системы удобен тем, что в случае утери или выхода из строя бесконтактной карты проблем не возникнет — смартфон продублирует проездной.

Безопасность

Его необходимый уровень обусловлен психологическим фактором: сотрудник уделяет достаточно внимания своему мобильному телефону, риск его потери намного ниже, чем у платежной карты.

Кроме того, во время связи мобильные устройства, интегрированные с системой контроля и управления трафиком, размещаются рядом друг с другом. Это сводит к минимуму вероятность перехвата информации злоумышленниками, что возможно в процессе использования Bluetooth.

Появляется возможность использовать многофакторную аутентификацию, что значительно повышает безопасность.

Для повышения эффективности к общей системе СКУД можно подключить другие элементы управления, например видеокамеры.

Как интегрировать пропуск в телефон?

Единственный способ скопировать пропуск смартфона с чипом NFS — вручную перенести микрочип с карты на телефон. В этом случае адаптер будет работать в любых условиях.

Вы не сможете сохранить его как платежную карту, потому что чип платежной карты работает на другой частоте, которая составляет 125 кГц, и имеет специальную кодировку для дополнительной защиты.

Итак, как подключить пропуск к телефону с поддержкой NFC? Алгоритм действий следующий:

  • сначала чип, запрограммированный на считывание информации с турникета, удаляется из пропуска;
  • используя ацетон или обезжириватель пластика, смягчаем проход;
  • Для этого переложите пропуск в подходящую емкость, полейте его серединкой и накройте пластиком. Через три-четыре часа карта деформируется;
  • аккуратно снимаем пластик, освобождая стружку. Будьте осторожны и аккуратны в своих действиях;
  • Для дополнительной безопасности соединение между катушкой и микрочипом следует укрепить липкой лентой;
  • встроить свой дизайн в сотовый телефон, приклеив микрочип к аккумулятору или внутренней поверхности задней панели;
  • Соберите смартфон, осмотрите корпус, чтобы убедиться, что внешний вид устройства не изменился.

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

Заключение

Теперь вы знаете, как сымитировать передачу на мобильном телефоне с помощью NFC.Качество работы можно проверить только во время посещения рабочего места.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *