UA65611C2 - Спосіб зміни неподільним чином множини комірок енергонезалежної пам'яті в картці з мікросхемою, зокрема у безконтактній картці - Google Patents

Спосіб зміни неподільним чином множини комірок енергонезалежної пам'яті в картці з мікросхемою, зокрема у безконтактній картці Download PDF

Info

Publication number
UA65611C2
UA65611C2 UA2000116314A UA2000116314A UA65611C2 UA 65611 C2 UA65611 C2 UA 65611C2 UA 2000116314 A UA2000116314 A UA 2000116314A UA 2000116314 A UA2000116314 A UA 2000116314A UA 65611 C2 UA65611 C2 UA 65611C2
Authority
UA
Ukraine
Prior art keywords
card
session
sector
terminal
sectors
Prior art date
Application number
UA2000116314A
Other languages
English (en)
Russian (ru)
Inventor
Стефан Дід'є
Франсуа Гріє
Original Assignee
Енноватрон Електронік, Сосьєте Анонім
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=9525063&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=UA65611(C2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Енноватрон Електронік, Сосьєте Анонім filed Critical Енноватрон Електронік, Сосьєте Анонім
Publication of UA65611C2 publication Critical patent/UA65611C2/uk

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3672Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3676Balancing accounts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0866Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means by active credit-cards adapted therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Credit Cards Or The Like (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

У конкретній реалізації способу, відповідно до винаходу, у випадку підтвердження на етапі б) флаг, що підтверджує належне виконання, записують у пам'яті картки, а коли картка згодом приймає команду, що вимагає здійснити зчитування або зміну щонайменше одного з елементів даних, записаних на етапі а), або відповідного йому значення, картка починає працювати, перевіряючи стан флагу, і, якщо він не записаний, картка ігнорує або видаляє умовні записи, зроблені раніше на етапі а), і виконує команду на основі згаданих попередніх значень, що відповідають елементам даних. Якщо під час перевірки карткою стану флагу виявляється, що він записаний, то картка може виконувати операції копіювання умовних записів, зроблених на етапі а).
У найкращому варіанті реалізації винаходу картка придатна для роботи у двох режимах, а саме: у внутрішньосеансовому режимі, у якому записи роблять шляхом виконання етапів а) і б), та у позасеансовому режимі, у якому внесення записів не підтверджується для всіх етапів а) і б).
Початок сеансу може бути неявним, наприклад, шляхом обнуління картки, або він може йти за командою, що викликає дві дії: виконання попередньо визначеної операції й інтерпретацію як команди почати сеанс.
Наприклад, коли запис, який звичайно сертифікується, не супроводжується сертифікатом, картка автоматично починає сеанс, під час якого відбувається обробка запису.
Так само, завершення сеансу може бути неявним і відбуватися після команди, що викликає дві дії: виконання попередньо визначеної операції й інтерпретацію як команди завершити сеанс.
Наприклад, операція дебетування гаманця завершує сеанс, виключаючи у такий спосіб будь-яку необхідність затримати передачу одержуваного сертифіката, і даючи можливість зробити сертифікати сеансу і сертифікати транзакцій, здійснюваних за допомогою гаманців, такими, що не відрізняються.
У найкращому варіанті реалізації винаходу спосіб включає функцію аутентифікації, об'єднану з функцією завершення етапу б), за рахунок чого відбувається примусове відхилення етапу б) у випадку безуспішної аутентифікації.
У першому варіанті реалізації винаходу згадану аутентифікацію виконує картка, що аутентифікує термінал і/або дані, якими термінал обмінюється з карткою, причому картка контролює криптографічний сертифікат, що створюється терміналом і передається у картку, і підтверджує зміни, внесені на етапі б), тільки у випадку, якщо сертифікат визнаний правильним.
У режимі із сеансом можна передбачити таку умову, що, коли картка приймає з термінала команди зміни вмісту пам'яті, включаючи створення криптографічного сертифіката, згадану верифікацію проводять, якщо прийом команди відбувається поза сеансом, і не проводять, якщо прийом команди відбувається в сеансі.
Іншими словами, ті з команд, які картка виконує на етапі б) і які повинні за звичайних обставин (тобто поза сеансом) верифікувати криптографічний сертифікат, більше не включають цю верифікацію, коли їх виконують у сеансі, при цьому "сертифікат сеансу, аутентифікуючий термінал" виконує еквівалентну функцію.
У другому варіанті реалізації винаходу згадану аутентифікацію виконує термінал, який аутентифікує картку мМабо дані, якими обмінюються термінал і картка, причому картка створює і передає криптографічний сертифікат звичайним способом у термінал, якщо і тільки якщо зміни підтверджені на етапі б).
У режимі із сеансом можна передбачити таку умову, що, коли картка приймає з термінала команди зміни вмісту пам'яті, включаючи створення криптографічного сертифіката, згадане створення здійснюють, якщо прийом команди відбувається поза сеансом, і не здійснюють, якщо прийом команди відбувається в сеансі.
Іншими словами, ті з команд, що виконуються карткою на етапі б) і які повинні за звичайних обставин (тобто поза сеансом) створювати криптографічний сертифікат, більше не включають це створення, коли вони виконуються в сеансі, при цьому "сертифікат сеансу, аутентифікуючий термінал" виконує еквівалентну функцію.
Передбачено і таку умову, що, коли картка на етапі б) приймає з термінала команди зміни вмісту пам'яті, включаючи створення множини криптографічних сертифікатів, ці сертифікати запам'ятовують на етапі б), а потім разом передаються у термінал, тільки у випадку, якщо зміни підтверджені на етапі б).
Іншими словами, передбачена умова затримки передачі карткою криптографічних сертифікатів, створюваних за командами на етапі б). Зокрема, якщо сертифікована команда запису створює деякий сертифікат запису, то буде доцільним, щоб сертифікат залишав картку тільки після здійснення запису без скасування.
У конкретному варіанті реалізації винаходу щонайменше деякі з команд, що можуть бути виконані на етапі б), містять у собі необов'язковий забороняючий атрибут, і якщо картка виконує таку команду в сеансі на етапі б), то зміни, що вносяться за згаданою командою, залишаються в силі незалежно від результату етапу б).
Іншими словами, атрибут визначає, чи виконувалася команда, в сеансі (тобто буде анульована, якщо сеанс не завершений), чи поза сеансом (тобто все одно буде результативною, хоча і виконана поза сеансом, навіть якщо хронологічно вона проходить у сеансі).
У найкращому варіанті реалізації винаходу після етапу б) і у випадку підтверджуваних змін, винахід також передбачає таку послідовність етапів: г) термінал виконує свою функцію після підтвердження карткою, і д) у випадку, якщо термінал виконає згадану функцію належним чином, інформацію про ратифікацію записують у картку для наступного доступу шляхом зчитування.
Така "ратифікація" сеансу інформує картку про те, що термінал насправді виявився здатним приймати рішення (тобто знімає перешкоду в застосуванні де мова йде про отримання доступу до громадської транспортної мережі) з наступним проведенням сеансу.
Слід зазначити, що картка керує цією ратифікацією, не потребуючи додаткового запису (копіювання умовних записів, що є операцією, яку рано чи пізно доведеться виконати). Крім того, це копіювання виконується на картці лише за умови, що на терміналі належним чином виконана дія, тобто тільки у випадку, якщо вся транзакція задовольняє вимогам.
При виконанні всіх операцій, якими керує картка, можна в кращому варіанті реалізації винаходу передбачити умову виконання команди запису на етапі д) як неявної команди, при цьому будь-яка команда, що приймається карткою після етапу б), інтерпретується як команда запису інформації про ратифікацію в картку.
Інші характеристики і переваги стануть ясні з нижченаведеного опису двох варіантів реалізації винаходу.
У цих прикладах і далі по всьому тексту слово "позначити" вживається у значенні "задати один із множини" і відноситься до дії, яка полягає в характеристиці деякого конкретного елемента інформації серед різних елементів інформації, що містяться в картці.
Таке позначення може бути неявним, оскільки сама команда задає конкретний елемент інформації; наприклад, команда "дебетувати суму х з гаманця" позначає комірку пам'яті, що містить значення елемента даних "балансу гаманця".
Позначення також може бути явним, як, наприклад, у нижченаведеному прикладі 1, де передбачена умова, відповідно до якої команди запису мають адресу або ідентифікатор сектора, і при цьому команди позначені індексом і.
Приклад 1
Пропонується картка, що запам'ятовує 100 восьмибайтових значень і може виконати такі команди: - зчитування восьмибайтового значення м як заданого індексом і в діапазоні 1-100; - запис восьмибайтового значення У як заданого індексом і в діапазоні 1-100; - початок сеансу; - завершення сеансу.
Картка повинна забезпечувати проведення до трьох записів у межах одного сеансу. Звичайно для позначення значень в енергонезалежній пам'яті (наприклад, програмованій постійній пам'яті, що електрично стирається - ПППЕС) використовують великі літери, а для позначення значень у енергозалежній пам'яті (оперативній пам'яті або пам'яті з довільним доступом - ПДЦ, вміст якої втрачається при відключенні живлення) використовують малі літери.
Одна зона енергонезалежної пам'яті виділена для запам'ятовування основних даних картки (остаточних записів): - МІЇ), для і у діапазоні 1-100: 100х8 байт.
Інша зона енергонезалежної пам'яті виділена для запам'ятовування механізму сеансу і містить: - ТІК), для | у діапазоні 1-3 : 3х8 байт, що містить значення, записані під час сеансу (умовні записи); - КІ, для | у діапазоні 1-3 : 3х8 байт, що містить індекси, записані під час сеансу; і - С: лічильний байт, що записується наприкінці сеансу.
С кодує число записів, зроблених у сеансі; підходящий механізм парності (наприклад, такий що зв'язує доповнення згаданого значення) дає можливість виявити випадок, коли значення, запам'ятоване в згаданому лічильному байті, є невизначеним.
Операції відбуваються в такий спосіб.
Етап 0: у деякий момент між подачею електроживлення в картку і виконанням першої команди здійснюється перевірка С. Якщо він являє собою значення, яке визначене в діапазоні 1-3, то для К від 1 до С з таблиці МІ|ї| копіюють значення ТІК| з індексом ІЇК). Потім С встановлюють рівним нулю, а внутрішню змінну встановлюють рівною -1 (щоб вказати, що сеанс не почався).
Етап 1: при зчитуванні проводять тест, щоб побачити, чи дотримується нерівність |»0О, і, якщо вона дотримується, то запитуваний індекс і порівнюють зі значеннями (КІ для к від | до 1 в порядку спадання. Якщо має місце збіг, то повертають ТІК). У всіх інших випадках повертають Мі).
Етап 2: на початку сеансу ініціалізують |, встановлюючи його на 0 (якщо сеанс уже почався, то цей етап анулюється).
Етап 3: при кожному записові, якщо |--1 (сеанс не почався), передане значення м записують у ТОЇ, переданий індекс м записують у І(0|, а потім записують СІ, після чого м записують у МІ) і записують С-0; якщо
О«|«3 (запис у сеансі), то | збільшують на 1, м записують у ТІ), а і записують у І); якщо )-3, відбувається відмова від операції (перевищена межа записів у сеансі).
Етап 4: при закритті сеансу, якщо і»0, | записують у С, а потім, для | від 1 до С, копіюють значення ТІ||)) з індексом І()) з таблиці МІ). Потім С встановлюють рівним 0, а | - рівним -1.
Стає зрозумілим, що хоч електроживлення картки може бути перерване в будь-який момент, і що значення, які зчитуються, будуть правильними, тобто для кожного індексу і це буде останнє значення, записане не в сеансі, або записане в сеансі, який завершений (запис завершений або сеанс завершений у момент, коли в С записали ненульове значення).
Щоб перешкодити деяким операціям, якщо криптографічний сертифікат, що представляється в картку, є неправильним, і/або щоб забезпечити видачу криптографічних сертифікатів у картку наприкінці деяких операцій, вводиться криптографія.
Криптографічні сертифікати, що використовуються, базуються на відомому типові криптографії.
Наприклад, "сертифікат сеансу, аутентифікуючий картку" (або терміналу одержують шляхом застосування захищеного алгоритму хешування (ЗАХ) на картці і на терміналі до даних, що представляються карткою (або терміналом) і до деякого випадкового числа, що представляється терміналом (або карткою), коли починається сеанс; код аутентифікації повідомлення (КАП), який отримують у результаті, підписується карткою (або терміналом) за допомогою алгоритму цифрового підпису (АлЛЦП) і з використанням таємного ключа, що міститься в картці (або терміналі); термінал (або картка) верифікує підпис, користуючись відкритим ключем.
Для одержання КАП і/або формування підписів також можна використовувати симетричний криптографічний алгоритм, такий, як стандарт шифрування даних (СШД).
В одному варіанті реалізації винаходу етап одержання КАП є загальним в обох напрямках аутентифікації і має відношення до всіх даних сеансу. При використанні симетричної криптографії сертифікат, аутентифікуючий картку, і сертифікат, аутентифікуючий термінал, отримують за один етап шифрування КАП, а відповідні сертифікати картки і термінала одержують з них за допомогою елементарної операції, такої, як добування деяких попередньо визначених бітів.
Приклад ІЇ
У цьому прикладі реалізації винаходу дані пам'яті організовані у вигляді секторів, причому кожен сектор містить чотири поля: 1. дані; 2. ідентифікатор (ключа доступу, що дозволяє вибір сектора);
З. релевантність: для визначення того, який сектор є релевантним (підходящим), якщо два сегменти мають однаковий ідентифікатор; і 4. контроль: для верифікації того, що три попередніх поля не перекручені (наприклад, шляхом проведення контролю на парність).
Сектор позначають його ідентифікатором, причому це позначення заміняє позначення адреси. Процедура запису в сектор має ідентифікатор як параметр разом з даними для зв'язку з таким ідентифікатором.
Процедура зчитування сектора має ідентифікатор як свій параметр, і вона повертає дані, які були зв'язані з ідентифікатором в останньому випадку проведення запису з використанням такого ідентифікатора (або належну вказівку, якщо ідентифікатор раніше ніколи не використовувався). Іншими словами, замість доступу, що індексується, реалізується асоціативний тип доступу.
Під час процедури зчитування сектора картка здійснює пошук секторів, які мають ідентифікатори, що містять запитуване значення, і є неспотвореними (що визначається полем контролю). Коли множина секторів задовольняє цим двом критеріям, конкретний сектор зберігається на основі поля релевантності.
При запису сектора картка записує в доступному секторі таке: запитувані дані, ідентифікатор, поле релевантності, таке, що під час процедури зчитування цей сектор буде найбільш релевантним з неспотворених секторів, що володіють цим ідентифікатором, і поле контролю, що узгоджує три попередніх поля (іншими словами, керування записом є таким, що наступне зчитування може відбуватися належним чином).
За процедурою запису переважно йде стирання сектора, що виявився нерелевантним (непідходящим), шляхом запису нового сектора, що робить новий сектор доступним.
Краще також передбачити систему, яка забезпечує чистку пам'яті (збір непотрібної інформації ("сміття"), тобто систему для відновлення секторів, що не використовуються або тому, що вони перекручені, або тому, що вони не релевантні.
Краще передбачити систему, яка розподіляє знос, що є результатом запису, гарантуючи, що не завжди використовуються ті ж самі сектори, наприклад, шляхом вибору сектора випадковим чином серед секторів, що доступні.
Кращий у загальному випадку варіант процедури пошуку сектора полягає в тому, що використовують перевагу етапу пошуку для стирання секторів, які, як виявилося, перекручені, і/або секторів, які не є найбільш релевантними, обновляючи в такий спосіб три сектори (що забирає час у процесі конкретного зчитування, сприяючи прискоренню наступних зчитувань і записів). Краще перед стиранням сектора, який, як виявилося, є неспотвореним, але нерелевантним, знову проводити запис у релевантний сектор, оскільки запис у нього міг бути зроблений неналежним чином.
Робоча зона пам'яті дорівнює числу доступних секторів мінус один сектор, який повинен залишатися стертим. Усі сектори (включаючи стертий сектор) динамічно розподіляються в межах пам'яті.
Якщо дані доводиться структурувати в файлах, наприклад, у випадку застосування стандарту 7816-4
Міжнародної організації з стандартизації і Міжнародної електротехнічної комісії (ІЗО/МЕК), то ідентифікатор сектора підрозділяють на два субполя; ідентифікатора поля й ідентифікатора для сектора в межах файлу.
Необмежувальна реалізація операцій зчитування-запису з використанням цієї конкретної структури сектора наведена нижче.
Далі йде опис (необмежувальної) реалізації операцій зчитування-запису з використанням цієї конкретної структури сектора. - Поле контролю містить виражене в двійковому коді число нульових бітів в інших трьох полях; було виявлено, що якщо має місце деяка проблема, така, як перерваний запис або стирання, що змінює будь-яке число бітів у секторі, у тому самому напрямку, то контроль значення поля контролю завжди може сприяти виявленню виникнення цієї проблеми. - Поле релевантності являє собою ціле число в діапазоні 0-3, закодоване на 2-х бітах. - Процедура зчитування забезпечує послідовне зчитування всіх секторів доти, поки не виявиться перший сектор, що має шуканий ідентифікатор і який не є перекрученим. Якщо сектор не виявлений, то процедура закінчується повідомленням "сектор не виявлений". Якщо перший такий сектор виявлений, то його положення запам'ятовують разом з його даними і його релевантністю р. Пошук триває. Якщо виявлений другий сектор, який має шуканий ідентифікатор і який не є перекрученим, то перевіряють, чи є його релевантність 4 залишком від цілочисельного ділення числа ря-ї на 3; якщо його релевантність є згаданим залишком, то другий сектор повторно записують, перший сектор стирають і повертають дані з другого сектора; у протилежному випадку повторно записують перший сектор, стирають другий сектор і повертають дані з першого сектора. Якщо другий сектор не виявлений і якщо релевантність першого сектора дорівнює З (р-:3), то цей сектор стирають і видають повідомлення "сектор не виявлений"; у протилежному випадку дані, що повертаються, надходять з першого виявленого сектора. - Процедура запису починається аналогічно вищеописаній процедурі зчитування. Якщо виявлений сектор, запам'ятований раніше, який повинен бути повернутий процедурою зчитування для заданого ідентифікатора, то положення цього сектора зберігають з його релевантністю р (яка дорівнює 0, 1 або 2); якщо такий сектор не виявлений, то вибирають вільний сектор (з використанням процедури, описаної нижче) і записують у згаданий сектор поля ідентифікатора, даних, релевантності р-3 і контролю, а положення і релевантність згаданого сектора зберігають. В обох випадках процедура продовжується вибором вільного сектора (з використанням процедури, описаної нижче). У цей сектор записують поля ідентифікатора, даних, релевантності (яка обчислюється як залишок від цілочисельного поділу числа р-н1 на 3) і контролю. Потім раніше запам'ятований сектор, якщо він є, стирають.
- Для пошуку вільного сектора число п виявлених вільних сторін ініціалізують при нулі. Проводять послідовну перевірку секторів. Для кожного сектора, що не є порожнім і який є перекрученим, здійснюють стирання сектора, так що він стає порожнім (роблячи таким чином внесок у вищезгадане чищення пам'яті); якщо сектор не перекручений і якщо його релевантність не відповідає р-3, то в ще не просканованій (не переглянутій) зоні здійснюють пошук іншого неперекрученого сектора, що має той же ідентифікатор, і якщо його виявляють, то стирають нерелевантний сектор, діючи так само, як при зчитуванні; якщо наприкінці цього процесу сектор виявляється порожнім, то дають приріст числу п виявлених вільних секторів і дістають випадкове ціле число в діапазоні від 0 до п-1; якщо це ціле число дорівнює 0, то положення порожнього сектора запам'ятовують. Якщо проскановані всі сектори, усі непорожні сектори не перекручені, жодні два сектори не мають однаковий ідентифікатор, то число п порожніх секторів відомо, і один 3- них запам'ятовують як випадковий вибір, здійснений рівноїмовірним чином. Якщо вільний сектор не виявлений, то процедуру запису переривають.
Нижче описується спосіб, за допомогою якого картка може керувати сеансами неподільних змін, використовуючи таку конкретну структуру сектора.
Для запам'ятовування неподільних змін картка має М стертих секторів, доступних в енергонезалежній пам'яті (де М відповідає числу неподільних змін, внесення яких може знадобитися під час одного сеансу). Крім того, картка керує зоною енергонезалежної пам'яті (що не входить до секторів), яка призначена для керування сеансом і яку називають "описувачем сеансу".
Ця реалізація не має аутентифікації, специфічної для сеансу.
Описувач сеансу визначається на трьох полях: - списку посилань на неподільні сектори (СПНС); - контрольного значення при створенні списку посилань на неподільні сектори (КЗССПНО); і - контрольного значення, що враховує список посилань на неподільні сектори (КЗВСПНОС), для визначення того, чи завершений сеанс.
Етап 0: ініціалізація: перед першим доступом до даних після найближчого за часом переривання роботи картки, наприклад, після скидання у вихідний стан, картка повинна гарантувати, що описувач сеансу стертий.
Необхідно врахувати кілька випадків у залежності від стану описувача сеансу: - він повністю стертий: картка залишає його незмінним; - він не повністю стертий, а КЗВСПНЄС вірний: картка здійснює пошук усіх секторів, що стали застарілими, і стирає їх (при необхідності), заміняючи тими, які записані (з тих, на які є посилання в списку), а потім стирає описувач сеансу; - він не повністю стертий, КЗІВСПНС стертий або невірний, а КЗССПНС вірний: картка стирає сектори, задані в СПНС, а потім стирає описувач сеансу; або - він не повністю стертий, КЗВСПНС стертий або невірний і КЗССПНЄОС стертий або невірний: картка стирає описувач сеансу.
Етап 1: початок сеансу: картка здійснює пошук М стертих секторів, а потім записує список посилань на них у КЗССПНО в описувачі сеансу (передбачається, що він був стертий).
Етап 2: протікання сеансу: картка приймає команди. Коли одна з них викликає одну або кілька змін, сектори, що використовуються для запису цих змін, є секторами, записаними в СПНС, а їх кількість у сумі складає до М змінених секторів.
Етап 3: завершення сеансу: щоб завершити сеанс, картка здійснює запис КЗВСПНС, що гарантує облік
СПНОе і його КЗССПНО. Після цього вона здійснює пошук усіх секторів, що стали застарілими, і стирає їх, заміняючи тими, які записані (з тих, на які є посилання в списку). Потім вона стирає описувач сеансу.
Крім того, оскільки саме картка керує ратифікацією, то керування сеансом включає такі модифікації.
Етап 0: ініціалізація: у випадку, коли описувач сеансу не повністю стертий, а КЗІВСПНС вірний, картка здійснює пошук усіх секторів, що стали застарілими, і стирає їх, заміняючи тими, які записані (з тих, на які є посилання в списку), але не стирає описувач сеансу.
Етап 1: початок сеансу: картка записує в енергозалежній пам'яті, що сеанс почався. Якщо описувач сеансу не є порожнім, то картка вказує, що попередній сеанс не ратифікований, і шляхом аналізу СПНС може навіть вказати, які елементи даних неї ратифіковані. У будь-якому випадку, вона не змінює описувач сеансу.
Етап 2: протікання сеансу: під час першої команди з неподільними змінами картка стирає описувач сеансу і, при необхідності, здійснює пошук М стертих секторів, а потім записує СПНС і його КЗІВСПНС.
Етап 3: завершення сеансу: картка записує в енергозалежній пам'яті, що сеансів, які почалися, немає.
Щоразу, коли це трапляється, вона не стирає описувач сеансу.
UA2000116314A 1998-04-09 1999-09-04 Спосіб зміни неподільним чином множини комірок енергонезалежної пам'яті в картці з мікросхемою, зокрема у безконтактній картці UA65611C2 (uk)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9804453A FR2777371B1 (fr) 1998-04-09 1998-04-09 Procede pour modifier de maniere indivisible une pluralite d'emplacements de la memoire non volatile d'une carte a microcircuit
PCT/FR1999/000837 WO1999053451A1 (fr) 1998-04-09 1999-04-09 Procede pour modifier de maniere indivisible une pluralite d'emplacements de la memoire non volatile d'une carte a microcircuit, notamment une carte sans contact

Publications (1)

Publication Number Publication Date
UA65611C2 true UA65611C2 (uk) 2004-04-15

Family

ID=9525063

Family Applications (1)

Application Number Title Priority Date Filing Date
UA2000116314A UA65611C2 (uk) 1998-04-09 1999-09-04 Спосіб зміни неподільним чином множини комірок енергонезалежної пам'яті в картці з мікросхемою, зокрема у безконтактній картці

Country Status (21)

Country Link
US (1) US7370203B1 (uk)
EP (1) EP1070303B1 (uk)
JP (2) JP4708564B2 (uk)
KR (1) KR100562090B1 (uk)
CN (1) CN1180383C (uk)
AR (1) AR019035A1 (uk)
AT (1) ATE355574T1 (uk)
AU (1) AU759733B2 (uk)
BR (1) BR9910116A (uk)
CA (1) CA2324879C (uk)
DE (1) DE69935317T2 (uk)
DK (1) DK1070303T3 (uk)
EA (1) EA002994B1 (uk)
ES (1) ES2283110T3 (uk)
FR (1) FR2777371B1 (uk)
IL (1) IL138927A0 (uk)
PT (1) PT1070303E (uk)
TR (1) TR200002933T2 (uk)
TW (1) TW484063B (uk)
UA (1) UA65611C2 (uk)
WO (1) WO1999053451A1 (uk)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1223565A1 (en) * 2001-01-12 2002-07-17 Motorola, Inc. Transaction system, portable device, terminal and methods of transaction
JP3820999B2 (ja) * 2002-01-25 2006-09-13 ソニー株式会社 近接通信システム及び近接通信方法、データ管理装置及びデータ管理方法、記憶媒体、並びにコンピュータ・プログラム
EP1533706A4 (en) * 2002-06-10 2006-05-10 Ken Sakamura IC card, terminal equipment and data communication method
TWI856543B (zh) * 2023-03-06 2024-09-21 達擎股份有限公司 電子裝置及啟動控制系統

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0754536B2 (ja) * 1986-02-17 1995-06-07 株式会社日立製作所 Icカ−ド利用システム
JPS63120391A (ja) * 1986-11-10 1988-05-24 Hitachi Ltd Icカ−ド
GB8720332D0 (en) * 1987-08-28 1987-10-07 Mars Inc Data carrying devices
US7028187B1 (en) * 1991-11-15 2006-04-11 Citibank, N.A. Electronic transaction apparatus for electronic commerce
US5557518A (en) * 1994-04-28 1996-09-17 Citibank, N.A. Trusted agents for open electronic commerce
US5453601A (en) * 1991-11-15 1995-09-26 Citibank, N.A. Electronic-monetary system
FR2689662B1 (fr) * 1992-04-01 1994-05-20 Gemplus Card International Procede de protection d'une carte a puce contre la perte d'information.
FR2701578B1 (fr) * 1993-02-16 1995-03-31 Gemplus Card Int Procédé d'écriture dans une mémoire non volatile, notamment dans une carte à mémoire.
US5869825A (en) * 1993-09-07 1999-02-09 Ziarno; Witold A. Method of processing monetary transaction data by batch off-loading of the data from a portable, hand-held electronic device, device and system therefor
US6088797A (en) * 1994-04-28 2000-07-11 Rosen; Sholom S. Tamper-proof electronic processing device
US5799087A (en) * 1994-04-28 1998-08-25 Citibank, N.A. Electronic-monetary system
US6868408B1 (en) * 1994-04-28 2005-03-15 Citibank, N.A. Security systems and methods applicable to an electronic monetary system
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
DE69533328T2 (de) * 1994-08-30 2005-02-10 Kokusai Denshin Denwa Co., Ltd. Beglaubigungseinrichtung
NL9401406A (nl) * 1994-08-31 1996-04-01 Nederland Ptt Betaalsysteem met verbeterde integriteit.
DE4439266A1 (de) * 1994-09-30 1996-04-11 Siemens Ag Datenübertragungssystem mit einem Terminal und einer tragbaren Datenträgeranordnung und Verfahren zum Wiederaufladen der tragbaren Datenträgeranordnung mittels des Terminals
FR2725537B1 (fr) * 1994-10-11 1996-11-22 Bull Cp8 Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe
US5701343A (en) * 1994-12-01 1997-12-23 Nippon Telegraph & Telephone Corporation Method and system for digital information protection
KR0160685B1 (ko) * 1995-03-31 1998-12-15 김광호 칩인 카드에 의한 사용방지 기능을 가진 퍼스널 컴퓨터의 카드 리드/라이트 콘트롤러
FR2733615B1 (fr) * 1995-04-26 1997-06-06 France Telecom Carte a memoire et procede de mise en oeuvre d'une telle carte
NL1001376C2 (nl) * 1995-05-11 1996-11-12 Nederland Ptt Werkwijze voor het uitvoeren van een elektronische betalingstransactie met een variabel aantal betalingseenheden, alsmede betaalmiddel en stelsel voor toepassing van de werkwijze.
JP3272213B2 (ja) * 1995-10-02 2002-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーション Icカード及び情報処理装置の認証方法
EP0795844A1 (en) * 1996-03-11 1997-09-17 Koninklijke KPN N.V. Method of securely modifying data on a smart card
US5892902A (en) * 1996-09-05 1999-04-06 Clark; Paul C. Intelligent token protected system with network authentication
EP0851396A1 (en) * 1996-12-23 1998-07-01 Koninklijke KPN N.V. System for increasing a value of an electronic payment card
FR2757661B1 (fr) 1996-12-24 1999-01-22 Gemplus Card Int Procede de transfert securise de donnees par un reseau de communication
GB2321741B (en) * 1997-02-03 2000-10-04 Certicom Corp Data card verification system
FR2762118B1 (fr) * 1997-04-11 1999-07-16 Gemplus Card Int Procedure securisee de controle de transfert d'unites de valeur dans un systeme de jeu a carte a puce
FR2764413B1 (fr) * 1997-06-10 1999-07-09 Sgs Thomson Microelectronics Procede d'authentification de circuit integre
DE19757653C2 (de) * 1997-12-15 2003-07-17 Francotyp Postalia Ag Verfahren und postalisches Gerät mit einer Chipkarten-Schreib/Leseeinheit zum Nachladen von Änderungsdaten per Chipkarte
US6216227B1 (en) * 1998-06-29 2001-04-10 Sun Microsystems, Inc. Multi-venue ticketing using smart cards

Also Published As

Publication number Publication date
JP4708564B2 (ja) 2011-06-22
IL138927A0 (en) 2001-11-25
DE69935317T2 (de) 2007-10-31
KR20010042577A (ko) 2001-05-25
ES2283110T3 (es) 2007-10-16
DE69935317D1 (de) 2007-04-12
ATE355574T1 (de) 2006-03-15
CN1180383C (zh) 2004-12-15
CN1296601A (zh) 2001-05-23
FR2777371A1 (fr) 1999-10-15
US7370203B1 (en) 2008-05-06
JP4838381B2 (ja) 2011-12-14
WO1999053451A1 (fr) 1999-10-21
AU759733B2 (en) 2003-04-17
AU3152399A (en) 1999-11-01
JP2002511623A (ja) 2002-04-16
EA200001048A1 (ru) 2001-06-25
FR2777371B1 (fr) 2001-10-26
TR200002933T2 (tr) 2000-12-21
BR9910116A (pt) 2000-12-26
PT1070303E (pt) 2007-06-05
KR100562090B1 (ko) 2006-03-17
JP2011070692A (ja) 2011-04-07
CA2324879A1 (fr) 1999-10-21
EA002994B1 (ru) 2002-12-26
CA2324879C (fr) 2008-02-05
EP1070303A1 (fr) 2001-01-24
DK1070303T3 (da) 2007-06-25
TW484063B (en) 2002-04-21
EP1070303B1 (fr) 2007-02-28
AR019035A1 (es) 2001-12-26

Similar Documents

Publication Publication Date Title
EP0858644B1 (en) A system and method for loading applications onto a smart card
JP3575697B2 (ja) 仮想メモリを管理するための手段を含むチップカードおよび関連する通信方法とプロトコル
KR100948120B1 (ko) 휴대 가능 정보 기록 매체
JP4598857B2 (ja) Icカード、およびそのアクセス制御方法
US20040034734A1 (en) Method of data caching on a smartcard
JP5123524B2 (ja) 保護されたメモリ・アクセスを用いたスマートカード
JP2003141488A (ja) 高級プログラミング言語を用いたマイクロコントローラ
JP2020095723A (ja) 階層セキュリティを備えたフラッシュ変換層
JP4838381B2 (ja) マイクロサーキットカード、特に非接触型カードにおける、複数の不揮発性メモリ位置を不可分的に修正する方法
US6971025B1 (en) Secure personalization of chip cards
US8983072B2 (en) Portable data carrier featuring secure data processing
US6275982B1 (en) Method and device enabling a fixed program to be developed
WO2005088448A1 (en) Method and apparatus for reliable in-place update
US11768965B2 (en) System and method for securely storing data in a SIM
AU2006256601B2 (en) ITSO FVC2 application monitor
JP2000503157A (ja) メインファイルと補助ファイルとの間にリンク生成手段を備えたセキュリティモジュール
JP3899223B2 (ja) Icカードおよびicカード搭載処理プログラムの変更・追加方法
KR100977640B1 (ko) 거래하는 동안 메모리 카드의 데이터를 수정하기 위한 방법
JP3231466B2 (ja) キーを記憶した情報記録媒体
JPH06309531A (ja) Icカードに与える命令フォーマットのチェック方法
JPH10124635A (ja) Icカードおよびicカードシステム
MXPA00009892A (en) Method for indivisibly modifying a plurality of sites in a microcircuit card non volatile memory, in particular a contactless card
JPH09198318A (ja) Icカード