EP2936478A1 - Anzeige eines fälschungsicheren identitätsindikators - Google Patents

Anzeige eines fälschungsicheren identitätsindikators

Info

Publication number
EP2936478A1
EP2936478A1 EP13821466.3A EP13821466A EP2936478A1 EP 2936478 A1 EP2936478 A1 EP 2936478A1 EP 13821466 A EP13821466 A EP 13821466A EP 2936478 A1 EP2936478 A1 EP 2936478A1
Authority
EP
European Patent Office
Prior art keywords
client
screen
memory
indicator
display
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
EP13821466.3A
Other languages
English (en)
French (fr)
Inventor
Janis Danisevskis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deutsche Telekom AG
Original Assignee
Deutsche Telekom AG
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
Application filed by Deutsche Telekom AG filed Critical Deutsche Telekom AG
Priority to EP13821466.3A priority Critical patent/EP2936478A1/de
Publication of EP2936478A1 publication Critical patent/EP2936478A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • G09G5/397Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42653Internal components of the client ; Characteristics thereof for processing graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4753End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for user identification, e.g. by entering a PIN or password
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2358/00Arrangements for display data security
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/18Use of a frame buffer in a display terminal, inclusive of the display panel
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Definitions

  • the invention relates to a method for displaying a forgery-proof or secure identity indicator.
  • the invention relates to the use of a hardware-implemented frame buffer overlay to display a tamper-resistant identity indicator.
  • the inventive use of overlay functionality of display controllers may provide an indication of a counterfeit-proof indicator of the identity of applications.
  • the computer system in question or a trusted component thereof, must be long in the process of determining the identity of an application and naming it to the user. Furthermore, the application itself must not be able to influence the indicator.
  • Standard operating systems such as Windows7 or Xorg-based window managers have no way to determine the identity of an application.
  • Each indicator about the identity of an application eg header of the window or Entry in the taskbar
  • a display device is usually a device or part of a device, preferably a circuit, which reads the digital representation of a graphic from a screen memory (frame buffer, graphics memory) and the graphics according to the stored digital information for display on a screen (monitor, Display) brings.
  • the display controller is typically part of a graphics card.
  • the display controller should not be limited to a circuit within a graphics card.
  • a display controller according to the present invention may also be located elsewhere, in particular on an SOC (system-on-a-chip).
  • SoC System-on-a-chip
  • Die a system on a chip
  • IC integrated circuit
  • Today's integration density allows for a variety of functions, possibly even to realize all important functions on a single IC. It integrates digital, analog and mixed-signal functional units. Advantages are, above all, cost savings, lower energy consumption or power loss and comprehensive miniaturization.
  • the digital function possibly with the exception of the memory, realized on an IC.
  • the interfaces for example to the keyboard, the SIM card or the display can already be included on this IC.
  • SiP system-in-package
  • a display controller is thus not restricted to a specific hardware implementation, but is preferably defined by the function of the display controller.
  • a frame buffer is a memory or a memory region, preferably a screen memory within a graphics card, which contains the digital representation of the graphics to be displayed.
  • at least a portion of the frame buffer corresponds to a digital copy of the screen, i.e., each screen pixel may be assigned a particular area of the frame buffer containing its digitally translated color value.
  • a frame buffer should be considered as visible if the display controller reads out this region of the frame buffer, preferably reads it out regularly and brings it to the display on the screen.
  • a frame buffer may have an additional memory area in addition to the visible frame buffer-hereinafter referred to as buffer-wherein the content of the buffer is usually not read out directly to display the content on the screen.
  • the term frame buffer is not limited to a particular hardware implementation.
  • the frame buffer may also be a main memory of the SOC.
  • a frame buffer is thus not restricted to a specific hardware implementation, but is preferably defined by the function of the frame buffer.
  • An overlay refers to the ability to allow a display controller to additionally display at least one more digital representation of a graphic-stored, for example, in a buffer-and thus display, for example, the first display based on the visible framebuffer. to blend transparent or partially transparent.
  • the overlay function can be used to read and display another image directly from a bus in addition to displaying an image from the frame buffer (eg from a camera).
  • the overlay function is used, for example, with cameras in mobile phones or digital cameras, since this can reduce the latency between the camera and the display.
  • an overlay function of a display controller which, according to the documentation, can be used to display the television program number in TV sets.
  • the method according to the invention preferably uses this overlay function.
  • this overlay function is used in a controlled manner to control a "non-forgery" and to display it on the screen.
  • This overlay function is used by a corresponding computer program or application.
  • an indicator in the context of this invention is deemed to be tamper-proof or non-falsifiable if, for example, a counterfeit attempt can be detected by the user at any time, e.g. because an indicator is displayed without user interaction, or the indicator hardware (e.g., a portion of the display) evades control by the potentially counterfeiting application.
  • the overlay functionality of the display controller is used to display the counterfeit-proof or not forgery-proof or safe indicator on the screen.
  • the protection against counterfeiting is achieved in that the display controller, for example in the form of hardware, eludes control by potentially counterfeiting applications.
  • the invention may display a tamper-resistant identity indicator using a hardware implemented framebuffer overlay.
  • a counterfeit-proof indicator system which are divided into a secure subsystem and an unsafe subsystem.
  • the Partitioning takes place, for example, by virtualization into secure and insecure areas, with additional hardware - such as a red and a green LED - indicating which subsystem is active, in particular which subsystem is responsible for the display on the screen.
  • the safe subsystem is sometimes referred to as green, whereas the unsafe subsystem is called red.
  • Such systems are often referred to as red-green systems.
  • FIG. la shows an example of the essential steps of an already known solution in a flow chart.
  • a trusted software component receives control over the frame buffer.
  • This frame buffer manager initially allows all applications, i. Write trusted applications and untrusted applications to a buffer (step S1: client records in buffer).
  • step S1 client records in buffer.
  • writing to a memory area of the frame buffer or the buffer is also referred to as "drawing".
  • the buffer is not part of the visible frame buffer.
  • the trusted software component Frame Buffer Manager copies the content of this additional buffer into the visible frame buffer (step S2).
  • the frame buffer manager adds an indicator to the same location in the frame buffer.
  • an indicator is also copied to the "visible frame buffer".
  • the display controller reads out the visible framebuffer and displays the content on the monitor (step S3). Since the indicator is always written in the same place in the frame buffer, the indicator will always be at the same place on the frame Screen.
  • This indicator is an identity indicator that shows the user which application is responsible for the content of the ad.
  • Application means in the present application an application software (also application program, short application or application), or a computer program, which can be used to process or support a useful or desired non-system-technical functionality This means that the application serves the "solution of user problems.”
  • application areas are: image processing, video editing, word processing, spreadsheets, computer games, certain operational functions such as financial accounting, goods issue, etc.
  • Framebuffer is shared by means of a memory management unit isolation (MMU isolation) on page granularity and so partially provided to the untrusted applications (see Fig. Lb).
  • MMU isolation memory management unit isolation
  • MMUs translated memory addresses from virtual addresses to physical addresses.
  • a "page” is the virtual area that maps to a physical "tile”.
  • Splitting storage areas address space isolation
  • alignment means the alignment of memory addresses, at certain typical values, often a multiple of a power of two, in particular a multiple of the page size.
  • L4Re www.os.info.tu- dresses.de/L4Re
  • Figure lc shows an example of a prior art division of the physical address space. Here is described a way I how to implement a non-fake indicator; efficient but inflexible in this case.
  • Figure lc is only to illustrate in principle address space isolation: Three processes have different "virtual views" on the memory. Figure lc does not belong directly in this context. To illustrate how the isolation is used in the context of option I, regions of like hatching would have to be drawn adjacent. However, this special memory management is complex and limited in its possibilities.
  • the present invention provides a new, flexible and efficient method for displaying a tamper-resistant identity indicator according to independent method claim 1.
  • independent method claim 1 The dependent claims and the aspects discussed below describe further, preferably preferred embodiments or modifications of the invention.
  • the present invention relates to a method for displaying a forgery-proof identity indicator on a screen by means of a display controller which displays the content of a memory of a graphics circuit on the screen.
  • the method according to the invention preferably comprises at least one of the following steps. First, one on the screen Graphic written by a client application into a client specific area of the memory of the graphics circuit (it is drawn). An identity indicator associated with the client application is written to a memory area outside the client specific area (it is drawn). The identity indicator associated with the client application is the identity indicator that allows users to decide whether or not the client application has been tampered with. The content of the client-specific area of the memory of the graphics circuit is displayed on the screen using the display controller.
  • the identity indicator stored in the memory area outside the client-specific area is displayed on the screen using overlay functionality of the display controller.
  • the display controller is implemented as hardware.
  • a trusted display controller ie, only the overlay functionality of the display controller and a trusted third software component (frame buffer manager). it is allowed to access the area outside of the client specific area, whereby the display of the identity indicator is secure or tamper-proof.
  • the inventive method is preferably for any kind of
  • Screens suitable for which a display controller provides an overlay function / overlay functionality such as the display of a smartphone, a laptop, PC or a smart TV.
  • a frame buffer manager controls drawing the graphic into the client-specific area and / or drawing the identity indicator into the memory area outside the client-specific area.
  • the framebuffer manager is preferably trusted and more preferably certified.
  • the frame buffer manager is implemented as software.
  • the memory may comprise at least one, preferably two, more preferably preferably several visible ones Have frame buffer, wherein preferably the content of each frame buffer can be displayed by the display controller on the screen.
  • the drawing of an identity indicator associated with the client application may be controlled by a status indicator which preferably communicates with or is part of the frame buffer manager.
  • a simultaneous display of the display of the identity indicator and the graphic on the screen can be achieved, wherein the identity indicator preferably blends the client application.
  • the client specific area may be a first overlay buffer and the memory area outside the client specific area may be a second overlay buffer.
  • the method according to the invention is preferably also implemented as a computer system with an execution environment which is suitable or adapted for carrying out a method.
  • the invention can also be realized as a computer program product which can be loaded directly into the internal memory of a digital computer and comprises software code sections with which the corresponding steps according to the method of the invention are carried out when the product is run on a computer.
  • the overlay functionality of a display controller is preferably used to display a secure and user-visible identity indicator on a screen.
  • the frame buffer manager needs neither knowledge of the type and
  • the way in which the client generates (or does not intervene) the content of the frame buffer is preferably accomplished by having the frame buffer manager configure the display controller to directly display a client-specific frame buffer is written in a memory area which, unlike the above-mentioned solutions (see FIGS. 1a and 1b), can and will be disjoint using overlay functionality combined with the client-controlled graphics.
  • additional copying operations as well as additional alignment considerations, which are necessary in the prior art see FIGS. 1 a, 1 b and 1 c
  • a difference of the present invention to existing methods is, for example, that the memory area in option I discussed above may not be disjoint (at least not in the physical address space). Using a system MMU (as introduced by ARM now) removes this restriction for I, but the alignment constraint remains.
  • the method according to the invention can generally be used in conjunction with any monitor, for example in the field of smartphones, laptops, PCs and smart TVs, etc.
  • Fig. La is a flowchart of a method according to the prior
  • Fig. Lb is a flowchart of a method according to the prior
  • Fig. Lc is a schematic representation of the organization of
  • FIG. 2 shows a flow diagram of a method according to the invention in which a frame buffer manager configures the display controller so that it directly displays a client-specific frame buffer;
  • Fig. 3 shows the schematic interaction of software, hardware and
  • FIG. 2 shows a flow chart of a method according to the invention.
  • an application client
  • this memory is the memory of a graphics circuit.
  • client 1 a first client
  • client 2 a second client
  • the invention is not limited to two applications, so preferably N, with Ne N, can write / draw applications to memory.
  • the areas described by the respective applications / clients are also referred to below as client buffers.
  • FIG. 4 shows two different client buffers 101 and 102 in memory 100 stored at various locations within memory 100 (frame buffer client 1, frame buffer client 2).
  • a frame buffer manager 10 decides whether or which client buffer of the frame buffer should be visible, that is to be displayed on the screen.
  • the frame buffer manager 10 may be implemented as software to control which client controls the display (routing). This control is shown schematically in FIG. 3 as a switch, ie the frame buffer manager 10 controls which of the various clients from the list: client 1, client 2, client N should be displayed on the screen.
  • the switch shown is purely schematic to interpret, ie it can be switched between different clients.
  • the frame buffer manager 10 determines that the Client 1 controls the display, ie the entire display 32 on the screen 30 is determined by the client 1.
  • the image to be displayed in the hardware is written in a specific memory area; here the area "Overlay 2".
  • the content of the overlay 2 is then sent by the display controller 20 to the screen 30, so that a portion of the screen 32 represents the content, as determined by the client 1.
  • part of the screen display is the image of the digital representation from Overlay 2.
  • the frame buffer manager 10 forwards the information as to which client determines the screen display to a status indicator (see FIG. 3).
  • the status indicator 9 is also implemented as software.
  • the state indicator can be used to control which client is responsible for the display on the screen 30.
  • the secure (identity) indicator 31 according to the invention is based on the status indicator 9.
  • the components shown on the left in FIG. 3 are a software component according to the invention, which inter alia controls the secure indicator 31 and interrupts the secure frame buffer various clients switched.
  • the content of the status indicator 9 is then preferably transmitted to the hardware of the graphics circuit.
  • State indicator 9 also draws / writes an identity indicator into a buffer in framebuffer / memory 100, but preferably into another framebuffer area of the hardware, here "overlay 1."
  • the display controller 20 can now - due to the overlay functionality of display controllers - both the overlay 2 area as well as the overlay 1 area on the screen simultaneously, the overlay 1 area with the identity indicator here overwrites the overlay 2 area, so that the secure identity indicator 31 is always displayed on the screen.
  • the display controller 20 is implemented in hardware, wherein the display controller 20 can display at least two different buffers - here Overlay 1 and Overlay 2 - for display. Accordingly, the screen or display is divided into a client-controlled display and a display of the identity indicator (see display on the right in FIG. 3). According to the invention, this ability well-known display controller with overlay functionality cleverly used to combine the client-generated content with the identity indicator.
  • Figure 4 shows that both the routing and the contents of the indicator buffers are protected from manipulation by the frame buffer manager having sole control over it.
  • the protection of the indicator buffers is ensured by a hardware mechanism of the CPU under operating system control.
  • Figure 4 shows an example of how the display controller according to the invention can be controlled.
  • a control can be done by the control registers are set to the base addresses of the indicator buffer or frame buffer of client 1.
  • the content of the framebuffer of client 1 becomes visible and the indicator signals this.
  • indicators here are the entire lines and not just the hatched areas of 111 and 112.
  • the invention also includes the exact or exact terms, features, numerical values, or ranges, etc., as above or below, of such terms, features, numerical values, or ranges in the context of terms such as “about, about, substantially,” Generally, at least, “etc.” were called (ie “about 3” should also “3” or “substantially radial” should also include “radial”). means moreover “and / or”.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zur Anzeige eines fälschungssicheren Identitätsindikators (31) auf einem Bildschirm (30) mit Hilfe eines Displaycontrollers (20) einer Grafikschaltung, wobei der Displaycontroller den Inhalt eines Speichers (100) der Grafikschaltung auf dem Bildschirm (30) darstellt. Zunächst wird eine auf dem Bildschirm (30) darzustellende Grafik (32) durch eine Klientanwendung (11, 12,...,N) in einen Klient spezifischen Bereich (22) des Speichers (100) der Grafikschaltung geschrieben. Danach wird ein zur Klientanwendung (11, 12,...,N) gehörender Identitätsindikator (31) in einen Speicherbereich (21) außerhalb des Klient spezifischen Bereichs (22) geschrieben. Anschließend wird der Klient spezifische Bereich (22) des Speichers der Grafikschaltung unter Verwendung des Displaycontrollers (20) auf dem Bildschirm (32, 30) angezeigt. Gleichzeitig wird der zugehörige Identitätsindikator (31) aus dem Speicherbereich (21) außerhalb des Klient spezifischen Bereichs (22) auf dem Bildschirm (31, 30) angezeigt, unter Verwendung einer Overlayfunktionalität des Displaycontrollers (20).

