Карти, «Трійка», платежі

Мені представилася можливість, а мій досвід підказує, що якщо є можливість, краще нею скористатися, раз вже вона є.
Lock, Stock and Two Smoking Barrels


Про те, як ми створювали мережу платіжних терміналів, Хабр вже знає — ми писали про це влітку минулого року. Сьогодні ми вирішили розповісти, що ж всередині терміналів, поруч з терміналами та навколо них. А інтриги, що знаходиться всередині, немає ніякої — всередині кожного платіжного терміналу «МегаФона» знаходиться комп'ютер і периферія. Але коли в одній точці сходяться досить багато факторів, які необхідно пов'язати в працездатну систему, то трапляються мудровані дій, гідні уваги Гая Річі.



Про характеристики вбудованого комп'ютера терміналу також вже писалося. Нагадаємо, що це досить продуктивна система, що працює під управлінням Windows Embedded Standard 7

• Процесор: Intel Original LGA-1155 Pentium G2130 (3 Ггц)
• Материнська плата: Asus P8B75-M Soc-1155 iB75 DDR3 mATX AC`97 8ch GbLAN SATA3 VGA+DVI+HDMI
• Оперативна пам'ять: DDR3 2048Mb 1333MHz Crucial (ST25664BA1339)
• Відеокарта: Palit PCI-E NV GF210 512Mb 32bit (TC) DDR3 625/589

У минулому топіку хабраюзеры пропонували зробити на них ферму по майнингу биткоинов, але ми не стали пробувати.

Комп'ютер упаковані в спеціально розроблений корпус підлогового виконання з двома моніторами:



Корпус міцний, вандалостійкий, але не призначений для використання на вулиці. До всіх випробувань вулиці він не призначався і працює тільки всередині приміщень. Два монітора потрібні виключно в маркетингових цілях: по-перше, для відмінності від інших терміналів, а по-друге, на додатковому великому екрані відтворюється реклама, яка, знову ж привертає увагу, і, звичайно ж, приносить дохід від прокручувати роликів.

При проектуванні програмно-апаратного комплексу терміналів ми заклали, що вони будуть оновлюватися «on-the-air» — на льоту, без виїзду фахівців на місце, з «центру». Причому, тепер оновлюється не тільки власне операційна система, але і firmware пристроїв комплексу — купюроприймачів, наприклад. Введення нової функції, система моніторингу, фінансова звітність — будь-які зміни робляться одночасно на всю мережу. І захищеність від шахрайських дій теж збільшується.

Сцена: «Вестибюль»
Театр починається з вішалки, кіно з крику «Мотор!», а платіжні термінали починаються з купюроприймача.

Наша система обладнана валідатором CashCode (точну модель називати не будемо) досить відомою на ринку канадської компанії Crane Payment Innovation (CPI). Стверджується, що CPI на російському ринку займає провідне місце і всього продано вже понад 200 тисяч пристроїв.

Правильне розпізнавання купюр це дуже важливе, можна сказати, ключова функція платіжного терміналу. Не дивлячись на те, що все більшу поширеність отримують банківські карти, але росіяни все ще вважають за краще використовувати готівку. Центробанк РФ регулярно публікує статистику обіговості готівкових грошей, і, як видно з графіка, кількість грошей, щонайменше, не убуває:



Деяких може зацікавити принцип роботи купюроприймача — як автомат відрізняє справжні гроші від паперу? Відповідаємо: досить просто — датчиками. Але, зрозуміло, апаратура не займається розпізнаванням образів, щоб прочитати номінал кожної купюри — все набагато простіше. Купюри різного номіналу відрізняються, по-перше, розмірами і вагою, по-друге, спеціальними мітками, видимими в інфрачервоному або ультрафіолетовому світлі, і, по-третє, на купюрах є магнітні мітки. Процес і алгоритми відбракування купюр досить цікаві (наприклад, про машиночитаних ознаки різних купюр можна прочитати на сайті Центрального Банку РФ або навіть подивитися, але це не мета нашої розповіді — ми можемо лише сказати, що використовуються в наших терміналах валідатори розпізнають практично всі фальшиві купюри. Але між шахраями і «монетними будинками» йде давня, ніколи не безупинна війна, як «щит і меч» і з перемінним успіхом. Ми не відстаємо від новинок, і наші пристрої оперативно отримують нові дані для їх розпізнавання, хоча шахраї використовують досить витончені методи підробки. Наприклад, деякий час був такий спосіб перетворити одну п'ятитисячний купюру в дві:



Ми вважаємо, що надійність купюроприймачів, використовуваних в терміналах, достатня для промислової експлуатації.

Ось так виглядає схема валідатора купюр, взята з сайту постачальника пристроїв:



В комплекс «прийом готівки», треба зазначити, входить не тільки валідатор купюр, а ще й дуже потрібні і корисні пристрої, що додаються до неї, — стеккер (сортувальник і укладальник купюр) і, зрозуміло, спеціальний сейф, де зберігаються накопичені гроші.

Але було б наївним вважати, що лиходії обмежиться тільки фальшивими купюрами — є ще безліч способів обдурити автоматичні приймачі грошей, про які не прийнято поширюватися в ЗМІ. Наприклад, так звана «рибалка» (за кордоном це теж називається fishing) — шахрайський спосіб обдурити автоматику приймача готівкових грошей, суть якого полягає у витягуванні зчитаної купюри тому за заздалегідь прироблену волосінь-повідець. Процес шахрайства дуже схожий на риболовлю. Ось так виглядає купюра, підготовлена до «риболовлі» і не пройшла цю операцію:



І борються з ним аналогічно — підсічкою. Причому, існує декілька варіантів боротьби — грубий «залізний», коли на шляху протяжки купюри вбудовуються спеціальні гребінки з гострими краями, які механічно ріжуть несанкціоновані модифікації казначейських квитків. Виробник не надає подібні доопрацювання.

Інший спосіб більш цивілізований: спроба витягнути купюру після її зчитування фіксується спеціальним датчиком, і автоматика подає посилений імпульс на двигун валиків — всілякі «повідці» просто обриває, при цьому купюра не враховується в суму зарахованих коштів. Крім того, власне купюра ще й укладається в зчитувач особливим чином, що виключає її вилучення — зверніть увагу, що валідатор витягнуть вниз. Купюра спочатку простягається вперед, а потім під гострим кутом вниз. Витягнути її назад буде важко.

Сцена «Бар»
Герої Гая Річі не тільки крадуть (не найрезультативнішим способом, насправді), але ще і шахраюють з податками. Термінали «МегаФона» в цьому відношенні дуже законослухняні — по кожній операції користувачеві видається фіскальний чек. Чеки друкуються на спеціальному термопринтері, а всі операції записуються на фіскальний реєстратор. Марка принтера: VKP-80II, а фіскального реєстратора — PayVKP-80K.

Насправді, це досить простий пристрій, розповідати про яку, втім, можна досить довго:



Але пристрій досить відоме і поширене. Цікавіше правила роботи з фіскальними чеками, що прийняті в нашій компанії. «МегаФон» звітує по кожній транзакції, для кожного платежу, і всі операції записуються в ЕКЛЗ (розшифровується як Електронна Контрольна Стрічка Захищена) — спеціальний зареєстрований у ФНС «чорний ящик», який встановлюється в кожен термінал і реєструє всі операції без можливості їх зміни, що забезпечує надійний механізм для звітності.

По-перше, чек є офіційним документом, за допомогою якого ви зможете відзвітувати, наприклад, у бухгалтерії. Тому, у разі, якщо в конкретному терміналі закінчилася стрічка — він перестає приймати платежі.

По-друге, у випадку збою або помилки (ви ніколи не помилялися при введенні номера?), чек є документом, за яким буде проведена звірка і вирішені всі проблеми — чек є первинним документом. Тому кожен чек містить унікальний номер кожної транзакції, за якою можна буде вирішити непорозуміння, які можуть статися.

По-третє, на чеку є контактні телефони служби технічної підтримки, де користувачеві допоможуть з вирішенням проблем з платежем.

І, по-четверте, ми забезпечуємо виконання всіх законів Російської Федерації, пов'язаних з прийманням готівки. Сьогодні ще зустрічаються платіжні термінали, які не надають фіскальних чеків, що є порушенням федерального закону від 22 травня 2003 року N 54-ФЗ «ПРО застосування контрольно-касової техніки при здійсненні готівкових грошових розрахунків і (або) розрахунків з використанням платіжних карт». Ми шануємо закони і виконуємо всі їх вимоги.

Зрозуміло, пристрій терміналу не обмежується принтером і купюропріємником. Термінал містить ще автономне джерело живлення, який, за нормативами, підтримує роботу пристрою протягом не менше чотирьох годин. Є модуль зв'язку на додаток до штатного Ethernet — GSM/GPRS-модем, є невелика клавіатура для введення цифрових даних (пін-пад).

Але ми підходимо до розв'язки.

Сцена: «Стрільба»

Едд грає в карти з тих пір, як зміг підняти колоду. Незабаром він виявив, що має величезну перевагу. Справа не в тому, що він хороший гравець і не в тому, що він добре рахує при грі, справа в тому, що він прекрасно відстежує реакції людей, як би вони їх не приховували, а реакції є у всіх, особливо коли справа стосується грошей.
Lock, Stock and Two Smoking Barrels


Терміналів платіжних систем багато. Вони різні і від різних операторів. Відмінність мережі терміналів «МегаФона» в тому, що крім простих платежів з допомогою готівки на користь оператора зв'язку (до речі, ми приймаємо платежі і для інших операторів і без комісії), або оплати інших послуг, наші термінали вміють працювати з картами оплати проїзду в громадському транспорті. Ви можете поповнити баланс транспортної карти «Трійка» для проїзду в громадському транспорті Москви і Московської області.

Для поповнення карти «Трійка» є два варіанти, які умовно можна назвати «пряма» і «віддалене» поповнення. Обидва варіанти доступні на терміналах «МегаФона».

Пряме поповнення
Поповнити «прямо» «Трійку» дуже просто: 1. або введимномер карти в терміналі, 2. або підносимо картку до зчитувача терміналу, вносимо грошові кошти і, вуаля! — можна їхати у своїх справах.

Просто на словах, але складно всередині: для взаємодії з транспортними картами використовується технологія NFC (Near field communication).

Принцип дії безконтактних RFID-карт, якими і є карти «Трійка» наступний:



«Зчитувач» створює змінне магнітне поле заданої частоти. Контур карти, піднесеної до зчитувача, настроєний у резонанс, створює ЕРС і в ланцюзі з'являється струм. Цей струм випрямляється діодом і накопичується конденсатором С2. Накопичена на конденсаторі С2 енергія використовується для живлення чіпа, який містить мікропроцесор і пам'ять.

Енергії, треба сказати, цілком достатньо, щоб засвітився простий світлодіод:



Коливальний контур, що складається з ємності конденсатора C1 і індуктивності антени, управляється польовим транзистором, на затвор якого чіп передає керуючі імпульси. Але на відміну від зчитувача, у карти не вистачає потужності для створення відповідної електрорушійної сили, яку зміг би уловити зчитувач. Тому польовий транзистор просто «гальмує» коливальний контур, а інформацію зчитувач отримує в результаті збільшення втрат у власному активному коливальному контурі.

Тонкість роботи з такими картами, полягає в тому, що пам'ять чіпа карти дуже обмежена — використовуються карти Mifare Classic (або Mifare Plus) мають всього 7 байтів для незмінного унікального коду карти і ще 1 або 4 КБ (в залежності від типу картки) користувача і конфігураційних даних карти. Для захисту використовується патентований алгоритм шифрування Crypto-1, який виявився занадто простим і слабо захищеним від підробки. Експерименти над захищеністю карт «Трійка» вже описані Хабражителями.

Захист всієї системи в результаті виконана в декількох рівнях, і передусім, в організаційних заходах і з допомогою перманентного моніторингу використання карт.

З цього поповнення «Трійки» через платіжний термінал «МегаФона» відбувається за спеціальним алгоритмом, що враховує вимоги безпеки.

Отже, карта містить унікальний криптоидентификатор і банк пам'яті, який може містити кількість проїзних квитків та/або грошову суму. На карті зберігаються тільки чисельні показники, а власне інформація міститься на серверах транспортної системи. Тому поповнення картки відбувається тільки онлайн, причому, поки з терміналу можна поповнювати тільки баланс. За квитками все-таки доведеться звертатися в каси Московського Метрополітену. Але ми спільно з Метрополітеном працюємо над розширенням можливостей сервісу.

Для поповнення балансу «Трійки», користувач докладає картку до зчитувача NFC і термінал отримує показники карти.



Далі відбувається авторизація власне терміналу на сервері транспортної системи, і аутентифікація конкретної карти. У відповіді приходить наступна інформація:

Сума грошових коштів на картці
Кількість поїздок
Дозвіл на запис конкретної карти
Максимальна сума для запису.

Перші два пункти зрозумілі й прості, а ось третій і четвертий необхідно пояснити. «Дозвіл на запис» пов'язане з боротьбою зі фродом. Якщо конкретна карта просто заподозрится в шахрайстві, вона тут же блокується. Тепер записати будь-яку інформацію на неї неможливо — система блокує. Користувачеві роздруковується спеціальний чек (пам'ятайте про принтер?), з яким необхідно звернутися до каси Метрополітену за відповідними реквізитами. Причин для блокування досить багато, наприклад, клонування, яке обчислюється спробою вдруге скористатися картою швидше, ніж встановлено системою, або якщо користувач занадто швидко, на думку системи, переміщається по місту, частина з них обговорювалося у статті, яку ми наводили раніше. Досить незвичайного поведінки» і система може помістити вашу картку в «чорний список».

Максимальна сума запису — це ліміт на поповнення карти. В даний час він встановлений в розмірі 3000 рублів для всіх карт — велику суму система записати не дасть.

Після того, як вся інформація про конкретну карті була отримана терміналом, відбувається наступне:

В інтерфейсі показується сума, яку можна взяти на карту (не перевищує ліміт).
Користувач вводить суму поповнення.
Сума для зарахування, плюс, узгоджена сума вже наявна на карті відправляється на сервер Метро.
Система «Трійки» відповідає терміналу схваленням транзакції і висилає битмап, який необхідно записати в пам'ять карти.
У разі виникнення помилки (наприклад, карту прибрали до того, як закінчиться процес запису бітмапи) — термінал виводить чек помилки. На жаль, виправити помилку можна тільки в пасажирському агентств, тобто

Віддалене поповнення

Карту «Трійка» можна поповнювати і віддалено. Ні, це не означає, що вам зовсім не потрібно буде звертатися до терміналу — для можливості працювати оффлайн при розрахунках у громадському транспорті, де немає постійного зв'язку з транспортною системою Метрополітену, необхідно записати битмап «електронного квитка» в пам'ять карти. А це можна зробити тільки фізично піднести картку до зчитувача. Але гроші на рахунок можна перерахувати за допомогою сучасних телекомунікаційних засобів — за допомогою SMS або з використанням популярних платіжних систем.

Принцип «віддаленого поповнення» наступний: переводимо гроші на віртуальний рахунок «Трійки» в системі Метрополітену, а записати поповнення на карту вже потім, при відвідуванні Метрополітену або в салоні МегаФон по дорозі на зупинку автобуса.

Поповнити картку через веб-інтерфейс можна на сайте «Трійки».

А для того, щоб поповнити «Трійку» з особового рахунку абонента стільникового зв'язку потрібно відправити SMS за номером 3116 з текстом:

troika <номер картки> <сума поповнення>

Так выгляжит цей процес на вашому телефоні:

1. Відправляємо номер картки і суми «troika...»



2. У відповідь приходить СМС з змінним кодом, який необхідно підтвердити у відповідному повідомленні. Це зроблено з метою захистити ваші гроші від випадкового списання:



3. Через нетривалий час приходить СМС з повідомленням, що платіж сформований:



Гроші спишуться з особового рахунку абонента МегаФон і будуть зараховані в систему «Трійки» без комісії.

4. Завершальний етап — підходимо до терміналу «МегаФон» або до інформаційного терміналу Метрополітену, і записуємо сформований битмап на карту. Ніякого введення додаткової інформації не потрібно — система вже знає унікальний номер картки та суму до зарахування.

Наш термінал:



Московського Метрополітену:



Поки термінал залишається найбільш звичним способом поповнення, яким можна скористатися не спускаючись у метро, наприклад по дорозі до зупинки автобуса або трамвая, що робить використання «Трійки» значно доступніше.

До речі наші термінали встановлені практично в кожному салоні МегаФон. Знайти найближчий салон можна на карті або запросивши список з допомогою USSD-команди *123#



Фінальна сцена «Квартира після розборки»
Перераховані не всі периферійні пристрої, які є всередині платіжного терміналу «МегаФон». Поки ми не розповідали вам про те, як плануємо використовувати NFC для зв'язку з мобільними телефонами і можна застосовувати сканер штрих-коду.

Про них ми розповімо трохи пізніше в нашому хабраблоге.



Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.