Method for changing data charged in memory cells of an electronic franking machine
8 claims: 6 independent, 2 dependent
- 1Verfahren zur Veränderung der in Speicherzellen geladenen Daten einer elektronischen Frankiermaschine, mit einem Bus und einem Mikroprozessor in einer Steuereinheit der Frankiermaschine zur Ausführung von Schritten für eine Routine, welche von einem externen Speichermedium gesteuert wird, mit Aufruf einer Prüf-Routine, welche in einem sicheren internen Bereich einer elektronischen Frankiermaschine abläuft, zur Feststellung der Gültigkeit von Daten basierend auf einem Authentifikationsverfahren, gekennzeichnet durch a1) Vorsehen eines Spezial-EPROM, welches einen Schlüssel für die Zugangsberechtigung aufweist und in einen zugehörigen EPROM-Sockel gesteckt wird, wobei spezielle Treiberschaltkreise, welche zwischen Bus und EPROM-Sockel geschaltet sind, das Auslesen von frankiermaschineninternen Daten nach außen verhindern und wobei mit dem Spezial-EPROM über den EPROM-Sockel eine Datenstruktur von außen angelegt wird, welche unter der Wirkung eines entsprechenden in der Frankiermaschine gespeicherten Programms bzw. einer internen Interpreterroutine zur Veränderung des Frankiermaschinenzustandes beiträgt, a2) Eintreten in einen Spezial-Modus nach einem Prüfen einer Zugangsberechtigung der elektronischen Frankiermaschine anhand eines im externen gesteckten entsprechend programmierten Nurlese-Speicherbaustein gespeicherten Zugangsschlüssels zum Eintreten in den Spezial-Modus, der eine Veränderung der in Speicherzellen der elektronischen Frankiermaschine geladenen Daten gestattet, wobei der entsprechend programmierte steckbare Nurlese-Speicherbaustein ein zu interpretierendes Programm enthält, a3) Laden des zu interpretierenden Programmes aus externen gesteckten Nurlese-Speicherbaustein in die Frankiermaschine, zur Steuerung einer Routine in der elektronischen Frankiermaschine, b) Aufrufen einer Prüf-Routine, welche in einem sicheren internen Bereich einer elektronischen Frankiermaschine abläuft, zur Feststellung der Gültigkeit des zu interpretierenden geladenen Programmes, welches Anweisungen und/oder Daten im vorbestimmten Speicherplatz enthält, wobei die Feststellung der Gültigkeit auf einem Authentifikationsverfahren basiert und c) Veränderung von Daten in der Frankiermaschine bei Gültigkeit des mittels Authentifikationsverfahren überprüften zu interpretierenden geladenen Programmes, wobei nach einem Schritt zur Initialisierung einer Interpreterroutine die Schritte einer Interpreterroutine anlaufen, um die Daten in der Frankiermaschine zu verändern, wobei der Interpreter als eine spezielle Routine, die im frankiermaschineninternen Programmspeicher gespeichert ist, durch eine über den externen EPROM-Sockel von außen angelegte und in die Frankiermaschine kopierte Datenstruktur aktiviert wird, und mit den im frankiermaschineninternen Programmspeicher gespeicherten Betriebsprogrammteilen zusammenwirkt, um Daten zu interpretieren, indem auf der Kopie eine Plausibilitätsprüfung durchgeführt wird, wobei jeweils ein Zugangs-Schlüssel den Zugang zum entsprechenden Spezial-Modus ermöglicht und wobei die vorgenannte Datenstruktur Informationen umfaßt, die vom Interpreter verarbeitet werden und wobei der vorgenannten Prozessor Operationen ausführt, die sich ausschließlich im Codebereich des Betriebsprogrammes im frankiermaschineninternen Programmspeicher befinden, oder Verlassen der Prüf-Routine der Frankiermaschine, wenn das zu interpretierende geladenen Programm ungültig ist, und wobei Schritte ablaufen, zum Verhindern einer weiteren Programmausführung zur Manipulation bzw. einer von der elektronischen Frankiermaschine nach extern führenden Programmverzweigung.
- 2Verfahren nach Anspruch 1, gekennzeichnet durch die nach dem Eintritt in den Spezialmodus und dem Laden des zu interpretierenden Programmes ablaufenden Schritte:- Bilden einer ersten MAC-Prüfsumme im Prozessor der elektronischen Frankiermaschine über einen ersten zu interpretierenden geladenen Inhalt (91) der Inhalte desjenigen externen Speichers, welchem ein erster MAC zugeordnet ist, - Vergleich der in vorgenannter Weise gebildeten MAC-Prüfsumme im vorgenannten Prozessor mit dem im externen Speichermittel gespeicherten Wert des ersten MAC, - Durchführung einer Verarbeitungs-Routine zur Verarbeitung des übertragenen ersten Speicherinhaltes (91) im vorgenannten Prozessor nach einer Interpretation des zu interpretierenden geladenen Programms oder Verlassen der Prüf-Routine der Frankiermaschine, wenn die Daten ungültig sind und Schritte zum Verhindern einer weiteren Programmausführung zur Manipulation bzw. einer vom vorgenannten Prozessor nach extern führenden Programmverzweigung, - Durchführung von internen Händler-Routinen zum Ändern von Daten in Speicherzellen der Frankiermaschine, - Laden eines weiteren zu interpretierenden Programmes aus externen gesteckten Nurlese-Speicherbaustein in die Frankiermaschine, - Bilden einer zweiten MAC-Prüfsumme im vorgenannten Prozessor über einen zweiten zu interpretierenden geladenen Inhalt der Inhalte desjenigen externen Speichers, welchem ein zweiter MAC zugeordnet ist, - Vergleich der in vorgenannter Weise gebildeten MAC-Prüfsumme im vorgenannten Prozessor mit dem im externen Speichermittel gespeicherten Wert des zweiten MAC, - Durchführung einer Verarbeitungs-Routine zur Verarbeitung des übertragenen ersten Speicherinhaltes im vorgenannten Prozessor bei Gleichheit der vorgenannten MAC's nach einer Interpretation des zu interpretierenden geladenen Programms und Beenden der Verarbeitungsroutine EPILOG oder Verhindern der Durchführung der Prüf-Routine, wenn ein Fehler festgestellt wird.
- 3Verfahren nach den Ansprüchen 1 bis 2, dadurch gekennzeichnet, daß die Information, die vom Interpreter verarbeitet werden kann, von einer Reihe von Befehlen gebildet wird, welche aus einem Datensatz mit drei Komponenten bestehen, wobei eine erste Komponente OPERATION, die durch den jeweiligen Befehl auszuführende Operation, eine zweite Komponente TYP, den Typ des Wertes, welcher in einer dritten Komponente WERT angegeben worden ist, kennzeichnet.
- 4Verfahren nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß nach dem durch die Betätigung der Vorgabetaste ausgelösten Start (30) und nach dem Eintritt in den Spezial-Modus, der aufgrund einer Prüfung einer Zugangsberechtigung erfolgt, in einem Schritt (31 bzw. 38) ein Kopieren des Prologs bzw. Epilogs in den internen Datenbereich des internen OTP-RAM erfolgt, eine MAC-Prüfsumme im weiteren Schritt (32 bzw. 39) durch Verschlüsselung einer Prüfsumme über den PROLOG- bzw. EPILOG-Codebereich gebildet wird und im folgendem Prüfschritt (33 bzw. 40) ein MAC-Vergleich mit der bei der Herstellung bzw. Programmierung des Spezial-EPROMS gebildeten und im Spezial-EPROM gespeicherten MAC-Prüfsumme über den PROLOG- bzw. EPILOG-Codebereich durchgeführt wird, sowie daß nach Schritten (34, 35 bzw. 41, 42) zur Durchführung der eine Plausibilitätsprüfung einschließenden Interpreterroutine ein weiterer Überprüfungsschritt (36 bzw. 43) vorgesehen ist, der die bei der Abarbeitung eines Programms auftretende Fehlerfälle bzw. Fälle, die zur Beendigung des Interpre-tationsvorgangs führen, feststellt oder zum weiteren Überprüfungsschritt (36 bzw. 43) zurückverzweigt, um weitere Befehle abzuarbeiten.
- 5Verfahren nach den Ansprüchen 1 bis 3, gekennzeichnet durch die Schritte • Vorsehen mehrerer Bereiche im externen Speichermedium, welche zu interpretierende Code enthalten, wobei die einzelnen Bereiche mittels MAC abgesichert sind, • Vorsehen eines Modus zur Abarbeitung von Servicefunktionen zur Durchführung von internen Händler-Routinen zum Ändern von Daten in Speicherzellen der Frankiermaschine, • Ausführung von Interpreterroutinen innerhalb der Routinen für Servicefunktionen, wenn diese zu interpretierenden Code-Routinen über die Tastatur aufgerufen werden, wobei beim Betätigen einer auf einer Frankiermaschinentastatur befindlichen Taste der dieser Taste zugeordnete Bereich aus dem externen Speichermedium in die Frankiermaschine geladen, authentifiziert und, bei Übereinstimmung interpretiert wird oder anderenfalls, wenn kein zu interpretierender Code dieser Taste zugeordnet ist, daß dann mit der normalen Verarbeitung des Tastendrucks fortgefahren wird.
- 6Verfahren nach Anspruch 5, gekennzeichnet durch die Schritte • Übertragen eines extern gespeicherten vorbestimmten MAC-Wertes in den OTP-RAM zur flüchtigen Speicherung und ein Bilden einer ersten MAC-Prüfsumme im OTP-Prozessor über einen ersten der Inhalte desjenigen Speichers, welchem ein erster MAC zugeordnet ist, • Eintritt in den Modus zur Abarbeitung von Servicefunktionen und Durchführen von Routinen für Servicefunktionen mit Interpreterroutinen sowie Beenden des Modus zur Abarbeitung von Servicefunktionen, • Übertragen eines extern gespeicherten vorbestimmten MAC-Wertes in den OTP-RAM zur flüchtigen Speicherung und ein Bilden einer zweiten MAC-Prüfsumme im OTP-Prozessor über einen zweiten der Inhalte desjenigen Speichers, welchem ein zweiter MAC zugeordnet ist.
- 7Verfahren, nach den Ansprüchen 1 bis 6, dadurch gekennzeichnet, daß die Vorgabetaste mittels einer Postklappe geschützt ist, welche zum Betätigen der Vorgabetaste geöffnet wird, um in den Spezial-Modus einzutreten.
- 8Verfahren, nach den Ansprüchen 1 bis 7, dadurch gekennzeichnet, daß der Interpreter als eine spezielle Routine, die im internen OTP-ROM gespeichert ist, durch eine über den externen EPROM-Sockel von außen angelegte Datenstruktur aktiviert wird, und mit den im internen OTP-ROM gespeicherten Betriebsprogrammteilen zusammenwirkt, um Daten zu interpretieren, wobei jeweils ein Zugangs-Schlüssel den Zugang zum entsprechenden Spezial-Modus ermöglicht und wobei die vorgenannte Datenstruktur Informationen umfaßt, die vom Interpreter verarbeitet werden und wobei die OTP-interne CPU Operationen ausführt, die sich ausschließlich im Codebereich des Betriebsprogrammes im internen OTP-ROM befinden.
Independent claims8
64 paragraphs, as filed
0001The invention relates to a method for changing the memory cells in loaded data of an electronic franking machine, after which the preamble improved of claim 1 specified type. This method accessibility on individual blocks of electronics without risk to their safety.
0002In one known from US 4,746,234 meter solid and variable information stored in memory means (ROM, RAM). When a letter to the transport path in front of the printing position a Microswitch actuated, this information will be by means of a Microprocessor read, to form a pressure control signal. Both are then electronically combined to form a print image and can by thermal transfer printing means to an article to be franked Envelope is printed.
0003For such franking machines, the fully electronically generated Imprint for franking postal matter including imprint of deliver advertising slogan, must in the ON state is not a abgerechnetes valid franking be prevented.
0004Known franking machines included in at least one memory Three relevant postal register for spent sum value (increasing Register), still available remaining credit (falling register) and Register for a checksum. The checksum is the sum from spent sum value and from available credit compared. Even so is a verification of proper accounting possible.
0005Basically, any action taken Franking is accounted for and every Manipulation, which leads to a franking nichtabgerechneten must be prevented.
0006It is already in the US 4,812,965 a remote inspection system for Postage meters have been proposed which is based on special Messages in the impression of mailpieces that sent the Central must be, or is based on a remote access via MODEM. Sensors within the meter to any action taken Corruption action detect, so in associated memories Flag may be set, if necessary, in the franking machine Manipulation purposes was intervened. Such intervention could done to invite not pay credit to the register.
0007Upon detection of a manipulation the meter while the remote inspection by modem through a by the data center outgoing signal locked. A clever manipulation might but on the other hand consist unsettled after the preparation of Franking print, the flag and the registers in the restore the original state. Such manipulation would be remote inspection by the data center undetectable when was this undone manipulation before the remote inspection. The reception of the card from the data center to which a is to take place for inspection to be carried out Franking, allows the manipulator, the franking machine in sufficient time restore the original state. So This is no greater safety distance.
0008In EP 660 269 measures for higher already been Tampering in connection with an OTP processor (ONE Time programmable) proposed without a special mechanical encapsulation of the safety components or a Sensor for detecting the opened package is required. In particular, an OTP processor with internal non-volatile is Memory (NV-RAM) have been proposed. Data security can be increased are detected by by checking routines manipulation becomes. However, such a special OTP processor is only a higher price be available for purchase. Also, such a special OTP processor can not alone ensure the data security when not all of the required code in the internal OTP-ROM saved exists. That applies to an extensive not expected to program code.
0009In EP 660 269 is still assumed that a franking machine, a closable and sealed flap has the access to the underlying hardware (EPROM socket) only a limited especially trustworthy group of people allowed. Here it could be assumed that through these people no manipulation of Franking done.
0010The current approach to the basic setting of the franking machine in the manufacturing process foresaw the machine parameters through a reset software made the machine accessible by a reset EPROM was and has been processed by the machine's own processor, adjust. For this, the reset-EPROM has been in the external plate-base used, and the functionality by actuation of the Default button is released.
0011The fact that by operating the default button Program branch in the code area of the external EPROM base takes place, making manipulation of the machine software by foreign EPROMs possible. Manipulation by the end user would Here indeed require the destruction of post closure, which the technically capable manipulator with fraudulent intent but hardly stop can perform this step if he in the possession of such Reset EPROM reaches. For the custom changing some Machine parameters, which for the rental of franking machines are essential to the trusted circle of people would strongly be extended, which may open the door post.
0012This possibility of manipulation is not acceptable, since in addition to the Change of register states also reading the otherwise protected OTP own memory cells would allow. moreover would the mail flap that the default button and the external EPROM socket through the post closure against established illegally Access protects, legally a wider audience. In order to there is a higher probability of undetected manipulation. A partially opened postal flap would on the other hand the advantage that and the user has access to the cliché-EPROM socket Cliche EPROM can change independently. This would allow the Postage meter service costs saved or be limited to what is necessary. This base is connected to the connected microprocessor, that is a manipulation could so done that a manipulator a manipulated program EPROM using that as a RESET EPROM control of the microprocessor system accepts and money values, messages or security items targeted changes in the meter or that a manipulated cliché EPROM uses that altered the print data Value stamp contains (location of the sender, postal code of the sender) and a manipulation of the value stamp impression would result.
0013But in case a solution for a franking machine requires that a has partially opened postal flap, with the safety still can be maintained, additional measures for a need external memory means (RESET EPROM or Service EPROM) be taken that the data loaded into memory cells Data (for example, in NVRAM's) an electronic postage meter can change.
0014It was to achieve the object, the disadvantages of the prior art to overcome and a significant increase in security of to achieve meter. are within the meter the safety-related program parts are stored, for those functions which are carried out in the service mode should. The security housing is to be replaced by a housing, which accessibility to individual components of the electronic products Service technicians improved. Here is a processor without a internal NV-RAM are used. Another task is the to improve security of the data in the franking machine operating at a Action by the service technician or artisan means amended or entered an external storage means will. It should be loaded future program parts that the expand original program and carried out in service mode to be.
0015The object is solved with the features of claim 1.
0016The invention relates to a method for changing the memory cells in loaded data an electronic postage meter, with a bus and with a microprocessor in a control unit of the franking machine for executing steps for a routine that of is an external STORAGE MEDIUM controlled by calling a test routine, which in a secure internal area of an electronic Meter expires, to determine the validity of data based on an authentication method comprising, a<sl><li>a1) providing a special EPROM that a key for the having access authorization and in an associated EPROM socket is inserted, specific driver circuits (Buffer), which are connected between bus and EPROM socket, the reading of prevent postage meter data to the outside and being with the special EPROM via the EPROM socket, a data structure of is externally applied, which under the action of a corresponding in the franking machine stored program or an internal Interpreter routine for changing the Frankiermaschinenzustandes contributes</li><li>a2) entering a special mode for a testing a Admission of the electronic postage meter based on a in external plugged suitably programmed read-only memory chip (EPROM) saved access key to Enter the special mode, a change in the Memory cells of the electronic postage meter data loaded permitted, the appropriately programmed pluggable read only memory chip (EPROM) contains an interpretable program</li><li>a3) Loading of interpretable program from external plugged Read-only memory chip (EPROM) in the meter, the Control of a routine in the electronic postage meter,</li><li>b) calling a test routine, which in a secure internal area an electronic postage meter runs out, to determine the Validity of interpretable loaded program which Instructions and / or data in the predetermined memory location contains, wherein the determination of the validity of an authentication method based and</li><li>c) modification of data in the meter when the validity verified by authentication method to interpret program loaded, one after a step for initializing Interpreter routine call at the steps of an interpreter routine to the changing data in the postage meter, the interpreter as a special routine, the postage meter machine in program memory is stored by external via the EPROM socket externally applied and copied in the meter data structure is activated, and with the postage meter machine in program memory operating program stored parts cooperating to interpret data, adding to the copy of a plausibility check is conducted, wherein in each case an access key to access to the corresponding special mode allows and the aforementioned data structure comprises information that is processed by the interpreter and wherein the aforementioned processor executes operations exclusively in the code area of the operating program in postage meter program memory are, or leaving the testing routine of the franking machine, if to the interpretive loaded program is invalid, and said steps take place, for Preventing further execution for manipulation or a leading of the electronic postage meter to external Program branch.</li></sl>
0017The interpreter routine is before the existing system once and second time running after the program part of the dealer functions. Accordingly, the data / program areas that this Purpose are read from the external storage medium, as a prologue and epilogue called.
0018It is envisaged that after, for example, by the operation a preset button triggered start and after the entry into the Special mode, the result of an examination of an access authorization done in one step first a copy of the prologue or epilogue takes place in the internal data area of the internal OTP RAM, a MAC checksum in another step by (DES) encryption of (CRC) Checksum over the PROLOG and EPILOGUE code area is formed and the following test step a MAC comparison with the case creating and programming of special EPROMS formed and stored in a special EPROM MAC checksum over the PROLOG and EPILOGUE code area is carried out, and that after enclosing steps for the implementation of a plausibility check is provided interpreter routine, another verification step, of the during the execution of a program errors cases or cases leading to the completion of the interpretation process, notes or branches back for further verification step to further commands work off.
0019The invention is preferably made by a processor, the only can be programmed once (one time programmable). A increased safety, for example, a mask-programmed Microprocessor are reached, the external ports and an internal Bus structure, an internal ROM, internal RAM for safety having sequences. security-related data in the internal Rome and routines during manufacture by baking.
0020Another preferred variant is based on a meter with From microprocessor, the microprocessor in the internal ROM includes, of not reading out the program code contained therein allowed. This may be a commercial OTP processor (ONE TIME be PROGRAMMABLE) obtained by following the programming operation set / burn a read lock placed in such a state.
0021The meter can also equipped with an OTP type be, of and a reading of sensitive data Programs allowed in encrypted form (Encryption Table). The has the advantage that a control over is possible if the data have been properly stored.
0022The invention is also secured in other ways microprocessor systems usable.
0023The invention has the advantage that the program flow, the internal by the Operating software of the meter is defined, by external storage media to influence, for which purpose any program branching the CPU in the memory areas of the external Storage medium, and thus no unintentional control of processor is made possible. To the so in the program flow by external media protect integrable program sequences of manipulation, are Prologue and epilogue each secured by a MAC.
0024As long as no program branch in external storage means takes place, there is a safe protection against fraudulent manipulation. In Advantageously, with the parts of the program, which in the internal OTP-ROM are executed, a protection also of externally stored Parts of the program allows, for example, in an EPROM stored present.
0025It should be mentioned as an advantage that the cliché-EPROM not only exclusively by a service technician, but also integrates seamlessly with any another authorized person plugged into the socket or may be substituted. Special driver circuits (Buffer), which connected between bus and EPROM socket (FIG. 2), prevent the Postage meter reading data to the outside. on the other hand can data at any time via the socket in the meter be entered.
0026The inventive method comprises the steps of:<ul><li>Press a preset button and checking an access authorization based on a plugged in the external read-only memory chip (EPROM) saved access key for entering the Special mode, and load the program to interpret from external plugged read-only memory module (EPROM) in the franking machine</li><li>Forming a first MAC checksum in the electronic processor Franking machine via a first interpretable content (PROLOGUE) the contents of that external memory, wherein a first MAC (message authentification code) is assigned,</li><li>Comparison of formed in the aforementioned manner MAC checksum aforementioned processor with external memory means stored value of the first MAC,</li><li>Performing a processing routine for processing the transmitted first memory content (PROLOGUE) in the aforementioned interpretable processor according to the interpretation of the charged Program or exiting the test routine of the postage meter, if the data is invalid and steps to prevent further Program execution for manipulation or a from aforementioned processor externally leading program branch,</li><li>Conducting internal dealer routines the- modify data in Memory cells of the franking machine,</li><li>Loading a further interpretable program from external plugged read-only memory chip (EPROM) in the meter,</li><li>Forming a second MAC checksum in the aforementioned processor a second interpretable loaded content (Epilogue) of content of that external memory, wherein a second MAC (Message Authentification code) is assigned,</li><li>Comparison of formed in the aforementioned manner MAC checksum aforementioned processor with external memory means stored value of the second MAC,</li><li>Performing a processing routine for processing the transmitted first memory content (Epilogue) in the aforementioned Processor at equality of the aforementioned MAC's according to the interpretation the loaded to interpretive program and end the Processing routine EPILOGUE or preventing the implementation of the Testing routine if an error is detected.</li></ul>
0027The open service door allowed by a special EPROM to apply via the external EPROM socket a data structure from the outside, which, for example, by actuating the means of Post sealed flap concealed and thus protected preset button under the action of an internal interpreter for changing the Frankiermaschinenzustandes contributes.
0028It is contemplated that the interpreter as a special routine called in the postage meter program memory is stored, by a via the external EPROM socket externally applied data structure is activated, and with the postage meter machine in program memory operating program stored parts cooperating to to interpret data. In each case, an access key allows Access to appropriate special mode, in which the aforesaid data structure comprises information that is processed by the interpreter and wherein the aforementioned processor executes operations exclusively in the code area of the operating program in postage meter program memory.
0029Interpreter routines can in principle also in retail mode run. It is envisaged that in the external memory medium several Regions are provided which comprise interpretable code, the different areas are protected by MAC. It is a Mode for execution of service functions with execution Interpreter routines within the routines for service functions provided, if this interpretable code routines on Keypad overlay, wherein when pressing on a Frankiermaschinentastatur situated key of this key assigned area of the external storage medium in the Franking machine loaded and authenticated, in conformity interpreted or otherwise, if not to interpretive code associated with that key, then that of the normal processing Keystroke proceeding.
0030In a further embodiment, the method is characterized by the steps<ul><li>Transmitting a predetermined externally stored MAC value in the OTP RAM for volatile storage and forming a first MAC checksum in the OTP processor via a first (PROLOGUE) of Contents of that memory, wherein a first MAC is assigned to</li><li>Entry into the mode for execution of service functions and Performing routines for service functions with interpreter routines and exit the mode for execution of service functions</li><li>Transmitting a predetermined externally stored MAC value in the OTP RAM for permanent storage and forming a second MAC checksum in the OTP processor via a second (Epilogue) of , Wherein a second MAC is assigned to content of that memory.</li></ul>
0031Advantageous further developments of the invention are in the dependent claims be in or below, together with the Description of the preferred embodiments of the invention with reference to the represented figures. Show it:<dl tsize="8" compact="compact"><dt>Figure 1,</dt><dd>Block diagram of a postage meter,</dd><dt>Figure 2,</dt><dd>Variant with OTP in the control device the franking machine,</dd><dt>Figure 3,</dt><dd>Which processes Structure of a record by the interpreter can be, </dd><dt>Figure 4,</dt><dd>Flow diagram for the schematic configuration of and the Binding of the interpreter,</dd><dt>Figure 5,</dt><dd>Flowchart for the logical integration of the interpreter in the internal service functionality.</dd><dt>Figure 6,</dt><dd>Flowchart for a merchant mode with interpretation at Key operation,</dd></dl>
0032In the figure, 1 is a block diagram of an electronic franking machine shown with inventively enhanced security. The invention based on a franking machine with a microprocessor that a internal OTP-ROM, the read-out of the contained therein Program code not allowed. In addition, security-related data stored in the internal OTP-ROM. To prevent the reading An external interference can appropriate in the microprocessor set security bits during manufacture of the meter will. This can be a commercially available OTP processor, the one after the programming process by set / burn a read lock added to such a condition or it may be a its microprocessor with mask programmable ROM, the after Manufacturing process no longer allows a readout of the program code or just reading out the program code and data in encrypted form allowed.
00331 shows a block diagram of the invention Franking machine with a printer module 1 for a fully electronically generated franking, with at least one more actuating elements having input means 2, a display unit 3, the one Communication with a data center producing MODEM 23, further input means 21 or scale 22 which has a I / O control module 4 are coupled to a controller 6 and with non-volatile memories 5a, 5b, 9, 10 and 11 for data or programs which variable the or the Include constant parts of the franking.
0034A character memory 9 supplies the necessary print data for the variable Parts of the franking to a volatile memory 7. The Control means 6 includes a microprocessor uP, which with the I / O control module 4, with the character memory 9, with the volatile memory 7 and with non-volatile main memories 5a, 5b, comprising a cost center memory, with a Program memory 11, with the motor of a transport or Feeding device, optionally, a strip with release 12, Encoder (encoder) 13 and a clock / date module 8 in Connection is. The individual memory can in several physically separated or in a manner not shown in a few be realized summarized blocks. The one memory module, which includes the non-volatile memory 5b can for example, be an EEPROM, the additional through at least one Measure, for example, glue on the circuit board, sealing or casting with epoxy resin, is secured against removal.
00352 shows a detail of the block diagram is the electronic Meter for a variant with OTP in the control device shown. can in this basic arrangement in the figure 2 Sensors and actuators, such as in the figure 1 Encoder shown 13 and motor 12 either directly or via I / O ports be connected to the OTP.
0036A preferred variant of a microprocessor is an 8051 processor with 16kB on-chip EPROM (Philips 87C51FB) Such OTP type (One Time Programmable) can not be erased by ultraviolet light, because the latter has no suitable for UV light passage window. Therefore, an OTP can be programmed only once. The internal OTP-RAM has a memory area of 256 bytes.
0037The invention further assumes that security-relevant data and Program parts that are present stored in the internal OTP-ROM, Interpreters include.
0038The interpreter is a special routine in the internal OTP ROM is stored and by using the external EPROM socket of externally applied data structure is activated, the internal OTP-ROM operating program stored parts cooperating to data to interpret.
0039It is envisaged that in each case an access key to access to the corresponding special mode enables the aforesaid data structure comprises information that is processed by the interpreter and that the OTP internal CPU performs operations that are exclusively in the area code of the operating program in the internal OTP-ROM are.
0040The interpreter has been integrated and processed in the operating software defined data structures of the external EPROM respectively at the start and end the merchant mode. This is achieved according to a allows selective modification of memory cells of the machine. Thus can by an update of the external service EPROM additional Operations are carried out without the operating software itself change and without the assumption of control by program Branch to allow the external code field.
0041In another - in the figure 6 shown in detail - variant includes the running in retail mode step 35 (Figure 5) also a Execution of interpreter routines (steps 3717, 3727, 3737) a. These are the external service EPROM several areas A, B, C provided which comprise interpretable code, the different areas are covered again by MAC. Thus, in the meter subsequently introduced a functionality be that was not previously available. For a method for performing of interpreter routines within the routines for traders functions can interpretable code routines using the keys a, b, c the keyboard 2 are called. Thus, in the external service EPROM space for your own routine to be present in the area A, which by an actuating or input means, for example, from one to By pressing a located Frankiermaschinentastatur is called. The it is checked in step 3711 and then to a verification step 3712 branches to check when actuated a button whether a corresponding code in EPROM area A exists. Is not to interpretive code exists, then in step 3713 with the normal processing of the keystroke using the standard functions continued stored within the postage meter. Otherwise the interpretable code from the external service EPROM loaded into the postage meter machine in step 3714, in step 3715 authenticated and in case of detected in step 3716 match interpreted step 3717th An error occurring in the machine Routine can thus be replaced or supplemented. For a query of Pressing the b or c or are a response appropriate steps 3721-3727 or 3731-3737 provided.
0042According to the invention has the software for the Merchant and reset mode into the interior (that is, in the internal EPROM, and / or internal OTP-ROM) shifts of the machine, so that no in these operating modes, Jump branch in the code area of the external memory, with where the memory cells can be altered, is performed. The continue externally employed reset and service or merchant EPROM included to each a 64-bit key, which only the allows access to the respective modes. The CPU only performs so nor operations that occur in the code area of the machine software are that before addition by a cyclic MAC check Manipulation is protected. The functions of the reset mode, which thus that in any machine, not to manipulate zoom pull, the functionality of this mode was such limited, that no increase in the amount of money or a change the telepostage parameters is made possible.
0043Through an external storage device, the meter is in a special operating state offset, in which the data state of Memory cells can be changed. data or Program code from an external storage medium to the Meter is connected, through the machine-internal transmitted microprocessor in a memory of the postage meter. Of the Data / program area includes a MAC that is authenticating the area. Checking the validity is determined by the microprocessor of the Machine made on the copy. Are the data / program code plausible as they are either directly by the microprocessor as Program code processed, or by an interpreter software that the Microprocessor controls, interprets. Not authenticatable Data / program areas are not further processed. The Processing of external information is supplied for varying used machine-internal memory cells. Since the external not processed data / program areas directly from the processor be, but always the internal copy is based on, can CPU not controlled by external, malicious program areas will.
0044The function of the interpreter is with reference to the Figures 3 to 5 explained.
00453 shows the structure of a data set is shown that the Interpreter can be processed. The information that the interpreter can be processed, is formed by a series of commands, which basically consists of a record with three components consist. A first component OPERATION features by each command operation to be performed. A second component TYPE indicates the type of the value established in a third Component VALUE has been specified.
0046The TYPE specifies some instructions specify how the value of Program line or the stack or the addressed Storage area is to be typed. If for no instruction Type specification is required, the type is specified as T_None.
0047An interpretable information contained in the service EPROM is of n rows. The lines of the program are 0 and ascending numbered and thereby can be used for the execution of Jump instructions are addressed. Each program line has aforementioned structure: OPERATION; TYPE; VALUE. In one other n Variant are also approved unary operators (no TYPE, no VALUE).
0048The instructions refer to a 12-stage stack memory and permit, for example, the reading of memory cells, the Execution of logical and arithmetic operations on the stack and the storage of stack entries in memory cells of the Machine. It can code, and all the memory cells of Machine are addressed. To control the program flow while the interpretation is a logical comparison operation with the associated conditional and unconditional branch instructions to Available.
0049The flow chart shown in Figure 4 shows the schematic Structure and the data flow of the interpreter. The interpretable Data structure in the external EPROM must of course by appropriate Measures against possible manipulations are protected because by the interpreter all data storage areas of the machine are accessible and manipulable. In the service EPROM located two interpretable storage areas. They are, with respect to the Time of interpretation, as a prologue (block 91) and epilogue (block 93) designated. Each sector has a MAC checksum (Block 90 and 92) secured. Before the data structure in the steps 35 and 42 is processed, the interpreter creates a copy of the structure and MACs (steps 31 and 38) in the internal RAM of the machine and leads then the copy of a plausibility check (steps 33 and 40) by. Working on an internal copy of this prevented the external manipulation of the program during its interpretation.
0050When working above are contained in the prologue to interpretive codewords interpreted progressively until the end is reached (or an error has occurred). Basically differ is prologue and epilogue only by the time at which it could be executed. This allows data to the prologue before the start of machine-internal Dealer routine to be saved and in the epilogue this Data is restored thereafter.
0051The flowchart shown in the figure 5 shows the logical embedding the interpreter in the internal service or dealer functionality.
0052The structure in the service EPROM is formed by a table in the each row of the components operation, the data type of the value or the operation and the value is. In addition to the in Figure 3 Which processes shown Structure of a record by the interpreter may be, each row, a fourth component to describe have the command. The table line by line by the interpreter processed. In this case, the sequence of execution Jump operations are affected.
0053After the start in step 30, the by pressing the preset button is triggered, is made at step 31, a copy of the prologue in the internal data area of the internal OTP-RAM. A MAC checksum at step 32 via by DES encryption of the CRC checksum the prolog code area formed. When creating and Programming of the EPROM has been a MAC checksum formed the prologue code area and stored in the EPROM. to Authentication of the data in the prologue code area of the employed external EPROM is made at step 33, a comparison of the internal OTP-RAM permanently stored MAC's with the external service EPROM permanently stored MAC. When a mismatch both MAC's branches to step 37th At a Agreement between the two MAC's is otherwise to step 34 branched to initialize the interpreter. In the subsequent step 35 is a from the internal data area of the internal OTP-ROM read command and processed. In step 36 it is checked whether a been error or the end of the instruction execution is. If an error or end of instruction execution to branched step 37th Otherwise, the method branches back to step 35th
0054First, the instruction pointer points to the first to be machined Codeword. In step 35, the code words are added sequentially to a Processor registers loaded. Approved codewords are then edited by a special routine for processed. After each codeword is increased, the instruction pointer. Requires a command also Data (eg. As the target of a branch by a composition or other Address), these are also loaded and the instruction pointer elevated. Certain interpretable code words are used to Branching of the program; then the instruction pointer to a will another body set and processing continues at this point. If an error occurs or the end code is detected, then the Processing terminated.
0055In step 37 are internal service or merchant functions running, which in the internal OTP-ROM as a program code stored present. Among them are appropriate entries for example via the Frankiermaschinentastatur or comparable To understand or actuating input means, which are to be made to for example:<ul><li>changing customer number</li><li>enter new PAN</li><li>To change phone number</li><li>Limit warning to change.</li></ul>
0056is from step 37 to step 38 then further advanced to the Epilogue to process accordingly. takes place in step 38 in the Copy Epilogue in the internal data area of the internal OTP-RAM. A MAC checksum at step 39 by DES encryption of the CRC checksum formed over the epilogue code area. In the preparation of or programming of the EPROM has been a MAC checksum formed over the epilogue code area and in the EPROM stored. To authenticate the data in the epilogue code area of used external EPROM is made at step 40, a comparison of the internal OTP-RAM permanently stored MAC's with the external Service EPROM permanently stored MAC. When a mismatch both MAC's branches to step 44th At a Agreement between the two MAC's is otherwise to step 41 branched to initialize the interpreter. In the subsequent step 42 is a from the internal data area of the internal OTP-ROM read command and processed. In step 43 it is checked whether a been error or the end of the instruction execution is. If an error or end of instruction execution to branched step 44th Otherwise, the method branches back to step 42nd in the Step 44, the process is terminated.
0057When a program is executed the following error cases may occur that result in the termination of the interpretation process:<ul><li>Stack capacity is insufficient, or the stack does not contain enough Entries for the requested operation.</li><li>Violation of data type restrictions surgery</li><li>Interpretation of an unknown operation.</li><li>Leaving the program area by an invalid jump destination.</li></ul>
0058The interpreter has a limited stack (set depth: 12 Entries). On the stack, the values are as a structure of long value (32 bit) and data type stored.
0059One based on such settings initialization of A franking machine is effected before assembly of the franking machine by means of a reset or master EPROM. The setting example a serial number of the postage meter or a customer number or other settings using a service EPROM be made at any time repeatedly. When using a service EPROMs must the service flap, which releases the EPROM socket, be opened. In this state, closed with the service EPROM is not possible, a normal operation of the franking machine. After this Check the corresponding 64-bit access key and the Authenticity of the data through the test routine, the granted access authorization and called the associated program, for example, to change the serial number. Using the keyboard 2, MODEM 23 or more input means 21 (for example, smart card reader / writer) the franking machine can transfer data as a number or alphanumeric characters can be entered, which are displayed in the display unit 3, it carried more specific Entry steps to clear the machine number or re-enter or change.
0060It can not only customer numbers or other settings be made, or in connection with the Service Merchant mode are. In principle, serious errors may occasion the next site inspection by an authorized person To get picked up. Such an error, for example if the Processor can not access the main memory, that is, the Data content of the RAM can not read or change, is for example, by inserting a special SERVICE EPROM eliminated. To this end may have a sealing of postal flap for removes preset button and the service panel to the external EPROM socket be opened. The meter is now at least partially open and the accessibility to the individual modules Electronics guarantees from the outside. The SERVICE-EPROM contains the necessary data, for example, the corresponding key, and special programs for the restoration of Frankiermaschinenfunktion. For example, such a program was carried out a Redundancy reduction or incorrect stores undo do. If a subroutine is called, for example, the to change values in the registers take place more specific Entry steps to delete the entry in the register or re-enter or change.
0061For example, results in the following scenario: The routine for manual Entering the postage call number in the internal operating software the machine is, turns out in the field as being defective by the For the serial number of the machine incorrectly overrides. Since this feature is in the internal EPROM of the machine can they only be corrected by an update of the operating software, which the Open the machine and changing the internal EPROM and possibly the OTP processor means. are Aside from the hassle the dealer these operations but also not allowed.
0062The integrated interpreter now offers the following option: The machine developer sends an update of the service at EPROM The traders. It contains a prologue which the memory contents Serial number copied into a free, temporary storage of the machine. Although the merchant function to change the postage call number destroyed continue to the serial number, it can now, however, by a appropriate epilogue that when you exit the dealer functionalities is called to be restored from the copy of the prologue.
0063The interpretation of the prologue and epilogue data structures According to the invention used for processors with strict separation of Program and data memory.
0064In modern processors, this separation is no longer present, so that the data structure in this case also, by the processor directly processable machine instructions can be formed, the first copied to the machine and, after passing the examination, as Subroutine can be called. This would be the Functionality no longer on the operations of the interpreter language limited, but would unleash the full power of a higher Programming correspond.
4 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| EP0137737A | Cites | European Patent Office (EPO) |
| EP0457940A | Cites | European Patent Office (EPO) |
| EP0619565A | Cites | European Patent Office (EPO) |
| US4757532A | Cites | United States of America |
5 members in 3 offices; this record represents the family
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 19534528 | Germany | – | |
| 19534528 | Germany | A | |
| DE1995134528 | – | – | – |
| 19534528 | – | – | – |
Members5
| Document | Office | Kind | |
|---|---|---|---|
| EP0762335A2 | European Patent Office (EPO) | A2 | |
| DE19534528A1 | Germany | A1 | |
| US5734571A | United States of America | A | |
| EP0762335A3 | European Patent Office (EPO) | A3 | |
| EP0762335B1This record | European Patent Office (EPO) | B1 |
35 legal events, as 5 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal feeWithdrawnR119 | R119 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Notification of lapseLapsedST | ST | FR | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Gb: european patent ceased through non-payment of renewal feeCeasedGBPC | GBPC | EP | |
| Patent ceasedCeasedPL | PL | CH | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| Fr: translation filedET | ET | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Gb: translation of ep patent filed (gb section 77(6)(a)/1977)GBT | GBT | EP | |
| Corresponds to:REF | REF | EP | |
| European patent takes effect as a national patent in ch/liEP | EP | CH | |
| New agentNV | NV | CH | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedNOT ENGLISHFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOS IGRAGRAH | GRAH | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOS IGRAGRAH | GRAH | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Designated contracting statesAK | AK | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 0762335
- Publication, DOCDB
- 0762335
- Publication, EPODOC
- EP0762335
- Application
- 962501870
- Application, DOCDB
- 96250187
- Application, EPODOC
- EP19960250187
Titles3
- German
- Verfahren zur Veränderung der in Speicherzellen geladenen Daten einer elektronischen Frankiermaschine
- English
- Method for changing data charged in memory cells of an electronic franking machine
- French
- Procédé pour changer les données chargées dans des cellules de stockage d'une machine d'affranchissement
Classification
- CPC, 10
- G07B17/00314
- G06Q20/105
- G06Q30/0283
- G07B17/0008
- G07B2017/00177
- G07B2017/00258
- G07B2017/00354
- G07B2017/00395
- G07B2017/0054
- G07B2017/00774
- IPC, 2
- G07B17 00
- G07B17 02
Designated states6
- Contracting states, 6
- Switzerland
- Germany
- France
- United Kingdom
- Italy
- Liechtenstein