Description

ANZEIGE EINES FÄLSCHUNGSICHEREN
IDENTITÄTSINDIKATORS
Die Erfindung betrifft ein Verfahren zur Anzeige eines fälschungssicheren bzw. sicheren Identitätsindikators. Insbesondere betrifft die Erfindung die Verwendung eines durch Hardware implementierten Framebufferoverlays zur Anzeige eines fälschungssicheren Identitätsindikators. Beispielsweise kann durch die erfindungsgemäße Verwendung einer Overlayfunktionalität von Displaycontrollern eine Anzeige eines fälschungssicheren Indikators für die Identität von Anwendungen bereitgestellt werden.
HINTERGRUND DER ERFINDUNG
Wenn eine Anzeige zwischen mehreren Anwendungen (application) geteilt wird ist es möglich, dass sich eine Anwendung für eine andere Anwendung ausgibt, um so den Benutzer dazu zu bringen, vertrauliche Informationen, wie zum Beispiel eine Persönliche Identifikations-Nummer (PIN) oder Geheimzahl preiszugeben. Diese Vorgehensweise eines Angreifers ist als Phishing bekannt. Ein fälschungssicherer bzw. nicht fälschbarer Identitätsindikator kann dieses Problem abschwächen bzw. beheben, indem dem Benutzer jederzeit angezeigt wird, welche Anwendung er tatsächlich am Bildschirm sieht. Der Benutzer kann dann entscheiden, ob diese Anwendung vertrauenswürdig ist oder nicht.
Damit ein fälschungssicherer Identitätsindikator seine Funktion erfüllen kann muss das betreffende Computersystem, oder eine vertrauenswürdige Komponente davon, in der Lange sein, die Identität einer Anwendung zu bestimmen und gegenüber dem Benutzer zu benennen. Ferner darf die Anwendung selbst keinen Einfluss auf den Indikator nehmen können.
Handelsübliche Betriebssysteme wie Windows7 oder auf Xorg basierende Fenstermanager haben keine Möglichkeit die Identität einer Anwendung zu bestimmen. Jeder Indikator über die Identität einer Anwendung (z.B. Kopfzeile des Fensters oder Eintrag in der Taskleiste) wird bei diesen Systemen von der betreffenden Anwendung selbst mit Inhalt gefüllt und ist somit leicht von einer bösartigen Anwendung fälschbar.
Die Problematik von "nicht vertrauenswürdigen" Anwendungen wird von derzeitigen Betriebssystemen nicht ausreichen adressiert. Die folgende Literatur beschreibt diese Problematik und auch das Konzept von nicht fälschbaren Identitätsindikatoren.
Jonathan S. Shapiro, John Vanderburgh, Eric Northup, and David Chizmadia. Design of the eros trusted window System. In USENIX Security Symposium, pages 165-178, 2004. (
https://www.usenix.org/legacy/evenl7sec04/tech/full_papers/shapiro/shapiro.pdf N. Feske and C. Helmuth. A nitpickers guide to a minimal-complexity secure gui. In Proceedings of the 2 Ist Annual Computer Security Applications Conference, pages 85-94, 2005 ( http://www.acsac.org/2005/papers/54.pdf).
Zunächst sollen einige Begriffe definiert werden, wie sie im Sinne der vorliegenden Erfindung zu verstehen sind.
Als Displaycontroller wird üblicherweise eine Vorrichtung bzw. ein Teil einer Vorrichtung, vorzugsweise eine Schaltung, bezeichnet, die die digitale Repräsentation einer Grafik aus einem Bildschirmspeicher (Framebuffer, Grafikspeicher) liest und die Grafik entsprechend der gespeicherten digitalen Informationen zur Anzeige auf einem Bildschirm (Monitor, Display) bringt. In PCs bzw. Laptops ist der Displaycontroller typischerweise ein Teil einer Grafikkarte. Erfindungsgemäß soll der Displaycontroller jedoch nicht auf eine Schaltung innerhalb einer Grafikkarte beschränkt sein. Beispielsweise kann ein Displaycontroller gemäß der vorliegenden Erfindung sich auch auf einer anderen Stelle befinden, insbesondere auf einem SOC (System-on-a-Chip). Unter System-on-a-Chip (SoC, dt. Ein-Chip-System), auch System-on-Chip oder System on a Chip, versteht man die Integration aller oder eines großen Teils der Funktionen eines Systems auf einem Chip (Die), also einem integriertem Schaltkreis (IC) auf einem Halbleiter-Substrat, auch monolithische Integration genannt. Während Systeme anfänglich aus einem Mikroprozessor- oder Mikrocontroller-IC und vielen anderen ICs für spezielle Funktionen bestanden, die auf einer Platine aufgelötet waren, lässt die heute mögliche Integrationsdichte zu, eine Vielzahl von Funktionen, ggf. sogar alle wichtigen Funktionen auf einem einzigen IC zu realisieren. Dabei werden digitale, analoge und Mixed-Signal-Funktionseinheiten integriert. Vorteile sind vor allem Kosteneinsparung, geringerer Energieverbrauch beziehungsweise Verlustleistung und umfassende Miniaturisierung. So ist heute beispielsweise bei Mobiltelefonen die digitale Funktion, gegebenenfalls mit Ausnahme des Speichers, auf einem IC realisiert. Auch die Schnittstellen beispielsweise zur Tastatur, zur SIM-Karte oder zum Display können bereits auf diesem IC enthalten sein.
Eine ähnliche Technik, um hohe Integrationsdichten auch von Bauelementen von stark unterschiedlicher Technik zu realisieren, ist das sogenannte System-in-Package (SiP). Dabei werden mehrere Chips in einem Gehäuse zusammengefasst.
Erfindungsgemäß ist ein Displaycontroller somit nicht auf eine bestimmte Hardware-Realisierung beschränkt, sondern vorzugsweise durch die Funktion des Displaycontrollers definiert.
Ein Framebuffer (engl, frame - Einzelbild, buffer - Puffer; Bildspeicher) ist ein Speicher oder eine Speicherregion, vorzugsweise ein Bildschirmspeicher innerhalb einer Grafikkarte, welche die digitale Repräsentation der darzustellenden Grafik enthält. Mit anderen Worten, zumindest ein Teil des Framebuffers entspricht einer digitalen Kopie des Bildschirms, d.h., jedem Bildschirmpixel kann ein bestimmter Bereich des Framebuffers zugewiesen werden, der dessen digital übersetzten Farbwert enthält. Im Sinne der vorliegenden Erfindung soll ein Framebuffer als sichtbar gelten, falls der Displaycontroller diese Region des Framebuffers ausliest, vorzugsweise regelmäßig ausliest und zur Anzeige auf dem Bildschirm bringt. Zudem kann ein Framebuffer zusätzlich zum sichtbaren Framebuffer einen zusätzlichen Speicherbereich aufweisen - im Folgenden Puffer genannt - wobei der Inhalt des Puffes üblicherweise nicht unmittelbar zur Darstellung des Inhalts auf dem Bildschirm ausgelesen wird.
Wiederum ist der Begriff des Framebuffers nicht auf eine bestimmte Hardware- Realisierung beschränkt. Bezugnehmend auf die oben angesprochenen SOCs kann der Framebuffer beispielsweise auch ein Hauptspeicher des SOCs sein. Erfindungsgemäß ist ein Framebuffer somit nicht auf eine bestimmte Hardware-Realisierung beschränkt, sondern vorzugsweise durch die Funktion des Framebuffers definiert. Als Overlay wird die Fähigkeit bezeichnet, die es einem Displaycontroller erlaubt, mindestens eine weitere digitale Repräsentation einer Grafik - die beispielsweise in eine Puffer gespeichert ist - zusätzlich zur Anzeige zu bringen und damit die erste Anzeige, die auf dem sichtbaren Framebuffer basiert, beispielsweise deckend, transparent oder teilweise transparent zu überblenden. So kann die Overlayfunktion beispielsweise dazu verwendet werden, um zusätzlich zur Darstellung eines Bildes aus dem Framebuffer ein weiteres Bild direkt von einem Bus zu lesen und anzuzeigen (z.B. von einer Kamera). Die Overlayfunktion wird beispielsweise bei Kameras in Mobiltelefonen oder Digitalkameras verwendet, da dadurch die Latenz zwischen der Kamera und der Anzeige verringert werden kann.
Zudem ist eine Overlayfunktion eines Displaycontrollers bekannt, die der Dokumentation nach zum Einblenden der Femsehprogrammnummer in TV-Geräten verwendet werden kann. Vorzugsweise verwendet das erfindungsgemäße Verfahren diese Overlayfunktion. Erfindungsgemäß wird diese Overlay funktion jedoch kontrolliert dazu verwendet, um eine "nicht-Fälschbarkeit" zu kontrollieren und auf dem Bildschirm darzustellen. Diese Overlayfunktion wird von einem entsprechendem Computerprogramm bzw. einer Applikationen verwendet.
Als fälschungssicher bzw. nicht fälschbar bzw. sicher gilt ein Indikator im Kontext dieser Erfindung dann, wenn ein Fälschungsversuch jederzeit durch den Benutzer enttarnt werden kann, z.B. weil ein Indikator ohne Interaktion durch den Benutzer angezeigt wird, oder sich die Indikatorhardware (z.B. ein Bereich der Anzeige) der Kontrolle durch die, potenziell fälschende, Anwendung entzieht. Insbesondere wird erfindungsgemäß die Overlayfunktionalität des Displaycontrollers verwendet, um den fälschungssicheren bzw. nicht fälschbaren bzw. sicheren Indikator auf dem Bildschirm darzustellen. Hier wird beispielsweise die Fälschungssicherung dadurch erreicht, dass sich der Displaycontroller, beispielsweise in Form von Hardware, der Kontrolle durch potenziell fälschende Anwendungen entzieht. Mit anderen Worten, die Erfindung kann unter Verwendung eines durch Hardware implementierten Framebufferoverlays einen fälschungssicheren Identitätsindikator anzeigen.
Um einen fälschungssicheren Indikator anzuzeigen sind bereits Systeme bekannt, die aufgeteilt werden in ein sicheres Teilsystem und ein unsicheres Teilsystem. Die Aufteilung erfolgt beispielsweise durch Virtualisierung in sichere und unsichere Bereiche, wobei durch zusätzliche Hardware - etwa eine rote und eine grüne LED - angezeigt wird, welches Teilsystem aktiv ist, insbesondere welches Teilsystem für die Anzeige am Bildschirm verantwortlich ist. Das sichere Teilsystem wird hier manchmal als grün bezeichnet, wohingegen der unsichere Teilsystem als rot bezeichnet wird. Solche Systeme werden häufig als Rot-Grün- Systeme bezeichnet.
In dem Artikel: "Lockdown: Towards a Safe and Practical Architecture for Security Applications on Commodity Platforms" von A. Vasudevan et al., veröffentlicht in Trust and Trustworthy Computing, Lecture Notes in Computer Science Volume 7344, 2012, Seiten 34-54 wird ein Rot-Grün-System beschrieben bei dem eine Unterteilung jedoch nicht auf Vitalisierung basiert, sondern auf einer Partitionierung.
Neben den oben angesprochenen Hardwareindikatoren für Rot-Grün-Systeme gibt es bereits Lösungen, die den Bildschirm selbst zur Anzeige eines Identitätsindikators verwenden. Figur la zeigt beispielhaft die wesentlichen Schritte einer bereits bekannten Lösung in einem Flussdiagramm. Insbesondere erhält eine vertrauenswürdige Softwarekomponente (im Folgenden Framebufferverwalter genannt) die Kontrolle über den Framebuffer. Dieser Framebufferverwalter erlaubt es zunächst allen Anwendungen, d.h. vertrauenswürdigen Anwendungen und nicht vertrauenswürdigen Anwendungen in einen Puffer zu schreiben (Schritt Sl: Klient zeichnet in Puffer). Im Folgenden wird der Schreibvorgang in einen Speicherbereich des Framebuffers bzw. des Puffers auch als "zeichnen" bezeichnet. Der Puffer ist kein Teil des sichtbaren Framebuffers.
Zur Anzeige auf dem Bildschirm kopiert die vertrauenswürdige Softwarekomponente Framebufferverwalter den Inhalt dieses zusätzlichen Puffers in den sichtbaren Framebuffer (Schritt S2). Zusätzlich ergänzt der Framebufferverwalter einen Indikator an stets derselben Stelle im Framebuffer. Zusätzlich zu dem darzustellenden Inhalt wird auch noch ein Indikator in den„sichtbaren Framebuffer" kopiert.
Der Displaycontroller ließt den sichtbaren Framebuffer aus und stellt den Inhalt auf dem Monitor dar (Schritt S3). Da der Indikator stets an derselben Stelle im Framebuffer geschrieben wird, wird der Indikator an stets derselben Stelle auf dem Bildschirm dargestellt. Dieser Indikator ist ein Identitätsindikator, der dem Benutzer zeigt welche Applikation (Anwendung) für den Inhalt der Anzeige verantwortlich ist.
Mit Anwendung ist in der vorliegenden Anmeldung eine Anwendungssoftware (auch Anwendungsprogramm, kurz Anwendung oder Applikation; englisch application Software, kurz App) gemeint bzw. ein Computerprogramm bezeichnet, das genutzt werden kann, um eine nützliche oder gewünschte nicht systemtechnische Funktionalität zu bearbeiten oder zu unterstützen, das heißt die Anwendung dient der„Lösung von Benutzerproblemen". Beispiele für Anwendungsgebiete sind: Bildbearbeitung, Videobearbeitung, Textverarbeitung, Tabellenkalkulation, Computerspiele, bestimmte betriebliche Funktionen wie Finanzbuchhaltung, Warenausgang etc.
Dieses Vorgehen mit einem Kopiervorgang vom Puffer in den sichtbaren Framebuffer führt jedoch zu einem erhöhten Rechenaufwand und damit zu einem erhöhten Energieverbrauch und ist deshalb insbesondere bei eingebetteten Systemen unerwünscht.
Um derartige Kopiervorgänge zu vermeiden, gibt es auch Ansätze, bei denen der
Framebuffer mittels einer Speicherverwaltungseinheits-Isolation (MMU-Isolation; Memory Management Unit) auf Seitengranularität geteilt wird und so teilweise den nicht vertrauenswürdigen Anwendungen zur Verfügung gestellt wird (siehe Fig. lb). Insbesondere übersetzten MMUs Speicheradressen von virtuellen Adressen in physische Adressen. Dafür benutzen MMUs Datenbanken, die sogenannten page tables (Seitentabellen). Würden man für jede mögliche Adresse einen Eintrag in diese Tabellen machen wäre eine Tabelle größer als der Speicher den sie verwaltet. Entsprechend wird der Speicher in Kacheln mit fester Größe aufgeteilt (4096 Byte ist eine sehr übliche Größe). Es werden jetzt lediglich die Startadressen dieser Kacheln in die Tabellen eingetragen. Damit sich leichter feststellen lässt welcher Tabelleneintrag für eine bestimmte virtuelle Adresse gültig ist sind als Startadressen nur Vielfache von der Kachelgröße erlaubt (alignment). Vereinfacht: <virtualle Adresse>/<Kachelgröße> = <Index in der Seitentabelle>. Der Rest ist dann der Index innerhalb der Kachel.
Als "Seite" bezeichnet man den virtuellen Bereich der auf eine physische "Kachel" abgebildet wird. Das Aufteilen von Speicherbereichen (Addressraumisolation) mittels MMU ist also nur mit einer Granularität möglich, die der Kachel-/Seitengröße entspricht.
Dieses Vorgehen beschränkt die Position des Indikators und stellt zusätzliche Anforderungen an das Alignment des Framebufferspeichers und damit zu Einschränkungen bei der Verwendung von Optimierungstechniken wie dem double- buffering. Insbesondere ist unter Alignment das Ausrichten von Speicheradressen zu verstehen, an gewissen typischen Werten, oftmals einem Vielfachen einer Potenz von zwei, hier insbesondere einem Vielfachen der Seitengröße. Dieses Verfahren ist beispielsweise als Implementierung im Rahmen von L4Re bekannt (www.os.info.tu- dresden.de/L4Re). Figur lc zeigt ein Beispiel einer Aufteilung des physikalischen Adressraums nach dem Stand der Technik. Hier wird eine Möglichkeit I beschrieben, wie ein nichtfälschbarer Indikator implementiert werden kann; in diesem Fall effizient aber unflexibel. Figur lc soll nur prinzipiell Adressraumisolation veranschaulichen: Drei Prozesse die unterschiedliche "virtuelle Sichtweisen" auf den Speicher haben. Figur lc gehört nicht direkt in diesen Kontext. Um zu veranschaulichen wie die Isolation in dem Kontext von Möglichkeit I verwendet wird, müssten Bereiche mit gleicher Schraffur angrenzend gezeichnet werden. Diese spezielle Speicherverwaltung ist jedoch aufwändig und beschränkt in ihren Möglichkeiten.
Es besteht somit der Bedarf für ein alternatives bzw. verbessertes Verfahren zur Anzeige eines fälschungssicheren Identitätsindikators.
ZUSAMMENFASSUNG DER ERFINDUNG
Die vorliegende Erfindung stellt ein neues, flexibles und effizientes Verfahren zur Anzeige eines fälschungssicheren Identitätsindikators gemäß dem unabhängigen Verfahrensanspruch 1 bereit. Die abhängigen Ansprüche bzw. die weiter unten diskutierte Aspekte beschreiben weitere, vorzugsweise bevorzugte Ausführungsformen bzw. Abwandlungen der Erfindung.
Insbesondere betrifft die vorliegende Erfindung ein Verfahren zur Anzeige eines fälschungssicheren Identitätsindikators auf einem Bildschirm mit Hilfe eines Displaycontrollers, der den Inhalt eines Speichers einer Grafikschaltung auf dem Bildschirm darstellt. Das erfindungsgemäße Verfahren umfasst vorzugsweise mindestens einen der folgenden Schritte. Zunächst wird eine auf dem Bildschirm darzustellenden Grafik durch eine Klientanwendung in einen Klient spezifischen Bereich des Speichers der Grafikschaltung geschrieben (es wird gezeichnet). Ein zur Klientanwendung gehörender Identitätsindikator wird in einen Speicherbereich außerhalb des Klient spezifischen Bereichs geschrieben (es wird gezeichnet). Der zur Klientanwendung gehörende Identitätsindikator ist der Identitätsindikator, anhand der Benutzer entscheiden kann, ob die Klientanwendung manipuliert (gefälscht) wurde oder nicht. Der Inhalt des Klient spezifischen Bereichs des Speichers der Grafikschaltung wird unter Verwendung des Displaycontrollers auf dem Bildschirm angezeigt. Gleichzeitig wird der Identitätsindikator, der im Speicherbereich außerhalb des Klient spezifischen Bereichs gespeichert ist, auf dem Bildschirm angezeigt unter Verwendung einer Overlayfunktionalität des Displaycontrollers. Vorzugsweise ist der Displaycontrollers als Hardware implementiert. Mit anderen Worten, mit dieser Aufteilung in verschiedene Bereiche des Speichers kann sichergestellt werden, dass auf den Bereich außerhalb des Klient spezifischen Bereichs nur von einem vertrauenswürdigen Displaycontroller aus zugegriffen werden kann, d.h., nur der Overlayfunktionalität des Displaycontrollers sowie einer vertrauenswürdigen dritten Softwarekomponente (Framebufferverwalter) ist es erlaubt auf den Bereich außerhalb des Klient spezifischen Bereichs zuzugreifen, wodurch die Darstellung des Identitätsindikators sicher bzw. fälschungssicher ist.
Das erfindungsgemäße Verfahren ist vorzugsweise für jegliche Art von
Bildschirmen geeignet bei denen ein Displaycontroller eine Overlayfunktion/Overlayfunktionalität bereitstellt, beispielsweise das Display eines Smartphones, eines Laptops, PCs oder eines Smart TVs.
Vorzugsweise kontrolliert ein Framebufferverwalter das Zeichnen (speichern) der Grafik in den Klient spezifischen Bereich und/oder das Zeichnen des Identitätsindikators in den Speicherbereich außerhalb des Klient spezifischen Bereichs. Um einen sicheren Identitätsindikator darzustellen ist der Frambufferverwalter vorzugsweise vertrauenswürdig und weiter bevorzugt zertifiziert. Zudem ist es bevorzugt, wenn der Framebufferverwalter als Software implementiert ist.
Gemäß einer weiteren bevorzugten Ausfuhrungsform kann der Speicher mindestens einen, vorzugsweise zwei, weiter bevorzugt vorzugsweise mehrere sichtbare Framebuffer aufweisen, wobei vorzugsweise der Inhalt jedes Framebuffers durch den Displaycontroller auf dem Bildschirm dargestellt werden kann.
Gemäß einer weiter bevorzugten Ausfuhrungsform kann das Zeichnen eines zur Klientanwendung gehörenden Identitätsindikators von einem Zustandsanzeiger kontrolliert werden, der vorzugsweise mit dem Framebufferverwalter kommuniziert oder ein Teil davon ist.
Durch die Verwendung der Overlayfunktionalität kann ein gleichzeitiges Anzeigen der Anzeige des Identitätsindikators und der Grafik auf dem Bildschirm erreicht werden, wobei der Identitätsindikator vorzugsweise die Klientanwendung überblendet.
Beispielsweise kann der Klient spezifische Bereich ein erster Overlaybuffer sein und der Speicherbereich außerhalb des Klient spezifischen Bereichs ein zweiter Overlaybuffer sein.
Das erfindungsgemäße Verfahren ist vorzugsweise auch als Computersystem mit einer Ausführungsumgebung implementiert, die zur Durchführung eines Verfahrens geeignet bzw. angepasst ist.
Schließlich kann die Erfindung auch als Computerprogrammprodukt realisiert werden, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwarecodeabschnitte umfasst, mit denen die entsprechenden Schritte gemäß des erfindungsgemäßen Verfahrens ausgeführt werden, wenn das Produkt auf einem Computer läuft.
Bei der vorliegenden Erfindung wird vorzugsweise die Overlayfunktionalität eines Displaycontrollers verwendet, um einen sicheren und für den Benutzer sichtbaren Identitätsindikator auf einem Bildschirm anzuzeigen.
Vorzugsweise benötigt der Framebufferverwalter weder Wissen über die Art und
Weise wie der Klient (d.h. die Anwendung den Inhalt des Framebuffers generiert, noch muss er in diesen Vorgang eingreifen. Diese Eigenschaften werden vorzugsweise erreicht, indem der Framebufferverwalter den Displaycontroller so konfiguriert, dass dieser direkt einen klientspeziefischen Framebuffer zur Anzeige bringt. Der Identitätsindikator wird vorzugsweise in einen Speicherbereich geschrieben, der anders als bei den oben genannten Lösungen (siehe Fig. la und lb) disjunkt sein kann und wird mittels Overlayfunktionalität mit der klientkontrollierten Grafik kombiniert. Hierdurch entfallen vorzugsweise zusätzliche Kopiervorgänge ebenso wie zusätzliche Alignementbetrachtungen, wie sie im Stand der Technik notwendig sind (siehe Figuren la, lb und lc). Ein Unterschied der vorliegenden Erfindung zu bestehenden Verfahren besteht beispielsweise darin, dass der Speicherbereich bei der oben diskutierten Möglichkeit I nicht disjunkt sein darf (jedenfalls nicht im physischen Adressraum). Bei Verwendung einer System-MMU (wie sie ARM jetzt eingeführt hat) fallt diese Einschränkung auch für I weg, die Alignment Einschränkung bleibt allerdings bestehen.
Das erfindungsgemäße Verfahren kann allgemein in Verbindung mit jedem Monitor verwendet werden, beispielsweise im Bereich von Smartphones, Laptops, PCs und Smart TVs, etc. angewendet werden.
KURZE BESCHREIBUNG DER ZEICHNUNGEN
Im Folgenden werden bevorzugte Ausfuhrungsformen der vorliegenden Erfindung unter Bezugnahme auf die Figuren ausführlich beschrieben. Es zeigen:
Fig. la ein Flussdiagramm eines Verfahrens gemäß dem Stand der
Technik bei dem ein Framebufferverwalter den Inhalt eines
Puffers in den sichtbaren Framebuffer kopiert,
Indikator auf dem Bildschirm darzustellen;
Fig. lb ein Flussdiagramm eines Verfahrens gemäß dem Stand der
Technik bei dem sichtbare Framebuffer durch Speicheradressen- Alignment organisiert werden, um einen Indikator auf dem Bildschirm darzustellen;
Fig. lc eine schematische Darstellung der Organisation des
Framebuffers bei einem Verfahren wie in Fig. lb dargestellt;
Fig. 2 ein Flussdiagramm eines erfindungsgemäßen Verfahren bei dem ein Framebufferverwalter den Displaycontroller so konfiguriert, dass dieser direkt einen klientspeziefischen Framebuffer zur Anzeige bringt;
Fig. 3 das schematische Zusammenspiel von Software, Hardware und
Anzeige (Bildschirm) gemäß der vorliegenden Erfindung; und eine schematische Darstellung eines Speichers, der die Grafiken klientspezifischer Anwendungen sowie dazugehörige Identitätsindikatoren enthält. DETAILLIERTE BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSFORMEN
Figur 2 zeigt ein Flussdiagramm eines erfindungsgemäßen Verfahrens. In einem ersten Schritt 1 schreibt bzw. zeichnet eine Anwendung (Klient) Informationen die auf dem Bildschirm dargestellt werden sollen in einen dazu geeigneten Speicher (Puffer; Framebuffer). Vorzugsweise handelt es sich bei diesem Speicher um den Speicher einer Grafikschaltung. Zudem kann es möglich sein, dass nicht nur ein erster Klient (Klient 1), sondern auch ein zweiter Klient (Klient 2) Informationen die auf dem Bildschirm dargestellt werden sollen, in den Speicher (Puffer) schreibt (siehe Fig. 3). Die Erfindung ist jedoch nicht auf zwei Anwendungen beschränkt, sodass vorzugsweise N, mit Ne N, Anwendungen in den Speicher schreiben/zeichnen können. Die Bereiche die von den entsprechenden Anwendungen/Klients beschrieben werden, werden im Folgenden auch Klientbuffer bezeichnet. Fig. 4 zeigt beispielsweise zwei verschiedene Klientbuffer 101 und 102 im Speicher 100, die an verschiedenen Stellen innerhalb des Speichers 100 gespeichert sind (Framebuffer Klient 1, Framebuffer Klient 2).
In einem zweiten Schritt 2 entscheidet ein Framebufferverwalter 10, ob bzw. welcher Klientbuffer des Framebuffers sichtbar sein soll, d.h. auf dem Bildschirm dargestellt werden soll. Beispielsweise kann der Framebufferverwalter 10 als Software implementierte sein, um zu kontrollieren welcher Klient die Anzeige kontrolliert (Routing). Dieses Kontrollieren ist in der Fig. 3 schematisch als Schalter dargestellt, d.h. der Framebufferverwalter 10 kontrolliert, welcher der verschiedenen Klienten aus der Liste: Klient 1, Klient 2, Klient N auf dem Bildschirm angezeigt werden soll. Hierbei sollte jedoch beachtet werden, dass der dargestellte Schalter rein schematisch zu deuten ist, d.h. es kann zwischen verschiedenen Klients umgeschaltet werden. Gemäß dem in Fig. 3 dargestellten Beispiel bestimmt der Framebufferverwalter 10, dass der Klient 1 die Anzeige kontrolliert, d.h. die gesamte Anzeige 32 auf dem Bildschirm 30 wird vom Klient 1 bestimmt. Dazu wird das anzuzeigende Bild in der Hardware (z.B. Grafikkarte) in einen bestimmten Speicherbereich geschrieben; hier der Bereich "Overlay 2". Der Inhalt des Overlay 2 wird anschließend vom Displaycontroller 20 an den Bildschirm 30 geschickt, sodass ein Teil der Bildschirmdarstellung 32 den Inhalt darstellt, wie vom Klient 1 bestimmt. Mit anderen Worten, ein Teil der Bildschirmanzeige ist das Abbild der digitalen Repräsentation aus Overlay 2.
Zudem gibt der Framebufferverwalter 10 die Information, welcher Klient die Bildschirmanzeige bestimmt an einen Zustandsanzeiger (siehe Fig. 3) weiter. Vorzugsweise ist der Zustandsanzeiger 9 ebenfalls als Software implementiert. Mit Hilfe des Zustandsanzeigers kann kontrolliert bzw. dargestellt werden, welcher Klient für die Darstellung auf dem Bildschirm 30 verantwortlich ist. Insbesondere basiert der erfindungsgemäße sichere (Identitäts-)Indikator 31 auf dem Zustandsanzeiger 9. Mit anderen Worten, bei den in Fig. 3 links dargestellten Komponenten handelt es sich um eine erfindungsgemäße Softwarekomponente, welche unter anderem den sicheren Indikator 31 kontrolliert und den sicheren Framebuffer zwischen verschiedenen Klienten umschaltet.
Der Inhalt des Zustandsanzeigers 9 wird dann vorzugsweise an die Hardware der Grafikschaltung übermittelt. Der Zustandsanzeiger 9 zeichnet/schreibt einen Identitätsindikator ebenfalls in einen Buffer im Framebuffer/Speicher 100, jedoch vorzugsweise in einen anderen Framebufferbereich der Hardware, hier in den„Overlay 1". Der Displaycontroller 20 kann nun - aufgrund der Overlayfunktionalität von Displaycontrollern - sowohl den Overlay 2 Bereich als auch den Overlay 1 Bereich gleichzeitig auf dem Bildschirm anzeigen, wobei der Overlay 1 Bereich mit dem Identitätsindikator hier den Overlay 2 Bereich überschreibt, sodass der sichere Identitätsindikator 31 stets auf dem Bildschirm dargestellt wird.
Der Displaycontroller 20 ist in der Hardware implementiert, wobei der Displaycontroller 20 mindestens zwei verschiedene Buffer - hier Overlay 1 und Overlay 2 - zur Anzeige bringen kann. Entsprechend ist der Bildschirm bzw. die Anzeige in eine klientkontrollierte Anzeige und eine Anzeige des Identitätsindikators aufgeteilt (siehe Anzeige rechts in Fig. 3). Erfindungsgemäß wird diese Fähigkeit bekannter Displaycontroller mit Overlayfunktionalität geschickt genutzt, um die klientgenerierten Inhalte mit dem Identitätsindikator zu kombinieren.
Figur 4 zeigt, dass sowohl das Routing als auch der Inhalt der Indikatorpuffer dadurch vor Manipulation geschützt sind, dass der Framebufferverwalter die alleinige Kontrolle darüber hat. Der Schutz der Indikatorpuffer wird durch einen Hardwaremechanismus der CPU, der unter Betriebssystem Kontrolle steht, gewährleistet. Insbesondere zeigt die Figur 4 beispielhaft wie der Displaycontroller erfindungsgemäß angesteuert werden kann. So kann eine Ansteuerung erfolgen, indem die Kontrollregister auf die Basisadressen des Indikator-Puffers bzw Framebuffers von Klient 1 gesetzt werden. Wird der Inhalt des Framebuffers von Klient 1 sichtbar und der Indikator signalisiert dieses. Insbesondere sind Indikatoren hier die ganzen Zeilen und nicht nur die schraffierten Bereiche von 111 und 112.
Die Erfindung umfasst ebenfalls die genauen oder exakten Ausdrücke, Merkmale, numerischen Werte oder Bereiche usw., wenn vorstehend oder nachfolgend diese Ausdrücke, Merkmale, numerischen Werte oder Bereiche im Zusammenhang mit Ausdrücken wie z.B.„etwa, ca., um, im Wesentlichen, im Allgemeinen, zumindest, mindestens" usw. genannt wurden (also „etwa 3" soll ebenfalls „3" oder „im Wesentlichen radial" soll auch„radial" umfassen). Der Ausdruck„bzw." bedeutet überdies„und/oder".

Claims

P a t e n t a n s p r ü c h e
Verfahren zur Anzeige eines fälschungssicheren Identitätsindikators auf einem Bildschirm (30) mit Hilfe eines Displaycontrollers (20), der den Inhalt eines Speichers (100) einer Grafikschaltung auf dem Bildschirm (30) darstellt mit den Schritten:
Zeichnen einer auf dem Bildschirm (30) darzustellenden Grafik (32) durch eine Klientanwendung (11, 12, ...,1N) in einen Klient spezifischen Bereich (22) des Speichers (100) der Grafikschaltung;
Zeichnen eines zur Klientanwendung (11, 12, ...,1N) gehörenden Identitätsindikators (31) in einen Speicherbereich (21) außerhalb des Klient spezifischen Bereichs (22);
Anzeigen des Klient spezifischen Bereichs (22) des Speichers der Grafikschaltung unter Verwendung des Displaycontrollers (20) auf dem Bildschirm (32, 30) und
gleichzeitiges Anzeigen des Identitätsindikators (31) aus dem Speicherbereich (21) außerhalb des Klient spezifischen Bereichs (22) auf dem Bildschirm (31, 30), unter Verwendung einer Overlayfunktionalität des Displaycontrollers (20).
Verfahren nach Anspruch 1, wobei der Bildschirm (30) das Display eines Smartphone, Laptops, PCs oder Smart TVs ist.
Verfahren nach Anspruch 1 oder 2, wobei das Zeichnen der Grafik in den Klient spezifischen Bereich (22) und/oder das Zeichnen des Identitätsindikators in den Speicherbereich außerhalb des Klient spezifischen Bereichs (22) von einem Framebufferverwalter (10) kontrolliert wird, der vorzugsweise vertrauenswürdig ist und weiter bevorzugt zertifiziert ist. Verfahren nach Anspruch 3, wobei der Framebufferverwalter (10) als Software implementiert ist.
Verfahren nach einem der vorhergehenden Ansprüche, wobei der Speicher (100) mindestens zwei, vorzugsweise mehrere (sichtbare) Framebuffer (101, 111, 102, 112) aufweist, wobei vorzugsweise der Inhalt jedes Framebuffers durch den Display Controller (20) auf dem Bildschirm dargestellt werden kann.
Verfahren nach einem der vorhergehenden Ansprüche, wobei das Zeichnen eines zur Klientanwendung (11, 12, ...,1N) gehörenden Identitätsindikators (31) von einem Zustandsanzeiger kontrolliert wird.
Verfahren nach einem der vorhergehenden Ansprüche, wobei der Displaycontrollers (20) als Hardware implementiert ist.
Verfahren nach einem der vorhergehenden Ansprüche, wobei beim gleichzeitigen Anzeigen die Anzeige des Identitätsindikators (31) die Grafik (32) der Klientanwendung überblendet.
Verfahren nach einem der Vorhergehenden Ansprüche, wobei Klient spezifischen Bereich (22) ein erster Overlaybuffer ist und der Speicherbereich (21) außerhalb des Klient spezifischen Bereichs (22) ein zweiter Overlaybuffer ist.
Computersystem mit einer Ausführungsumgebung, zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 9.
Computerprogrammprodukt, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwarecodeabschnitte umfasst, mit denen die entsprechenden Schritte gemäß der Verfahrensansprüche 1 bis 9 ausgeführt werden, wenn das Produkt auf einem Computer läuft.
EP13821466.3A 2012-12-21 2013-12-20 Anzeige eines fälschungsicheren identitätsindikators Ceased EP2936478A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP13821466.3A EP2936478A1 (de) 2012-12-21 2013-12-20 Anzeige eines fälschungsicheren identitätsindikators

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP12199132.7A EP2747071A1 (de) 2012-12-21 2012-12-21 Anzeige eines fälschungssicheren Identitätsindikators
EP13821466.3A EP2936478A1 (de) 2012-12-21 2013-12-20 Anzeige eines fälschungsicheren identitätsindikators
PCT/EP2013/077635 WO2014096334A1 (de) 2012-12-21 2013-12-20 Anzeige eines fälschungsicheren identitätsindikators

Publications (1)

Publication Number Publication Date
EP2936478A1 true EP2936478A1 (de) 2015-10-28

Family

ID=47552819

Family Applications (2)

Application Number Title Priority Date Filing Date
EP12199132.7A Withdrawn EP2747071A1 (de) 2012-12-21 2012-12-21 Anzeige eines fälschungssicheren Identitätsindikators
EP13821466.3A Ceased EP2936478A1 (de) 2012-12-21 2013-12-20 Anzeige eines fälschungsicheren identitätsindikators

Family Applications Before (1)

Application Number Title Priority Date Filing Date
EP12199132.7A Withdrawn EP2747071A1 (de) 2012-12-21 2012-12-21 Anzeige eines fälschungssicheren Identitätsindikators

Country Status (5)

Country Link
US (1) US10755677B2 (de)
EP (2) EP2747071A1 (de)
KR (1) KR102071100B1 (de)
CN (1) CN105340000B (de)
WO (1) WO2014096334A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3056990B1 (de) * 2015-02-13 2019-01-30 Deutsche Telekom AG Mobiles system und verfahren zur sicheren multiplexierung von gpu in einem eingebetteten system
CN104809379A (zh) * 2015-05-13 2015-07-29 上海瓶钵信息科技有限公司 基于屏幕分层管理的系统执行状态验证方法
US10211989B2 (en) 2016-02-05 2019-02-19 Mcafee, Llc Trusted indicators to secure visual outputs

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050168471A1 (en) * 2003-12-18 2005-08-04 Paquette Michael J. Composite graphics rendered using multiple frame buffers

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638501A (en) * 1993-05-10 1997-06-10 Apple Computer, Inc. Method and apparatus for displaying an overlay image
US20030212833A1 (en) * 2002-05-13 2003-11-13 Dlb Innovations, Inc. Web-based practice management system
EP1747640B1 (de) * 2004-04-30 2012-05-23 Research In Motion Limited Nachrichtendienst-anzeigesystem und -verfahren
US7716641B2 (en) * 2004-12-01 2010-05-11 Microsoft Corporation Method and system for automatically identifying and marking subsets of localizable resources
CN101458748B (zh) * 2005-04-22 2011-12-07 微软公司 载入内核组件以创建安全计算环境的方法
US8438628B2 (en) * 2005-08-10 2013-05-07 Riverbed Technology, Inc. Method and apparatus for split-terminating a secure network connection, with client authentication
EP2148506A1 (de) * 2008-07-24 2010-01-27 Irdeto Access B.V. Überwachungsnutzung von verschlüsselten Rundfunkdiensten
US8364601B2 (en) * 2008-12-31 2013-01-29 Intel Corporation Methods and systems to directly render an image and correlate corresponding user input in a secure memory domain
DE102011018431A1 (de) * 2011-04-21 2012-10-25 Giesecke & Devrient Gmbh Verfahren zur Anzeige von Informationen auf einer Anzeigeeinrichtung eines Endgeräts
US9210180B2 (en) * 2012-04-18 2015-12-08 Radware Ltd. Techniques for separating the processing of clients' traffic to different zones in software defined networks
US9059972B2 (en) * 2012-07-03 2015-06-16 International Business Machines Corporation Issuing, presenting and challenging mobile device identification documents

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050168471A1 (en) * 2003-12-18 2005-08-04 Paquette Michael J. Composite graphics rendered using multiple frame buffers

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MACKENNA C ET AL: "A BIT-MAPPED PROCESSOR PROVIDING HARDWARE WINDOWING AND FAST TEXT DISPLAY", WESCON TECHNICAL PAPERS, WESTERN PERIODICALS CO. NORTH HOLLYWOOD, US, vol. 30, 18 November 1986 (1986-11-18), pages 3/0201 - 14, XP000111653 *
See also references of WO2014096334A1 *

Also Published As

Publication number Publication date
KR102071100B1 (ko) 2020-01-29
US10755677B2 (en) 2020-08-25
KR20150096804A (ko) 2015-08-25
WO2014096334A1 (de) 2014-06-26
US20150348515A1 (en) 2015-12-03
CN105340000B (zh) 2018-06-05
CN105340000A (zh) 2016-02-17
EP2747071A1 (de) 2014-06-25

Similar Documents

Publication Publication Date Title
DE69735975T2 (de) System und Verfahren zur Überlagerung von wahlweise in unterschiedlichen nativen Formaten gespeicherten Bildern
DE102013222384B4 (de) Sicherheits-Screening auf Kontextgrundlage für Zugriff auf Daten
DE202018006346U1 (de) Gemeinsames Nutzen bzw. Teilen von Daten in einem mandantenfähigen Datenbanksystem
DE102018209205A1 (de) Datenspeicher mit intelligentem Speicher oder Ladeverfahren und -vorrichtung
DE102018109397A1 (de) Techniken für sicherheitschip-speicher für vertrauenswürdige ausführungsumgebungen
DE102012109959A1 (de) Automatische Vergrößerungs- und Auswahlbestätigung
DE102015002366A1 (de) Systemkohärenz in einer verteilten Graphikprozessorhierarchie
DE102011082184A1 (de) Sicherheitsschutz für Speicherinhalt von Prozessorhauptspeicher
DE112011105933T5 (de) Verfahren und Vorrichtungen zum dynamischen Anpassen einer virtuellen Tastatur
DE202013012499U1 (de) Hintergrundseite auf Browserebene zur Bereitstellung mehrfacher Ansichten
DE102006061939A1 (de) Verfahren und Vorrichtung zum Zugriff auf eine speicherabgebildete Vorrichtung durch einen Gast
DE202009019148U1 (de) Dateisystemzugriff für Web-Anwendungen und native Kodemodule
DE102012200613A1 (de) System und Verfahren zur Unterstützung von JIT in einem sicheren System und zufällig zugewiesenen Speicherbereichen
DE202013012493U1 (de) Stufen der Datenspeicherung für Webanwendungen und Browser-Erweiterungen
DE102011018431A1 (de) Verfahren zur Anzeige von Informationen auf einer Anzeigeeinrichtung eines Endgeräts
DE112017008158T5 (de) Dateienvorababrufeinplanung für cachespeicher zur verringerung von latenzen
DE102008058209A1 (de) Anordnung und Verfahren um zu verhindern, dass ein Anwenderbetriebssystem in einem VMM System eine Anordnung abschaltet, die von einem Servicebetriebssystem verwendet wird
DE102018213549A1 (de) Verfahren und vorrichtungen zum breitstellen von zugriffsautorisierung auf benutzerebene für cloud-basierte feldprogrammierbare gate-arrays
DE102009017496A1 (de) Speicherzugriff in einem System mit Speicherschutz
DE102013114091A1 (de) System und Verfahren zum Schutz von Daten
DE112020000280T5 (de) Transparente interpretation von gastbefehlen in einer sicheren virtuellen maschinenumgebung
WO2014096334A1 (de) Anzeige eines fälschungsicheren identitätsindikators
DE102012107809A1 (de) Browsen zwischen mobilen und nicht-mobilen Webseiten
DE202015009317U1 (de) Einbetten eines Guest-Moduls in ein Embedder-Modul
DE112017003299T5 (de) OLED-sensitive Inhaltserstellung und Inhaltszusammenstellung

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20150611

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20171108

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20190712