WO1998054672A1 - Securely metering advertising in data processing systems - Google Patents

Securely metering advertising in data processing systems Download PDF

Info

Publication number
WO1998054672A1
WO1998054672A1 PCT/AU1998/000403 AU9800403W WO9854672A1 WO 1998054672 A1 WO1998054672 A1 WO 1998054672A1 AU 9800403 W AU9800403 W AU 9800403W WO 9854672 A1 WO9854672 A1 WO 9854672A1
Authority
WO
WIPO (PCT)
Prior art keywords
advertising
secure
user
display
information
Prior art date
Application number
PCT/AU1998/000403
Other languages
French (fr)
Inventor
John Griffits
Original Assignee
John Griffits
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 John Griffits filed Critical John Griffits
Priority to AU76303/98A priority Critical patent/AU7630398A/en
Publication of WO1998054672A1 publication Critical patent/WO1998054672A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Definitions

  • ECI Electronic Content Information
  • o computer programs eg. operating systems, components of operating system, computer games
  • o image information eg video, movies, electronic books, works of art
  • audio eg music
  • the display means may include the actual device to output images eg. video monitor, TV CRT, LCD, light emitting plastic, plasma displays as non-limiting examples.
  • the display area is the region on the output of said display means that is available for visible image output (eg the visible display area of a television screen).
  • the graphics buffer usually refers to one at least memory regions coupled to a UCDPS that store images in digital format that are usually subsequently converted to a means to drive said display means (eg. an analogue signal to drive said video monitor).
  • Screen Means is usually the largest logical subset for arranging displayed elements. It may be the only set for arranging elements, for example, the usual case with a Windows 95 environment.
  • the display area and the screen may be the same if there is only one screen.
  • the screen means may contain only one window and said window contents.
  • the screen means usually includes one at least, of one or more of the following objects, as non-limiting examples: windows, and/or icons and/or text and/or moving images and/or sound objects and/or static images and/or menu means and/or pop-up means and/or tool bars and/or background, and/or control means. Screen contents are collectively referenced as a Screen Object Set (SOS) in this specification.
  • SOS Screen Object Set
  • Said screen object set usually moves as one (if an option) when the screen is moved (for example, the prior art Amiga computer allowed for multiple screens that could be moved vertically relatively to one another).
  • the present invention describes a method to move one at least screen in any direction.
  • Said screen object set may have the same color palette, however, different screens may have different palettes.
  • Said screen object set is usually confined to the area of said screen. Objects within said screen may have different display priorities eg. one may overlay another and or be transparent or transparent to another, however, an overlying screen will usually obscure an underlying screen, unless said overlying screen has a transparent (in part at least) background.
  • Objects on an overlying screen will usually obstruct objects on an underlying screen unless said overlaying screen background and one at least other members of its screen object set is transparent (in pan at least).
  • the present invention allows that the display priorities of one at least screens may be altered to bring it forward or backward relative to one at least other screens.
  • the present invention also allows that said altered may be achieved by varying the transparency of at least one screen relative to another, giving the appearance of one screen (usually the one moving forward in priority) gradually materializing from one at least others and/or the reverse process.
  • Operations on said screen eg movement, priority, palettes
  • Window means The concept of a window on a computer display means is known to the art. It may be re-sizeable and may be coupled to one at least control means (eg, scroll means, menu means). Said window may have one at least of the control means and/or objects described for screens. Said objects are usually confined to the boundaries of said windows. Said window may have any function known to the present art of windows.
  • screens and/or windows and/or objects that may be displayed, in part at least, on a UCDPS display area may be defined by a bounding perimeter.
  • the perimeter may be imaginary.
  • a perimeter defining the area for the display of overlay advertising is one non-limiting example. It preferably may have any shape and/or area and/or color and/or any other characteristics. It is preferably rectangular or circular or elliptical.
  • Said sides limited by the number of x pixels may be greater than x pixels and may be moved into and/or taken from view by a scrolling means.
  • Said sides limited by the number of y pixels may be greater than y pixels and may brought into and/or taken from view by a scrolling means.
  • Said perimeter may be defined by a border (in part at least) that may any thickness less than or equal to x and/or y.
  • Said perimeter may include multiple objects . There may be multiple bounding areas and each may include one at least objects. Within any particular bounding perimeter, one at least objects may have priority over one at least others .
  • Intel CPU Intel central processing unit
  • Intel 80XXX CPU eg 80486, Pentium, Pentium ⁇ and/or extended and/or future members of this family
  • clones eg AMD, National Semiconductors
  • the term Microsoft Operating System may include any one at least Microsoft Corporation Windows operating systems and/or future versions. Non-limiting examples may include Windows 3.xTM, Windows 95TM, Windows 98 TM, Windows NTTM that are registered trademarks of Microsoft Corporation. It may also apply to Microsoft's Disk Operating System (MSDOS). 9) The use of the term periodic need not mean a regular period.
  • the present User Controlled Data Processing System eg personal computer, set top box, net computer, game machine, palm computer
  • VMPS Versatile Multimedia Processing System
  • ECI Electronic Content Information
  • electronic advertising and/or electronic devices are not presently harmonized to maximise the benefits of their potential integration, for example:
  • Different types of Electronic Content Information are usually optimized for delivery by particular modes.
  • ⁇ computer software is primarily supplied on physical media with no advertising support. ° the Internet distributes a large amount of advertising embedded within web pages, however, an online connection is usually required to meter use of this material and/or dynamically supply new material.
  • commercial television usually embeds the advertising within the content.
  • An operating system used to control a personal computer is not necessarily the best means for utilizing a multimedia platform. Some operating systems in popular use are not necessarily the best means of controlling personal computers either!
  • Microsoft Corporation operating systems eg MSDOS, Windows 95, Windows 98, Windows NT.
  • Microsoft may currently be the dominant operating system supplier, their products may not be optimal solutions for tomorrows integrated digital information systems.
  • it is not necessarily in the best mterests of other developers and the industry that Microsoft continues to consolidate its position.
  • Another non-limiting objective is to describe a silicon solution that provides a means to escape Microsoft's 'sphere of influence', to put it politely.
  • trusted systems non-hmitmg examples that may mclude secure processing devices and/or secure operating system and/or secure rights management
  • ECI Electronic Content Information
  • DCI Digital Content Information
  • Analogue Content Information (ACI), for example, as is usually presently the case with broadcast commercial television.
  • the ECI is preferably delivered in secure software containers protected by encryption and/or other means. Distribution and payment of ECI using trusted systems will preferably be based on the secure atomic metering (eg small units, eg seconds or fractions of a second of use) of usage. Usage is preferably metered by a Secure Processing Means coupled to a User Controlled Data Processing System. The concept of what is considered billable informauon may also change. For example, Web pages, news articles, opinions, letters to the editor, free to air TV, data books may be non-hmitmg examples of digital information the consumer is not presently charged to access, that may be billed in future.
  • Said library preferably provides unlimited use, m part at least, for a predetermined penod of time.
  • the consumer preferably has the option of selecting the display of adverusmg material as a means of paying, m part at least, for mformation consumption.
  • ECI may mclude any content mformation and this may mclude advertising and/or other promotional content that may also be referenced as Electronic Advertising Information (EAI) m this specification.
  • EAI Electronic Advertising Information
  • the predominant form of electronic adverusmg is that embedded within commercial television content.
  • Advertising is also used to sponsor an increasing number of web pages coupled to the Internet, for example banner advertising It is a non- limiting objecuve of the present mvenuon to describe a means of broadening electronic advertising to subsidise (in part at least) the use of preferably all types of electronic media (eg. Internet, computer games, electronic books, databases, video, music, electronic newspapers etc). Advertising may also become more user friendly and targeted to the needs of specific users. The consumer preferably will have the option of declining advertising, m part at least, and paying for their consumption of information instead.
  • Trusted Systems and Pay-for-use software are described in pending WO 97/25675 by G ⁇ ffits and pending WO 96/27155 by Shear et al. These specificauons are incorporated by reference into the present specification and may be mtegrated, in part at least, with one at least means described for the present invenuon.
  • digital content informauon eg computer application programs, computer games, databases, electronic literary text, digital music (eg. CD ROMS), digital video
  • DCI digital content informauon
  • Said Secure Processing Means preferably requires the presence of digital control informauon that desc ⁇ bes, m part at least, the condiuons of use attached to said DCI and preferably requires the coupling of one at least nghts of access that may be used m conjuncuon with said conditions of use.
  • Said conditions of use may include, for example, restrictions on age groups, countries and/or jurisdictions, period of use, number of use events permitted, how use of the information is billed, the cost of use etc. Said conditions of use are preferable securely coupled to said DCI to protect against tampering.
  • the Secure Processing Means is preferably provided with one at least rights of access, for example, electronic funds, a country identifier, a right that permits unlimited use of a particular grouping(s) of digital content (eg. all computer games for a month) for a predetermined period of time.
  • the manipulation of conditions of use and rights of access is preferably achieved using a right management process that is part of a secure operating system.
  • trusted systems enables the actual digital content to be distributed using any means (including unauthorised), however, it is preferably unusable without the appropriate Secure Processing Means and rights of access. It also provides any content developer with a direct to market opportunity that bypasses existing distribution structures.
  • users of digital information will have access to an extensive library of digital content that maybe sourced from multiple providers.
  • This may be delivered by any means that may include: physical media (eg DVD or any other high density optical media), and/or broadcast (eg. free to air TV, Satellite TV services), and/or the Internet (or any other network and/or hypertext network) and/or cable (eg cable TV).
  • physical media eg DVD or any other high density optical media
  • broadcast eg. free to air TV, Satellite TV services
  • the Internet or any other network and/or hypertext network
  • cable eg cable TV
  • the consumption of this information is preferably securely metered and the metered information used, in part at least, to determine payment to the various stakeholders in the information.
  • the following may provide one practical and popular method of distributing and paying for digital information.
  • the user(s) of a computer are provided with a library of digital content information on high-density optical media. Said media may be read only or read and write. This is preferably supplied at nominal cost (eg. a few dollars per disk).
  • the currently preferred optical media is Digital Versatile Disk (DVD) that presently has storage capacities up to 17 Gigabytes.
  • the entire library (or part at least) of existing computer application programs may be disttiituated on a relatively small number of optical disks (each disk currently may store the equivalent of approximately 28 CD ROM).
  • the entire library (or part at least) of fiction books may also be supplied on a relatively small collection of DVD disks (each DVD disk may store approximately 8,500 novels of 500 pages each without compression techniques).
  • the entire library (or part at least) of music CD's make likewise be provided to users. This scenario would provide the average user with a library of all (or part at least) computer programs, music and works of fiction, that subject to meeting the conditions of use, may be accessed almost instantly (no slow Internet downloads) as required.
  • the user may subscribe to a service that provides optical media updates of this material.
  • Said local area repository may provide a node to the Internet (and/or any equivalent hypertext network and/or any other network means).
  • a gateway to the Internet that may not depend on existing telephone companies
  • Any one at least local area repositories may connect with any one or other, extending the network.
  • the coupling of said node(s) to the Internet may include cable (conductive and/or optical) and/or satellite and/or microwave.
  • advertising maybe used to pay for consumption of electronic information, in part at least.
  • advertising is usually coupled to a particular item of electronic content information, for example, commercials linked to a particular free to air TV program and/or ads embedded within WWW pages. It is preferable that advertising is unlinked from particular program content. It is also preferable that consumers who agree to receive advertising in exchange for free EIC, view said advertising, or at least, are prevented from removing and/or otherwise avoiding said advertising where practical.
  • the secure means of priority display described in this specification meet these criteria, in part at least. The consumer is preferably rewarded for viewing advertising and/or at least permitting it to be displayed.
  • the prior art of electtonic advertising is not usually effective at metering user interaction with said advertising.
  • TV advertisers are charged usually charged on the basis of TV ratings. This is statistical system based on historical viewing habits. The ratings information is used to bill advertisers based on anticipated numbers of viewers. It may be wrong and it is difficult to know what consumers do during advertising periods.
  • ads usually banner type ads
  • static ads it may register a hit based on the fact that a user downloaded the page. Whether it was viewed is usually indeterminate and or if it was viewed at least once subsequently from a cache means is usually also unknown.
  • the use of dynamic advertising wherein, consumers are streamed advertising while connected to one at least sites, may improve the situation marginally, however, these systems depend on online connections.
  • the advertising material may also be tampered with.
  • the present invention seeks to describe a means to meter user interaction offline, preferably across multiple types of multimedia. This process is preferably secure. With the consumer likely to require a means to control multiple types of content (that may include advertising content) information, that may be sourced from multiple means and/or under the control of multiple processes on a UCDPS, it is preferable that the consumer has a flexible control means.
  • the Ghost Mouse means (GMM) described in this specification seeks to meet this objective.
  • the means described to intercept mouse and keyboard I/O that may be part of said GMM is preferably extended to provide secure partitioning and password protection of mass storage devices.
  • a means to said extend is described.
  • the invention also seeks to describe an apparatus to optimize in part at least, the means of the present invention and other specifications incorporated by reference.
  • This may include a secure graphics display module with integrated secure processing and preferably a secure operating/rights management system.
  • the Secure Processing Means is preferably able to partition secure system memory processes from secure user (and/or any other lower level of security) processes. This is preferably achieved using the secure memory partitioning logic described in the present specification.
  • the secure processes described for the present invention may also have applications with smart cards, smart watches etc and these are described, in part at least.
  • a system has been outlined for distributing digital information.
  • the cost to the user of having an extensive library of information is preferably nominal.
  • the use of the information is preferably securely metered by the consumers user controlled data processing system (eg personal computer, multimedia centre).
  • a report of this usage is preferably provided to a service provider on a predetermined periodic basis and used to bill the user (who may have been required to pay-in advance).
  • Usage information is preferably also used to determine distribution of revenue to information producers and their agents and may include the means described in said WO 97/25675 by Griffits and said WO 96/27155 by Shear et al.
  • the revenue received from a particular consumer is preferably distributed on a pro-rata basis to information producers and/or agents.
  • the value of each component of information may be weighted, however, it is preferably of equal value per unit of time, per consumer.
  • the value per unit of time may vary from one consumer to another depending on the ratio of time (and/or event) use of a particular information component compared to the total time (and/or event) use of all information in said package.
  • Similar packages for example, may be available for computer games, and/or Internet products, and/or music and/or video and/or any electtonic information.
  • Packages may be compiled that contain any combination and permutation of electronic information.
  • the prior art allows for the cost of using a particular item of digital content (eg the price per second of use of a computer game) to be securely coupled to said content and this is likely to have application with specialised information.
  • consumer information in particular, may be grouped into content type libraries that are made available on an unlimited usage basis for a predetermined period of time (eg. a month), for a predetermined cost.
  • This method may take the pressure off consumers from clock watching as they consume information. It may also provide a known budget.
  • This is a similar principal used for cable TV and Internet access.
  • the value of all information within a particular content library preferably has the same value, regardless of the age of the product, cost of production and intrinsic value if sold separately.
  • the invention allows for any differential weighting of value of one at least products over one at least others.
  • producer/agents of Game A may only receive $5 (25% of usage) even although Game A was played for a longer period by User 2 than by Userl.
  • the producer/agents of Game 2 may receive $15 (75% of usage by User 2).
  • User 3 may have paid $20 and not played any Games, in which case revenue is distributed on a formula preferably derived from metered usage by a plurality of players.
  • a number of methods have been developed to subsidise the cost of ECI on a UCDPS by displaying advertising (and/or any other promotional material) on the display area. These usually involve the embedding of advertising material within the program and/or data of the program. This requires an arrangement between the software producer or their agent and one or multiple advertisers to sponsor a particular software object or group of software objects. As most sponsors will need to ensure that their advertisements are actually viewed, a method is required to log the user access to software objects that include embedded advertising.
  • One method of metering advertising access when a user is connected to a remote processing means is to log the number of times they access pages containing advertising material.
  • An alternate method is to require the user to be connected to a remote processing means while executing a program that is supported by advertising material, thus determining advertising usage.
  • a third means allows the user to download a program and operate it in an offline manner, however, a utility software object that accompanies the program logs usage, and usually transparently to the user, sends a report back to the software producer, agent, or advertiser. There is no way for the user to determine what other information this program may be sending from their computer. There is also no tamperproof protection for the advertiser. These methods are also tightly coupled to the supply of particular ECI.
  • One objective of the current invention is to provide a secure means of providing distinct and generic advertising facilities on a UCDPS.
  • the invention allows for any means that permits advertising material to be displayed on a UCDPS: ⁇ prior to; and/or • during; and/or o after , the use of one or multiple components of ECI, when advertising is used to subsidise the cost of software object use and/or any other function directly and/or indirectly attached to the computer, wherein said means: • is secure in part or whole; and/or • provides generic sponsorship of multiple software objects; and/or ⁇ offsets part or all of the costs of operating part or all of the processes described in PCT AU/97/00010; and/or » offsets the costs of operating any other securely protected software objects including objects protected by non- secure software processes; and/or secure hardware encryption and/or decryption devices; and/or secure encryption and/or decryption devices, that also execute part or all of the software object in a secure manner; and/or ⁇ » is functional in an offline and/or online arrangement; and/or • is functional in a multitasking and/or multi-user environment.
  • the invention also allows for any
  • the invention also allows for any means that: • can detect promotional material displayed by any one or multiple means; and/or » that overlays, part or all, of this information with alternate information (that may be anything, including alternative advertising material); and/or » that blanks out part or all of the original information. This may include when the information to be overlaid is detected in part or whole automatically (eg a Java application program); and or when it is detected in part or whole with the assistance of the user.
  • the invention allows for any means that modifies one or multiple original software objects in any way (including deletion), with the altered software object referred to as a Modified Software Object (MSO); such that the MSO is compelled to execute in conjunction with a Secure Processing Means that ensures: • that any advertising material that is supposed to be displayed to the user, is actually displayed; and/or • that directly and/or indirectly can ensure that this information is not deleted and or replaced on the display, in part or whole; and/or » that may determine (preferably securely) information about the user and may adjust the advertising material accordingly, and/or • that may determine any particulars about interaction between advertisement(s) and user(s), preferably in a secure manner, and/or • any means that permits information pertaining to advertising on a UCDPS to be relayed (preferably securely) to a service provider and/or advertiser (and/or any agent(s).
  • MSO Modified Software Object
  • the invention allows for any Secure Processing Means , including: • purely software based executing in a non-secure environment (eg. using the system CPU); and/or ⁇ any secure decryption means attached directly and/or indirectly to the UCDPS; and/or ⁇ > any secure decryption and execution means (eg. as described in said WO 97/25675 by Griffits ) attached directly and/or indirectly to the UCDPS.
  • the invention allows for any means that may permit part or all of any combination of advertising means described in this application to be disabled (in part at least), temporarily and/or permanently.
  • the invention allows for any means that stores part or all of any information pertaining to user interaction with one or multiple advertisements within a secure storage device, that may include the Secure Processing Means; and/or any directly and/or indirectly linked storage means.
  • This may include information stored in a user accessible location that is encrypted, in part at least, using any means that in part at least requires: • secure processes within a Secure Processing Means to create and/or reverse, in part at least, this information; and or » a secure means remote to the UCDPS to perform a similar function.
  • the invention allows for any secure means that in part at least, embeds advertising material in the normal flow of the program (that may include calling one or multiple subroutines to perform this task).
  • the advertisements are usually displayed using similar processes to the body of the software object itself. This usually requires a software producer (and/or agent) to pre-arrange sponsorship of the software object(s) and would usually commit advertisers to sponsoring fixed products for a predetermined number of copies.
  • the invention allows for any means of allowing use of one or multiple software objects in exchange (in part at least) for the display of one or multiple advertisements on a display(s) attached directly and/or indirectly to the UCDPS; that directly and or indirectly activates the Secure Processing Means to (directly and/or indirectly) display one or multiple advertisements when said one or multiple software objects are executing.
  • the preferred method of implementing this is any means that includes an advertising generating and/or display means, preferably secure, ( it may use the Secure Processing Means, in part at least); and any means (preferably secure) to detect, when one or multiple software objects are executing that require activation (directly and/or indirectly) of said advertising generating and/or display means.
  • This may include, in part at least, the means used to detect when one or multiple software objects are executing within the Secure Processing Means as described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al.
  • One method may be to include (preferably) encrypted information within one or multiple software objects that must interact with the Secure Processing Means.
  • this encrypted information is a message(s) informing the Secure Processing Means (using any means) of its requirements for linked advertising.
  • the advertising may be for display prior to and/or during and/or after use of one or multiple software objects.
  • the invention allows that the (preferably) encrypted message may indicate the type of advertisements and or duration and or any other information.
  • the Secure Processing Means enters its own functions to ensure that part or all of the advertising is displayed. This is preferably using secure means.
  • the invention allows for any means to display advertisements, including having the Secure Processing Means directly and/or indirectly writing to the normal graphics output means of the UCDPS.
  • the invention also allows for any means to display advertising information using any priority display means, therefore ensuring that some other process does not alter or overwrite the advertising material.
  • the preferred priority display means is to have the Secure Processing Means access a graphics buffer under its control that overlays information retrieved from the normal UCDPS graphics buffer(s). By allowing the Secure Processing Means to control the display source for each of these video sources, the Secure Processing Means can ensure that its information has priority. It is preferable that this linkage is secure thus preventing tampering with the priority display.
  • the invention allows for any means of providing a UCDPS with a secure means of priority display of visual imagery that in part at least may be a tamperproof means of priority display.
  • the invention also allows for any means of overlying or modifying (in any way) information displayed by any other means. This may include advertising material displayed from another source that is overwritten by any means. This may include any means described in this application or other applications by this inventor.
  • the preferred means of displaying advertising material is to have the Secure Processing Means able to directly and/or indirectly inject display information into the display output means. This may use any means.
  • the preferred method multiplexes normal display information (eg. as generated by a VGA and/or any other PC graphics card) with information generated in part at least by the Secure Processing Means (directly and/or indirectly).
  • One method of doing this is to directly and/or indirectly link (using any means) video generation circuit with the Secure Processing Means.
  • the logic to do this is preferably within the Secure Processing Means IC. This accesses its own graphics buffer.
  • the video source from said normal display (in analogue and or digital) format is multiplexed with that generated by the Secure Processing Means. This process is preferably under the conttol of functions linked to the Secure Processing Means. This ensures that Secure Processing Means information has priority.
  • the invention also allows for any means of integrating the normal display generating logic (in part at least) with that linked to the Secure Processing Means.
  • the invention allows for any means that in part at least performs a similar function and is not a secure process (in part at least).
  • the invention also allows for any means that in part at least may take conttol of the system bus and write directly and or indirectly to the normal graphics display memory. It is preferable that such a means saves the overwritten information for subsequent restoration.
  • the invention also allows for any means that can detect the location on the display means, of advertising information that is to be overwritten, enabling (directly and/or indirectly) new information (in part at least) to be substituted.
  • the invention also allows for any means that enables advertising to be configured to the user. This may include any demographic basis, including gender, nationality, income, age, religion.
  • the preferred method is to include this information within the Secure Processing Means. Some of this information may be pre-programmed. Other information may be entered by the user or any other means. It is preferable (particularly when one Secure Processing Means is accessed by multiple users) for each user to have a password. Therefore, the Secure Processing Means knows which user is accessing the device and can adjust displayed information to their particular demographic details.
  • the invention allows for any means, using part at least of the means described in this application that permits one or multiple advertisers to support a particular software object. In this case they would usually know the cost of rental for use of this object and would commit to a particular amount of use per customer. Any other arrangement is allowed for.
  • An alternative implementation of the invention allows a generic pool of advertisers to promote a generic pool of software object. The invention allows for any means of doing this. This provides a scenario where particular software producers do not need to find specific sponsors. The user has a pool of sponsors (usually with a predetermined budget per user) and this can be used to offset the cost of any software that the customer wants to use.
  • One means of doing this uses the process described in pay-as-you-use software rental as described in said WO 97/25675 by Griffits by this applicant.
  • Users may have access to sponsors who commit an amount of funding thai can be used to pay software rental charges in exchange for linked exposure to advertising material. Any means may be used to log software use.
  • the invention allows for any means of offsetting these charges against advertising.
  • the preferred method loads a predetermined amount of advertising material with a linked amount of electtonic credits (preferably securely).
  • the credit is (preferably securely) decremented against software use.
  • the use of this credit is usually linked to the display of advertising material.
  • the invention allows for any means of integrating advertising credits with the use of electtonic credits paid for by the user and/or any other credit (and/or any other conditions of use) means.
  • the preceding method allows generic sponsors to cover use of a variety of user determined software objects.
  • the invention allows for any means of doing this on a UCDPS.
  • the method as described is compatible with different software objects having different charges for use.
  • the invention also allows for any means that bundles software objects and provides unlimited use for a fixed for a period of time and/or number of uses and/or any other metering of use basis.
  • the invention allows for any combination of means.
  • the invention also allows that part at least of advertising credits may be against a users account with the service provider (or any similar arrangement) rather than direct credit within the Secure Processing Means .
  • the invention allows for any means (preferably secure) that permits feedback to one or multiple advertisers about the various customer responses to their advertising.
  • the preferred method records such responses within the Secure Processing Means and/or on any external storage means (with the preferred method using a similar process described in said WO 97/25675 by Griffits for securely storing a record of software usage).
  • This information is preferably transmitted to the advertiser (directly and/or indirectly) on a periodic basis. This is preferably accompanied by a secure report of software usage.
  • the invention allows that any particular advertisement may be used to subsidise (in part at least) one or multiple specific software objects; and/or may be distributed generically across multiple software objects.
  • the invention allows for any means that securely records (that in part at least may include using any Secure Processing Means) software usage. This may be on any basis, including part or all of the method described in said WO 97/25675 by Griffits.
  • the preferred method monitors software use on a time used and/or events basis, with a generic right of access to multiple software objects as long as there is sufficient prepaid and/or pre-authorised credit attached directly and or indirectly to the Secure Processing Means.
  • the Secure Processing Means preferably ceases activity when the credit available is used (or any other predetermined level) and/or any pre-authorised limits are exceeded.
  • the Secure Processing Means (also referenced as a PPU or ESSPD in said WO 97/25675 by Griffits) is usually required to periodically produce a preferably secure report on software usage.
  • the Secure Processing Means preferably cease function if this report is not supplied.
  • the invention allows for any means to use advertising to subsidise the cost of using software objects.
  • Non-limiting examples may include: detects the availability of various advertising credits, using these instead of, and/or in conjunction with user credits; and/or consumes user credits to execute the software and logs a component that will be subsidised by advertising and subsequently credited to the user's account and or any other means.
  • the invention allows for any means of securely metering software use and/or advertising interaction with the user.
  • the invention allows for any means described in this application that in part at least, allows multiple software objects to execute in a multiprocessor and/or multitasking environment.
  • the preferred method uses the means described in said WO 97/25675 by Griffits, that permits multiple software objects to execute on a pay-as-you-use basis, with the methods described in this application readily adapted by those experienced in the art to record usage against available advertising credits.
  • the preferred apparatus for implementing part at least of this invention is to integrate a Secure Processing Means into a custom IC.
  • This is preferably directly and/or indirectly available to software objects executing on the UCDPS.
  • the Secure Processing Means may be interfaced directly and/or indirectly using any means. This may include a bus connection (eg. PCI bus, PCMCIA); and/or one or multiple ports (eg. parallel and/or serial); and/or integrated directly onto the motherboard of the UCDPS; and/or integrated within one or multiple processing units attached directly and/or indirectly to the UCDPS (including one or multiple system microprocessors).
  • the Secure Processing Means (that may provide part or all of the functions of the Secure Processing Means) is preferably capable of securely decrypting and/or executing software objects (in part at least). It is preferably able to generate video display information that may overlay and/or replace information displayed as part of the normal processes of the UCDPS.
  • the software object that is to be executed (and/or used in any other way) preferably includes: • information about the producer of the software object; and/or • uniquely identifies the product (eg. ID code); and/or • conditions of use (that may be any conditions of use described in the art of software protection/distribution; and/or • if it requires a distinct right of access; and/or • if it may be used on a generic right of access basis; and/or ⁇ if it may have its use offset in part at least using any one or multiple advertising means, that may include part at least of those means described in this application.
  • the Secure Processing Means may include any means that may interpret in part at least, the information within one or multiple software objects and act accordingly.
  • the Secure Processing Means may update user credits and/or advertiser credits, using any means, including those described in said WO 97/25675 by Griffits.
  • the Secure Processing Means preferably has secure access to information (that may be pre-programmed and/or loaded from any external means) detailing how the display of advertising material may be used to offset in part at least, the consumption of user credits.
  • information that may be pre-programmed and/or loaded from any external means
  • the invention allows that part at least of its processes may not be dependent on any user credits.
  • the preferred method is to encrypt, in part at least, advertising material. This may be for any reason, including preventing tampering with the information. This may be linked in any way with any other encrypted information.
  • the advertising material may have conditions of use directly and/or indirectly linked. These may describe any conditions affecting the use of the advertising material (and/or for any other purpose), including restriction to age, country (or any region), occupation, type of software object supported and/or any other basis. It may also include details relating to the number of times the advertising may be used to support one or multiple software objects on: » an events; and/or • a time; and /or • any other basis; and/or » a predefined (and/or any other basis) amount of advertising credits that the advertising material is good for.
  • the use of advertising to offset use of software objects may be a one-off event and/or renewable on any periodic basis.
  • the conditions of use may indicate that a certain number (that may be any number) of units of advertising credit are available each period, that may be any period.
  • the preferred embodiment may use any means to securely store this information and to use it against software object use.
  • the advertising credits may be saved and transmitted, in part at least, to the service provider for crediting to the users account and/or for any other reasons. If applicable, the use of advertising credits is preferably compared against a secure real-time/date source to determine when a new round of advertising credits may be activated.
  • the invention allows that advertising material may be displayed at any time. This may include during system startup; during periods of inactivity (eg. as part of screen savers); during program operation.
  • the invention allows for any means that permits advertising material to be displayed in any section of the display that may be made to move (in part at least) with the mouse pointer. This may include within a GMM.
  • the invention allows for any means that on any periodic basis generates a report (preferably securely) for one or multiple advertisers (and/or any agents), detailing use of software objects; and/or user interaction with advertising material and/or any other information.
  • the invention allows for any means that couples offline use of one at least software objects to a secure metering means coupled to one at least UCDPS to securely produce a record of use that may be subsequently permit an accounting of said use. This particularly applies when said accounting of use is used to bill advertisers for EIC usage on one at least UCDPS .
  • VSM Validation Signal Means
  • the distribution of ECI on a metered basis may be accompanied by discounts based on usage and/or the number of nodes supported by a particular customer. This may apply to information that is pay-as-used and particularly to information that is purchased on an 'all you can use' basis for a predetermined period of time. For example, a household may pay $20 per month for video access, however, they are unlikely to want to pay an additional $20 for each additional access means (for example, a keyboard/display means, a UCDPS accessing a household server). A package deal may apply to a household (this may vary depending on the number in the household).
  • a business may receive a discounted rate depending on the number of employees; and/or volume and/or value of information consumed.
  • the present invention describes a means to monitor such abuses. In particular it may determine the distance one at least said access means is located from a server means by measuring the propagation time an electrical and/or optical signal along a conductor linking one at least server means to one at least said access means.
  • synchronized clocks it may be possible to send a signal that includes information on time the signal was sent and have the receiving means note the time the signal is received. Note: light propagates approximately 30 cm in one nanosecond.
  • the process preferably may be applied in either direction.
  • the preferred embodiment sends a signal and measures the return time.
  • Said sending means preferably knows the delays of any signal processing at the destination, prior to returning the signal.
  • the conduction delay is approximately equal to the return time less processing overheads at both ends divided by two.
  • the distance is easily calculated. Access means located beyond preferably predetermined distances may be deemed to be unauthorised because of their location (even if they are a valid means)
  • the sending means preferably knows the processing delays in the target device and/or within itself.
  • the process is preferably tamperproof.
  • the means may also be applied to measuring the delay of a broadcast signal, wherein the distance will usually be a straight line between sending and receiving means, compared to a conductor means, wherein the cable length may be longer than the distances between sender and receiver.
  • the means described in this specification preferably may be applied to one at least User Controlled Data Processing System (also referenced as a UCDPS in this specification).
  • UCDPS User Controlled Data Processing System
  • Non-limiting examples of said UCDPS may include said VMPS, personal computers (eg the PC, Macintosh), set top boxes, game machines (eg, Nintendo 64, Sony Playstation), and/or net computers.
  • the term UCDPS may be applied to any electronic device described in the previously disclosed patent specification WO 96/27155 by Shear et al.
  • the term UCDPS may also apply to any device described as a UCDPS in patent specification WO 97/25675 by the present inventor.
  • Figure 1 shows a household multimedia centre and a plurality of authorised access nodes.
  • Figure 2 shows a method of interfacing an alternate processing means and a system CPU to a common graphics buffer.
  • Figure3 shows a method of providing a separate graphics buffer for an alternate processing means and another for the system CPU.
  • Figure 4 is a means of blending pixels from multiple sources in an apparatus suitable for overlay graphics.
  • Figure 5 is a secure processing means intercepting mouse and keyboard I/O and a means of displaying graphics from multiple sources on a display means .
  • Figure 6 is a generic arrangement for a ghost Mouse Means.
  • Figure 7 is a simple method of constructing wormholes through a plurality of object layers on a display area.
  • Figure 8 is a block diagram demonstrating a means for users to have third parties intercept advertising that requires the consumer to interact. Said third party preferably answers the questions for said consumer.
  • Figure 9 is a block drawing of a secure advertisement server and advertising protected software object.
  • Figure 10 shows a method of using a Personal Security Terminal.
  • the means described in the present specification may interface, in part at least, with secure processes locally coupled to one at least UCDPS. Allowance is made that said means may be implemented, in part at least, with less security (for example, software only based systems rather than one at least, physically secure processors) and/or no security. Furthermore, the means may be implemented, in part at least, in a system with multiple processors (that may be different processors, in part at least) and/or multiple operating systems, however, the invention allows for their implementation, in part at least: • in a single processor system and/or o in a single operating system environment.
  • a means for overlaying information preferably with a priority over information originating from one at least other means (eg MOS), and said overlay and/or priority is preferably tamperproof.
  • the use of the advertising may be metered, in part at least, and/or user responses and/or opinions maybe recorded. Said metered and/or recorded is preferably by secure processes operational in a UCDPS offline. Said metered and/or recorded is preferably transmitted to authorised parties at periodic intervals.
  • the invention allows that part at least, of said means described for overlaying information may not be secure and/or may be performed in part at least by online means.
  • the invention allows for any means of implementing, in part at least, the means described in this specification.
  • the ECI consumer's cost of digital information usage when using trusted systems may be discounted to allow for multiple users. For example, a package deal may apply to a household (this may vary depending on the number in the household). In another example, a business may receive a discounted rate depending on the number of employees.
  • a household multimedia means 1000 This may be any means providing ECI, directly and/or indirectly to multiple consumers.
  • Multiple authorised access means eg monitors, keyboard, UCDPS, electronic book means etc
  • a conductive means preferably optical
  • the distance between each said access means and said multimedia access means 1000 may be known and/or estimated as shown by 1005a, 1010a and/or 1015a.
  • the time for an electrical and/or optical signal to propagate along said conductive means may be determined.
  • Said multimedia centre may send a validation signal to one at least said access means 1005, 1010, 1015 and expects to receive a return signal within a predetermined interval. Said interval may be programmable.
  • said multimedia centre may determine that said access means may be in an unauthorised location.
  • access means 1020 may have been coupled to the house next door using a conductor 1020a that is longer than that permitted, resulting in a longer than accepted return path.
  • Said 1020 would usually be an authorised unit that is geographically relocated. Unauthorised units are preferably not compatible with the multimedia means 1000. It is preferable that said multimedia means 1000 and said access means 1005, 1010, 1015, and/or 1020 include a secure means to prevent tampering.
  • said access means 1005, 1010, 1015 and/or 1020 expect to receive a validation signal at one at least predetermined and/or determined on any other basis times. It is also preferable that said access means 1005, 1010, 1015 and/or 1020 originate a security signal of their own and determine the return time. It is preferable that generation of security signal to and/or from multimedia means 1000 and access means 1005, 1010, 1015 and/or 1020 uses a secure means.
  • the secure means described in this specification are readily adapted by those experienced in the art to meet the requirements of said Validation Signal Means.
  • a random number may be generated in multimedia means 1000 and sent to one at least said access means 1005, 1010, 1015, and/or 1020, and a counter started that is preferably clocked at high speed (eg 1 Gigahertz). When a return signal is detected the counter is stopped and read. This provides the return signal time plus overheads (eg time to perform any operations at the destination). It is preferable that the destination (eg 1005) performs an operation on the transmitted information and sends the modified information back to said multimedia means 1000. Said multimedia means 1000 may then validate that said operation is as expected. Said operation preferably takes a standardized time interval.
  • the method may also be applied to access means that are coupled via non-conductive means (eg radio/microwave).
  • Overlay, Transparency ands Secure Processing Means It is one non-limiting objective of the invention to provide a means to overlay information on the display area of a UCDPS.
  • One application for overlay information may be the display of advertising using Priority Means that are preferably tamperproof. It is preferable that said overlay is secure, in part at least. It is preferable that said overlay information cannot be overlaid by other unauthorised information. Said overlay is preferably beyond the conttol of the user and/or programs operating outside of a secure processing environment. It is preferable that said advertising is delivered in one at least secure protected software objects as described in said WO 97/25675 by Griffits and/or one at least secure containers as described in said WO 96/27155 by Shear et al.
  • An important application for overlay information is to display advertising.
  • advertising that the user has agreed (implicitly or otherwise) to display in return for subsidized (in part or whole) use of EIC and/or in return for some other benefit.
  • one means of securely displaying advertising may be to provide a Secure Processing Means that may read and/or write to a preferably secure graphics buffer.
  • Said buffer is preferably not accessible, in part at least, to unauthorised processes outside said Secure Processing Means.
  • the display of graphic buffer data preferably takes priority over graphics buffer information from other sources, for example, the video memory of a PC. Said priority is preferably selectable on a pixel by pixel basis, in part at least.
  • pixels from the overlay graphics buffer may be mixed with those from, one at least other sources, in part at least.
  • Said mixing preferably provides a transparency means, wherein said overlay transparency preferably may vary from 0% (no transparency) to 100% (no overlay) and one at least values in between.
  • the overlay display may be varied in size. This may use known art windows resizing means that usually crop part of the displayed area to fit the window.
  • the preferred means supplies overlay graphics buffer information in to an image shrinking (and/or enlarging) means. This may be a program that resizes the image within the graphics buffer.
  • a hardware means resizes the overlay display in real time as it is displayed. These processes are known to the art.
  • one at least display means that are overlaid eg, the display area representing a PC Windows environment
  • VGOPM Video Graphics Overlay Module
  • the VGOPM may incorporate any of the means described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al.
  • the VGOPM may also provide security for the display of any type of visual information, for example electtonic books and similar. It also facilitates the implementation of a ghost Mouse, described later, and provides novel and flexible means of overlaying important messages during normal applications processing and/or alternate processing means (eg a Secure Processing Means).
  • Figure 2 shows one means of generating overlay information.
  • Video logic 1 retrieves information from a graphics buffer 2 converting it from binary to a format that may drive a display means. This is usually an analogue signal with many existing video monitors.
  • the system CPU eg an Intel CPU usually under the conttol of an operating system that may not be secure, for example, a Microsoft Operating System, normally transfers graphics information to the graphics buffer 2.
  • the invention allows any multiplexing means 3 to permit any combination of alternate processing means 5 (eg a secure processing device as described in said WO 97/25675 by Griffits) to communicate with said graphics buffer 2.
  • Said processing means 5 preferably may modify information within said graphics buffer 2.
  • the alternate processing means 5 may have its own peripherals and/or memory 7.
  • the invention allows for any means for the system CPU and the alternate processing means to communicate with one another.
  • the preferred method uses dual port memory as described in said WO 97/25675 by Griffits and/or allows the alternate processing means to access system memory by DMA.
  • the means to communicate commands and data between a first operating system means that is preferably part of a secure processing environment, and one at least, usually unsecure, second processing means, eg a MOS environment, are described in said WO 97/25675 by Griffits and said WO 96/27155 by Shear et al.
  • One potential disadvantage of the preceding arrangement is that the alternate processing module may need to track the information it has replaced in the graphics buffer 2, to restore the imderlying information when necessary.
  • Alternate processing means 5 is preferably allocated its own graphics buffer 20.
  • the system CPU(s) may also have access to said graphics buffer 20 (preferably on a multiplexed arrangement).
  • the system CPU 2 preferably uses graphics buffer 2.
  • the alternate processor 5 preferably has access to graphics buffer 2.
  • the video logic 1 preferably fetches information from both of these and uses internal logic to determine which graphics buffer (or both if transparency is used) is the source for a particular pixel (or pixel grouping).
  • One method of selecting which graphics buffer is to provide a particular pixel is by the use of a pixel mask means.
  • the mask buffer may be discrete (eg another buffer that is accessed with each graphics buffer) and/or extensions of the bit map used to represent pixels in one at least graphic buffer.
  • the invention allows for any means of pixel switching and selection. This may include means that are inherent and/or depend on the value of data within various graphics buffers, for example, the color black in the graphic buffer 2 may indicate transparency such that the overlay screen shows wherever there is a black pixel on the system display. The reverse may be the usual case.
  • One at least processing means preferably has access to the graphics buffers of one at least other processing means. UnSecure Processing Means preferably do not have unauthorised access to secure graphic buffers.
  • Figure 4 shows a method of selecting which graphics buffer will contribute to a particular displayed pixel.
  • Information sourced from graphics buffers 2 and 20 may be multiplexed by 26 that may select the source for a particular pixel.
  • the selection is preferably determined by a mask field 25 that is an extension of graphic buffer 20. It may, in part at least, be part of graphic buffer 2 and/or one or multiple other buffers.
  • the logic block 30 may be used when graphics from multiple sources are blended, for example, to perform transparency operations. It may perform multiplication and/or division and/or any other logic operations that may scale the data from 2 and 20 up/and/or down and then average and/or any other mathematical operation the pixel values.
  • the means to perform hardware and/or software transparency are known to the art.
  • a means is preferably included to dynamically resize one at least screens and/or windows and/or objects. For example during a system reboot, it is preferable that advertising may be displayed on the screen.
  • the boot display and overlay display are preferably shrunk. Said overlay display may or may not overlap said boot display, in part at least.
  • the preceding embodiment may be constructed as a PC compatible VGA card.
  • the method described with reference to figure 2,3 and 4 effectively captures display information from one or multiple system processors that may be operating under one at least operating systems and preferable transparently to said operating system(s) overlays additional graphics information.
  • Another method of achieving this maybe to include a graphics buffer within the display means (eg video monitor).
  • This may be configured to display information at predetermined times that are preferably capable of modification, preferably by one at least signals sent from its coupled UCDPS.
  • said monitor graphics buffer may be activated by a reset signal and/or a particular bit pattem(s) in the incoming video information.
  • the information within said monitor graphics buffer preferably may be updated.
  • information may be transferred within the vertical blanking period.
  • An alternative is to interpose an overlay graphics means between video output of a UCDPS, for example, the VGA plug of a PC and the input to one at least display means.
  • a user may wish to keep their current video card and have access to the means of the present invention.
  • One method would enable the user to connect the output of one at least video cards to a second board that included, for example, a Secure Processing Means and secure graphic means.
  • the incoming video may be digitised and mixed digitally with the video from said secure graphics buffer.
  • the incoming analogue video may be switched, for example, with an analogue switch, with the analogue output from said secure graphics buffer.
  • Another method of displaying overlay information securely may be to use the one at least system CPU to perform functions, preferably securely, that are preferably ttansparent and preferably inaccessible, in part at least, to the MOS executing on the same CPU.
  • functions preferably securely, that are preferably ttansparent and preferably inaccessible, in part at least, to the MOS executing on the same CPU.
  • a ttansparent interrupt structure is described for CPU that permits the CPU to enter an alternative mode, for example as described in US Patent 5274834. This would require a special CPU and is not presently a feature of Intel CPUs.
  • the preferred method of controlling screens, windows and objects is by the use of one at least conttol means preferably implemented as an overlay means and referenced in this specification as a ghost Mouse Means or GMM.
  • the user of a UCDPS may interface to the alternate processing means, that is preferably a Secure Processing Means, using any of the usual I/O means coupled to a UCDPS.
  • the present invention and specifications incorporated by reference describe a plurality of ways for, one at least, standard operating systems (eg MOS) to interface with a secure processing environment. These methods may require modifications to said standard operating system and/or one at least patches.
  • the means of said WO 97/25675 by Griffits also describes Protected Software Objects that may automatically determine the presence of a secure environment and communicate with it without any code external to said PSO on the non-secure side of the system.
  • a non-limiting objective of the present invention is to provide multimedia processing means that are or may be directed towards a MOS FREE ENVIRONMENT and it is preferable that I/O processing between user and secure processes is not dependent on the System OS eg MOS, in part at least.
  • the preferred embodiment has the secure processing and/or other alternate processing means intercept and preferably pre-process I/O means, in part at least.
  • User inputs non-limiting examples that may include, mouse and/or any other screen pointer means, joystick, keyboard, light pen, voice input, etc
  • They are preferably not passed to said system OS(s). They are preferably processed by said secure and/or alternate means.
  • Those I/O means that are intended for the system OS(s) may be pre-processed prior to being passed to the said system OS(s).
  • FIG. 5 shows a block diagram of one embodiment that may be used to provide the advertising means and/or Secure Processing Means and/or I/O intercept means of the present invention. It may be expanded to include any other functions. It may be referenced as an Integrated Secure Core Resource Execution and Allocation Means (I- SCREAM) and is preferably manufactured as a module that plugs into the PCI (or any other) bus of a PC or as a standalone multimedia system. It preferably also provides the VGA functions for a PC. It preferably may use its own processing means to emulate, in part at least, a graphics accelerator means for the PC. The embodiment may be adapted to couple by any other means to said PC. The embodiment may also be adapted to couple to any UCDPS.
  • I- SCREAM Integrated Secure Core Resource Execution and Allocation Means
  • the embodiment may be adapted to include part or all of the logic of a multimedia system.
  • the invention allows that the functions described for secure and/or alternate processing means may be performed by one at least system CPU(s), in part at least. The reverse may also apply, in part at least.
  • the use of the term Secure Processing Means may also be implied to represent the option of one at least alternate processing means that may be secure, in part at least.
  • the term Secure Processing Means may also be replaced with the term non-Secure Processing Means .
  • system operating system may refer to one at least operating systems executed by said Intel CPU. Presently the prevalent system operating system(s) is one at least Microsoft Operating Systems (MOS).
  • MOS Microsoft Operating Systems
  • the use of the term MOS may be interpreted as referencing said System Operating System(s) and may also be interpreted as referencing any system operating system(s).
  • the Secure Processing Means (that may also be constructed as a non-Secure Processing Means) 5 intercepts one at least I/O means.
  • a socket or plug
  • Additional sockets may be provide for other input means (eg, Joystick, light Pen, any other screen pointer means, as non-limiting examples) and the means described for the mouse/keyboard may readily be adapted to said other input means by those experienced in the art.
  • the UCDPS interface with the Internet 112 is intercepted, in part at least, by said Secure Processing Means 5 (and/or one at least other processing means).
  • Said secure processing 5 preferably intercepts calls to and/or from one at least other 113 I/O means, non-limiting examples that may include parallel interface, serial interface, floppy disk, hard drive, CD ROM, DVD, USB, Firewire, Video Camera, Free to air TV, Cable TV, Audio, Public Switched Telephone Network.
  • a display area 114 is shown that includes information 115 contributed by the system CPU 4 (preferably by writing to graphics buffer 2) and information 116,117 contributed by the Secure Processing Means 5 (preferably by writing to graphics buffer 20).
  • Video logic 1 preferably selects the source of each pixel and converts it to a format suitable for use with a display means.
  • Video logic 1 may include one at least functions, non-limiting examples that may include, pixel selection, manipulation and/or use of pixel masks, transparency, hardware/software zoom, programmable pointers that may be used to adjust the displayed position of various objects etc.
  • Information 115 may represent a Microsoft Windows Screen, as a non-limiting example, stored in the PC graphics buffer 2.
  • the system operating system preferably is not aware of any overlaying information (eg 116,118,117), in part at least, and/or preferably cannot interfere with any overlaying information, in part at least.
  • Area 116 may represent an advertisement written to the overlay display means 20 by Secure Processing Means 5.
  • Area 117 may represent the output of an Internet Browser that is executed by said Secure Processing Means 5 and/or one at least other alternate processing means (not shown), that may be secure, in part at least, and output to the overlay graphics buffer 20. Said other alternate processing means preferably interface with and/or is controlled by said Secure Processing Means.
  • the area 118 outlined by a broken line may represent an area of ttansparency, for example it may be a ghost mouse means.
  • An Image Manager Means is preferably provided that is preferably aware of the contributing sources of images (preferably all) in a display area. It is preferable that said Secure Processing Means 5 (and/or its preferably secure operating system and/or rights management system) includes said Image Manager Means.
  • Secure Processing Means 5 may read/and or write to PC Graphics Buffer 2. It is also preferable that there is a means for the Secure Processing Means 5 to monitor 143 the System CPU bus 140. For example there may be a bus monitor means 141 that may be able to trap one at least addresses. For example, there may be a preferably programmable PC I O trap 142 that on detection of one at least accesses to one at least addresses within the System CPU I/O space initiates further action.
  • the Secure Processing Means may halt the system CPU via control lines 135 while it emulates an I/O function (eg. a register function) as a non- limiting example. Said control line may be used to interrupt the system CPU 4, eg to simulate a peripheral device.
  • I/O function eg. a register function
  • Said Secure Processing Means 5 may preferably also access system memory 130 for any reason, for example, to modify interrupt routines, interrupts, I/O functions, mouse pointers, keyboard input as non-limiting examples.
  • Said Secure Processing Means preferably may inhibit system CPU cache entries for one at least addresses for one at least reasons, non-limiting examples that may include: ensuring that routines and or data may be modified by the Secure Processing Means and be applied reliably by said system CPU 4, and/or that information written by system CPU 4 is immediately available to secure processor 5.
  • one at least I/O means may need to function across multiple screens and/or operating systems and/or processors and a means is preferably provided to allow this.
  • the mouse pointer means 119 is preferably interfacing with the Windows environment 115 when it overlays areas where said 115 is visible.
  • said mouse pointer means moves to an area of overlay information as indicated by 121, it is preferable that said pointer is visible and interfaces to one at least overlay area, in part at least. If the mouse movements were directly transferred to the System CPU operating system, eg one at least Microsoft Operating System (MOS), said MOS may conttol its movement and when located to an overlay area may be covered by said overlay. Additionally, when the pointer was 'clicked' it may activate a Windows object.
  • the System CPU operating system eg one at least Microsoft Operating System (MOS)
  • MOS Microsoft Operating System
  • the pointer is preferably controlled by said Secure Processing Means 5, wherein, said pointer may be made to behave appropriately for: • Windows area 115 when overlying said area 115 (said secure processor 5 preferably knows when this is the case); and » Other areas eg 116, 117, when overlaying said other areas (said secure processor 5 preferably knows when this is the case).
  • the invention allows for any Pointer Conttol Means (PCM) that preferably ensures a mouse pointer and/or coupled and/or uncoupled mobile conttol structure (eg ghost mouse) are: • visible at the correct times; and/or o activate the correct objects; and/or • display the appropriate image for their position (eg. the arrow may become a text when located within a word processor). It is preferable that control objects displayed within a ghost Mouse Means are varied to suit the underlying screen and/or window and/or objects.
  • PCM Pointer Conttol Means
  • the Secure Processing Means 5 preferably intercepts one at least mouse movements and/or mouse click signals. This may be referenced as a Mouse Intercept Means.
  • One method is for said Secure Processing Means to conttol part or all pointer movement and/or mouse clicks (and/or equivalent) and read and/or write directly to mouse registers, pointers, buffers etc of the MOS. This method may also be used to stop MOS pointer movement when required and/or to park the pointer in convenient location and/or to temporarily stop display of the MOS pointer and/or to locate the restore the pointer to an appropriate location.
  • Video logic 1 may be adapted to enable the MOS pointer to be blanked.
  • One method is to pass part or all mouse movements to said MOS and although the mouse pointer may move anywhere on the MOS screen 115, the MOS pointer is preferably not be visible when behind an overlay area.
  • the Secure Processing Means preferably displays another mouse pointer to ensure its visibility when within one at least overlay areas, eg location 121.
  • the pointer is located in a ttansparent area eg 118 both pointers are displayed, however, as both pointers preferable occupy the same display area co-ordinates, they are seen as one.
  • Pointer position is usually a passive display and it may be replicated by multiple operating systems as long as the co- ordinates are the same (unless a plurality of pointer images is wanted).
  • the known art does describe some actions that may occur when a pointer is located in one position for a predetermined time, for example, the display of a balloon of text to indicate the meaning of an underlying icon and/or a variation in the displayed image of an object(s). This may result in a pointer located within an underlying screen causing changes to said screen, even although it may have been moved to that location by mouse movement in the overlying screen. This function is preferably disabled when the pointer moves to overlay areas.
  • An alternative may be to restrict MOS writing to graphics buffer 2 when the mouse is in overlay territory and/or overlay territory is active.
  • one at least mouse clicks is passed to the MOS pointer routines (an exception may be with the use of a ghost Mouse as described later).
  • the pointer means is located in an overlay area eg 116, 117, one at least mouse clicks are preferably passed to the appropriate routines within said Secure Processing Means.
  • Those experienced in the art will be able to adapt the mouse means to similar means eg Joystick, light pen, touch screen, voice commands etc.
  • keystrokes are transferred to the presently active Window and/or object and/or screen. If multiple means are active, keystrokes are preferably passed to the operating system controlling the area presently encompassing the visible pointer means.
  • the embodiment as described is intended to synthesise, in part at least, the PC environment expected by a MOS executing with an Intel CPU, without requiring any modifications and/or patches to said MOS and/or any other programs executing under said Intel CPU.
  • This arrangement preferably enables a module to be plugged into a PC and provide the functions described for said I-Scream transparently, in part at least, to the MOS.
  • the method may be adapted to any UCDPS and/or system CPU and/or operating system.
  • GMM Ghost Mouse Means
  • GUI Graphical User Interface
  • conttol objects may include one at least control functions described in this specification.
  • Non-limiting examples of conttol objects may include icons, menus (that may include pull down menus), graphical tools (eg scissors image to represent a image cutting tool, paint brushes etc), scroll bars, windows, window sizing objects, clocks, mouse pointer (that may be any shape) power indicators, speaker controls, display controls, etc.
  • Said display pointing means is usually implemented in conjunction with a mouse (or any variation eg, trackball, touch pad, joystick etc). It may also use touch screens, light pens, remote conttol (eg I/R or radio), audio controls, key strokes, or any other means of interacting with control images presented to the user on a computer display means.
  • a mouse or any variation eg, trackball, touch pad, joystick etc. It may also use touch screens, light pens, remote conttol (eg I/R or radio), audio controls, key strokes, or any other means of interacting with control images presented to the user on a computer display means.
  • the convenience provided by a GUI may be associated with a number of limitations that may include, one at least, of the following: »
  • the provision of display resources for conttol objects may reduce display real estate available for applications. This may be a particular problem when multiple windows are open.
  • the known art usually locates control objects at the periphery of work areas (eg. a window) and/or coupled to another work area. This may entail significant pointer movement on a repeated basis to one at least locations. Said movement is usually a result of mechanical movement of a physical means (eg. a mouse) by the user. This repetitive physical motion may be particularly inefficient for the pointer means built into laptop computers .
  • One objective of said ghost Mouse means is to organise one at least control objects (preferably as one at least graphical and/or text images) in a location(s) that is preferably adjacent (and/or in any other way closely coupled) to one at least: pointer means (for example, the mouse pointer) and/or one at least cursor means (or equivalent).
  • pointer means for example, the mouse pointer
  • cursor means or equivalent.
  • the invention allows that one at least control objects may be arranged in any other, one at least, locations relative to said pointer and/or cursor.
  • Part at least of said control objects are preferably arranged such that their location on the display area changes as said pointer and/or cursor means is moved around said display means.
  • Said changes in location are preferably a function of the variation in x and/or y co-ordinates of said pointer and/or cursor means.
  • Said conttol object(s) preferably maintains their positional relationship with said pointer and/or cursor.
  • Said control objects are preferably collated into one at least areas that may be any shape.
  • Said area(s) may be defined by any means that preferably includes one at least of the following: • an outline characterised by solid or dashed lines and/or curves that may be one at least colors that preferably differentiate it from the other display information (in particular information external to said ghost Mouse); • a background characterised by one at least colors that preferably differentiate it from other displayed information (in particular information external to said ghost Mouse).
  • Said area(s), in part at least may be within the mouse pointer image displayed on the display means.
  • Said mouse pointer image may be modified to accommodate this information.
  • Said area(s) may be closely coupled to said mouse pointer image.
  • Said area(s) may be presented in any other arrangement and may or may not be coupled to said mouse pointer.
  • Said conttol objects and/or background and/or outline and/or any other objects may constitute the ghost Mouse means of the present invention.
  • Said Ghost Mouse means preferably can be manipulated around the x and y co-ordinates of the display means, in part at least, under the control of the user.
  • the ghost Mouse may (preferably temporarily) obscure, in part at least, other information being displayed and/or intended for display.
  • Any one or multiple parts of said ghost Mouse Means is preferably capable of being displayed with multiple levels of transparency. If part at least, of the pixels used to display said ghost mouse are set to a level of 0% transparency, then said pixels would usually display that part of said ghost mouse as a solid object and that part of the ghost mouse would overlay any underlying images.
  • part at least, of the pixels used to display said ghost mouse are set to 100% transparency, then said pixels would usually not display any information pertaining to that part of said ghost mouse and information not part of said ghost mouse would effectively overlay said ghost mouse. If part at least of the pixels are set to transparency greater than 0% and less than 100%, then said pixels would usually display information that in part represents said ghost mouse and in part represents information not part of said ghost mouse (eg. an application(s) program).
  • the level of ttansparency is preferably user selectable/programmable. The user preferably can make the mouse disappear, co-exist with other information and/or overlay as a solid object.
  • the display overlay and ttansparency means previously described may be used to implement this function.
  • the preferred method of creating transparent pixels is to average the color information of ghost mouse pixels with pixels representing other information and present them as a composite value suitably weighted to match the desired level of ttansparency.
  • This preferably uses the means described in this specification using algorithms implemented in hardware. The invention allows that these algorithms may be implemented, in part at least, using any means and this may include software methods.
  • the ghost mouse may be implemented as a solid overlay without a ttansparent function.
  • An alternative (and/or conjunctive) method of displaying ghost mouse pixels and pixels representing other information within, part at least, of the area defined by said ghost mouse is. by displaying some pixels representing 100% ghost mouse information and some pixels representing 100% said other information. For example every second pixel may be a ghost mouse pixel.
  • the invention allows for any proportion of ghost mouse pixels in any arrangement and said arrangement may vary in any way. Said 100% may be replaced in part at least with any level of transparency.
  • the means described for ttansparency applying to the ghost Mouse Means may be applied, in part at least, to any other objects, in particular, advertising and web page display.
  • objects displayed using the present invention may exist in one at least screens and when a plurality of screens are present, one screen may have display priority of one at least others.
  • Each screen may be comprised of one at least windows and/or any other objects and one at least window and/or other objects may have display priority over one at least other windows and/or said other objects.
  • One at least windows may include one at least window objects and one at least window objects may have priority over one at least other said window objects.
  • the ghost Mouse preferably provides control means to multiple windows and/or screens, it is preferable that it is displayed on top of all other display objects. However, the invention allows that it may have a lower priority than one at least screens and this may be absolute (ie. not visible) and/or be visible on a transparent basis.
  • said ghost mouse may have lower priority compared with one at least windows and this may be absolute (ie. not visible) and/or be visible on a ttansparent basis.
  • said ghost mouse may have lower priority compared with one at least window objects and this may be absolute (ie. not visible) and/or be visible on a transparent basis. The effect of this may be that as the ghost mouse is moved around the display means it disappears, in part at least, behind one at least screens and/or windows and/or objects.
  • the ghost mouse is preferably implemented using the overlay means previously described as this permits the overlay area representing said ghost Mouse to move around a display area without a requirement to keep track of the underlying information.
  • the movement of said ghost Mouse is preferably in response to the movement of a mouse means (or equivalent, eg trackball, Joystick, any pointing means etc).
  • the activation of objects within and/or otherwise coupled to said ghost Mouse is preferably in response to selection (eg clicking) one at least buttons coupled to said mouse means and/or equivalent. Said movement and/or activation may be in response, in part at least, to one at least other means, for example, selection of one at least keys on a keyboard means coupled to a UCDPS.
  • the Mouse Intercept Means previously described may be adapted to provide for the ghost Mouse Means.
  • the secure processor 5 preferably ceases passing mouse movement and mouse click information to MOS. It preferably sends MOS information to move the pointer if one at least operation activated with the GMM results in movement of the pointer. If the GMM commands apply to the MOS environment, the Secure Processing Means 5 may try to synthesise their effect through a combination of: system memory access and/or emulating mouse pointer movement and/or clicking (preferably without display said mouse pointer movement); and/or modifying and/or patching the MOS to recognize commands passed to it (eg via dual port memory 127/128), as non-limiting examples.
  • the ghost Mouse is to command means operating, in part at least, under the Secure Processing Means 5, said means operating and/or said Secure Processing Means are preferably capable of acting directly on the commands.
  • a mouse pointer 202 in the shape of an arrow is shown, however, this may be represented by any shape and there may be multiple pointers.
  • the outline of the ghost mouse is represented by rectangle 200.
  • the outline and/or ghost mouse may be any shape.
  • the ghost mouse may be a plurality and said plurality may be coupled and/or discrete.
  • the invention allows that the mouse pointer may be: part of a first screen means and/or under the conttol of a first operating system means, and the ghost mouse may be part of one at least second screen means and/or under the conttol of one at least second operating system means.
  • Said pointer and ghost mouse may appear to be one and/or closely coupled, however this may be a illusion caused by the pointer means and GMM being caused to move in unison and/or as a function of one and/or the other.
  • the pointer that may be coupled to and/or part of the GMM may be additional to one at least pointers coupled to one at least operating systems, eg, MOS, however, only one pointer may be seen if they share the same co-ordinates and move in unison (or equivalent).
  • the ghost mouse may be attached to the mouse pointer as shown in Figure 6, and/or separated and/or detached from said mouse pointer and/or within said mouse pointer.
  • the ghost mouse preferably includes control objects. Unless the point of conttol is implicit by a GMM icon/command etc, it is preferably the object at the tip of the currently visible pointer means (the pointer may overlay multiple levels of potentially controllable objects) .
  • the location of said pointer(s) preferably changes to suit the location of the GMM on the display area. For example, the pointer as shown in Figure 6 may be appropriate if the GMM is in the top left of the display area. As the GMM is moved to the bottom left of the display area the pointer preferably relocates to the bottom left comer of the GMM shown in figure 6. As the GMM moves to the right of the display area the pointer preferably relocates to the bottom right of the GMM.
  • the pointer preferably relocates to the top right of the GMM.
  • the invention allows that the position and/or orientation and/or any other characteristics of one at least objects coupled to and/or within said GMM may vary depending on the position of the GMM within the display area.
  • the conttol objects shown in Figure 6 may only be displayed in part, and/or may be replaced and/or added to, in part at least, with any other objects.
  • control objects displayed and/or the functions of the conttol objects may dynamically vary, in part at least, to accommodate the screen(s), window(s) and/or object(s) they are currently controlling.
  • the preferred mode of operation is to have the ghost mouse hidden, in part at least, until activated.
  • the mouse pointer may behave as a normal mouse pointer. Any means may be used to activate the ghost mouse, a process that preferably displays the ghost mouse control objects, in part at least.
  • the preferred method of activating the ghost Mouse Means is to click the least frequently used available mouse button, preferably only once. For example the Right Mouse Button (RMB) of a PC mouse is less often used. Clicking said RMB preferably activates said ghost Mouse, in part at least. If the user actually needs to use the RMB, the preferred method is to include a RMB activation means within said ghost Mouse. This may then be clicked or otherwise activated. In this embodiment, to access the normal RMB function, the user, for example, may click the RMB once to activate the ghost Mouse and click the RMB icon within said ghost Mouse.
  • RMB Right Mouse Button
  • Non-limiting means may include: • double and/or triple click one or both mouse buttons (in a two button mouse) and/or • use one at least additional buttons (for example by supplying a physical mouse means with three at least buttons) and/or • by one at least key strokes of the UCDPS keyboard.
  • the embodiment described with reference to the drawings assumes the RMB is used to activate the ghost Mouse and that there is a RMB control object available within said ghost Mouse to provide the usual RMB functions.
  • LMB Left Mouse Button
  • a LMB control object is preferably available within the GMM.
  • the RMB is kept for special GMM functions.
  • Another preferred alternative maintain the LMB as a normal button, allowing the normal pointer means to concurrently function and utilizes a plurality of RMB clicks to determine a plurality of GMM functions.
  • the description of one at least GMM functions being elicited by one or plural clicks of the RMB and/or LMB is not limiting and said elicited may use any means.
  • the control means are applied to the Controlled Object(s) (eg. window and/or screen) that the mouse pointer overlays at the time of activation and/or the Controlled Object(s) that is currently activated (eg. an active window).
  • the controlled object(s) is identified by the 'active window/screen indicator' 210. For example, if there are multiple screens on the display, each screen may have a name and/or graphical indicator (eg. there may be a Microsoft Windows 95 screen, a game screen and an Internet screen). Indicator 210 may show the screen(s) that the ghost mouse is currently activated for. It preferably also includes the name and/or symbolic ID of the currently active window(s) and/or object(s).
  • Controlled Objects
  • the screen(s) and/or window(s) and or object(s) controlled by said control objects may be referenced as Controlled Objects in this specification.
  • the conttol objects displayed and/or the functions of said control objects may be statically and/or dynamically varied using any control update means .
  • COGMS Conttolled Object Ghost Mouse Structure
  • GMM Ghost Mouse Means
  • Said COGM may include information provided with the program (and/or as a separate file) and/or may be created and/or edited by the user.
  • the preferred method constructs the COGMS as a text file.
  • GMM may change the conventional representation of a Window, for example, as it is possible to remove all control objects from the Window itself, said Window may only be defined by a bounding perimeter and this may be zero pixels wide.
  • Ghost Mouse Means Navigation Tools.
  • a means is usually required to select one at least control objects within said GMM 200.
  • the preferred method uses, one at least, Internal Pointer Means (IPM) 201.
  • IPM Internal Pointer Means
  • IPM Internal Pointer Means
  • IMP 201 preferably moves and pointer 202 preferably remains stationary (unless programmed to do otherwise).
  • Internal Pointer Means 201 is the preferred means of selecting the conttol objects of the ghost mouse.
  • the preferred method of activating the GMM in a PC based on Intel CPU and MOS is by clicking the RMB 300 once.
  • the pointer means 202 preferably remains stationary after the GMM is activated (until otherwise ordered) and the LMB299 and RMB 300 perform functions in response to die GMM. While in GMM mode, the Move control object 172 may be activated by placing pointer 201 over it and clicking the LMB 299. This enables the GMM and preferably pointer 202 to move around the display area and the LMB 299 preferably functions as a normal LMB 299 button. Clicking RMB 300 preferably returns to GMM mode.
  • An alternative arrangement may require one at least mouse buttons to be kept activated while pointer 201 overlies the Move conttol object 172 to enable the GMM (and/or pointer 202) to be moved around the display area.
  • a response at pointer 202 location preferably occur that is equivalent to clicking the LMB 299 in non-GMM mode. If pointer 201 overlays LMB conttol object 171 and the LMB 299 kept activated, the GMM and/or pointer 202 preferably move and act as would the mouse pointer 202 should it be dragged with the LMB 299 activated.
  • the RMB control object 173 preferably provides RMB 300 functions for non-GMM modes.
  • a menu is preferably opened (not shown) that permits the pointer 202 and/or the GMM to be moved around the display area.
  • a conttol object such as Location 230 control means used to move screen, windows and/or objects may be provided. Any emulation of mouse movements and or actions is allowed for. This is preferably user programmable to permit flexibility of functions.
  • the GMM is preferably able to display advertising material 205.
  • As the Ghost Mouse Means is preferably constructed as a secure overlay means said advertising is also preferably secure and displayed on a priority basis.
  • the means to deliver said advertising are described elsewhere in this specification.
  • Said area 205 may be used for any other reason, for example, to deliver messages to the user from the Secure Processing Means.
  • Area 206 preferably provides the user to further information on advertisers, eg it may open up a window with more detailed information.
  • the advertising means described in this specification preferably may apply, in part at least, to advertising material displayed in said GMM and/or activated from within said GMM.
  • Reference to 191 demonstrates internal pointer means 201 surrounded by one at least objects (eg 170a and 170b).
  • This preferably provides a shortcut means to move the pointer 201 around said GMM (and/or directly to deeper levels of said GMM, eg direct to the objects displayed when active control object 167 is selected).
  • the user preferably using the GMM programming functions that may be activated by conttol object Program GMM 207, may place targets 170ax and 170bx within the area of the GMM.
  • an equivalent control object eg 170a and 170b is preferably created in close proximity to pointer 201.
  • the pointer 201 may then be overlaid on the desired destination, eg 170a and the LMB clicked (for example).
  • the pointer 201 is preferably relocated to the equivalent target 17ax.
  • This system may be extended to place targets outside said GMM and may be further extended to a normal mouse (or equivalent) pointer means to rapidly move a pointer means to a plurality of display area screens, windows and/or objects.
  • the Program mouse conttol object 207 when clicked preferably brings up a menu that permits the user to program various functions in to the GMM. For example they may be able to move control objects, create new control objects, edit existing control objects as non-limiting examples.
  • the menu control object 250 preferably displays menus relevant to the presently controlled object (eg a window) and may include multiple hierarchical menus. The user may wish to place more frequently used menu items in easily accessed locations, eg. Save 251, Open 253, Edit 260, Cut 262, Paste 263 as non-limiting examples. Additional control objects may also be available (these may be supplied to the user and/or created by the user, preferable using a conttol object programming means/language).
  • Non- limiting examples of additional conttol objects may include, Save-H- 252 and/or Open++ 254 that preferably displays a history of previously used directories that the user may save to and/or load from respectively. It is preferable that when objects are cut and/or copied ⁇ iat they are stored in a clipboard and it is preferable that said clipboard retains a record of information cut and/or copied over multiple cut and/or copy operations.
  • the Edit Clip 261 conttol object preferably permits the user to edit said record of information.
  • the Paste++ control object preferably enables the user to access said record of information and select the part(s) they wish to paste.
  • Other non-limiting examples may include a conttol object (not shown) that permits multiple blocks of text and/or other objects to be selected to permit said multiple blocks of text to be cut, and/or copied, and/or changes fonts and/or other attributes etc.
  • the Local Tools 270 control object may permit the user to display additional control means relevant to the presently controlled screen and/or window and/or object and/or application eg display a palette in a paint program.
  • the Icons 273 control object preferably displays one at least icons from a screen and/or window and/or any other means. For example, Icons may not be displayed on the screen, in part at least, and are access by clicking said 273.
  • the Secure 301, conttol object preferably activates a menu that provides access the secure functions of the Secure Processing Means and/or secure operating system. For example it may provide a secure electronic funds and/or ordering function. It may provide access to the various means to control/select rights of access applying to EIC. These are non-limiting examples.
  • Control object Password 302 preferably provides access to a secure password means, for example, it may need to be entered prior to activating any functions on a UCDPS after power up and/or reset; and/or to enter one at least files and/or partitions on one at least hard drives and/or any other secure function.
  • One potential difficulty with multiple screens and windows is being able to readily access information at multiple locations that may be at multiple depths.
  • the Scroll control object 225 provides a means to scroll controlled objects
  • the Location control object 230 may reposition the screen and/or window and/or object within the display area (and/or off the display area in part at least).
  • the Size conttol object 280 may change the size of a controlled object.
  • Scroll Control Object Means 225 The prior art describes a means for vertically scrolling the contents of a window by a control means located on the vertical border of said window. It also describes a means for horizontally scrolling the contents of a window by a control means located on a horizontal border of said window. This is not the most efficient means of scrolling window contents.
  • An improvement to the art is the supply of a mouse (see Microsoft Intellimouse) that include a small wheel that can be rotated to scroll the active window contents.
  • the present invention provides a flexible means of scrolling one at least windows using a graphical control object that is preferably adjacent to the current mouse pointer. It preferably does not require a special mouse and provides an enhanced memod of viewing window contents. It preferably includes user programmable scroll functions.
  • various scroll functions may be activated in the active and/or local (the one presently overlaid by the GMM) window(s). For example, clicking on 225a may cause the window contents to scroll to the left, revealing information to the right of that presently displayed. Clicking on 225b may cause the opposite to occur. Clicking on 225c may cause window contents to scroll upwards and clicking on 225d may cause window contents to scroll down.
  • a vectored scrolling means is preferably provided, for example clicking on the circle 225e preferably causes the window contents to scroll in that direction (or at 180 degrees to said direction).
  • Said vectored means preferably provides simultaneous vertical and horizontal scrolling with the vertical and horizontal component preferably determined by the position of internal pointer 201 on circle 225e.
  • One means of scrolling contents is to repetitively click on the appropriate part of the scroll control means 225. This may become tedious and the ghost Mouse means preferably includes an automatic scroll means 227.
  • the preferred embodiment activates the auto mode by clicking on AUTO 227 and disables it by re-clicking 227.
  • the text AUTO is preferably toggled to the word STOP once in the auto mode. It is preferable that clicking on any scroll conttol means 225 a,b,c,d,e will activate scrolling in the desired direction and this preferably continues until stopped.
  • Any means may be used to stop scrolling, with the preferred means including one at least of the following: • click on stop that disables auto feature. • click on centre 225f of circle 225e that temporarily stops scrolling (that is preferably reactivated by clicking 225 a,b,c,d or e). • click on 225 a,b,c,d and/or e that causes scrolling to occur in the new direction. It is preferable that there is a means to adjust the rate of scrolling. This is preferably implemented clicking conttol object 'F 226 to increase the speed of scrolling and control object 'S' 228 to reduce the rate of scrolling.
  • the Location control object means 230 preferably has similar controls as said scroll conttol object 225, however, they are preferably used to slide and/or move a screen(s) around and/or off (in part at least) the display area; and/or a window(s) and/or object(s) around a screen; and/or object(s) around a window(s). For example, clicking on object 230a may cause the controlled object to move to the right, 230b may cause it to move left, 230c may cause it to move up and/or 230d may cause it to move down. Choosing a point on the circle 230e may cause the controlled object to follow that vector.
  • the control objects 231, 232, 233 preferably have equivalent functions (as applied to Location functions) as do scroll conttol objects 226, 227, and 228 respectively.
  • the Size control object means 280 preferably has similar control functions as said scroll control object 225, however, they are preferably used to increase and/or decrease the size of screens and/or windows and/or objects.
  • a controlled object is preferably increased to the right by clicking on 280a and reduced from the right by clicking inside circle 280e adjacent to 280a.
  • a controlled object is preferably increased to the left by clicking on 280b and reduced from the left by clicking inside circle 280e adjacent to 280b.
  • a conttolled object is preferably increased to the top by clicking on 280c and reduced from the top by clicking inside circle 280e adjacent to 280c.
  • a controlled object is preferably in ⁇ eased to the bottom by clicking on 280d and reduced from the bottom by clicking inside circle 280e adjacent to 280d.
  • Conttol object 280g preferably expands to top and bottom equally, and 280h preferably reduces from top and bottom equally.
  • Control object 280i preferably expands to the right and left equally, and 280j preferably reduces from the right and left equally.
  • Other objects may expand equally in all directions, in part at least, and/or reduce in all directions, in part at least.
  • the conttol objects 281, 282, 283, preferably have equivalent functions (as applied to Location functions) as do scroll control objects 226, 227, and 228 respectively.
  • Determining the target of one at least of Scroll 225, Location 230, and/or Size 280 may use any means.
  • said display managers By clicking the Local 166 conttol object said display managers preferably apply to the object that the pointer 202 presently overlays.
  • said display managers By clicking the Active control object 167 said display managers preferably apply to the presently active object.
  • the display managers preferably act on the lowest active component. For example, if a screen has been activated and no objects and/or windows within said screen, then said display managers preferably act on said screen.
  • the ID of the active screen is preferably displayed in area 210. If a window(s) is activated within a screen then said display managers preferably act on said window(s).
  • the ID of the active Window is preferably displayed in area 170 and the ID of its host screen is preferably displayed in area 210. If another object type (eg an icon) is active within a screen, then said display managers preferably act on said object.
  • the ID of the active object is preferably displayed in area 171 together with the ID of its host screen in area 210. If an object within a window is presently active, the display managers preferably act on said object within.
  • the ID of said object within is preferably displayed within area 171, the ID of its host Window is preferably displayed within area 170 and the ID of the Windows host screen is preferably displayed within area 210.
  • the Default 165, control object preferably allows the user to store the ID of the Screen/Window/Object currently affected by said display managers by double clicking one at least mouse buttons.
  • the stored ID is preferably used to immediately program the display managers to act on the Screen/window/object coupled to the stored ID.
  • the Show Active 275, control object preferably displays the presently active object. This is preferably achieved by sliding all overlying higher priority screens and/or windows and/or objects away. This process is preferably reversed by re-clicking said Show Active 275 (that may have a different label to indicate its changed state).
  • the FIT control object 218 may be used to compress the objects comprising at least part of a window means such that they fit within said window area.
  • the compression preferably maintains perspective.
  • the degree of compression is preferably determined by the amount required to fit d e horizontal component within said window. This may be particularly applicable where there may only be a small amount of cropping on the horizontal axis compared a large amount on the vertical axis.
  • WWW World Wide Web
  • part of the page may not be visible and it is usually brought into view by scrolling.
  • a small amount of compression may fit the entire widtii of the page in the Window.
  • there may be many vertical rows to die page and compressing this into the window may result in unreadable text/images.
  • Hardware and software methods of compressing and magnifying images are known to die art.
  • Java and Dynamic HTML are allowing web page builders to construct formatted pages that retain the format across multiple display means and resolutions.
  • the FTT facility may be a useful adjunct, allowing said format pages to retain their spatial relationships while adapting to a plurality of Window sizes.
  • the transparent control object 221 preferably allows the user to adjust ttansparency of screens, windows and/or objects. This function is also available at a deeper menu level, preferably selected by double clicking the Active control object 167 and described under this function.
  • Wormholes When a display area has multiple screens and/or windows and/or objects, it may be difficult for the user to view plural information originating from a plurality of screens and/or windows and/or objects and/or from a plurality of locations within any one at least of said screens and/or windows and/or objects.
  • the prior art describes a method of splitting window so tiiat plural parts of a window may be viewed simultaneously and/or that enables part of plural windows to be viewed at once. This is a limited function tiiat only permits the windows to be split along a horizontal line that extends the width of the window. The function may only be applied to windows wi ⁇ iin die one application eg two Microsoft Word windows may be opened and split.
  • the present invention seeks to describe a means, referenced as Wormholes, that permit the user to create view ports to plural information that may be distticited across multiple applications and/or windows and/or objects and/or screens and/or operating systems.
  • the user may have a secure application executing and be able to cut a hole to view operations in a simultaneously executing program in a MOS environment.
  • the wormholes may be any shape and may extend through one at least layers of overlying screens and/or windows and/or objects. It is preferable that wormholes maybe dragged.
  • Figure 7. shows a display area 156 that may have two windows 151 and 152 (these may be screens and/or windows and/or any other objects).
  • wormhole 151 may be created, for example using d e Worm 219 control object on die GMM, on window 150. Although shown as a rectangle, it is preferable that this may be any shape.
  • Said wormhole is programmed to penetrate overlaying screens and/or windows and/or objects. It is preferable that die wormhole may be programmed to said penetrate to a preferably user determined number of overlaying means. This may be all overlaying means that would ensure the wormhole was always displayed and/or a subset of overlaying means, that may result in display of the wormhole being obstructed by one at least overlying means. It is preferable that die penetration of die wormhole to die front of the display area maybe on a ttansparency basis (eg.
  • wormhole pixels are mixed, in part at least, with information from some at least overlying pixels).
  • This is an example of 'push transparency' wherein an object that is buried, in part at least, behind other displayed means may push forward to be seen on a level determined by its 'push transparency index.
  • Push ttansparency 100% preferably equals wormholes fully visible and 0% preferably equals wormhole invisibility.
  • This is in contrast to usual ttansparency means, wherein the ttansparency of an overlaying object usually determines how much show dirough of underlying pixels is permitted. For die present example, it is assumed tiiat the wormhole is fully visible (eg push ttansparency of 100%).
  • window 152 may be moved to partially overlay window 150, however, wormhole 151 is displayed through window 152.
  • wormhole 151 moves with its host window 150. This is preferably subject to one at least options. It may be diat one at least other windows (not shown) may overlay window 150, however, tiiey may have a higher display priority than the wormhole 151, preventing it being displayed, in part at least.
  • wormhole 151 it is preferable tiiat there is an option to permit the wormhole to be moved independently of its host object.
  • display area 158 shows the windows 150 and 152 in the same location, however, the wormhole 151 has been dragged to a new co-ordinate in the display area. It may be that information displayed in wormhole 151 continues to be displayed in the original window 150 at location 151a when not covered by other objects.
  • Said wormhole 151 preferably may be moved to any user determined (and/or determined by any other means) location as required. It is preferable that there is an option to link or unlink the movement of a wormhole. In the unlinked mode (display area 160) the wormhole does not move in relationship to other objects.
  • the wormhole may be linked to another object eg window 152 and subsequently moves with said window 152, preferably maintaining its relationship to other objects within said 152.
  • the invention allows that a wormhole may be linked to another part of the means from which it originated. For example (not shown), the wormhole may be dragged to a new position within Window 150 and linked to this position. This maybe useful in a spreadsheet, for example, where sets of figures in plural locations may need to be examined concurrently.
  • the wormhole provides much greater flexibility than the cruder option of splitting the window(s) of a spreadsheet.
  • a wormhole may be established to view a plurality of spreadsheets and/or one at least other means, that may exist as separate applications and/or screens and/or windows and/or operating systems (that may includes secure operating systems).
  • the invention allows for a plurality of wormholes and diey may have different characteristics and apply to multiple means.
  • Active Object Selection and Priority Selection The reader is referred back to figure 6a. It is preferable that there is a means to modify active means and/or determine active means, and/or change the priority of screens and/or windows and/or objects and/or modify other attributes affecting control objects and/or controlled objects. The preferred method to do this is to double click the Active control object 167 and bring up a selection means as shown coupled to object 167 of figure 6a.
  • the selection means preferably highlights and/or otherwise identifies die characteristics pertaining to die presently active mean (eg screen(s) and/or window(s) and/or object(s), that may be collectively referenced as SMO's).
  • the user wishes to apply the display managers and/or any other means to act on a screen identified as S4. They would preferably click on screen selector 270 that preferably displays available screens, in part at least.
  • the user preferably clicks (eg LMB) die icon identified as screen S4 that preferably becomes die active screen.
  • the user may not know or be sure of the contents of one at least said SMO's.
  • non- limiting examples may include one at least of the following: •
  • the affected SMO in the present example e actual screen S4, may be shown, in part at least, when the pointer 201 overlays the icon S4. This option is preferably selected by conttol object Show 281. This would preferably apply whenever the pointer 201 overlays any of the selection means SO-Sn; and/or SOO-Son; and/or WO-Wn; and/or WOO-Won, until deselected, preferably by re-clicking said 281.
  • SMO eg Screen S4
  • it may be shown on a ttansparent basis (eg it preferably has a push transparency less than 100%).
  • This is preferably selected by conttol object 284.
  • the display of said screen S4 (and/or any other SMO) is preferably able to be faded up (at a rate preferably selected by said 284) and when it is no longer needed, it is preferably faded out at a rate also preferably selected by said 284.
  • a text and/or image label is coupled to the relevant icon eg S4. This option maybe selected by Label conttol means 282.
  • a notes means may be coupled to die relevant icon eg S4 that is compiled, in part at least, by die user. This may include the users own description of the contents and/or any comments. It is preferable that the notes means maybe edited by said user. This option is preferably selected by Notes control means 283.
  • a selection means 271a tiiat includes objects (preferably excluding windows tiiat preferably have a separate conttol means) within said screen, eg S4.
  • the user preferably overlays the desired object, eg S03 and clicks tiiis. If this is the end of die exercise they may close the selection means, preferably by clicking Close control object 276.
  • the user may wish to activate Window W2 within Screen SI.
  • they may click the Screen conttol 270 and select S 1. They preferably then click Window conttol object 272 to indicate the next step is access to a Window(s). They may then click on the W2 icon to select Window W2.
  • an object eg W04
  • tiiey preferably click Window Object Control 273 and then click icon W04.
  • the selection means coupled to said Active 167a preferably may be used to move objects and/or windows and/or screens and/or vary the display priorities of one at least SMO.
  • the selection means 270a may be used to vary the display priorities of one at least screens.
  • One method allows the use to place die pointer 201 over a screen icon, eg S2 and holding the RMB down, drag S2 to the desired location, for example, it may be dragged to location Sn wherein said S2 preferably becomes the topmost screen.
  • An alternative, non-limiting example, may be to click the move button, then select S2 and then click Sn to indicate where S2 is to be moved.
  • a similar process maybe applied to changing the display (and/or any other) priorities of screen objects SOO-SOn, and/or Windows WO-Wn, and/or Window Objects WO0-WO0 and/or any otiier means.
  • the mediod may also be adapted to move Window object(s) from at least one Window to another one at least Window and/or screen. For example, activate W04 using die preceding methods. Click the move icon 277 and for example click W0 to move die object to Window W0, and/or click Screen S2, for example, to move it to Screen S2 where it may become a screen object.
  • a similar process may be applied to one at least Windows WO-Wn and/or Screen Objects SOO-SOn.
  • the transparency control object 279 and/or push conttol object 278 may be used to adjust transparency of one at least active objects. For example, by activating Screen S4 and giving it a ttansparency of 50%, it preferably allows underlying screens (and/or other SMOs) to show through at 50%. The depth that this is permitted may also be limited. For example, it may be restricted to a depth of S2, for example, by clicking on S2 after selecting Transparency 279.
  • a similar process may be applied to the push control 278 that preferably determines the intensity and number of layers that S4 penetrates to the top of the display area. This process may be applied to any one at least SMO.
  • the worm control object 290 is preferably available to create wormholes and apply one at least attributes.
  • Wormholes preferably show in the selection means as WO and/or SO objects. They preferably include a means to show the depth of penetration (eg a dotted line linking wormhole to objects it penetrates.
  • the wormhole preferably has variable ttansparency. This may be determined by die Transparency 279/Push 278 means, for example.
  • the remove conttol object 297 preferably deletes a currently selected wormhole(s).
  • a new wormhole is preferably drawn on a selected object using die Draw control object 291. This may display one at least default shapes, eg circle 292, square 293.
  • Draw 291 preferably displays, one at least, means, eg similar to said 280, to enlarge, modify, etc the wormhole.
  • Control object 294 preferable enables the wormhole to be dragged and/or moved.
  • Control object 296 may allow the wormhole to be unlinked and control object 295 may link the wormhole to one at least SMO.
  • wormholes may be created by burrowing into displayed objects to unveil underlying means. This is preferably implemented using the Worm 219 control in the main body of the GMM 200.
  • the Transparency control object 208 preferably provides a means for the GMM to be varied in ttansparency relative to underlying means.
  • the Zoom conttol object 190 preferably allows the size of the GMM and/or objects within said GMM to be varied in size.
  • the embodiment described with reference to Figure 6 and 6a is to demonstrate non-limiting examples of functions that may be include in a GMM.
  • the invention allows that one at least custom control objects 298 may be provided.
  • the invention allows that a programming language may be developed to enable developers and/or end users to develop additional functions and/or utilize known functions.
  • the invention also allows that the means of the GMM may be applied, in part at least, to conttol means that are not part of a GMM.
  • the invention allows that custom GMM may be created to suit the requirements of one at least Screens and/or Windows and/or objects and/or applications. For example, a GMM to optimise a net browser means is described later that may include multiple scroll objects 225.
  • the invention allows that the images and/or other symbolic conttol means described for said ghost Mouse means may be implemented, in part at least, with physical means coupled to any hardware component of said display pointing means (for example, on the physical mouse), keyboard or any other physical device.
  • (C) Advertising Multimedia is expected to converge in terms of: • die means used to deliver it to users, and/or • the means used to meter its use and/or • the means used to bill for its use and/or • the hardware and software means that convert digital information to a usable format (eg. sound, images) and/or • the way that advertising is used to sponsor information consumption.
  • the term advertising preferably may be applied to any promotional material.
  • Said advertising may be static and/or dynamic and/or include moving images and/or include static images and/or be coupled to audio and/or text, as non- limiting examples.
  • the methods disclosed in this specification for presenting advertising, for example, the overlay of advertising over other displayed information preferably may be applied to the display of any other types of digital content and/or display means, for example, the overlay of a ghost mouse and/or net browser.
  • One non-limiting objective of the present invention is to describe a means of harmonizing die presentation of advertising content information with other content information. This is preferably achieved using a means, that in part at least, may be metered and/or otherwise regulated using secure processing coupled to a User Conttolled Data Processing System (UCDPS) and preferably may occur, in part at least, offline. Said advertising is preferably uncoupled, in part at least, from said Electronic Content Information and preferably may be applied to plural types of content. The invention allows for a plurality of advertising means.
  • UDPS User Conttolled Data Processing System
  • the decoupling of advertising from particular content preferably enables said advertising to subsidize information that, in part at least, may be determined by the consumer. Additionally, said decoupling preferably provides the consumer with the option of selecting how they want said advertising to interact and/or interfere with EIC.
  • the preferred method of decoupling is to locate die advertising area(s), in part at least, outside non-advertising information area(s) and/or decouple content and advertising with respect to time.
  • the system of advertising described by the present invention preferably provides die option for the user to determine whedier they want advertising sponsorship, in part at least.
  • Said advertising preferably may be used across various types of information content (eg it is preferably not limited to web pages).
  • the consumer is preferably provided the option of not displaying advertising material.
  • the consumer is preferably able to determine (preferably dynamically) whether or not they want the display of advertising material. If consumers decline the use of advertising the use electronic content information is preferably metered and the user billed using any of the methods described in said specifications incorporated by reference, and/or means described in this specification. If the advertisers are paying, EIC use and Electtonic Advertising Content use are preferably both metered and used, in part at least to determine how much the advertiser may be billed for content use by consumers (and/or for any other reason).
  • the preferred means for the consumer to select advertising preferences is via the Secure control object 301, on the ghost Mouse Means.
  • This preferably displays a menu (eg using the overlay means of the present invention) that provides an Advertising Menu.
  • This preferably provides the user with a plurality of options.
  • One at least said options preferably allows the user to inactivate advertising and/or specify on what conditions it may be used.
  • Said advertising menu preferably permits the consumer(s) to enter a profile about diemselves that may be used, in part at least, to determine the type of advertising and/or conditions attached to said advertising that may apply to said consumer(s).
  • a non-limiting objective of die present invention is to describe one at least means to electronically display advertising information in one or multiple areas on a UCDPS display area.
  • Said means are preferably operable offline and or online, in part at least.
  • Said means are preferably secure, in part at least.
  • Non-limiting functions of said advertising means may include, one at least, of the following, in part at least: 1) Priority Advertising Means ensures that advertising material supplied to the consumer, preferably in a tamperproof software container (for example using the PSO described in said WO 97/25675 by Griffits and/or the secure software container described in said WO 96/27155 by Shear et al,), is displayed using a means that preferably is not practical to bypass: ⁇ » by the user and/or • one at least unauthorised software and/or hardware means, said unauthorised software means may include: • one at least operating systems (for example one at least Microsoft Operating Systems); and/or • one at least application programs; • by any otiier means.
  • Priority Advertising Means ensures that advertising material supplied to the consumer, preferably in a tamperproof software container (for example using the PSO described in said WO 97/25675 by Griffits and/or the secure software container described in said WO 96/27155 by Shear et al,),
  • Said advertising preferably may be delivered witii (and/or be part of) non-advertising digital content and/or separate to said otiier non-advertising digital content.
  • Said Priority Advertising Means is preferably conttolled, in part at least, by means that are not part of the normal operating environment (although it may be), for example by an alternate operating system and/or processing means.
  • Said alternate processing and/or operating system means is preferably secure, in part at least.
  • One non-limiting means of implementing said security may use the secure processing device and/or secure operating system and/or secure rights management means of said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al.
  • PAM Priority Advertising Means
  • Said Priority Advertising Means (PAM) implemented, in part at least, with secure processes may also be referenced as a Secure Priority Advertising Means (SPAM) in this specification.
  • PAM/SPAM One objective of said PAM/SPAM is to provide a means to place advertising in position(s) that preferably ensures the material is not obscured, in part at least, by other images (that may include otiier advertising). For example, if the consumer has agreed (implicitly or otherwise) to view advertising in exchange, in part at least, for subsidized (in part at least) access to Digital Content Information, it is reasonable that means are used to ensure that the advertising is displayed. It is preferable that said displayed is not overlaid by other material.
  • Said priority is preferably obtained by one at least of the following: • overlaying advertising, in part at least, over a first group of image means (eg. graphics, text), however, the invention allows that a second group of image means may overlay said priority advertising, in part at least. • ii) using excess display area to display advertising, in part at least, for example, one non- limiting means may include confining the windows environment to an area (x-a) pixels wide and (y-b) pixels high, (where said 'a' is preferably greater or equal than 0 and less than x, and where said 'b' is preferably greater or equal than 0 and less than y) and displaying advertising, in part at least, within the residual area (eg.
  • the invention allows that the width and height parameters may be reversed.
  • the user preferably can move the location of said screen control means. Said moved may include coupling to die position of a mouse pointer means, maintaining a constant and/or variable relationship to a mouse pointer means.
  • Said screen controls are preferably variable in the level of their transparency relative to information that they may overlay.
  • the protection of advertising material against tampering may be achieved, in part at least, by writing it to display memory buffers, preferably using secure means, and said buffers are preferably inaccessible by unauthorised processes.
  • Said inaccessible preferably applies to both write and read processes.
  • Said PAM/SPAM provides a means that may be used to ensure advertising is presented in a prominent position, however, the advertising may not be seen and/or interacted with. For example, if the advertising is presented in a format similar to that used with television commercials, wherein the program material is temporarily replaced widi advertising material, the consumer may leave the room, switch to an alternate information source etc. If the advertising is displayed concurrently to other useful information it is presumed tiiat some advertising benefit may be obtained. However, the consumer may not take any notice and/or interacts in any other way with the advertising.
  • the ability to preferentially display information on the display means of a UCDPS may provide a very powerful marketing tool. For example advertising presented during system booting, as part of screen savers and/or as part of display based conttol means (eg. ghost mouse) is likely to provide much greater exposure to users than many alternative means. Furthermore it may be displayed in a manner that ensures its presentation (if the display means is not blanked, switched off or otherwise limited in function). In contrast, for example, an ad witiiin a www page usually needs to be selected by the user from millions of alternatives and it is susceptible to bypassing (eg extraction).
  • ad witiiin a www page usually needs to be selected by the user from millions of alternatives and it is susceptible to bypassing (eg extraction).
  • the display of advertising on a UCDPS that is beyond the control of the user to disable and/or modify may sufficiently antagonize said user that they deliberately avoid the products advertised and/or coupled DCI.
  • One option is to permit the user to decline the display of advertising and the disablement is preferably available on a temporary basis. Said temporary is preferably any user-determined basis. The invention allows that during said disablement period the user may be charged for the use of Electronic Content Information.
  • An alternative and/or conjunctive option is to provide incentives to die user in exchange for presentation of advertising. This may include the incentive of free and/or subsidised Digital Content Information, however, it preferably includes more explicit incentives, for example, prizes and/or cash rewards and/or discount coupons.
  • one at least advertising area(s) may be moved to different regions of the display by the user, preferably to locations that suit the user.
  • the advertising movement in part at least, is preferably by a mouse (or functionally equivalent) pointer means and/or by a ghost mouse means (as described elsewhere in this specification).
  • One non-limiting means to achieve this is to have die ad(s) as part of an overlay means as previously described, for example, the advertising may have its own screen that may be moved using previously described screen controls .
  • said advertising area(s) has a variable level of transparency means.
  • Said ttansparency preferably may be adjusted from 0% (ie. no objects visible behind) to 100% (ie. no advertising area visible).
  • Said transparency is preferably adjustable by the user.
  • the transparency adjustment in part at least, is preferably by a mouse pointer means and/or said ghost mouse means.
  • the advertising area(s) preferably can be increased in intensity from not visible and/or partly visible, to more visible and/or fully visible. The reverse process preferably also applies.
  • Advertising Scrolling Means It is preferable that said advertising areas may have contents tiiat may be scrolled within said area(s), preferably in any direction, and preferably under user control. Said scrolling may display hidden parts of a currently displayed ad and/or may display one at least other advertisements. Said ASM may include and/or be coupled to (that may include a ghost mouse) control means to scroll said advertising (and/or one at least other functions).
  • AASM Advertising Area Size Means
  • areas used for advertising may be varied in size, preferably under user conttol, in part at least. It is preferable that said area may be replaced, in part at least, by any representative means, eg an icon, that when clicked restores the advertising area, in part at least. Said restore may be to any size, for example, to a predetermined default and/or the size it was prior to replacement by said icon.
  • the GMM previously described is readily adapted to provide this function.
  • Incentive Advertising Means The majority of advertising may be considered to be incentive based, however, said incentive may not be explicit. For example, television commercials are usually underwriting the cost of 'free to air' television program material, however, the viewer may not appreciate this. If the user was actually charged to view program material and offered the option of having said charges offset, in part at least, in exchange for viewing commercials the incentive is likely to be more explicit.
  • Incentive Advertising One method of encouraging users to view Electtonic Advertising Information (EAI) may be to provide various incentives. One of these may be to underwrite the cost of providing ECI. Another may be to award discount coupons, prizes etc. Another alternative may be to pay consumers to view advertising material. These may be effective methods, however, they may also be manipulated by consumers and/or others. For example, suppose consumers have access to a means that rewards the consumer (eg, cash, coupons for use against purchase, discount coupons, pays ECI usage fees) in exchange for viewing advertising. This is referenced as Incentive Advertising.
  • EAI Electtonic Advertising Information
  • EAI Electronic Advertising Display Means
  • non-limiting example may include: • web browser(s), • overlay program(s) of a browser(s) to provide and/or enhance advertising display functions, and/or • advertising display program(s) that are independent, in part at least, to said browser(s).
  • PAM Priority Advertising Means
  • Said PAM is preferably reserved, in part at least, for one at least advertisers who agree to sponsor, in part at least, one at least consumer's information usage for a period of time eg, a year.
  • Said advertisers are preferably coupled to a program that provides additional benefits to consumers who actually purchase their goods and/or services from the sponsors.
  • the sponsors may be referenced as Primary Priority Advertising Sponsors (PPAS) in this specification.
  • PPAS may operate on die basis that advertising may be presented frequently enough that it may eventually impact on the user. For example, 30 (it may be any number) sponsors may be sold PAM (and/or other advertising means) on 1 million (it may be any number) UCDPS, for a period of one year (it may be any period).
  • Each sponsor preferably advertises goods and/or services that are not competing with other sponsors. For example, there may be an airline, bank, cola drink, games vendor, telephone carrier, etc. These may be major brands, in part at least.
  • Various local (eg. doctors, chemists, plumbers, restaurants) and/or regional and/or national businesses may be sponsors.
  • Each sponsor preferably may determine die number of consumers they wish to sponsor. For example the Intergalactic Space Food and Drink Company may wish to promote its highly efficacious cola to the planet (and beyond!), whereas the local restaurant may only be interested in consumers living in the western suburbs of Brisbane, Austtalia.
  • Each sponsor preferably pays $1.25 (it may be any amount and may vary from one sponsor to another) per year for the PAM access.
  • PPAS payments may be pro-rated against ECI usage, for example sponsors may pay 50% (it may be any amount) of usage charges until they meet their agreed amount.
  • Said payments are preferably directed, in part at least, to the information provider (eg producer, and/or distributor, and/or dealer, and/or service provider as non-limiting examples). Said payments may be available, in part at least, as cash and/or other direct benefit(s) to the consumer.
  • the preferred method of providing consumers cash and/or other benefits is by the use of competitions, preferably offered at random intervals. For example, if the consumer is actively displaying advertising, in addition to covering ECI usage, in part at least, they may be provided an opportunity to participate in a game of chance.
  • the Secure Processing Means described in this specification provide an online and offline means of providing competition, including those involving an element of chance.
  • the preferred method of ensuring that PAM is displayed to the consumer preferably uses a Secure Processing Means that may write to secure display memory. This preferably use the overlay means described in this specification that preferably displays advertising where it is likely to be seen if the consumer is watching the display area.
  • the advertising information is preferably delivered in tamperproof software containers (eg PSO of said WO 97/25675 by Griffits).
  • Said PAM may be SPAM and may include one at least of the advertising and/or other means described in this specification and/or incorporated by reference.
  • HAM Interactive Incentive Advertising Means.
  • Other advertisers may require confirmation that a consumer has interacted with the EAI in some manner to verify that they may have given it some attention and/or that it was actually visible in their display area. For example the user may be required to answer one at least questions pertaining to displayed information.
  • the present invention describes a means where the process of verifying consumer interaction with advertising material may be automated for the user, in part at least. Said automated may occur even if the advertising is not displayed and/or is overwritten by other information.
  • the user may cache incoming Incentive Advertising (eg. using a utility program). Said cache may remember the user's response to Incentive Advertising when first shown.
  • new Incentive Advertising is supplied (eg. from the Internet and/or retrieved from its own local storage means coupled to a UCDPS) it may be compared with said cached.
  • a means eg the utility program
  • Remote Auto Incentive Advertising Processing Means A bigger problem may present if multiple users and/or agents use a network means (eg. the Internet) to extend the cache comparing means described in said LAIAPM.
  • a network means eg. the Internet
  • a plurality of users may transmit ads received from said servers and their responses to interactive parts of the advertisement, to one at least common cache 650.
  • a user when a user receives an ad from said ad server it may be redirected to one at least common cache 650.
  • the information may be compared with other cached information. If a hit occurs said cache may check the correct response and forward this to the user and/or directly to said ad server and/or any other means to enable the user to receive a credit for accessing the advertisement.
  • the user may be charged a commission. If the information is not cached the user is preferably informed and preferably manually responds to the advertisement. Their response may be sent to ad servers (and/or any other receiving means) and is preferably supplied to die common cache 650 to be available by other users and/or die same user at a later time.
  • an ad analysis means 659 that may be one at least persons reading and/or responding to Incentive Advertisements, may be coupled directly (eg in the same premises) and/or indirectly (eg via the Internet) to said common cache 650.
  • the invention may also be implemented with 659 and without common cache 650.
  • This process may enable a consumer to have one at least incentive accounts (that may be local and/or remote to their UCDPS) to be credited without viewing some at least of the Incentive Advertising.
  • the incentive may be a coupon (eg. providing a discount against purchase)
  • these may be remotely categorized and preferably stored on said UCDPS. For example, when a consumer wishes to purchase a new widget they may reference all coupons dealing with widgets. They may find the best offer.
  • a utility software program may, access, preferably using a utility software program, local and/or remote price structures to determine the net price after coupons. For example, one supplier may provide a discount of $20 off the price of widgets. A second supplier may only discount $10, however, their base price may be $20 cheaper. Said second supplier may actually be cheaper. Said utility program (that may be acting as a software agent) may also access (eg. gatecrasher classifieds) one at least suppliers who do not provide coupons (and/or have not provided said consumer a coupon) to see if they are a cheaper source. This entire process may occur in a few seconds and be ttansparent to the user. It is also likely to destroy the underlying basis of the coupon system. Fundamentally, existing marketing methods rely on the difficulties of effective price comparison using manual means. Electronics may make this a precise science.
  • the secure overlay means described in this specification may be used to ensure that the incentive advertising is delivered in a secure software container, that is unwrapped in a secure processing environment and displayed in secure graphics memory.
  • Each container is preferably unique, preventing the user comparing it with other information automatically.
  • the user is preferably prevented form reading the image/text information in digital format, thus preventing the transfer of this information to third parties. If the user wishes to avail themselves of the benefits of incentive advertising, they will need to personally view the material (or have someone else at their UCDPS do it!). Note: in this specification, user(s) and consumers) may be used interchangeably.
  • the preferred method of electronic advertising is to couple an alternate processing means to one at least UCDPS.
  • Said alternate processing means preferably includes a Secure Advertising Means (or SAM)
  • SAM may be implemented using logically secure processes within a UCDPS, however, it is preferable that said software processes, in part at least, occur within a logically and physically secure device.
  • SAM Secure Advertising Means
  • the secure processing devices described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al may be adapted by those experienced in the art to implement said SAM.
  • Said secure advertising means preferably generates and displays advertising material using means that are preferably not accessible to: • the user, and/or • any application program, preferably other than authorised advertising and/or other authorised programs; and/or • operating systems, preferably other than authorised operating systems.
  • a PC may be operating with a Microsoft Operating System, however, said operating system, in part at least, is preferably unable to read and/or write and/or modify and/or interfere with the display of advertising that has been generated, in part at least, by said SAM.
  • Ad server 310 is shown. This is preferably a software function executed by the secure processing means 5 (a non-secure processor may be used). Said secure processor is preferably logically and/or physically secure. The combination of secure processor 5 and ad server 310 may be referenced as a secure advertising means (SAM). Said SAM preferably manages the display of advertising material 313 and preferably uses a secure overlay mode to place it on die display area 311, preferably overlaying content information 312. SAM may interact in any way with the GMM to manipulate advertising material. It may also display a value to the user for displaying advertising and/or a cost to the user if they do not, as non-limiting examples.
  • SAM secure advertising means
  • the display of advertising is preferably not linked to the display of content information 312, in part at least.
  • SAM may obtain advertising material by any means, non-limiting examples may include: • 316 Physical media, eg CD, DVD; and/or • 317 Internet (eg. it may extract ads from WWW pages and/or access one at least ad servers); and/or • 318 Broadcast; and/or » 319 via the Public Switched Telephone Network (PSTN), for example, it may call a toll-free number, and/or • 325 one at least networks.
  • Advertising is preferably cached on one at least mass storage means 315, for example, hard disk, CD ROM, DVD.
  • SAM preferably has access to one at least User Profiles 340. These are preferably securely stored on the UCDPS and not released externally. It may include a flag 341 indicating one at least users does not want advertising and/or the conditions attached to one at least users accepting advertising. Said user profile may be completed, in part at least, by the user and/or on the basis of user access to various locations, eg websites. Said user profile may include any demographic details, personal and/or business preferences etc. It is preferable that the advertising material is coded to enable said user profile to be used to identify appropriate material. This method allows advertisers to better target consumers. SAM may send a software agent to locate relevant advertising material.
  • said SAM and/or any other means also collects information that is not relevant to the user and preferably not shown to the user, in part at least. This approach may confuse parties compiling accurate profiles on the users. It is this inventors belief that advertisers should be able to better target advertising and that this may also be beneficial to users. It may not be beneficial for users to have their profiles open to the marketplace, regardless of the statements made by third parties as to privacy.
  • the secure processing means of the present specification and those inco ⁇ orated by reference provide for the secure metering of information use, including advertising use.
  • a secure service provider preferably collates metered advertising usage.
  • the advertiser is preferably provides gross billings and sufficient statistical information for commercial purposes, without being given access to individual usage.
  • the metering and reporting means described in the specifications incorporated by reference are readily adaptable by those experienced in the art to metering and/or reporting and/or controlling of advertising usage.
  • the password means that provides access to die UCDPS (that is preferably a secure password means coupled to said secure processing means 5) is linked to SAM.
  • One non-limiting reason may be to enable SAM to select the user profile that matches the present user.
  • advertising material 320 is provided in a format that includes content 321 and control information 322 about its usage and/or pointers 324 to said conttol information. It is preferable that said control information 322 and/or pointers 324 are securely coupled, preferably by encryption. It is preferable that part at least of the advertising content 321 and/or control information 322 and/or pointers 324 are within a secure software container, that is preferably protected by encryption.
  • Non-limiting examples of said conttol information may include one at least of die following: • 330 Validity of the advertising material, for example an advertisement may only be current for a certain period. • 331 how many times the ad may be showed to a user and/or the pattern of showing. • 332 the age group the advertising is directed to.
  • PSO Protected Software Object
  • the disclosed specifications incorporated by reference describe PSOs and/or digital containers that are similar to the structure required to implement an advertising Protected Software Object (PSO).
  • PSO Protected Software Object
  • the invention allows that advertising PSO(s) may include advertising content for a plurality of advertisements and/or a plurality of control means.
  • a means is provided to encourage users to view advertising material.
  • the benefits of having EIC usage paid for may be one said means to encourage users. It is preferable that there are additional incentives.
  • the user may be paid to view advertising.
  • the secure means of the specifications incorporated by reference describe means for secure electronic commerce. This may be readily adapted to pay electronic funds to the consumer. For example it may be possible to securely meter usage and securely reward the consumer offline.
  • the invention allows for any online involvement.
  • the invention particularly allows for secure advertising means that are coupled, in part at least, to secure processing and/or secure operating and/or secure rights management means. Many consumers also like games of chance. It is preferable that this may be used as a means of encouraging user interaction witii advertising.
  • the provision of: • secure processing, and/or » secure transfer of software objects, and/or • secure electronic fund means, and/or • the flexible display means of the present invention provides the tools for those experienced in the art of electtonic games of chance to implement one at least secure games of chance, that preferably may run offline, in part at least. Those experienced in the art may adapt present Internet casino games, for example, to replace the online metering with a secure offline means.
  • the invention also allows for the use of games of chance that depend on an online connection, in part at least. It is preferable when games of chance are used as promotional tools that participation is free to users. Users preferably may win prizes and/or product discounts and/or cash and/or coupons and/or any otiier reward.
  • the process described for integrating games of chance with advertising and other forms of promotion may be readily adapted to an offline, in part at least, casino means, preferably providing a plurality of gaming services. Any means may be used to integrated advertising into games of chance. For example, the user may be required to view advertising prior to the game being commenced and/or prior to collecting prizes. Advertising may be incorporated into the game. Advertising may be shown concurrently to the game being played.
  • the invention allows that the user may be exposed, in part at least, to advertising when offered the opportunity to play a game of chance (this may also be based on a random event and/or other element of chance).
  • a casino PSO 360 is shown in figure 9. This may be a complete casino package that is supplied encrypted, in part at least. This preferably includes and/or securely points to, information on the conditions of use and/or rules of said casino.
  • the awarding of prizes (that may include cash) to consumers may include the updating of electronic credits coupled directly (eg within a secure processing means) and/or indirectly (eg a smart card) to a UCDPS. It may include the transfer of electtonic funds means via the Internet, in part at least.
  • the secure processing means may also generate a code(s) that may be used in exchange for rewards (that may preferably be any type of reward).
  • the means used for awarding prizes may also be used, in part at least, to provide consumers with coupons (that may be for any reason and may include reasons that are independent of games of chance) that may be used in exchange for goods and services, in part at least.
  • Said code(s) may be printed on a physical media (eg paper) and/or transferred to a portable secure means (eg smart card, smart watch) as non-limiting examples.
  • Said code is preferably a one off code that uniquely identifies the source of the code (eg the secure processing means), the prize, the date, and the consumer ID as non-limiting examples.
  • Prior art that issue coupons via the Internet may need to store a database of coupons detailing who they have been issued to.
  • the means of the present invention for awarding coupons and/or prizes does not require such a record.
  • the secure processing means may create said awards/coupons using predetermined and secret processes and preferably may do this offline, in part at least.
  • the code preferably may be regenerated by another secure processing means to confirm the validity of the coupon and/or award.
  • the award/coupon redemption means may communicate with an authorised service provider witii knowledge of the trusted means in said secure processing means 5 (or any other secure means) and/or said redemption means may have a secure means to perform validation.
  • a database may be required of used coupons and/or awards to prevent reuse where prohibited.
  • said portable secure means may erase the code, providing for an electtonic coupon method that is independent of remote database means to track used and/or expired awards/coupons.
  • advertising material may be shown in the display area, in part at least. This may use any of the means described for advertising in this specification.
  • the information on display prior to the advertising material being displayed is preferably redisplayed, in part at least, if said UCDPS is reactivated (eg by mouse movement, key depression as non-limiting examples). If said reactivation is greater and/or equal to said predetermined period, it is preferable that said advertising and or other images remain on the display area until a password is entered. This may be used as a security means. Secure Mass Storage Means.
  • the means described for the secure processing means 5, to intercept I/O calls may also be adapted to intercept, in part at least, calls by die system operating means to one at least mass storage means, for example, a hard disk.
  • the secure processing means (and/or any one at least other alternate processing means) may partition one at least mass storage means, using any method, wherein, one at least said partitions may not be apparent to the system operating means and partitions that are apparent to said system operating means may be logically partitioned, in part at least, as determined by said operating system, however, their physical partitioning may vary, in part at least.
  • the secure processing means may apply password protection to one at least system partitions and/or files in said partitions. Said password means may be ttansparent to said system operating means.
  • the invention allows for any pre-processing by said secure processing means 5 of information transferred by die system operating system to said mass storage means and/or the reverse process.
  • the secure processing means is preferably able to encrypt/decrypt files and/or any other information, stored to and/or retrieved form said mass storage means. This is preferably transparent to said system operating means.
  • the secure processing means described for trusted systems may be adapted to portable secure means, for example, smart watches, smart cards.
  • portable secure processing means for example, smart watches, smart cards.
  • PSPM portable secure processing means
  • One potential problem with the known art of said portable secure processing means is tiiat when the owner of said PSPM is required to key information into any input means provided by another party, there is a possibility that the keyed information may be intercepted and/or saved for future unautiiorised use. For example, the PIN number may be obtained.
  • the user's input data may also be modified for any reason, for example, to debit smart cards with more funds than the user intends.
  • One solution may be to integrate a display means and/or keyboard means into said PSPM.
  • a Personal Security Unit may be provided, that interfaces directly, in part at least, with said PSPM that provides the input and/or output means, in part at least.
  • die PST is the property of the user and as it directly transfers, in part at least, input directly to the PSPM and/or any external processing (preferably secure) means, die user of their PSPM may be confident that clear code versions of their PIN have been entered directly into their PSPM and any part of the PIN that may be required by external processing means may be transferred, in part at least, in encrypted format.
  • the generation of the encrypted PIN is preferably performed by said PSPM. Part of the generation of the encrypted PIN may be performed by said PST, however, it is preferred that said PST remain a low cost, minimal device that is not dependent on integrated security.
  • Other information input by the user of the PST is preferably processed by the PSPM, especially financial amounts. In this way no usable information may be accessed between PST/PSPM and any external secure means (eg smart card reader in the store) .
  • Information that is displayed pertaining to the cost of a transaction or similar is preferably received by said PSPM, processed and the amount to be charged output to said PST to enable the user to verify the amount.
  • the invention allows that communications between PSPM and PST and/or an external secure processing means (eg store terminal) may be audio and/or electrical and/or optical and/or infrared and/or radio/microwave.
  • An external secure processing means eg store terminal
  • the preferred embodiment of a PST is a form factor and transfer means equivalent to the PSPM (to couple with an external secure processing means), with suitable connections for the PSPM protruding from said PST when the PST requires direct connection.
  • a PSPM 402 includes a coupling means 401 (in tiiis example a connector). This may couple directly to an external secure processor eg a store smart card reader 409 using socket 408. It is preferably coupled to said 409 via PST 404. It may couple to said PST 404 using connector 403. Said PST may couple to said 409 using connector 407 and socket 409.
  • the PST preferably includes a display 405 and keypad 406. When a password is first entered at keyboard 406 it may be passed to PSPM 402 for processing via interface means 401/403. PSPM may be activated if the password is valid. This may be indicated to the user by sending a message to display 405.
  • Terminal 409 may send the amount of the transaction to PSPM 402 (passing through PST 404).
  • PSPM preferably decodes this information and sends the amount in clear text to display 405.
  • the user preferably confirms/denies the amount using keyboard means 406. If valid PSPM 402 preferably generates a validation code and sends it to terminal 409.
  • the invention also allows for any means that allows one or multiple partitions of secure memory to be accessed by one or multiple secure processing means, such that there is no practical way for programs witiiin one partition to alter and or threaten the security of other functions - deliberately or otherwise, unless otherwise determined eg, secure system functions.
  • Security is maintained in part at least, by allocating an area of system resources tiiat are known to have secure routines that may allocate various user resources without compromising system memory security and user security.
  • the invention allows for any means to do this.
  • any means is allowed for to maintain security when program execution is transferred from unsecure locations to secure locations. Ensuring secure processing begins at known routines enables software processes to further control (in part at least) system security. A similar process also enables processing to return from a secure user function to secure system functions.
  • the preferred method checks the processor address bus, ensuring diat the initial access to secure memory is an instruction fetch to intended address locations - ensuring known outcomes in subsequent processing. Any method/apparatus may be used, with one means described with reference to Figure 11.
  • Comparator 100 examines the address bus of the secure processor 101 and compares it to one or multiple predetermined address locations 102 (these may in part or whole, be programmable locations - security is preferably maintained by only activating address decoding to these programmable registers when the secure system resources are active) and the instruction signal line 103 is examined to ensure this is an instruction fetch.
  • a valid outcome activates all the secure memory, allowing system resources to access any user partition.
  • the invention allows that part at least of one or multiple user partitions may not be enabled (access to these may be gained using a similar process used to activate the secure system partition and/or any other method).
  • security While software objects are executing from within secure system resources, security may be maintained in part or whole by software processes.
  • the decoding by 110 allows that the partitons allocated to system and or user resources may be varied in size, in part or whole, preferably by writeable registers that can only be decoded when access to secure system memory is activated.
  • the disable line 111 inactivates decode logic.
  • the invention allows for any method to do this, with the preferred one being to decode the disable signal into the secure system address space and delay its activation until another instruction has been fetched from secure system memory - usually an instruction redirecting processing to unsecure functions.
  • the invention allows for any means to do this.
  • the preferred embodiment has secure system routines program secure decode logic with register bounds defining a user partition prior to transferring processing to said user partition. Once processing is transferred to these locations other secure area are usually prevented from being decoded until processing returns to known system resources. Delayed activation of the user decoding for one (or as otherwise determined) instruction cycle allows an instruction to be fetched from system resources directing processing to a secure user partition.
  • the invention allows for any means to prevent processing being trapped in a user partition (usually secondary to a software error) and in particular any means dependent on the timeout (and/or equivalent) of one or multiple timers and/or software routines.
  • the preferred method is to use a watchdog timer (that may have a programmable timeout).
  • a similar mechanism may be used to allocate a particular time slice to a user partition prior to returning processing to secure system resources (and/or elsewhere).
  • the invention allows that the timer may automatically timeout when triggered by any one or more exception (eg interrupts, reset etc). Timeout may be zero and/or any other predetermined value.
  • the timeout process usually returns processing to secure system resources - this may use any means.
  • the preferred means does not interrupt the secure processing means, however, it redirects processing to secure system memory by multiplexing the address output by the next instruction seek, redirecting the instruction fetch to secure system locations.
  • the decode logic for secure system resources is also reactivated.
  • the address of the instruction originally intended for fetching by the processing means is saved in a storage means to enable a return to this instruction later.
  • Other relevant parameters eg. condition codes, stack pointers, may be saved using secure system routines.

Abstract

A user controlled data processing system is provided with a secure processing means (5) which has the ability to over ride the control of the system hardware by the resident operating system. Advertising display data (116) can be securely inserted into the display area (114) of the data processing system. Secure processing means (5) also has the ability to take over control of input devices (110-113) thereby ensuring that the user will interact with the displayed advertising data (116). Graphic user interface (GUI) methods utilizing this system are also described.

Description

Title SECURELY METERING ADVERΗSING IN DATA PROCESSING SYSTEMS
Definitions.
1) Electronic Content Information (ECI) may include the following non-inclusive examples: o computer programs (eg. operating systems, components of operating system, computer games); and/or o image information (eg video, movies, electronic books, works of art); and/or » audio (eg music); and/or ° databases; and/or o Internet web pages; and/or β advertising. It may include any software objects described in said WO 97/25675 and/or any digital content information described in said WO 96/27155 and/or the present specification. Any ECI may be a software object, in part at least.
2) Display Means. The display means may include the actual device to output images eg. video monitor, TV CRT, LCD, light emitting plastic, plasma displays as non-limiting examples. The display area is the region on the output of said display means that is available for visible image output (eg the visible display area of a television screen). The graphics buffer usually refers to one at least memory regions coupled to a UCDPS that store images in digital format that are usually subsequently converted to a means to drive said display means (eg. an analogue signal to drive said video monitor).
3) Screen Means is usually the largest logical subset for arranging displayed elements. It may be the only set for arranging elements, for example, the usual case with a Windows 95 environment. The display area and the screen may be the same if there is only one screen. The screen means may contain only one window and said window contents. The screen means usually includes one at least, of one or more of the following objects, as non-limiting examples: windows, and/or icons and/or text and/or moving images and/or sound objects and/or static images and/or menu means and/or pop-up means and/or tool bars and/or background, and/or control means. Screen contents are collectively referenced as a Screen Object Set (SOS) in this specification. Said screen object set usually moves as one (if an option) when the screen is moved (for example, the prior art Amiga computer allowed for multiple screens that could be moved vertically relatively to one another). The present invention describes a method to move one at least screen in any direction. Said screen object set may have the same color palette, however, different screens may have different palettes. Said screen object set is usually confined to the area of said screen. Objects within said screen may have different display priorities eg. one may overlay another and or be transparent or transparent to another, however, an overlying screen will usually obscure an underlying screen, unless said overlying screen has a transparent (in part at least) background. Objects on an overlying screen will usually obstruct objects on an underlying screen unless said overlaying screen background and one at least other members of its screen object set is transparent (in pan at least). The present invention allows that the display priorities of one at least screens may be altered to bring it forward or backward relative to one at least other screens. The present invention also allows that said altered may be achieved by varying the transparency of at least one screen relative to another, giving the appearance of one screen (usually the one moving forward in priority) gradually materializing from one at least others and/or the reverse process. Operations on said screen (eg movement, priority, palettes) may be by controls coupled to said screen and/or other screens, however, the preferred means uses a control structure that may be used across multiple screens and/or screen objects, for example the ghost mouse described in this specification.
4) Window means. The concept of a window on a computer display means is known to the art. It may be re-sizeable and may be coupled to one at least control means (eg, scroll means, menu means). Said window may have one at least of the control means and/or objects described for screens. Said objects are usually confined to the boundaries of said windows. Said window may have any function known to the present art of windows.
5) Bounding Perimeter. In the present specification, screens and/or windows and/or objects that may be displayed, in part at least, on a UCDPS display area may be defined by a bounding perimeter. The perimeter may be imaginary. A perimeter defining the area for the display of overlay advertising is one non-limiting example. It preferably may have any shape and/or area and/or color and/or any other characteristics. It is preferably rectangular or circular or elliptical. On a display means with a total visible display area of x pixels wide and y pixels high, said perimeter preferably fit into a rectangular bounding area with two parallel sides each of length 1 to x pixels and another two parallel sides each of length 1 to y pixels . Said sides limited by the number of x pixels may be greater than x pixels and may be moved into and/or taken from view by a scrolling means. Said sides limited by the number of y pixels may be greater than y pixels and may brought into and/or taken from view by a scrolling means. Said perimeter may be defined by a border (in part at least) that may any thickness less than or equal to x and/or y. Said perimeter may include multiple objects . There may be multiple bounding areas and each may include one at least objects. Within any particular bounding perimeter, one at least objects may have priority over one at least others .
6) The term 'they' where the context applies to person(s) may be interpreted as representing one at least males and/or females.
7) Intel CPU. The use of the term Intel CPU in this specification may be understood as referencing any Intel 80XXX CPU (eg 80486, Pentium, Pentium π and/or extended and/or future members of this family) and/or functionally equivalent, in part at least, clones (eg AMD, National Semiconductors).
8) The term Microsoft Operating System (MOS) may include any one at least Microsoft Corporation Windows operating systems and/or future versions. Non-limiting examples may include Windows 3.x™, Windows 95™, Windows 98 ™, Windows NT™ that are registered trademarks of Microsoft Corporation. It may also apply to Microsoft's Disk Operating System (MSDOS). 9) The use of the term periodic need not mean a regular period.
End of Definitions.
Background and Summary of the Invention Technology is rapidly resulting in a convergence of multiple types of electronic devices. Instead of a separate 'TV' or 'Audio System' or 'Personal Computer' or 'Video Recorder' or 'Telephone' or 'FAX', as non-limiting examples, these electronic devices are likely to be integrated, in part at least. The present User Controlled Data Processing System (eg personal computer, set top box, net computer, game machine, palm computer) may evolve into one at least Versatile Multimedia Processing System (VMPS) that preferably provides consumers with access to all electronic media.
Electronic Content Information (ECI) and/or electronic advertising and/or electronic devices are not presently harmonized to maximise the benefits of their potential integration, for example: " Different types of Electronic Content Information are usually optimized for delivery by particular modes. • Most consumers accept the benefits of advertising as a means of paying for the supply of information content, however, the means of coupling advertising (including no coupling and/or no advertising) is frequently dependent on the type of information content. For example, β computer software is primarily supplied on physical media with no advertising support. ° the Internet distributes a large amount of advertising embedded within web pages, however, an online connection is usually required to meter use of this material and/or dynamically supply new material. • commercial television usually embeds the advertising within the content. • Electronic means of delivering advertising are not usually efficient at targeting appropriate demographic groupings. • Consumers may accept the benefits of advertising, however, they frequently avoid said advertising where practical (eg. by use of TV remote controls). » The means of regulating the supply and/or ensuring payment for the use of the information is usually optimized towards different means for different types of Electronic Content Information. For example, free to air TV usually has no direct charges, however, viewers are usually exposed to commercials. Pay television is usually provided for a monthly fee regardless of consumption, however, this unlimited use is usually restricted to a particular content provider. Computer software is usually purchased. Internet access may be on a time used basis or unlimited use for a predetermined fee. Music is usually purchased in the form of CD's and books are not yet readily available in electronic form. • An operating system used to control a personal computer is not necessarily the best means for utilizing a multimedia platform. Some operating systems in popular use are not necessarily the best means of controlling personal computers either! At the time of writing, the worlds personal computer market is dominated by personal computers that use Microsoft Corporation operating systems (eg MSDOS, Windows 95, Windows 98, Windows NT). The rapid escalation of multimedia and the Internet as important components of information technology has seen Microsoft (and other major companies) attempting to position themselves as major players in these areas. Although Microsoft may currently be the dominant operating system supplier, their products may not be optimal solutions for tomorrows integrated digital information systems. Furthermore, it is not necessarily in the best mterests of other developers and the industry that Microsoft continues to consolidate its position. It is a non-limiting objective of this invention to describe, in part at least, a means of harmonizing the means used to display multimedia information, to deliver ECI, to charge for use of said ECI, and/or the means used to deliver electronic advertising. Another non-limiting objective is to describe a silicon solution that provides a means to escape Microsoft's 'sphere of influence', to put it politely. Along with the integration of multimedia processes the addition of trusted systems (non-hmitmg examples that may mclude secure processing devices and/or secure operating system and/or secure rights management) may change the means of distributing Electronic Content Information (ECI). Electronic Content Information (eg video, music, literary text, computer programs, computer games) is preferably delivered as Digital Content Information (DCI). It may also be delivered as Analogue Content Information (ACI), for example, as is usually presently the case with broadcast commercial television. The ECI is preferably delivered in secure software containers protected by encryption and/or other means. Distribution and payment of ECI using trusted systems will preferably be based on the secure atomic metering (eg small units, eg seconds or fractions of a second of use) of usage. Usage is preferably metered by a Secure Processing Means coupled to a User Controlled Data Processing System. The concept of what is considered billable informauon may also change. For example, Web pages, news articles, opinions, letters to the editor, free to air TV, data books may be non-hmitmg examples of digital information the consumer is not presently charged to access, that may be billed in future. This is unlikely to trouble the consumer who preferably will be accessing this information as just one component of a digital library. Said library preferably provides unlimited use, m part at least, for a predetermined penod of time. The consumer preferably has the option of selecting the display of adverusmg material as a means of paying, m part at least, for mformation consumption. ECI may mclude any content mformation and this may mclude advertising and/or other promotional content that may also be referenced as Electronic Advertising Information (EAI) m this specification. At present, the predominant form of electronic adverusmg is that embedded within commercial television content. Advertising is also used to sponsor an increasing number of web pages coupled to the Internet, for example banner advertising It is a non- limiting objecuve of the present mvenuon to describe a means of broadening electronic advertising to subsidise (in part at least) the use of preferably all types of electronic media (eg. Internet, computer games, electronic books, databases, video, music, electronic newspapers etc). Advertising may also become more user friendly and targeted to the needs of specific users. The consumer preferably will have the option of declining advertising, m part at least, and paying for their consumption of information instead.
Trusted Systems and Pay-for-use software Trusted systems and pay-for-use software systems are described in pending WO 97/25675 by Gπffits and pending WO 96/27155 by Shear et al. These specificauons are incorporated by reference into the present specification and may be mtegrated, in part at least, with one at least means described for the present invenuon.
With trusted systems the nght to use digital content informauon (eg computer application programs, computer games, databases, electronic literary text, digital music (eg. CD ROMS), digital video) is preferably separated from the actual digital content information. For example, digital content informauon (DCI) is preferably encrypted, m part at least, such that it may only be used in conjuncuon with a Secure Processing Means coupled to a user computer (or any other user controlled data processing system). Said Secure Processing Means preferably requires the presence of digital control informauon that descπbes, m part at least, the condiuons of use attached to said DCI and preferably requires the coupling of one at least nghts of access that may be used m conjuncuon with said conditions of use. Said conditions of use may include, for example, restrictions on age groups, countries and/or jurisdictions, period of use, number of use events permitted, how use of the information is billed, the cost of use etc. Said conditions of use are preferable securely coupled to said DCI to protect against tampering. The Secure Processing Means is preferably provided with one at least rights of access, for example, electronic funds, a country identifier, a right that permits unlimited use of a particular grouping(s) of digital content (eg. all computer games for a month) for a predetermined period of time. The manipulation of conditions of use and rights of access is preferably achieved using a right management process that is part of a secure operating system.
The use of trusted systems enables the actual digital content to be distributed using any means (including unauthorised), however, it is preferably unusable without the appropriate Secure Processing Means and rights of access. It also provides any content developer with a direct to market opportunity that bypasses existing distribution structures.
It is envisaged that users of digital information will have access to an extensive library of digital content that maybe sourced from multiple providers. This may be delivered by any means that may include: physical media (eg DVD or any other high density optical media), and/or broadcast (eg. free to air TV, Satellite TV services), and/or the Internet (or any other network and/or hypertext network) and/or cable (eg cable TV).
The consumption of this information is preferably securely metered and the metered information used, in part at least, to determine payment to the various stakeholders in the information. The following may provide one practical and popular method of distributing and paying for digital information. The user(s) of a computer are provided with a library of digital content information on high-density optical media. Said media may be read only or read and write. This is preferably supplied at nominal cost (eg. a few dollars per disk). The currently preferred optical media is Digital Versatile Disk (DVD) that presently has storage capacities up to 17 Gigabytes. For example, the entire library (or part at least) of existing computer application programs (including computer games) may be disttibuted on a relatively small number of optical disks (each disk currently may store the equivalent of approximately 28 CD ROM). The entire library (or part at least) of fiction books may also be supplied on a relatively small collection of DVD disks (each DVD disk may store approximately 8,500 novels of 500 pages each without compression techniques). The entire library (or part at least) of music CD's make likewise be provided to users. This scenario would provide the average user with a library of all (or part at least) computer programs, music and works of fiction, that subject to meeting the conditions of use, may be accessed almost instantly (no slow Internet downloads) as required. The user may subscribe to a service that provides optical media updates of this material.
The logistics of distributing information in this manner are likely to continue to simplify as technology increases storage capacities. In 10-15 years it may be possible to distribute a library most of the available digital content information on a couple of holographic crystals . The large storage requirements of digital video presently make it impractical to provide each user (or household, office) with a complete collection of all movies/videos, however, this impediment is likely to disappear with another generation or two of digital storage means technology.
The use of local area repositories (eg servicing a suburb, block, apartment building, shopping centre, office tower) of most digital books, music, computer programs and video is now possible or will be in the near term. Convincing the various vested interests that this is a good thing may be a more challenging task.
It is envisaged users in said local areas may be connected by local area networks (eg. fibreoptic cable using existing electricity conduits, water pipes and/or sewer pipes) to said local area repository. Said local area repository may provide a node to the Internet (and/or any equivalent hypertext network and/or any other network means). In addition to providing access to a library of stored information it may also provide a gateway to the Internet (that may not depend on existing telephone companies) and a method of local telephony. Any one at least local area repositories may connect with any one or other, extending the network. The coupling of said node(s) to the Internet may include cable (conductive and/or optical) and/or satellite and/or microwave.
Virtually any person or company can become a content provider with their success largely dependent on the appeal of the content and how effectively it is promoted. For example, independent film producers may distribute directly. The fortunes of the cinema have waxed and waned over the century, however, it is likely that high definition, large scale home video displays with surround sound will emulate many of the features of existing cinemas, reducing demand for their services. The display technology to make this economical is imminent.
It is preferable that advertising maybe used to pay for consumption of electronic information, in part at least. At present, advertising is usually coupled to a particular item of electronic content information, for example, commercials linked to a particular free to air TV program and/or ads embedded within WWW pages. It is preferable that advertising is unlinked from particular program content. It is also preferable that consumers who agree to receive advertising in exchange for free EIC, view said advertising, or at least, are prevented from removing and/or otherwise avoiding said advertising where practical. The secure means of priority display described in this specification meet these criteria, in part at least. The consumer is preferably rewarded for viewing advertising and/or at least permitting it to be displayed. This hopefully will deter some consumers at least, from leaving the room and/or blanking the display means and/or muting the sound, and/or ignoring the advertising and/or any other avoidance measures when ads are displayed. The introduction of games of chance may be used to enhance consumer participation in promotional activities.
The prior art of electtonic advertising is not usually effective at metering user interaction with said advertising. For example, TV advertisers are charged usually charged on the basis of TV ratings. This is statistical system based on historical viewing habits. The ratings information is used to bill advertisers based on anticipated numbers of viewers. It may be wrong and it is difficult to know what consumers do during advertising periods. In the case of Internet advertising the metering of consumer exposure to ads (usually banner type ads) is usually by the web server/site. In static ads it may register a hit based on the fact that a user downloaded the page. Whether it was viewed is usually indeterminate and or if it was viewed at least once subsequently from a cache means is usually also unknown. The use of dynamic advertising wherein, consumers are streamed advertising while connected to one at least sites, may improve the situation marginally, however, these systems depend on online connections. The advertising material may also be tampered with. The present invention seeks to describe a means to meter user interaction offline, preferably across multiple types of multimedia. This process is preferably secure. With the consumer likely to require a means to control multiple types of content (that may include advertising content) information, that may be sourced from multiple means and/or under the control of multiple processes on a UCDPS, it is preferable that the consumer has a flexible control means. The Ghost Mouse means (GMM) described in this specification seeks to meet this objective. The means described to intercept mouse and keyboard I/O that may be part of said GMM is preferably extended to provide secure partitioning and password protection of mass storage devices. A means to said extend is described. The invention also seeks to describe an apparatus to optimize in part at least, the means of the present invention and other specifications incorporated by reference. This may include a secure graphics display module with integrated secure processing and preferably a secure operating/rights management system. The Secure Processing Means is preferably able to partition secure system memory processes from secure user (and/or any other lower level of security) processes. This is preferably achieved using the secure memory partitioning logic described in the present specification. The secure processes described for the present invention may also have applications with smart cards, smart watches etc and these are described, in part at least.
Digital Information Payment Models A system has been outlined for distributing digital information. The cost to the user of having an extensive library of information is preferably nominal. However, the use of the information is preferably securely metered by the consumers user controlled data processing system (eg personal computer, multimedia centre). A report of this usage is preferably provided to a service provider on a predetermined periodic basis and used to bill the user (who may have been required to pay-in advance). Usage information is preferably also used to determine distribution of revenue to information producers and their agents and may include the means described in said WO 97/25675 by Griffits and said WO 96/27155 by Shear et al.
There may be many models for billing the use of metered information and many of these are described in WO 97/25675 by Griffits and said WO 96/27155 by Shear et al, incorporated by reference. Market forces may drive the delivery of electronic information to a model that provides a plurality of packages, each providing unlimited consumption for a predetermined period of time. For example, there may be a literary information package, that for $X per period (that may be a variable period) provides unlimited use of said information for said period. Said information may include, for example, all novels, magazines, literary commentary, Internet news groups, technical journals, printed news articles, critiques, data books. The consumer's access to this information is preferably metered on a time units basis and recorded for each item (or groups) of information. The revenue received from a particular consumer is preferably distributed on a pro-rata basis to information producers and/or agents. The value of each component of information may be weighted, however, it is preferably of equal value per unit of time, per consumer. The value per unit of time may vary from one consumer to another depending on the ratio of time (and/or event) use of a particular information component compared to the total time (and/or event) use of all information in said package. Similar packages, for example, may be available for computer games, and/or Internet products, and/or music and/or video and/or any electtonic information. Packages may be compiled that contain any combination and permutation of electronic information. The prior art allows for the cost of using a particular item of digital content (eg the price per second of use of a computer game) to be securely coupled to said content and this is likely to have application with specialised information. However, it is likely that consumer information in particular, may be grouped into content type libraries that are made available on an unlimited usage basis for a predetermined period of time (eg. a month), for a predetermined cost. This method may take the pressure off consumers from clock watching as they consume information. It may also provide a known budget. This is a similar principal used for cable TV and Internet access. In this arrangement the value of all information within a particular content library preferably has the same value, regardless of the age of the product, cost of production and intrinsic value if sold separately. The invention allows for any differential weighting of value of one at least products over one at least others.
Just like a successful movie at the cinema, it is likely that the latest and greatest will generate substantially more revenue while it is 'hot' (if it is 'hot') than lesser and/or older products because it meters substantially more units of usage. In this arrangement the producers (and/or agents) are rewarded as a proportion of the use of their product compared to all other products in the content library during the month. For example, it may cost $20 per month to have unlimited access to any computer game written for the PC. User 1 may play Game A for 10 minutes one month and not play any other. The amount to be disttibuted to producers/agents for Game A usage by User 1 may be $20 (100% of usage). User 2 may play Game A for 2 hours and Game B for 6 hours. In this case producer/agents of Game A, may only receive $5 (25% of usage) even although Game A was played for a longer period by User 2 than by Userl. The producer/agents of Game 2 may receive $15 (75% of usage by User 2). User 3 may have paid $20 and not played any Games, in which case revenue is distributed on a formula preferably derived from metered usage by a plurality of players.
As a successful product is primarily dependent on how it rates on the 'hit parade' and how long it remains there, it is expected that there will be intense competition in product development. This is likely to benefit the consumer.
A number of methods have been developed to subsidise the cost of ECI on a UCDPS by displaying advertising (and/or any other promotional material) on the display area. These usually involve the embedding of advertising material within the program and/or data of the program. This requires an arrangement between the software producer or their agent and one or multiple advertisers to sponsor a particular software object or group of software objects. As most sponsors will need to ensure that their advertisements are actually viewed, a method is required to log the user access to software objects that include embedded advertising. One method of metering advertising access when a user is connected to a remote processing means (most commonly via the Internet) is to log the number of times they access pages containing advertising material. An alternate method is to require the user to be connected to a remote processing means while executing a program that is supported by advertising material, thus determining advertising usage. A third means allows the user to download a program and operate it in an offline manner, however, a utility software object that accompanies the program logs usage, and usually transparently to the user, sends a report back to the software producer, agent, or advertiser. There is no way for the user to determine what other information this program may be sending from their computer. There is also no tamperproof protection for the advertiser. These methods are also tightly coupled to the supply of particular ECI. One objective of the current invention is to provide a secure means of providing distinct and generic advertising facilities on a UCDPS. The invention allows for any means that permits advertising material to be displayed on a UCDPS: β prior to; and/or • during; and/or o after , the use of one or multiple components of ECI, when advertising is used to subsidise the cost of software object use and/or any other function directly and/or indirectly attached to the computer, wherein said means: • is secure in part or whole; and/or • provides generic sponsorship of multiple software objects; and/or β offsets part or all of the costs of operating part or all of the processes described in PCT AU/97/00010; and/or » offsets the costs of operating any other securely protected software objects including objects protected by non- secure software processes; and/or secure hardware encryption and/or decryption devices; and/or secure encryption and/or decryption devices, that also execute part or all of the software object in a secure manner; and/or <» is functional in an offline and/or online arrangement; and/or • is functional in a multitasking and/or multi-user environment. The invention also allows for any means of displaying advertising material using any methods that have priority over other displayed information and/or any means, in part at least, described in this specification and/or any specifications incorporated by reference.
The invention also allows for any means that: • can detect promotional material displayed by any one or multiple means; and/or » that overlays, part or all, of this information with alternate information (that may be anything, including alternative advertising material); and/or » that blanks out part or all of the original information. This may include when the information to be overlaid is detected in part or whole automatically (eg a Java application program); and or when it is detected in part or whole with the assistance of the user.
The invention allows for any means that modifies one or multiple original software objects in any way (including deletion), with the altered software object referred to as a Modified Software Object (MSO); such that the MSO is compelled to execute in conjunction with a Secure Processing Means that ensures: • that any advertising material that is supposed to be displayed to the user, is actually displayed; and/or • that directly and/or indirectly can ensure that this information is not deleted and or replaced on the display, in part or whole; and/or » that may determine (preferably securely) information about the user and may adjust the advertising material accordingly, and/or • that may determine any particulars about interaction between advertisement(s) and user(s), preferably in a secure manner, and/or • any means that permits information pertaining to advertising on a UCDPS to be relayed (preferably securely) to a service provider and/or advertiser (and/or any agent(s). The invention allows for any Secure Processing Means , including: • purely software based executing in a non-secure environment (eg. using the system CPU); and/or β any secure decryption means attached directly and/or indirectly to the UCDPS; and/or <> any secure decryption and execution means (eg. as described in said WO 97/25675 by Griffits ) attached directly and/or indirectly to the UCDPS. The invention allows for any means that may permit part or all of any combination of advertising means described in this application to be disabled (in part at least), temporarily and/or permanently. This may be for any reason, including: • permitting the user to pay for the software object, in part at least, on a permanent or temporary basis; and/or <• only requiring the user to view advertising part of the time and such period may be, in part at least, determined by the user. The invention allows for any means that stores part or all of any information pertaining to user interaction with one or multiple advertisements within a secure storage device, that may include the Secure Processing Means; and/or any directly and/or indirectly linked storage means. This may include information stored in a user accessible location that is encrypted, in part at least, using any means that in part at least requires: • secure processes within a Secure Processing Means to create and/or reverse, in part at least, this information; and or » a secure means remote to the UCDPS to perform a similar function.
The invention allows for any secure means that in part at least, embeds advertising material in the normal flow of the program (that may include calling one or multiple subroutines to perform this task). The advertisements are usually displayed using similar processes to the body of the software object itself. This usually requires a software producer (and/or agent) to pre-arrange sponsorship of the software object(s) and would usually commit advertisers to sponsoring fixed products for a predetermined number of copies.
The invention allows for any means of allowing use of one or multiple software objects in exchange (in part at least) for the display of one or multiple advertisements on a display(s) attached directly and/or indirectly to the UCDPS; that directly and or indirectly activates the Secure Processing Means to (directly and/or indirectly) display one or multiple advertisements when said one or multiple software objects are executing.
The preferred method of implementing this is any means that includes an advertising generating and/or display means, preferably secure, ( it may use the Secure Processing Means, in part at least); and any means (preferably secure) to detect, when one or multiple software objects are executing that require activation (directly and/or indirectly) of said advertising generating and/or display means. This may include, in part at least, the means used to detect when one or multiple software objects are executing within the Secure Processing Means as described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al.
One method may be to include (preferably) encrypted information within one or multiple software objects that must interact with the Secure Processing Means. Within this encrypted information is a message(s) informing the Secure Processing Means (using any means) of its requirements for linked advertising. The advertising may be for display prior to and/or during and/or after use of one or multiple software objects. The invention allows that the (preferably) encrypted message may indicate the type of advertisements and or duration and or any other information. The Secure Processing Means enters its own functions to ensure that part or all of the advertising is displayed. This is preferably using secure means.
The invention allows for any means to display advertisements, including having the Secure Processing Means directly and/or indirectly writing to the normal graphics output means of the UCDPS. The invention also allows for any means to display advertising information using any priority display means, therefore ensuring that some other process does not alter or overwrite the advertising material. The preferred priority display means is to have the Secure Processing Means access a graphics buffer under its control that overlays information retrieved from the normal UCDPS graphics buffer(s). By allowing the Secure Processing Means to control the display source for each of these video sources, the Secure Processing Means can ensure that its information has priority. It is preferable that this linkage is secure thus preventing tampering with the priority display. The invention allows for any means of providing a UCDPS with a secure means of priority display of visual imagery that in part at least may be a tamperproof means of priority display. The invention also allows for any means of overlying or modifying (in any way) information displayed by any other means. This may include advertising material displayed from another source that is overwritten by any means. This may include any means described in this application or other applications by this inventor. The preferred means of displaying advertising material is to have the Secure Processing Means able to directly and/or indirectly inject display information into the display output means. This may use any means. The preferred method multiplexes normal display information (eg. as generated by a VGA and/or any other PC graphics card) with information generated in part at least by the Secure Processing Means (directly and/or indirectly). One method of doing this is to directly and/or indirectly link (using any means) video generation circuit with the Secure Processing Means. The logic to do this is preferably within the Secure Processing Means IC. This accesses its own graphics buffer. The video source from said normal display (in analogue and or digital) format is multiplexed with that generated by the Secure Processing Means. This process is preferably under the conttol of functions linked to the Secure Processing Means. This ensures that Secure Processing Means information has priority. The invention also allows for any means of integrating the normal display generating logic (in part at least) with that linked to the Secure Processing Means. The invention allows for any means that in part at least performs a similar function and is not a secure process (in part at least). The invention also allows for any means that in part at least may take conttol of the system bus and write directly and or indirectly to the normal graphics display memory. It is preferable that such a means saves the overwritten information for subsequent restoration.
The invention also allows for any means that can detect the location on the display means, of advertising information that is to be overwritten, enabling (directly and/or indirectly) new information (in part at least) to be substituted. The invention also allows for any means that enables advertising to be configured to the user. This may include any demographic basis, including gender, nationality, income, age, religion. The preferred method is to include this information within the Secure Processing Means. Some of this information may be pre-programmed. Other information may be entered by the user or any other means. It is preferable (particularly when one Secure Processing Means is accessed by multiple users) for each user to have a password. Therefore, the Secure Processing Means knows which user is accessing the device and can adjust displayed information to their particular demographic details.
The invention allows for any means, using part at least of the means described in this application that permits one or multiple advertisers to support a particular software object. In this case they would usually know the cost of rental for use of this object and would commit to a particular amount of use per customer. Any other arrangement is allowed for. An alternative implementation of the invention allows a generic pool of advertisers to promote a generic pool of software object. The invention allows for any means of doing this. This provides a scenario where particular software producers do not need to find specific sponsors. The user has a pool of sponsors (usually with a predetermined budget per user) and this can be used to offset the cost of any software that the customer wants to use. One means of doing this uses the process described in pay-as-you-use software rental as described in said WO 97/25675 by Griffits by this applicant. Users may have access to sponsors who commit an amount of funding thai can be used to pay software rental charges in exchange for linked exposure to advertising material. Any means may be used to log software use. The invention allows for any means of offsetting these charges against advertising. The preferred method loads a predetermined amount of advertising material with a linked amount of electtonic credits (preferably securely). The credit is (preferably securely) decremented against software use. The use of this credit is usually linked to the display of advertising material. The invention allows for any means of integrating advertising credits with the use of electtonic credits paid for by the user and/or any other credit (and/or any other conditions of use) means. The preceding method allows generic sponsors to cover use of a variety of user determined software objects. The invention allows for any means of doing this on a UCDPS. The method as described is compatible with different software objects having different charges for use. The invention also allows for any means that bundles software objects and provides unlimited use for a fixed for a period of time and/or number of uses and/or any other metering of use basis. The invention allows for any combination of means. The invention also allows that part at least of advertising credits may be against a users account with the service provider (or any similar arrangement) rather than direct credit within the Secure Processing Means .
The invention allows for any means (preferably secure) that permits feedback to one or multiple advertisers about the various customer responses to their advertising. The preferred method records such responses within the Secure Processing Means and/or on any external storage means (with the preferred method using a similar process described in said WO 97/25675 by Griffits for securely storing a record of software usage). This information is preferably transmitted to the advertiser (directly and/or indirectly) on a periodic basis. This is preferably accompanied by a secure report of software usage. The invention allows that any particular advertisement may be used to subsidise (in part at least) one or multiple specific software objects; and/or may be distributed generically across multiple software objects.
The invention allows for any means that securely records (that in part at least may include using any Secure Processing Means) software usage. This may be on any basis, including part or all of the method described in said WO 97/25675 by Griffits. The preferred method monitors software use on a time used and/or events basis, with a generic right of access to multiple software objects as long as there is sufficient prepaid and/or pre-authorised credit attached directly and or indirectly to the Secure Processing Means. The Secure Processing Means preferably ceases activity when the credit available is used (or any other predetermined level) and/or any pre-authorised limits are exceeded. The Secure Processing Means (also referenced as a PPU or ESSPD in said WO 97/25675 by Griffits) is usually required to periodically produce a preferably secure report on software usage. The Secure Processing Means preferably cease function if this report is not supplied.
The invention allows for any means to use advertising to subsidise the cost of using software objects. Non-limiting examples may include: detects the availability of various advertising credits, using these instead of, and/or in conjunction with user credits; and/or consumes user credits to execute the software and logs a component that will be subsidised by advertising and subsequently credited to the user's account and or any other means.
The invention allows for any means of securely metering software use and/or advertising interaction with the user.
The invention allows for any means described in this application that in part at least, allows multiple software objects to execute in a multiprocessor and/or multitasking environment. The preferred method uses the means described in said WO 97/25675 by Griffits, that permits multiple software objects to execute on a pay-as-you-use basis, with the methods described in this application readily adapted by those experienced in the art to record usage against available advertising credits.
The preferred apparatus for implementing part at least of this invention is to integrate a Secure Processing Means into a custom IC. This is preferably directly and/or indirectly available to software objects executing on the UCDPS. The Secure Processing Means may be interfaced directly and/or indirectly using any means. This may include a bus connection (eg. PCI bus, PCMCIA); and/or one or multiple ports (eg. parallel and/or serial); and/or integrated directly onto the motherboard of the UCDPS; and/or integrated within one or multiple processing units attached directly and/or indirectly to the UCDPS (including one or multiple system microprocessors). The Secure Processing Means (that may provide part or all of the functions of the Secure Processing Means) is preferably capable of securely decrypting and/or executing software objects (in part at least). It is preferably able to generate video display information that may overlay and/or replace information displayed as part of the normal processes of the UCDPS.
The software object that is to be executed (and/or used in any other way) preferably includes: • information about the producer of the software object; and/or • uniquely identifies the product (eg. ID code); and/or • conditions of use (that may be any conditions of use described in the art of software protection/distribution; and/or • if it requires a distinct right of access; and/or • if it may be used on a generic right of access basis; and/or β if it may have its use offset in part at least using any one or multiple advertising means, that may include part at least of those means described in this application.
The Secure Processing Means may include any means that may interpret in part at least, the information within one or multiple software objects and act accordingly. The Secure Processing Means may update user credits and/or advertiser credits, using any means, including those described in said WO 97/25675 by Griffits.
The Secure Processing Means preferably has secure access to information (that may be pre-programmed and/or loaded from any external means) detailing how the display of advertising material may be used to offset in part at least, the consumption of user credits. The invention allows that part at least of its processes may not be dependent on any user credits.
The preferred method is to encrypt, in part at least, advertising material. This may be for any reason, including preventing tampering with the information. This may be linked in any way with any other encrypted information. The advertising material may have conditions of use directly and/or indirectly linked. These may describe any conditions affecting the use of the advertising material (and/or for any other purpose), including restriction to age, country (or any region), occupation, type of software object supported and/or any other basis. It may also include details relating to the number of times the advertising may be used to support one or multiple software objects on: » an events; and/or • a time; and /or • any other basis; and/or » a predefined (and/or any other basis) amount of advertising credits that the advertising material is good for. The use of advertising to offset use of software objects may be a one-off event and/or renewable on any periodic basis. For example, the conditions of use may indicate that a certain number (that may be any number) of units of advertising credit are available each period, that may be any period. The preferred embodiment may use any means to securely store this information and to use it against software object use.
Alternatively and/or in conjunction, the advertising credits may be saved and transmitted, in part at least, to the service provider for crediting to the users account and/or for any other reasons. If applicable, the use of advertising credits is preferably compared against a secure real-time/date source to determine when a new round of advertising credits may be activated.
The invention allows that advertising material may be displayed at any time. This may include during system startup; during periods of inactivity (eg. as part of screen savers); during program operation. The invention allows for any means that permits advertising material to be displayed in any section of the display that may be made to move (in part at least) with the mouse pointer. This may include within a GMM.
The invention allows for any means that on any periodic basis generates a report (preferably securely) for one or multiple advertisers (and/or any agents), detailing use of software objects; and/or user interaction with advertising material and/or any other information. The invention allows for any means that couples offline use of one at least software objects to a secure metering means coupled to one at least UCDPS to securely produce a record of use that may be subsequently permit an accounting of said use. This particularly applies when said accounting of use is used to bill advertisers for EIC usage on one at least UCDPS .
Validation Signal Means (VSM) The distribution of ECI on a metered basis may be accompanied by discounts based on usage and/or the number of nodes supported by a particular customer. This may apply to information that is pay-as-used and particularly to information that is purchased on an 'all you can use' basis for a predetermined period of time. For example, a household may pay $20 per month for video access, however, they are unlikely to want to pay an additional $20 for each additional access means (for example, a keyboard/display means, a UCDPS accessing a household server). A package deal may apply to a household (this may vary depending on the number in the household). In another example, a business may receive a discounted rate depending on the number of employees; and/or volume and/or value of information consumed. In order to prevent abuse of this system, for example, one household supplying one at least other geographically proximate households (or any other ECI consumers) with ECI at the discounted rate, the present invention describes a means to monitor such abuses. In particular it may determine the distance one at least said access means is located from a server means by measuring the propagation time an electrical and/or optical signal along a conductor linking one at least server means to one at least said access means. By using synchronized clocks it may be possible to send a signal that includes information on time the signal was sent and have the receiving means note the time the signal is received. Note: light propagates approximately 30 cm in one nanosecond. The process preferably may be applied in either direction. The preferred embodiment sends a signal and measures the return time. Said sending means preferably knows the delays of any signal processing at the destination, prior to returning the signal. The conduction delay is approximately equal to the return time less processing overheads at both ends divided by two. The distance is easily calculated. Access means located beyond preferably predetermined distances may be deemed to be unauthorised because of their location (even if they are a valid means) The sending means preferably knows the processing delays in the target device and/or within itself. The process is preferably tamperproof. The means may also be applied to measuring the delay of a broadcast signal, wherein the distance will usually be a straight line between sending and receiving means, compared to a conductor means, wherein the cable length may be longer than the distances between sender and receiver.
The means described in this specification preferably may be applied to one at least User Controlled Data Processing System (also referenced as a UCDPS in this specification). Non-limiting examples of said UCDPS may include said VMPS, personal computers (eg the PC, Macintosh), set top boxes, game machines (eg, Nintendo 64, Sony Playstation), and/or net computers. The term UCDPS may be applied to any electronic device described in the previously disclosed patent specification WO 96/27155 by Shear et al. The term UCDPS may also apply to any device described as a UCDPS in patent specification WO 97/25675 by the present inventor.
Summary of the Drawings
Figure 1 shows a household multimedia centre and a plurality of authorised access nodes. Figure 2 shows a method of interfacing an alternate processing means and a system CPU to a common graphics buffer. Figure3 shows a method of providing a separate graphics buffer for an alternate processing means and another for the system CPU. Figure 4 is a means of blending pixels from multiple sources in an apparatus suitable for overlay graphics. Figure 5 is a secure processing means intercepting mouse and keyboard I/O and a means of displaying graphics from multiple sources on a display means . Figure 6 is a generic arrangement for a Ghost Mouse Means. Figure 7 is a simple method of constructing wormholes through a plurality of object layers on a display area. Figure 8 is a block diagram demonstrating a means for users to have third parties intercept advertising that requires the consumer to interact. Said third party preferably answers the questions for said consumer. Figure 9 is a block drawing of a secure advertisement server and advertising protected software object. Figure 10 shows a method of using a Personal Security Terminal.
Detailed Description of the Invention with reference to the Drawings The means described in the present specification may interface, in part at least, with secure processes locally coupled to one at least UCDPS. Allowance is made that said means may be implemented, in part at least, with less security (for example, software only based systems rather than one at least, physically secure processors) and/or no security. Furthermore, the means may be implemented, in part at least, in a system with multiple processors (that may be different processors, in part at least) and/or multiple operating systems, however, the invention allows for their implementation, in part at least: • in a single processor system and/or o in a single operating system environment. A means is described for overlaying information, preferably with a priority over information originating from one at least other means (eg MOS), and said overlay and/or priority is preferably tamperproof. This particularly applies to the display of advertising and/or one at least incentive program that are provide, preferably to encourage users to participate and/or permit said advertising. The use of the advertising may be metered, in part at least, and/or user responses and/or opinions maybe recorded. Said metered and/or recorded is preferably by secure processes operational in a UCDPS offline. Said metered and/or recorded is preferably transmitted to authorised parties at periodic intervals. The invention allows that part at least, of said means described for overlaying information may not be secure and/or may be performed in part at least by online means. The invention allows for any means of implementing, in part at least, the means described in this specification.
Validation Signal Means The ECI consumer's cost of digital information usage when using trusted systems may be discounted to allow for multiple users. For example, a package deal may apply to a household (this may vary depending on the number in the household). In another example, a business may receive a discounted rate depending on the number of employees. In order to prevent abuse of this system, for example, one household supplying one at least other geographically proximate households (or any other ECI consumers) with ECI at the discounted rate, the present invention describes a means to monitor such abuses. Reference to Figure 1 shows a household multimedia means 1000. This may be any means providing ECI, directly and/or indirectly to multiple consumers. Multiple authorised access means (eg monitors, keyboard, UCDPS, electronic book means etc) 1005, 1010, 1015, may be attached to said household multimedia means 1000 via a conductive means (preferably optical). The distance between each said access means and said multimedia access means 1000 may be known and/or estimated as shown by 1005a, 1010a and/or 1015a. The time for an electrical and/or optical signal to propagate along said conductive means may be determined. Said multimedia centre may send a validation signal to one at least said access means 1005, 1010, 1015 and expects to receive a return signal within a predetermined interval. Said interval may be programmable. Should said return signal be longer than expected (preferably allowing for a predetermined error range) said multimedia centre may determine that said access means may be in an unauthorised location. For example, access means 1020 may have been coupled to the house next door using a conductor 1020a that is longer than that permitted, resulting in a longer than accepted return path. Said 1020 would usually be an authorised unit that is geographically relocated. Unauthorised units are preferably not compatible with the multimedia means 1000. It is preferable that said multimedia means 1000 and said access means 1005, 1010, 1015, and/or 1020 include a secure means to prevent tampering. It is also preferable that said access means 1005, 1010, 1015 and/or 1020 expect to receive a validation signal at one at least predetermined and/or determined on any other basis times. It is also preferable that said access means 1005, 1010, 1015 and/or 1020 originate a security signal of their own and determine the return time. It is preferable that generation of security signal to and/or from multimedia means 1000 and access means 1005, 1010, 1015 and/or 1020 uses a secure means. The secure means described in this specification are readily adapted by those experienced in the art to meet the requirements of said Validation Signal Means. For example, a random number may be generated in multimedia means 1000 and sent to one at least said access means 1005, 1010, 1015, and/or 1020, and a counter started that is preferably clocked at high speed (eg 1 Gigahertz). When a return signal is detected the counter is stopped and read. This provides the return signal time plus overheads (eg time to perform any operations at the destination). It is preferable that the destination (eg 1005) performs an operation on the transmitted information and sends the modified information back to said multimedia means 1000. Said multimedia means 1000 may then validate that said operation is as expected. Said operation preferably takes a standardized time interval. The method may also be applied to access means that are coupled via non-conductive means (eg radio/microwave).
Overlay, Transparency ands Secure Processing Means It is one non-limiting objective of the invention to provide a means to overlay information on the display area of a UCDPS. One application for overlay information may be the display of advertising using Priority Means that are preferably tamperproof. It is preferable that said overlay is secure, in part at least. It is preferable that said overlay information cannot be overlaid by other unauthorised information. Said overlay is preferably beyond the conttol of the user and/or programs operating outside of a secure processing environment. It is preferable that said advertising is delivered in one at least secure protected software objects as described in said WO 97/25675 by Griffits and/or one at least secure containers as described in said WO 96/27155 by Shear et al. An important application for overlay information is to display advertising. In particular advertising that the user has agreed (implicitly or otherwise) to display in return for subsidized (in part or whole) use of EIC and/or in return for some other benefit. It will be appreciated by those experienced in the art that one means of securely displaying advertising may be to provide a Secure Processing Means that may read and/or write to a preferably secure graphics buffer. Said buffer is preferably not accessible, in part at least, to unauthorised processes outside said Secure Processing Means. The display of graphic buffer data preferably takes priority over graphics buffer information from other sources, for example, the video memory of a PC. Said priority is preferably selectable on a pixel by pixel basis, in part at least. It is preferable that pixels from the overlay graphics buffer may be mixed with those from, one at least other sources, in part at least. Said mixing preferably provides a transparency means, wherein said overlay transparency preferably may vary from 0% (no transparency) to 100% (no overlay) and one at least values in between. It is also preferable that the overlay display may be varied in size. This may use known art windows resizing means that usually crop part of the displayed area to fit the window. The preferred means supplies overlay graphics buffer information in to an image shrinking (and/or enlarging) means. This may be a program that resizes the image within the graphics buffer. It is preferably that a hardware means resizes the overlay display in real time as it is displayed. These processes are known to the art. It is also preferable that one at least display means that are overlaid (eg, the display area representing a PC Windows environment) maybe resized, preferably dynamically using a hardware means.
One means to implement the overlay system of the invention is now described. Said system is referenced as a Video Graphics Overlay Module (VGOPM). It may incorporate any of the means described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al. The VGOPM may also provide security for the display of any type of visual information, for example electtonic books and similar. It also facilitates the implementation of a Ghost Mouse, described later, and provides novel and flexible means of overlaying important messages during normal applications processing and/or alternate processing means (eg a Secure Processing Means).
Figure 2 shows one means of generating overlay information. Video logic 1, retrieves information from a graphics buffer 2 converting it from binary to a format that may drive a display means. This is usually an analogue signal with many existing video monitors. The system CPU, eg an Intel CPU usually under the conttol of an operating system that may not be secure, for example, a Microsoft Operating System, normally transfers graphics information to the graphics buffer 2. The invention allows any multiplexing means 3 to permit any combination of alternate processing means 5 (eg a secure processing device as described in said WO 97/25675 by Griffits) to communicate with said graphics buffer 2. Said processing means 5 preferably may modify information within said graphics buffer 2. The alternate processing means 5 may have its own peripherals and/or memory 7. The invention allows for any means for the system CPU and the alternate processing means to communicate with one another. The preferred method uses dual port memory as described in said WO 97/25675 by Griffits and/or allows the alternate processing means to access system memory by DMA. The means to communicate commands and data between a first operating system means that is preferably part of a secure processing environment, and one at least, usually unsecure, second processing means, eg a MOS environment, are described in said WO 97/25675 by Griffits and said WO 96/27155 by Shear et al. One potential disadvantage of the preceding arrangement is that the alternate processing module may need to track the information it has replaced in the graphics buffer 2, to restore the imderlying information when necessary. For example, if an overlay area is moved around by the user and/or any other means, the original information (eg Windows display) usually needs to be restored. The other potential problem is that the system CPU(s) may also be updating graphic buffer locations in competition with alternate processing means 5. It is preferable that multiple processing units (eg 4 and 5) each write and/or read to their own graphics buffers, in part at least. It is preferable that said alternate processing means may continue to access either graphics buffer. This may allow each processing means to update its own display information without altering that of one at least others. The reader is referred to Figure 3 of the drawings. Alternate processing means 5, is preferably allocated its own graphics buffer 20. The system CPU(s) may also have access to said graphics buffer 20 (preferably on a multiplexed arrangement). The system CPU 2 preferably uses graphics buffer 2. The alternate processor 5 preferably has access to graphics buffer 2. The video logic 1 preferably fetches information from both of these and uses internal logic to determine which graphics buffer (or both if transparency is used) is the source for a particular pixel (or pixel grouping). Those experienced in the art will appreciate that any number (given practical constraints) of processing means and/or graphics buffers may be similarly configured with any combination of accesses to one at least graphics buffers from any one at least processing means.
One method of selecting which graphics buffer is to provide a particular pixel is by the use of a pixel mask means. The mask buffer may be discrete (eg another buffer that is accessed with each graphics buffer) and/or extensions of the bit map used to represent pixels in one at least graphic buffer. The invention allows for any means of pixel switching and selection. This may include means that are inherent and/or depend on the value of data within various graphics buffers, for example, the color black in the graphic buffer 2 may indicate transparency such that the overlay screen shows wherever there is a black pixel on the system display. The reverse may be the usual case. One at least processing means preferably has access to the graphics buffers of one at least other processing means. UnSecure Processing Means preferably do not have unauthorised access to secure graphic buffers. Figure 4 shows a method of selecting which graphics buffer will contribute to a particular displayed pixel. Information sourced from graphics buffers 2 and 20 may be multiplexed by 26 that may select the source for a particular pixel. In this instance, the selection is preferably determined by a mask field 25 that is an extension of graphic buffer 20. It may, in part at least, be part of graphic buffer 2 and/or one or multiple other buffers. The logic block 30 may be used when graphics from multiple sources are blended, for example, to perform transparency operations. It may perform multiplication and/or division and/or any other logic operations that may scale the data from 2 and 20 up/and/or down and then average and/or any other mathematical operation the pixel values. The means to perform hardware and/or software transparency are known to the art. A means (not shown) is preferably included to dynamically resize one at least screens and/or windows and/or objects. For example during a system reboot, it is preferable that advertising may be displayed on the screen. To enable the user to also view boot parameters and/or copyright notices, the boot display and overlay display are preferably shrunk. Said overlay display may or may not overlap said boot display, in part at least.
It will be appreciated by those experienced in the art that the preceding embodiment may be constructed as a PC compatible VGA card. The method described with reference to figure 2,3 and 4 effectively captures display information from one or multiple system processors that may be operating under one at least operating systems and preferable transparently to said operating system(s) overlays additional graphics information. Another method of achieving this maybe to include a graphics buffer within the display means (eg video monitor). This may be configured to display information at predetermined times that are preferably capable of modification, preferably by one at least signals sent from its coupled UCDPS. For example, said monitor graphics buffer may be activated by a reset signal and/or a particular bit pattem(s) in the incoming video information. The information within said monitor graphics buffer, preferably may be updated. For example, information may be transferred within the vertical blanking period. An alternative is to interpose an overlay graphics means between video output of a UCDPS, for example, the VGA plug of a PC and the input to one at least display means. For example, a user may wish to keep their current video card and have access to the means of the present invention. One method would enable the user to connect the output of one at least video cards to a second board that included, for example, a Secure Processing Means and secure graphic means. The incoming video may be digitised and mixed digitally with the video from said secure graphics buffer. Alternatively, the incoming analogue video may be switched, for example, with an analogue switch, with the analogue output from said secure graphics buffer.
Another method of displaying overlay information securely that may have a plurality of other applications, may be to use the one at least system CPU to perform functions, preferably securely, that are preferably ttansparent and preferably inaccessible, in part at least, to the MOS executing on the same CPU. For example, a ttansparent interrupt structure is described for CPU that permits the CPU to enter an alternative mode, for example as described in US Patent 5274834. This would require a special CPU and is not presently a feature of Intel CPUs. The preferred method of controlling screens, windows and objects is by the use of one at least conttol means preferably implemented as an overlay means and referenced in this specification as a Ghost Mouse Means or GMM.
User Interfacing to Overlay and Secure Processing Means The user of a UCDPS may interface to the alternate processing means, that is preferably a Secure Processing Means, using any of the usual I/O means coupled to a UCDPS. The present invention and specifications incorporated by reference describe a plurality of ways for, one at least, standard operating systems (eg MOS) to interface with a secure processing environment. These methods may require modifications to said standard operating system and/or one at least patches. The means of said WO 97/25675 by Griffits also describes Protected Software Objects that may automatically determine the presence of a secure environment and communicate with it without any code external to said PSO on the non-secure side of the system. A non-limiting objective of the present invention is to provide multimedia processing means that are or may be directed towards a MOS FREE ENVIRONMENT and it is preferable that I/O processing between user and secure processes is not dependent on the System OS eg MOS, in part at least. The preferred embodiment has the secure processing and/or other alternate processing means intercept and preferably pre-process I/O means, in part at least. User inputs (non-limiting examples that may include, mouse and/or any other screen pointer means, joystick, keyboard, light pen, voice input, etc) that are not targeted at the system operating system(s) eg MOS are preferably not passed to said system OS(s). They are preferably processed by said secure and/or alternate means. Those I/O means that are intended for the system OS(s) may be pre-processed prior to being passed to the said system OS(s).
Figure 5 shows a block diagram of one embodiment that may be used to provide the advertising means and/or Secure Processing Means and/or I/O intercept means of the present invention. It may be expanded to include any other functions. It may be referenced as an Integrated Secure Core Resource Execution and Allocation Means (I- SCREAM) and is preferably manufactured as a module that plugs into the PCI (or any other) bus of a PC or as a standalone multimedia system. It preferably also provides the VGA functions for a PC. It preferably may use its own processing means to emulate, in part at least, a graphics accelerator means for the PC. The embodiment may be adapted to couple by any other means to said PC. The embodiment may also be adapted to couple to any UCDPS. The embodiment may be adapted to include part or all of the logic of a multimedia system. The invention allows that the functions described for secure and/or alternate processing means may be performed by one at least system CPU(s), in part at least. The reverse may also apply, in part at least. The use of the term Secure Processing Means may also be implied to represent the option of one at least alternate processing means that may be secure, in part at least. The term Secure Processing Means may also be replaced with the term non-Secure Processing Means . The term system operating system may refer to one at least operating systems executed by said Intel CPU. Presently the prevalent system operating system(s) is one at least Microsoft Operating Systems (MOS). The use of the term MOS may be interpreted as referencing said System Operating System(s) and may also be interpreted as referencing any system operating system(s).
It is preferable that the Secure Processing Means (that may also be constructed as a non-Secure Processing Means) 5 intercepts one at least I/O means. For Example, a socket (or plug) may be provided into which the user may plug their mouse 110 and/or keyboard 111. Additional sockets may be provide for other input means (eg, Joystick, light Pen, any other screen pointer means, as non-limiting examples) and the means described for the mouse/keyboard may readily be adapted to said other input means by those experienced in the art. It is preferable that the UCDPS interface with the Internet 112 is intercepted, in part at least, by said Secure Processing Means 5 (and/or one at least other processing means). Said secure processing 5 preferably intercepts calls to and/or from one at least other 113 I/O means, non-limiting examples that may include parallel interface, serial interface, floppy disk, hard drive, CD ROM, DVD, USB, Firewire, Video Camera, Free to air TV, Cable TV, Audio, Public Switched Telephone Network.
A display area 114 is shown that includes information 115 contributed by the system CPU 4 (preferably by writing to graphics buffer 2) and information 116,117 contributed by the Secure Processing Means 5 (preferably by writing to graphics buffer 20). Video logic 1 preferably selects the source of each pixel and converts it to a format suitable for use with a display means. Video logic 1 may include one at least functions, non-limiting examples that may include, pixel selection, manipulation and/or use of pixel masks, transparency, hardware/software zoom, programmable pointers that may be used to adjust the displayed position of various objects etc. Information 115 may represent a Microsoft Windows Screen, as a non-limiting example, stored in the PC graphics buffer 2. The system operating system preferably is not aware of any overlaying information (eg 116,118,117), in part at least, and/or preferably cannot interfere with any overlaying information, in part at least. Area 116 may represent an advertisement written to the overlay display means 20 by Secure Processing Means 5. Area 117 may represent the output of an Internet Browser that is executed by said Secure Processing Means 5 and/or one at least other alternate processing means (not shown), that may be secure, in part at least, and output to the overlay graphics buffer 20. Said other alternate processing means preferably interface with and/or is controlled by said Secure Processing Means. The area 118 outlined by a broken line may represent an area of ttansparency, for example it may be a ghost mouse means. The Ghost Mouse graphic(s) is preferably written to graphics buffer 20 by said Secure Processing Means (and/or one at least alternate processing means) and overlaid on the Windows image, however, it is preferably able to have its ttansparency level adjusted. If the transparency is greater than zero (0= no ttansparency) the pixel content of underlying Window 115 pixel may contribute to the displayed image. If ttansparency were set to 100%, only Window 115 pixel(s) would usually be visible. An Image Manager Means is preferably provided that is preferably aware of the contributing sources of images (preferably all) in a display area. It is preferable that said Secure Processing Means 5 (and/or its preferably secure operating system and/or rights management system) includes said Image Manager Means. It is preferable that Secure Processing Means 5 may read/and or write to PC Graphics Buffer 2. It is also preferable that there is a means for the Secure Processing Means 5 to monitor 143 the System CPU bus 140. For example there may be a bus monitor means 141 that may be able to trap one at least addresses. For example, there may be a preferably programmable PC I O trap 142 that on detection of one at least accesses to one at least addresses within the System CPU I/O space initiates further action. For example, the Secure Processing Means may halt the system CPU via control lines 135 while it emulates an I/O function (eg. a register function) as a non- limiting example. Said control line may be used to interrupt the system CPU 4, eg to simulate a peripheral device. Said Secure Processing Means 5 may preferably also access system memory 130 for any reason, for example, to modify interrupt routines, interrupts, I/O functions, mouse pointers, keyboard input as non-limiting examples. Said Secure Processing Means preferably may inhibit system CPU cache entries for one at least addresses for one at least reasons, non-limiting examples that may include: ensuring that routines and or data may be modified by the Secure Processing Means and be applied reliably by said system CPU 4, and/or that information written by system CPU 4 is immediately available to secure processor 5.
In the present embodiment, one at least I/O means may need to function across multiple screens and/or operating systems and/or processors and a means is preferably provided to allow this. For example, the mouse pointer means 119 is preferably interfacing with the Windows environment 115 when it overlays areas where said 115 is visible. However, when said mouse pointer means moves to an area of overlay information as indicated by 121, it is preferable that said pointer is visible and interfaces to one at least overlay area, in part at least. If the mouse movements were directly transferred to the System CPU operating system, eg one at least Microsoft Operating System (MOS), said MOS may conttol its movement and when located to an overlay area may be covered by said overlay. Additionally, when the pointer was 'clicked' it may activate a Windows object. The pointer is preferably controlled by said Secure Processing Means 5, wherein, said pointer may be made to behave appropriately for: • Windows area 115 when overlying said area 115 (said secure processor 5 preferably knows when this is the case); and » Other areas eg 116, 117, when overlaying said other areas (said secure processor 5 preferably knows when this is the case). The invention allows for any Pointer Conttol Means (PCM) that preferably ensures a mouse pointer and/or coupled and/or uncoupled mobile conttol structure (eg ghost mouse) are: • visible at the correct times; and/or o activate the correct objects; and/or • display the appropriate image for their position (eg. the arrow may become a text when located within a word processor). It is preferable that control objects displayed within a Ghost Mouse Means are varied to suit the underlying screen and/or window and/or objects.
The Secure Processing Means 5 preferably intercepts one at least mouse movements and/or mouse click signals. This may be referenced as a Mouse Intercept Means. One method is for said Secure Processing Means to conttol part or all pointer movement and/or mouse clicks (and/or equivalent) and read and/or write directly to mouse registers, pointers, buffers etc of the MOS. This method may also be used to stop MOS pointer movement when required and/or to park the pointer in convenient location and/or to temporarily stop display of the MOS pointer and/or to locate the restore the pointer to an appropriate location. Video logic 1 may be adapted to enable the MOS pointer to be blanked. One method is to pass part or all mouse movements to said MOS and although the mouse pointer may move anywhere on the MOS screen 115, the MOS pointer is preferably not be visible when behind an overlay area. The Secure Processing Means preferably displays another mouse pointer to ensure its visibility when within one at least overlay areas, eg location 121. When the pointer is located in a ttansparent area eg 118 both pointers are displayed, however, as both pointers preferable occupy the same display area co-ordinates, they are seen as one. Pointer position is usually a passive display and it may be replicated by multiple operating systems as long as the co- ordinates are the same (unless a plurality of pointer images is wanted). The known art does describe some actions that may occur when a pointer is located in one position for a predetermined time, for example, the display of a balloon of text to indicate the meaning of an underlying icon and/or a variation in the displayed image of an object(s). This may result in a pointer located within an underlying screen causing changes to said screen, even although it may have been moved to that location by mouse movement in the overlying screen. This function is preferably disabled when the pointer moves to overlay areas. An alternative may be to restrict MOS writing to graphics buffer 2 when the mouse is in overlay territory and/or overlay territory is active. It is preferable that when the pointer is located in a MOS area 115 one at least mouse clicks is passed to the MOS pointer routines (an exception may be with the use of a Ghost Mouse as described later). When the pointer means is located in an overlay area eg 116, 117, one at least mouse clicks are preferably passed to the appropriate routines within said Secure Processing Means. Those experienced in the art will be able to adapt the mouse means to similar means eg Joystick, light pen, touch screen, voice commands etc.
In the case of keyboard entries, it is preferable that keystrokes are transferred to the presently active Window and/or object and/or screen. If multiple means are active, keystrokes are preferably passed to the operating system controlling the area presently encompassing the visible pointer means.
The embodiment as described is intended to synthesise, in part at least, the PC environment expected by a MOS executing with an Intel CPU, without requiring any modifications and/or patches to said MOS and/or any other programs executing under said Intel CPU. This arrangement preferably enables a module to be plugged into a PC and provide the functions described for said I-Scream transparently, in part at least, to the MOS. The method may be adapted to any UCDPS and/or system CPU and/or operating system.
Those experienced in the art will appreciate that modifications and/or patches to the system OS (eg MOS) may assist and/or replace, in part at least, the means used by said I-Scream.
Ghost Mouse Means (GMM) One non-limiting objective of the present invention is to provide a Mobile Pointer Coupled GUI means (that may also be referenced as a Ghost Mouse means in this specification).
When contrasted to methods that require the typing of text based commands the use of a display pointing means in conjunction with conttol images presented on a display means has simplified the use of UCDPS for many users. These control images may be generically referenced, in part at least, as a Graphical User Interface (GUI).
The components of a GUI are known to those experienced in the art and the present invention allows for any image objects used by the known art (eg Windows 95, Macintosh computers). Said conttol objects may include one at least control functions described in this specification. Non-limiting examples of conttol objects may include icons, menus (that may include pull down menus), graphical tools (eg scissors image to represent a image cutting tool, paint brushes etc), scroll bars, windows, window sizing objects, clocks, mouse pointer (that may be any shape) power indicators, speaker controls, display controls, etc.
Said display pointing means is usually implemented in conjunction with a mouse (or any variation eg, trackball, touch pad, joystick etc). It may also use touch screens, light pens, remote conttol (eg I/R or radio), audio controls, key strokes, or any other means of interacting with control images presented to the user on a computer display means.
The convenience provided by a GUI may be associated with a number of limitations that may include, one at least, of the following: » The provision of display resources for conttol objects may reduce display real estate available for applications. This may be a particular problem when multiple windows are open. β The known art usually locates control objects at the periphery of work areas (eg. a window) and/or coupled to another work area. This may entail significant pointer movement on a repeated basis to one at least locations. Said movement is usually a result of mechanical movement of a physical means (eg. a mouse) by the user. This repetitive physical motion may be particularly inefficient for the pointer means built into laptop computers .
One objective of said Ghost Mouse means is to organise one at least control objects (preferably as one at least graphical and/or text images) in a location(s) that is preferably adjacent (and/or in any other way closely coupled) to one at least: pointer means (for example, the mouse pointer) and/or one at least cursor means (or equivalent). The invention allows that one at least control objects may be arranged in any other, one at least, locations relative to said pointer and/or cursor.
Part at least of said control objects are preferably arranged such that their location on the display area changes as said pointer and/or cursor means is moved around said display means. Said changes in location are preferably a function of the variation in x and/or y co-ordinates of said pointer and/or cursor means. Said conttol object(s) preferably maintains their positional relationship with said pointer and/or cursor.
Said control objects are preferably collated into one at least areas that may be any shape. Said area(s) may be defined by any means that preferably includes one at least of the following: • an outline characterised by solid or dashed lines and/or curves that may be one at least colors that preferably differentiate it from the other display information (in particular information external to said Ghost Mouse); • a background characterised by one at least colors that preferably differentiate it from other displayed information (in particular information external to said Ghost Mouse). Said area(s), in part at least, may be within the mouse pointer image displayed on the display means. Said mouse pointer image may be modified to accommodate this information. Said area(s) may be closely coupled to said mouse pointer image. Said area(s) may be presented in any other arrangement and may or may not be coupled to said mouse pointer.
Said conttol objects and/or background and/or outline and/or any other objects (text and/or graphics and/or virtual objects), in part at least, may constitute the Ghost Mouse means of the present invention.
Said Ghost Mouse means preferably can be manipulated around the x and y co-ordinates of the display means, in part at least, under the control of the user. As such the Ghost Mouse may (preferably temporarily) obscure, in part at least, other information being displayed and/or intended for display. Any one or multiple parts of said Ghost Mouse Means is preferably capable of being displayed with multiple levels of transparency. If part at least, of the pixels used to display said ghost mouse are set to a level of 0% transparency, then said pixels would usually display that part of said ghost mouse as a solid object and that part of the ghost mouse would overlay any underlying images. If part at least, of the pixels used to display said ghost mouse are set to 100% transparency, then said pixels would usually not display any information pertaining to that part of said ghost mouse and information not part of said ghost mouse would effectively overlay said ghost mouse. If part at least of the pixels are set to transparency greater than 0% and less than 100%, then said pixels would usually display information that in part represents said ghost mouse and in part represents information not part of said ghost mouse (eg. an application(s) program). The level of ttansparency is preferably user selectable/programmable. The user preferably can make the mouse disappear, co-exist with other information and/or overlay as a solid object. The display overlay and ttansparency means previously described may be used to implement this function.
The preferred method of creating transparent pixels is to average the color information of ghost mouse pixels with pixels representing other information and present them as a composite value suitably weighted to match the desired level of ttansparency. This preferably uses the means described in this specification using algorithms implemented in hardware. The invention allows that these algorithms may be implemented, in part at least, using any means and this may include software methods. The ghost mouse may be implemented as a solid overlay without a ttansparent function. An alternative (and/or conjunctive) method of displaying ghost mouse pixels and pixels representing other information within, part at least, of the area defined by said ghost mouse is. by displaying some pixels representing 100% ghost mouse information and some pixels representing 100% said other information. For example every second pixel may be a ghost mouse pixel. The invention allows for any proportion of ghost mouse pixels in any arrangement and said arrangement may vary in any way. Said 100% may be replaced in part at least with any level of transparency.
The means described for ttansparency applying to the Ghost Mouse Means may be applied, in part at least, to any other objects, in particular, advertising and web page display.
As described elsewhere in this specification, objects displayed using the present invention may exist in one at least screens and when a plurality of screens are present, one screen may have display priority of one at least others. Each screen may be comprised of one at least windows and/or any other objects and one at least window and/or other objects may have display priority over one at least other windows and/or said other objects. One at least windows may include one at least window objects and one at least window objects may have priority over one at least other said window objects. Because the Ghost Mouse preferably provides control means to multiple windows and/or screens, it is preferable that it is displayed on top of all other display objects. However, the invention allows that it may have a lower priority than one at least screens and this may be absolute (ie. not visible) and/or be visible on a transparent basis. For a particular screen, said ghost mouse may have lower priority compared with one at least windows and this may be absolute (ie. not visible) and/or be visible on a ttansparent basis. For a particular window, said ghost mouse may have lower priority compared with one at least window objects and this may be absolute (ie. not visible) and/or be visible on a transparent basis. The effect of this may be that as the ghost mouse is moved around the display means it disappears, in part at least, behind one at least screens and/or windows and/or objects.
The ghost mouse is preferably implemented using the overlay means previously described as this permits the overlay area representing said Ghost Mouse to move around a display area without a requirement to keep track of the underlying information. The movement of said Ghost Mouse is preferably in response to the movement of a mouse means (or equivalent, eg trackball, Joystick, any pointing means etc). The activation of objects within and/or otherwise coupled to said Ghost Mouse is preferably in response to selection (eg clicking) one at least buttons coupled to said mouse means and/or equivalent. Said movement and/or activation may be in response, in part at least, to one at least other means, for example, selection of one at least keys on a keyboard means coupled to a UCDPS. The Mouse Intercept Means previously described may be adapted to provide for the Ghost Mouse Means. For example, if the mouse pointer presently overlays a MOS area 115 of Figure 5, and the Ghost Mouse is activated (eg by clicking the RMB) the secure processor 5 preferably ceases passing mouse movement and mouse click information to MOS. It preferably sends MOS information to move the pointer if one at least operation activated with the GMM results in movement of the pointer. If the GMM commands apply to the MOS environment, the Secure Processing Means 5 may try to synthesise their effect through a combination of: system memory access and/or emulating mouse pointer movement and/or clicking (preferably without display said mouse pointer movement); and/or modifying and/or patching the MOS to recognize commands passed to it (eg via dual port memory 127/128), as non-limiting examples. When the Ghost Mouse is to command means operating, in part at least, under the Secure Processing Means 5, said means operating and/or said Secure Processing Means are preferably capable of acting directly on the commands.
The ghost mouse is now described in more detail with reference to Figure 6. A mouse pointer 202 in the shape of an arrow is shown, however, this may be represented by any shape and there may be multiple pointers. The outline of the ghost mouse is represented by rectangle 200. The outline and/or ghost mouse may be any shape. The ghost mouse may be a plurality and said plurality may be coupled and/or discrete. The invention allows that the mouse pointer may be: part of a first screen means and/or under the conttol of a first operating system means, and the ghost mouse may be part of one at least second screen means and/or under the conttol of one at least second operating system means. Said pointer and ghost mouse may appear to be one and/or closely coupled, however this may be a illusion caused by the pointer means and GMM being caused to move in unison and/or as a function of one and/or the other. The pointer that may be coupled to and/or part of the GMM may be additional to one at least pointers coupled to one at least operating systems, eg, MOS, however, only one pointer may be seen if they share the same co-ordinates and move in unison (or equivalent). The ghost mouse may be attached to the mouse pointer as shown in Figure 6, and/or separated and/or detached from said mouse pointer and/or within said mouse pointer.
The ghost mouse preferably includes control objects. Unless the point of conttol is implicit by a GMM icon/command etc, it is preferably the object at the tip of the currently visible pointer means (the pointer may overlay multiple levels of potentially controllable objects) . The location of said pointer(s) preferably changes to suit the location of the GMM on the display area. For example, the pointer as shown in Figure 6 may be appropriate if the GMM is in the top left of the display area. As the GMM is moved to the bottom left of the display area the pointer preferably relocates to the bottom left comer of the GMM shown in figure 6. As the GMM moves to the right of the display area the pointer preferably relocates to the bottom right of the GMM. As the GMM moves to the top right of the display area the pointer preferably relocates to the top right of the GMM. The invention allows that the position and/or orientation and/or any other characteristics of one at least objects coupled to and/or within said GMM may vary depending on the position of the GMM within the display area. The conttol objects shown in Figure 6 may only be displayed in part, and/or may be replaced and/or added to, in part at least, with any other objects.
The control objects displayed and/or the functions of the conttol objects may dynamically vary, in part at least, to accommodate the screen(s), window(s) and/or object(s) they are currently controlling.
The preferred mode of operation is to have the ghost mouse hidden, in part at least, until activated. In this case, the mouse pointer may behave as a normal mouse pointer. Any means may be used to activate the ghost mouse, a process that preferably displays the ghost mouse control objects, in part at least.
The preferred method of activating the Ghost Mouse Means is to click the least frequently used available mouse button, preferably only once. For example the Right Mouse Button (RMB) of a PC mouse is less often used. Clicking said RMB preferably activates said Ghost Mouse, in part at least. If the user actually needs to use the RMB, the preferred method is to include a RMB activation means within said Ghost Mouse. This may then be clicked or otherwise activated. In this embodiment, to access the normal RMB function, the user, for example, may click the RMB once to activate the Ghost Mouse and click the RMB icon within said Ghost Mouse. Other non-limiting means may include: • double and/or triple click one or both mouse buttons (in a two button mouse) and/or • use one at least additional buttons (for example by supplying a physical mouse means with three at least buttons) and/or • by one at least key strokes of the UCDPS keyboard.
As a non-limiting example only, the embodiment described with reference to the drawings assumes the RMB is used to activate the Ghost Mouse and that there is a RMB control object available within said Ghost Mouse to provide the usual RMB functions. Once activated the Left Mouse Button (LMB) is used as the usual selection tool for GMM functions (many users may instinctively select LMB's). A LMB control object is preferably available within the GMM. The RMB is kept for special GMM functions. Another preferred alternative maintain the LMB as a normal button, allowing the normal pointer means to concurrently function and utilizes a plurality of RMB clicks to determine a plurality of GMM functions. The description of one at least GMM functions being elicited by one or plural clicks of the RMB and/or LMB is not limiting and said elicited may use any means.
It is preferable that when the ghost mouse is activated the control means are applied to the Controlled Object(s) (eg. window and/or screen) that the mouse pointer overlays at the time of activation and/or the Controlled Object(s) that is currently activated (eg. an active window). It is preferable that the controlled object(s) is identified by the 'active window/screen indicator' 210. For example, if there are multiple screens on the display, each screen may have a name and/or graphical indicator (eg. there may be a Microsoft Windows 95 screen, a game screen and an Internet screen). Indicator 210 may show the screen(s) that the ghost mouse is currently activated for. It preferably also includes the name and/or symbolic ID of the currently active window(s) and/or object(s).
• The screen(s) and/or window(s) and or object(s) controlled by said control objects may be referenced as Controlled Objects in this specification. The conttol objects displayed and/or the functions of said control objects may be statically and/or dynamically varied using any control update means .
It is preferable that there is at least one Conttolled Object Ghost Mouse Structure (COGMS) that defines, in part at least, the displayed control objects and their functions when the Ghost Mouse Means (GMM) is active and/or located within one at least Controlled Object(s). It is preferable that there may be a specific COGMS for each application program and/or for each window opened by said application program. Said COGM may include information provided with the program (and/or as a separate file) and/or may be created and/or edited by the user. The preferred method constructs the COGMS as a text file.
The use of a GMM may change the conventional representation of a Window, for example, as it is possible to remove all control objects from the Window itself, said Window may only be defined by a bounding perimeter and this may be zero pixels wide..
Ghost Mouse Means (GMM) Navigation Tools. A means is usually required to select one at least control objects within said GMM 200. The preferred method uses, one at least, Internal Pointer Means (IPM) 201. When d e Ghost Mouse is activated it is preferable that the Internal Pointer Means (IPM) 201 becomes active. As the mouse is moved, IMP 201 preferably moves and pointer 202 preferably remains stationary (unless programmed to do otherwise). Internal Pointer Means 201 is the preferred means of selecting the conttol objects of the ghost mouse. The preferred method of activating the GMM in a PC based on Intel CPU and MOS is by clicking the RMB 300 once. The pointer means 202 preferably remains stationary after the GMM is activated (until otherwise ordered) and the LMB299 and RMB 300 perform functions in response to die GMM. While in GMM mode, the Move control object 172 may be activated by placing pointer 201 over it and clicking the LMB 299. This enables the GMM and preferably pointer 202 to move around the display area and the LMB 299 preferably functions as a normal LMB 299 button. Clicking RMB 300 preferably returns to GMM mode. An alternative arrangement may require one at least mouse buttons to be kept activated while pointer 201 overlies the Move conttol object 172 to enable the GMM (and/or pointer 202) to be moved around the display area. If the internal pointer 201 is placed over the LMB conttol object 171 and the LMB 299 button clicked, a response at pointer 202 location preferably occur that is equivalent to clicking the LMB 299 in non-GMM mode. If pointer 201 overlays LMB conttol object 171 and the LMB 299 kept activated, the GMM and/or pointer 202 preferably move and act as would the mouse pointer 202 should it be dragged with the LMB 299 activated. The RMB control object 173 preferably provides RMB 300 functions for non-GMM modes.
When pointer 201 overlays Mouse Remote control object 247 a menu is preferably opened (not shown) that permits the pointer 202 and/or the GMM to be moved around the display area. For example a conttol object such as Location 230 control means used to move screen, windows and/or objects may be provided. Any emulation of mouse movements and or actions is allowed for. This is preferably user programmable to permit flexibility of functions.
The GMM is preferably able to display advertising material 205. As the Ghost Mouse Means is preferably constructed as a secure overlay means said advertising is also preferably secure and displayed on a priority basis. The means to deliver said advertising are described elsewhere in this specification. Said area 205 may be used for any other reason, for example, to deliver messages to the user from the Secure Processing Means. Area 206 preferably provides the user to further information on advertisers, eg it may open up a window with more detailed information. The advertising means described in this specification preferably may apply, in part at least, to advertising material displayed in said GMM and/or activated from within said GMM.
Reference to 191 demonstrates internal pointer means 201 surrounded by one at least objects (eg 170a and 170b). This preferably provides a shortcut means to move the pointer 201 around said GMM (and/or directly to deeper levels of said GMM, eg direct to the objects displayed when active control object 167 is selected). The user, preferably using the GMM programming functions that may be activated by conttol object Program GMM 207, may place targets 170ax and 170bx within the area of the GMM. When said targets are created an equivalent control object eg 170a and 170b is preferably created in close proximity to pointer 201. These preferably move with said internal pointer 201 and preferably are not displayed until enabled, for example by clicking the RMB twice. The pointer 201 may then be overlaid on the desired destination, eg 170a and the LMB clicked (for example). The pointer 201 is preferably relocated to the equivalent target 17ax. This system may be extended to place targets outside said GMM and may be further extended to a normal mouse (or equivalent) pointer means to rapidly move a pointer means to a plurality of display area screens, windows and/or objects.
The Program mouse conttol object 207 when clicked preferably brings up a menu that permits the user to program various functions in to the GMM. For example they may be able to move control objects, create new control objects, edit existing control objects as non-limiting examples. For example, the menu control object 250 preferably displays menus relevant to the presently controlled object (eg a window) and may include multiple hierarchical menus. The user may wish to place more frequently used menu items in easily accessed locations, eg. Save 251, Open 253, Edit 260, Cut 262, Paste 263 as non-limiting examples. Additional control objects may also be available (these may be supplied to the user and/or created by the user, preferable using a conttol object programming means/language). Non- limiting examples of additional conttol objects may include, Save-H- 252 and/or Open++ 254 that preferably displays a history of previously used directories that the user may save to and/or load from respectively. It is preferable that when objects are cut and/or copied ύiat they are stored in a clipboard and it is preferable that said clipboard retains a record of information cut and/or copied over multiple cut and/or copy operations. The Edit Clip 261 conttol object preferably permits the user to edit said record of information. The Paste++ control object preferably enables the user to access said record of information and select the part(s) they wish to paste. Other non-limiting examples may include a conttol object (not shown) that permits multiple blocks of text and/or other objects to be selected to permit said multiple blocks of text to be cut, and/or copied, and/or changes fonts and/or other attributes etc.
The Local Tools 270 control object may permit the user to display additional control means relevant to the presently controlled screen and/or window and/or object and/or application eg display a palette in a paint program. The Icons 273 control object preferably displays one at least icons from a screen and/or window and/or any other means. For example, Icons may not be displayed on the screen, in part at least, and are access by clicking said 273.
The Secure 301, conttol object preferably activates a menu that provides access the secure functions of the Secure Processing Means and/or secure operating system. For example it may provide a secure electronic funds and/or ordering function. It may provide access to the various means to control/select rights of access applying to EIC. These are non-limiting examples. Control object Password 302 preferably provides access to a secure password means, for example, it may need to be entered prior to activating any functions on a UCDPS after power up and/or reset; and/or to enter one at least files and/or partitions on one at least hard drives and/or any other secure function. One potential difficulty with multiple screens and windows is being able to readily access information at multiple locations that may be at multiple depths. It may also be difficult move to and/or resize screens and/or windows and/or objects. The Scroll control object 225 provides a means to scroll controlled objects, the Location control object 230 may reposition the screen and/or window and/or object within the display area (and/or off the display area in part at least). The Size conttol object 280 may change the size of a controlled object.
Scroll Control Object Means 225. The prior art describes a means for vertically scrolling the contents of a window by a control means located on the vertical border of said window. It also describes a means for horizontally scrolling the contents of a window by a control means located on a horizontal border of said window. This is not the most efficient means of scrolling window contents. An improvement to the art is the supply of a mouse (see Microsoft Intellimouse) that include a small wheel that can be rotated to scroll the active window contents. The present invention provides a flexible means of scrolling one at least windows using a graphical control object that is preferably adjacent to the current mouse pointer. It preferably does not require a special mouse and provides an enhanced memod of viewing window contents. It preferably includes user programmable scroll functions.
By moving pointer 201 to the scroll conttol area 225 various scroll functions may be activated in the active and/or local (the one presently overlaid by the GMM) window(s). For example, clicking on 225a may cause the window contents to scroll to the left, revealing information to the right of that presently displayed. Clicking on 225b may cause the opposite to occur. Clicking on 225c may cause window contents to scroll upwards and clicking on 225d may cause window contents to scroll down. A vectored scrolling means is preferably provided, for example clicking on the circle 225e preferably causes the window contents to scroll in that direction (or at 180 degrees to said direction). Said vectored means preferably provides simultaneous vertical and horizontal scrolling with the vertical and horizontal component preferably determined by the position of internal pointer 201 on circle 225e. One means of scrolling contents is to repetitively click on the appropriate part of the scroll control means 225. This may become tedious and the Ghost Mouse means preferably includes an automatic scroll means 227. The preferred embodiment activates the auto mode by clicking on AUTO 227 and disables it by re-clicking 227. The text AUTO is preferably toggled to the word STOP once in the auto mode. It is preferable that clicking on any scroll conttol means 225 a,b,c,d,e will activate scrolling in the desired direction and this preferably continues until stopped. Any means may be used to stop scrolling, with the preferred means including one at least of the following: • click on stop that disables auto feature. • click on centre 225f of circle 225e that temporarily stops scrolling (that is preferably reactivated by clicking 225 a,b,c,d or e). • click on 225 a,b,c,d and/or e that causes scrolling to occur in the new direction. It is preferable that there is a means to adjust the rate of scrolling. This is preferably implemented clicking conttol object 'F 226 to increase the speed of scrolling and control object 'S' 228 to reduce the rate of scrolling.
The Location control object means 230 preferably has similar controls as said scroll conttol object 225, however, they are preferably used to slide and/or move a screen(s) around and/or off (in part at least) the display area; and/or a window(s) and/or object(s) around a screen; and/or object(s) around a window(s). For example, clicking on object 230a may cause the controlled object to move to the right, 230b may cause it to move left, 230c may cause it to move up and/or 230d may cause it to move down. Choosing a point on the circle 230e may cause the controlled object to follow that vector. The control objects 231, 232, 233, preferably have equivalent functions (as applied to Location functions) as do scroll conttol objects 226, 227, and 228 respectively.
The Size control object means 280 preferably has similar control functions as said scroll control object 225, however, they are preferably used to increase and/or decrease the size of screens and/or windows and/or objects. A controlled object is preferably increased to the right by clicking on 280a and reduced from the right by clicking inside circle 280e adjacent to 280a. A controlled object is preferably increased to the left by clicking on 280b and reduced from the left by clicking inside circle 280e adjacent to 280b. A conttolled object is preferably increased to the top by clicking on 280c and reduced from the top by clicking inside circle 280e adjacent to 280c. A controlled object is preferably inσeased to the bottom by clicking on 280d and reduced from the bottom by clicking inside circle 280e adjacent to 280d. Similar increase and/or decrease along any vector preferably may be achieved by selecting a particular location outside and/or inside circle 280e. Conttol object 280g preferably expands to top and bottom equally, and 280h preferably reduces from top and bottom equally. Control object 280i preferably expands to the right and left equally, and 280j preferably reduces from the right and left equally. Other objects (not shown) may expand equally in all directions, in part at least, and/or reduce in all directions, in part at least. The conttol objects 281, 282, 283, preferably have equivalent functions (as applied to Location functions) as do scroll control objects 226, 227, and 228 respectively.
Determining the target of one at least of Scroll 225, Location 230, and/or Size 280, collectively referenced as display managers, may use any means. By clicking the Local 166 conttol object said display managers preferably apply to the object that the pointer 202 presently overlays. By clicking the Active control object 167 said display managers preferably apply to the presently active object. The display managers preferably act on the lowest active component. For example, if a screen has been activated and no objects and/or windows within said screen, then said display managers preferably act on said screen. The ID of the active screen is preferably displayed in area 210. If a window(s) is activated within a screen then said display managers preferably act on said window(s). The ID of the active Window is preferably displayed in area 170 and the ID of its host screen is preferably displayed in area 210. If another object type (eg an icon) is active within a screen, then said display managers preferably act on said object. The ID of the active object is preferably displayed in area 171 together with the ID of its host screen in area 210. If an object within a window is presently active, the display managers preferably act on said object within. The ID of said object within is preferably displayed within area 171, the ID of its host Window is preferably displayed within area 170 and the ID of the Windows host screen is preferably displayed within area 210. The Default 165, control object preferably allows the user to store the ID of the Screen/Window/Object currently affected by said display managers by double clicking one at least mouse buttons. Preferably by single clicking one at least mouse buttons the stored ID is preferably used to immediately program the display managers to act on the Screen/window/object coupled to the stored ID.
The Show Active 275, control object preferably displays the presently active object. This is preferably achieved by sliding all overlying higher priority screens and/or windows and/or objects away. This process is preferably reversed by re-clicking said Show Active 275 (that may have a different label to indicate its changed state).
When a Window is varied in size dαe usual result is the cropping of the contents of the window to fit the new size. In the case of WWW pages, for example, the text may rewrap and become removed from linked images etc. The FIT control object 218 may be used to compress the objects comprising at least part of a window means such that they fit within said window area. The compression preferably maintains perspective. The degree of compression is preferably determined by the amount required to fit d e horizontal component within said window. This may be particularly applicable where there may only be a small amount of cropping on the horizontal axis compared a large amount on the vertical axis. For example, when viewing a World Wide Web (WWW) page on a browser, part of the page (usually the right side) may not be visible and it is usually brought into view by scrolling. A small amount of compression may fit the entire widtii of the page in the Window. In contrast, there may be many vertical rows to die page and compressing this into the window may result in unreadable text/images. Hardware and software methods of compressing and magnifying images are known to die art. The use of Java and Dynamic HTML are allowing web page builders to construct formatted pages that retain the format across multiple display means and resolutions. The FTT facility may be a useful adjunct, allowing said format pages to retain their spatial relationships while adapting to a plurality of Window sizes.
The transparent control object 221 preferably allows the user to adjust ttansparency of screens, windows and/or objects. This function is also available at a deeper menu level, preferably selected by double clicking the Active control object 167 and described under this function.
Wormholes. When a display area has multiple screens and/or windows and/or objects, it may be difficult for the user to view plural information originating from a plurality of screens and/or windows and/or objects and/or from a plurality of locations within any one at least of said screens and/or windows and/or objects. The prior art describes a method of splitting window so tiiat plural parts of a window may be viewed simultaneously and/or that enables part of plural windows to be viewed at once. This is a limited function tiiat only permits the windows to be split along a horizontal line that extends the width of the window. The function may only be applied to windows wiύiin die one application eg two Microsoft Word windows may be opened and split. The present invention seeks to describe a means, referenced as Wormholes, that permit the user to create view ports to plural information that may be disttibuted across multiple applications and/or windows and/or objects and/or screens and/or operating systems. For example, the user may have a secure application executing and be able to cut a hole to view operations in a simultaneously executing program in a MOS environment. Furthermore, the wormholes may be any shape and may extend through one at least layers of overlying screens and/or windows and/or objects. It is preferable that wormholes maybe dragged. Reference is now made to Figure 7. This shows a display area 156 that may have two windows 151 and 152 (these may be screens and/or windows and/or any other objects). For example, wormhole 151 may be created, for example using d e Worm 219 control object on die GMM, on window 150. Although shown as a rectangle, it is preferable that this may be any shape. Said wormhole is programmed to penetrate overlaying screens and/or windows and/or objects. It is preferable that die wormhole may be programmed to said penetrate to a preferably user determined number of overlaying means. This may be all overlaying means that would ensure the wormhole was always displayed and/or a subset of overlaying means, that may result in display of the wormhole being obstructed by one at least overlying means. It is preferable that die penetration of die wormhole to die front of the display area maybe on a ttansparency basis (eg. wormhole pixels are mixed, in part at least, with information from some at least overlying pixels). This is an example of 'push transparency' wherein an object that is buried, in part at least, behind other displayed means may push forward to be seen on a level determined by its 'push transparency index. Push ttansparency = 100% preferably equals wormholes fully visible and 0% preferably equals wormhole invisibility. This is in contrast to usual ttansparency means, wherein the ttansparency of an overlaying object usually determines how much show dirough of underlying pixels is permitted. For die present example, it is assumed tiiat the wormhole is fully visible (eg push ttansparency of 100%). With reference to figure 7 and modified display area 157, window 152 may be moved to partially overlay window 150, however, wormhole 151 is displayed through window 152. In this embodiment it is preferable that wormhole 151 moves with its host window 150. This is preferably subject to one at least options. It may be diat one at least other windows (not shown) may overlay window 150, however, tiiey may have a higher display priority than the wormhole 151, preventing it being displayed, in part at least.
It is preferable tiiat there is an option to permit the wormhole to be moved independently of its host object. For example, display area 158 shows the windows 150 and 152 in the same location, however, the wormhole 151 has been dragged to a new co-ordinate in the display area. It may be that information displayed in wormhole 151 continues to be displayed in the original window 150 at location 151a when not covered by other objects. Said wormhole 151 preferably may be moved to any user determined (and/or determined by any other means) location as required. It is preferable that there is an option to link or unlink the movement of a wormhole. In the unlinked mode (display area 160) the wormhole does not move in relationship to other objects. In the linked mode as shown in display area 159 the wormhole may be linked to another object eg window 152 and subsequently moves with said window 152, preferably maintaining its relationship to other objects within said 152. The invention allows that a wormhole may be linked to another part of the means from which it originated. For example (not shown), the wormhole may be dragged to a new position within Window 150 and linked to this position. This maybe useful in a spreadsheet, for example, where sets of figures in plural locations may need to be examined concurrently. The wormhole provides much greater flexibility than the cruder option of splitting the window(s) of a spreadsheet. Furthermore, for example, a wormhole may be established to view a plurality of spreadsheets and/or one at least other means, that may exist as separate applications and/or screens and/or windows and/or operating systems (that may includes secure operating systems). The invention allows for a plurality of wormholes and diey may have different characteristics and apply to multiple means.
Active Object Selection and Priority Selection. The reader is referred back to figure 6a. It is preferable that there is a means to modify active means and/or determine active means, and/or change the priority of screens and/or windows and/or objects and/or modify other attributes affecting control objects and/or controlled objects. The preferred method to do this is to double click the Active control object 167 and bring up a selection means as shown coupled to object 167 of figure 6a. The selection means preferably highlights and/or otherwise identifies die characteristics pertaining to die presently active mean (eg screen(s) and/or window(s) and/or object(s), that may be collectively referenced as SMO's). As a non-limiting example, suppose that the user wishes to apply the display managers and/or any other means to act on a screen identified as S4. They would preferably click on screen selector 270 that preferably displays available screens, in part at least. The user preferably clicks (eg LMB) die icon identified as screen S4 that preferably becomes die active screen. In a system where there may be a plurality of displayed (and/or potentially displayed) SMO's, the user may not know or be sure of the contents of one at least said SMO's.
It is preferable that there is one at least means for the user to ascertain die contents of one at least SMO's, non- limiting examples may include one at least of the following: • For example, the affected SMO, in the present example e actual screen S4, may be shown, in part at least, when the pointer 201 overlays the icon S4. This option is preferably selected by conttol object Show 281. This would preferably apply whenever the pointer 201 overlays any of the selection means SO-Sn; and/or SOO-Son; and/or WO-Wn; and/or WOO-Won, until deselected, preferably by re-clicking said 281. It is preferable that when the SMO, eg Screen S4 is displayed tiiat it may be shown on a ttansparent basis (eg it preferably has a push transparency less than 100%). This is preferably selected by conttol object 284. The display of said screen S4 (and/or any other SMO) is preferably able to be faded up (at a rate preferably selected by said 284) and when it is no longer needed, it is preferably faded out at a rate also preferably selected by said 284. • A text and/or image label is coupled to the relevant icon eg S4. This option maybe selected by Label conttol means 282. • A notes means may be coupled to die relevant icon eg S4 that is compiled, in part at least, by die user. This may include the users own description of the contents and/or any comments. It is preferable that the notes means maybe edited by said user. This option is preferably selected by Notes control means 283.
Should the user wish to activate an object within a screen, eg screen S4, it is preferable that they select die screen using the method described and then click 271 to indicate tiiey wish to activate a screen object. This preferably displays a selection means 271a tiiat includes objects (preferably excluding windows tiiat preferably have a separate conttol means) within said screen, eg S4. The user preferably overlays the desired object, eg S03 and clicks tiiis. If this is the end of die exercise they may close the selection means, preferably by clicking Close control object 276.
Alternatively, for example, the user may wish to activate Window W2 within Screen SI. In tiiis instance they may click the Screen conttol 270 and select S 1. They preferably then click Window conttol object 272 to indicate the next step is access to a Window(s). They may then click on the W2 icon to select Window W2. Should the user wish to select an object, eg W04, within said Window, eg W2, tiiey preferably click Window Object Control 273 and then click icon W04.
The selection means coupled to said Active 167a preferably may be used to move objects and/or windows and/or screens and/or vary the display priorities of one at least SMO. For example, the selection means 270a may be used to vary the display priorities of one at least screens. One method allows the use to place die pointer 201 over a screen icon, eg S2 and holding the RMB down, drag S2 to the desired location, for example, it may be dragged to location Sn wherein said S2 preferably becomes the topmost screen. An alternative, non-limiting example, may be to click the move button, then select S2 and then click Sn to indicate where S2 is to be moved. A similar process maybe applied to changing the display (and/or any other) priorities of screen objects SOO-SOn, and/or Windows WO-Wn, and/or Window Objects WO0-WO0 and/or any otiier means. The mediod may also be adapted to move Window object(s) from at least one Window to another one at least Window and/or screen. For example, activate W04 using die preceding methods. Click the move icon 277 and for example click W0 to move die object to Window W0, and/or click Screen S2, for example, to move it to Screen S2 where it may become a screen object. A similar process may be applied to one at least Windows WO-Wn and/or Screen Objects SOO-SOn.
The transparency control object 279 and/or push conttol object 278 may be used to adjust transparency of one at least active objects. For example, by activating Screen S4 and giving it a ttansparency of 50%, it preferably allows underlying screens (and/or other SMOs) to show through at 50%. The depth that this is permitted may also be limited. For example, it may be restricted to a depth of S2, for example, by clicking on S2 after selecting Transparency 279. A similar process may be applied to the push control 278 that preferably determines the intensity and number of layers that S4 penetrates to the top of the display area. This process may be applied to any one at least SMO. The worm control object 290 is preferably available to create wormholes and apply one at least attributes. Wormholes preferably show in the selection means as WO and/or SO objects. They preferably include a means to show the depth of penetration (eg a dotted line linking wormhole to objects it penetrates. The wormhole preferably has variable ttansparency. This may be determined by die Transparency 279/Push 278 means, for example. The remove conttol object 297, preferably deletes a currently selected wormhole(s). A new wormhole is preferably drawn on a selected object using die Draw control object 291. This may display one at least default shapes, eg circle 292, square 293. Draw 291 preferably displays, one at least, means, eg similar to said 280, to enlarge, modify, etc the wormhole. Control object 294 preferable enables the wormhole to be dragged and/or moved. Control object 296 may allow the wormhole to be unlinked and control object 295 may link the wormhole to one at least SMO.
it is preferable that wormholes may be created by burrowing into displayed objects to unveil underlying means. This is preferably implemented using the Worm 219 control in the main body of the GMM 200.
The Transparency control object 208 preferably provides a means for the GMM to be varied in ttansparency relative to underlying means.
The Zoom conttol object 190 preferably allows the size of the GMM and/or objects within said GMM to be varied in size.
The embodiment described with reference to Figure 6 and 6a is to demonstrate non-limiting examples of functions that may be include in a GMM. The invention allows that one at least custom control objects 298 may be provided. The invention allows that a programming language may be developed to enable developers and/or end users to develop additional functions and/or utilize known functions. The invention also allows that the means of the GMM may be applied, in part at least, to conttol means that are not part of a GMM. The invention allows that custom GMM may be created to suit the requirements of one at least Screens and/or Windows and/or objects and/or applications. For example, a GMM to optimise a net browser means is described later that may include multiple scroll objects 225.
The invention allows that the images and/or other symbolic conttol means described for said Ghost Mouse means may be implemented, in part at least, with physical means coupled to any hardware component of said display pointing means (for example, on the physical mouse), keyboard or any other physical device.
(C) Advertising Multimedia is expected to converge in terms of: • die means used to deliver it to users, and/or • the means used to meter its use and/or • the means used to bill for its use and/or • the hardware and software means that convert digital information to a usable format (eg. sound, images) and/or • the way that advertising is used to sponsor information consumption. The term advertising preferably may be applied to any promotional material. Said advertising may be static and/or dynamic and/or include moving images and/or include static images and/or be coupled to audio and/or text, as non- limiting examples. The methods disclosed in this specification for presenting advertising, for example, the overlay of advertising over other displayed information, preferably may be applied to the display of any other types of digital content and/or display means, for example, the overlay of a ghost mouse and/or net browser.
At present the marriage of advertising and electronic content information is somewhat variable depending on applications. The linking of advertising content to web pages in particular is becoming increasingly annoying as it begins to overwhelm the web page content. One non-limiting objective of the present invention is to describe a means of harmonizing die presentation of advertising content information with other content information. This is preferably achieved using a means, that in part at least, may be metered and/or otherwise regulated using secure processing coupled to a User Conttolled Data Processing System (UCDPS) and preferably may occur, in part at least, offline. Said advertising is preferably uncoupled, in part at least, from said Electronic Content Information and preferably may be applied to plural types of content. The invention allows for a plurality of advertising means. The decoupling of advertising from particular content preferably enables said advertising to subsidize information that, in part at least, may be determined by the consumer. Additionally, said decoupling preferably provides the consumer with the option of selecting how they want said advertising to interact and/or interfere with EIC. The preferred method of decoupling is to locate die advertising area(s), in part at least, outside non-advertising information area(s) and/or decouple content and advertising with respect to time.
The system of advertising described by the present invention preferably provides die option for the user to determine whedier they want advertising sponsorship, in part at least. Said advertising preferably may be used across various types of information content (eg it is preferably not limited to web pages). The consumer is preferably provided the option of not displaying advertising material. The consumer is preferably able to determine (preferably dynamically) whether or not they want the display of advertising material. If consumers decline the use of advertising the use electronic content information is preferably metered and the user billed using any of the methods described in said specifications incorporated by reference, and/or means described in this specification. If the advertisers are paying, EIC use and Electtonic Advertising Content use are preferably both metered and used, in part at least to determine how much the advertiser may be billed for content use by consumers (and/or for any other reason).
The preferred means for the consumer to select advertising preferences is via the Secure control object 301, on the Ghost Mouse Means. This preferably displays a menu (eg using the overlay means of the present invention) that provides an Advertising Menu. This preferably provides the user with a plurality of options. One at least said options, preferably allows the user to inactivate advertising and/or specify on what conditions it may be used. Said advertising menu preferably permits the consumer(s) to enter a profile about diemselves that may be used, in part at least, to determine the type of advertising and/or conditions attached to said advertising that may apply to said consumer(s).
A non-limiting objective of die present invention is to describe one at least means to electronically display advertising information in one or multiple areas on a UCDPS display area. Said means are preferably operable offline and or online, in part at least. Said means are preferably secure, in part at least. Non-limiting functions of said advertising means may include, one at least, of the following, in part at least: 1) Priority Advertising Means ensures that advertising material supplied to the consumer, preferably in a tamperproof software container (for example using the PSO described in said WO 97/25675 by Griffits and/or the secure software container described in said WO 96/27155 by Shear et al,), is displayed using a means that preferably is not practical to bypass: <» by the user and/or • one at least unauthorised software and/or hardware means, said unauthorised software means may include: • one at least operating systems (for example one at least Microsoft Operating Systems); and/or • one at least application programs; • by any otiier means. Said advertising preferably may be delivered witii (and/or be part of) non-advertising digital content and/or separate to said otiier non-advertising digital content. Said Priority Advertising Means (PAM) is preferably conttolled, in part at least, by means that are not part of the normal operating environment (although it may be), for example by an alternate operating system and/or processing means. Said alternate processing and/or operating system means is preferably secure, in part at least. One non-limiting means of implementing said security may use the secure processing device and/or secure operating system and/or secure rights management means of said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al. Said Priority Advertising Means (PAM) implemented, in part at least, with secure processes may also be referenced as a Secure Priority Advertising Means (SPAM) in this specification. One objective of said PAM/SPAM is to provide a means to place advertising in position(s) that preferably ensures the material is not obscured, in part at least, by other images (that may include otiier advertising). For example, if the consumer has agreed (implicitly or otherwise) to view advertising in exchange, in part at least, for subsidized (in part at least) access to Digital Content Information, it is reasonable that means are used to ensure that the advertising is displayed. It is preferable that said displayed is not overlaid by other material. Said priority is preferably obtained by one at least of the following: • overlaying advertising, in part at least, over a first group of image means (eg. graphics, text), however, the invention allows that a second group of image means may overlay said priority advertising, in part at least. • ii) using excess display area to display advertising, in part at least, for example, one non- limiting means may include confining the windows environment to an area (x-a) pixels wide and (y-b) pixels high, (where said 'a' is preferably greater or equal than 0 and less than x, and where said 'b' is preferably greater or equal than 0 and less than y) and displaying advertising, in part at least, within the residual area (eg. 'a' wide and 'b') high. The invention allows that the width and height parameters may be reversed. • iii) shrinking one at least screens and/or windows and/or objects and/or any other image means to provide a display area for advertising means, in part at least. • iv) including advertising in part at least of a screen and/or window and/or object and/or any other graphics means used as a screen saver. • v) using the area occupied by other advertising, in part at least, to display alternative advertising. • vi) including advertising material within and/or coupled to, one at least, displayed screen conttol means (for example, the ghost mouse means described in this specification, pop-up dialog boxes, pull down menus, on screen helpers etc), preferably without compromising said controls, in part at least. The user preferably can move the location of said screen control means. Said moved may include coupling to die position of a mouse pointer means, maintaining a constant and/or variable relationship to a mouse pointer means. Said screen controls are preferably variable in the level of their transparency relative to information that they may overlay. The protection of advertising material against tampering may be achieved, in part at least, by writing it to display memory buffers, preferably using secure means, and said buffers are preferably inaccessible by unauthorised processes. Said inaccessible preferably applies to both write and read processes. Said PAM/SPAM provides a means that may be used to ensure advertising is presented in a prominent position, however, the advertising may not be seen and/or interacted with. For example, if the advertising is presented in a format similar to that used with television commercials, wherein the program material is temporarily replaced widi advertising material, the consumer may leave the room, switch to an alternate information source etc. If the advertising is displayed concurrently to other useful information it is presumed tiiat some advertising benefit may be obtained. However, the consumer may not take any notice and/or interacts in any other way with the advertising.
The ability to preferentially display information on the display means of a UCDPS may provide a very powerful marketing tool. For example advertising presented during system booting, as part of screen savers and/or as part of display based conttol means (eg. ghost mouse) is likely to provide much greater exposure to users than many alternative means. Furthermore it may be displayed in a manner that ensures its presentation (if the display means is not blanked, switched off or otherwise limited in function). In contrast, for example, an ad witiiin a www page usually needs to be selected by the user from millions of alternatives and it is susceptible to bypassing (eg extraction).
However, the display of advertising on a UCDPS that is beyond the control of the user to disable and/or modify may sufficiently antagonize said user that they deliberately avoid the products advertised and/or coupled DCI. One option is to permit the user to decline the display of advertising and the disablement is preferably available on a temporary basis. Said temporary is preferably any user-determined basis. The invention allows that during said disablement period the user may be charged for the use of Electronic Content Information. An alternative and/or conjunctive option is to provide incentives to die user in exchange for presentation of advertising. This may include the incentive of free and/or subsidised Digital Content Information, however, it preferably includes more explicit incentives, for example, prizes and/or cash rewards and/or discount coupons.
2) Advertising Relocation Means. It is preferable that one at least advertising area(s) may be moved to different regions of the display by the user, preferably to locations that suit the user. The advertising movement, in part at least, is preferably by a mouse (or functionally equivalent) pointer means and/or by a ghost mouse means (as described elsewhere in this specification). One non-limiting means to achieve this is to have die ad(s) as part of an overlay means as previously described, for example, the advertising may have its own screen that may be moved using previously described screen controls .
3) Advertising Transparency Means (ATM). It is preferable that said advertising area(s) has a variable level of transparency means. Said ttansparency preferably may be adjusted from 0% (ie. no objects visible behind) to 100% (ie. no advertising area visible). Said transparency is preferably adjustable by the user. The transparency adjustment, in part at least, is preferably by a mouse pointer means and/or said ghost mouse means. The advertising area(s) preferably can be increased in intensity from not visible and/or partly visible, to more visible and/or fully visible. The reverse process preferably also applies.
4) Advertising Scrolling Means (ASM). It is preferable that said advertising areas may have contents tiiat may be scrolled within said area(s), preferably in any direction, and preferably under user control. Said scrolling may display hidden parts of a currently displayed ad and/or may display one at least other advertisements. Said ASM may include and/or be coupled to (that may include a ghost mouse) control means to scroll said advertising (and/or one at least other functions).
5) Advertising Area Size Means (AASM). It is preferable that areas used for advertising may be varied in size, preferably under user conttol, in part at least. It is preferable that said area may be replaced, in part at least, by any representative means, eg an icon, that when clicked restores the advertising area, in part at least. Said restore may be to any size, for example, to a predetermined default and/or the size it was prior to replacement by said icon. The GMM previously described is readily adapted to provide this function.
6) Incentive Advertising Means. The majority of advertising may be considered to be incentive based, however, said incentive may not be explicit. For example, television commercials are usually underwriting the cost of 'free to air' television program material, however, the viewer may not appreciate this. If the user was actually charged to view program material and offered the option of having said charges offset, in part at least, in exchange for viewing commercials the incentive is likely to be more explicit.
Incentive Advertising One method of encouraging users to view Electtonic Advertising Information (EAI) may be to provide various incentives. One of these may be to underwrite the cost of providing ECI. Another may be to award discount coupons, prizes etc. Another alternative may be to pay consumers to view advertising material. These may be effective methods, however, they may also be manipulated by consumers and/or others. For example, suppose consumers have access to a means that rewards the consumer (eg, cash, coupons for use against purchase, discount coupons, pays ECI usage fees) in exchange for viewing advertising. This is referenced as Incentive Advertising.
Using a means to display advertising in the display area of a UCDPS, the consumer may view the EAI. Said means may be referenced as an Electronic Advertising Display Means (EADM), non-limiting example may include: • web browser(s), • overlay program(s) of a browser(s) to provide and/or enhance advertising display functions, and/or • advertising display program(s) that are independent, in part at least, to said browser(s).
Passive Interactive Advertising Means. Some advertisers may not require the consumer to interact with the advertising as proof they have paid attention and/or interacted in any other way with EAI. The user may only be required to permit (or be thought to permit) the display of the information to receive a reward. For example, die preferred embodiment of the invention describes a Priority Advertising Means (PAM) to display advertising material. Said PAM may display EAI using any means, that may include one at least of the following: β during system booting; and/or β during screen saver operations; and/or • as part of displayed conttol means, in particular, a ghost mouse; and/or • at any other time and/or display area location(s) . Said PAM is preferably reserved, in part at least, for one at least advertisers who agree to sponsor, in part at least, one at least consumer's information usage for a period of time eg, a year. Said advertisers are preferably coupled to a program that provides additional benefits to consumers who actually purchase their goods and/or services from the sponsors. The sponsors may be referenced as Primary Priority Advertising Sponsors (PPAS) in this specification. PPAS may operate on die basis that advertising may be presented frequently enough that it may eventually impact on the user. For example, 30 (it may be any number) sponsors may be sold PAM (and/or other advertising means) on 1 million (it may be any number) UCDPS, for a period of one year (it may be any period). Each sponsor preferably advertises goods and/or services that are not competing with other sponsors. For example, there may be an airline, bank, cola drink, games vendor, telephone carrier, etc. These may be major brands, in part at least. Various local (eg. doctors, chemists, plumbers, restaurants) and/or regional and/or national businesses may be sponsors. Each sponsor preferably may determine die number of consumers they wish to sponsor. For example the Intergalactic Space Food and Drink Company may wish to promote its highly efficacious cola to the planet (and beyond!), whereas the local restaurant may only be interested in consumers living in the western suburbs of Brisbane, Austtalia. Each sponsor preferably pays $1.25 (it may be any amount and may vary from one sponsor to another) per year for the PAM access. This may contribute $37.50 (the amount may be any) per year towards a consumer's ECI consumption, less commissions to ancillary hanger's on and sundry! PPAS payments may be pro-rated against ECI usage, for example sponsors may pay 50% (it may be any amount) of usage charges until they meet their agreed amount. Said payments are preferably directed, in part at least, to the information provider (eg producer, and/or distributor, and/or dealer, and/or service provider as non-limiting examples). Said payments may be available, in part at least, as cash and/or other direct benefit(s) to the consumer.
The preferred method of providing consumers cash and/or other benefits is by the use of competitions, preferably offered at random intervals. For example, if the consumer is actively displaying advertising, in addition to covering ECI usage, in part at least, they may be provided an opportunity to participate in a game of chance. The Secure Processing Means described in this specification (directly and by reference) provide an online and offline means of providing competition, including those involving an element of chance. The preferred method of ensuring that PAM is displayed to the consumer preferably uses a Secure Processing Means that may write to secure display memory. This preferably use the overlay means described in this specification that preferably displays advertising where it is likely to be seen if the consumer is watching the display area. The advertising information is preferably delivered in tamperproof software containers (eg PSO of said WO 97/25675 by Griffits). Said PAM may be SPAM and may include one at least of the advertising and/or other means described in this specification and/or incorporated by reference.
Interactive Incentive Advertising Means. (HAM) Other advertisers may require confirmation that a consumer has interacted with the EAI in some manner to verify that they may have given it some attention and/or that it was actually visible in their display area. For example the user may be required to answer one at least questions pertaining to displayed information.
Local Auto Incentive Advertising Processing Means (LAIAPM). The present invention describes a means where the process of verifying consumer interaction with advertising material may be automated for the user, in part at least. Said automated may occur even if the advertising is not displayed and/or is overwritten by other information. For example, the user may cache incoming Incentive Advertising (eg. using a utility program). Said cache may remember the user's response to Incentive Advertising when first shown. When new Incentive Advertising is supplied (eg. from the Internet and/or retrieved from its own local storage means coupled to a UCDPS) it may be compared with said cached. A means (eg the utility program) may include a method to automatically transfer the correct response to a remote location. Some protection against this may be achieved by limiting the number of times that a particular advertisement is viewed and coupled with benefits . Remote Auto Incentive Advertising Processing Means (RAIAPM). A bigger problem may present if multiple users and/or agents use a network means (eg. the Internet) to extend the cache comparing means described in said LAIAPM. For example, 660 of figure 8 shows one ad server and 661 a second ad server means. There may be any number of ad servers that may supply any number and combination of users eg, 651, 652, 653,654. At any time any user may be connected to one or multiple ad servers. A plurality of users may transmit ads received from said servers and their responses to interactive parts of the advertisement, to one at least common cache 650. For example, when a user receives an ad from said ad server it may be redirected to one at least common cache 650. The information may be compared with other cached information. If a hit occurs said cache may check the correct response and forward this to the user and/or directly to said ad server and/or any other means to enable the user to receive a credit for accessing the advertisement. The user may be charged a commission. If the information is not cached the user is preferably informed and preferably manually responds to the advertisement. Their response may be sent to ad servers (and/or any other receiving means) and is preferably supplied to die common cache 650 to be available by other users and/or die same user at a later time. The invention also allows that an ad analysis means 659, that may be one at least persons reading and/or responding to Incentive Advertisements, may be coupled directly (eg in the same premises) and/or indirectly (eg via the Internet) to said common cache 650. The invention may also be implemented with 659 and without common cache 650. This process may enable a consumer to have one at least incentive accounts (that may be local and/or remote to their UCDPS) to be credited without viewing some at least of the Incentive Advertising. Furthermore, where the incentive may be a coupon (eg. providing a discount against purchase), these may be remotely categorized and preferably stored on said UCDPS. For example, when a consumer wishes to purchase a new widget they may reference all coupons dealing with widgets. They may find the best offer. To determine said best offer they may, access, preferably using a utility software program, local and/or remote price structures to determine the net price after coupons. For example, one supplier may provide a discount of $20 off the price of widgets. A second supplier may only discount $10, however, their base price may be $20 cheaper. Said second supplier may actually be cheaper. Said utility program (that may be acting as a software agent) may also access (eg. gatecrasher classifieds) one at least suppliers who do not provide coupons (and/or have not provided said consumer a coupon) to see if they are a cheaper source. This entire process may occur in a few seconds and be ttansparent to the user. It is also likely to destroy the underlying basis of the coupon system. Fundamentally, existing marketing methods rely on the difficulties of effective price comparison using manual means. Electronics may make this a precise science.
On the other hand, the secure overlay means described in this specification may be used to ensure that the incentive advertising is delivered in a secure software container, that is unwrapped in a secure processing environment and displayed in secure graphics memory. Each container is preferably unique, preventing the user comparing it with other information automatically. The user is preferably prevented form reading the image/text information in digital format, thus preventing the transfer of this information to third parties. If the user wishes to avail themselves of the benefits of incentive advertising, they will need to personally view the material (or have someone else at their UCDPS do it!). Note: in this specification, user(s) and consumers) may be used interchangeably.
The preferred method of electronic advertising is to couple an alternate processing means to one at least UCDPS. Said alternate processing means preferably includes a Secure Advertising Means (or SAM) Said SAM may be implemented using logically secure processes within a UCDPS, however, it is preferable that said software processes, in part at least, occur within a logically and physically secure device. When read in conjunction with the present specification the secure processing devices described in said WO 97/25675 by Griffits and/or said WO 96/27155 by Shear et al, may be adapted by those experienced in the art to implement said SAM. Said secure advertising means preferably generates and displays advertising material using means that are preferably not accessible to: • the user, and/or • any application program, preferably other than authorised advertising and/or other authorised programs; and/or • operating systems, preferably other than authorised operating systems.
For example, a PC may be operating with a Microsoft Operating System, however, said operating system, in part at least, is preferably unable to read and/or write and/or modify and/or interfere with the display of advertising that has been generated, in part at least, by said SAM.
The reader is directed to Figure 9. An Ad server 310 is shown. This is preferably a software function executed by the secure processing means 5 (a non-secure processor may be used). Said secure processor is preferably logically and/or physically secure. The combination of secure processor 5 and ad server 310 may be referenced as a secure advertising means (SAM). Said SAM preferably manages the display of advertising material 313 and preferably uses a secure overlay mode to place it on die display area 311, preferably overlaying content information 312. SAM may interact in any way with the GMM to manipulate advertising material. It may also display a value to the user for displaying advertising and/or a cost to the user if they do not, as non-limiting examples.
The display of advertising is preferably not linked to the display of content information 312, in part at least. SAM may obtain advertising material by any means, non-limiting examples may include: • 316 Physical media, eg CD, DVD; and/or • 317 Internet (eg. it may extract ads from WWW pages and/or access one at least ad servers); and/or • 318 Broadcast; and/or » 319 via the Public Switched Telephone Network (PSTN), for example, it may call a toll-free number, and/or • 325 one at least networks. Advertising is preferably cached on one at least mass storage means 315, for example, hard disk, CD ROM, DVD.
SAM preferably has access to one at least User Profiles 340. These are preferably securely stored on the UCDPS and not released externally. It may include a flag 341 indicating one at least users does not want advertising and/or the conditions attached to one at least users accepting advertising. Said user profile may be completed, in part at least, by the user and/or on the basis of user access to various locations, eg websites. Said user profile may include any demographic details, personal and/or business preferences etc. It is preferable that the advertising material is coded to enable said user profile to be used to identify appropriate material. This method allows advertisers to better target consumers. SAM may send a software agent to locate relevant advertising material. It is preferable that said SAM and/or any other means also collects information that is not relevant to the user and preferably not shown to the user, in part at least. This approach may confuse parties compiling accurate profiles on the users. It is this inventors belief that advertisers should be able to better target advertising and that this may also be beneficial to users. It may not be beneficial for users to have their profiles open to the marketplace, regardless of the statements made by third parties as to privacy.
The secure processing means of the present specification and those incoφorated by reference provide for the secure metering of information use, including advertising use. A secure service provider preferably collates metered advertising usage. The advertiser is preferably provides gross billings and sufficient statistical information for commercial purposes, without being given access to individual usage. The metering and reporting means described in the specifications incorporated by reference are readily adaptable by those experienced in the art to metering and/or reporting and/or controlling of advertising usage.
It is preferable that the password means that provides access to die UCDPS (that is preferably a secure password means coupled to said secure processing means 5) is linked to SAM. One non-limiting reason may be to enable SAM to select the user profile that matches the present user.
It is preferable that advertising material 320 is provided in a format that includes content 321 and control information 322 about its usage and/or pointers 324 to said conttol information. It is preferable that said control information 322 and/or pointers 324 are securely coupled, preferably by encryption. It is preferable that part at least of the advertising content 321 and/or control information 322 and/or pointers 324 are within a secure software container, that is preferably protected by encryption. Non-limiting examples of said conttol information may include one at least of die following: • 330 Validity of the advertising material, for example an advertisement may only be current for a certain period. • 331 how many times the ad may be showed to a user and/or the pattern of showing. • 332 the age group the advertising is directed to. • 333 demographics codes and/or other criteria applicable for determining whether or not to show said advertising to particular consumers with particular user profiles. • 334 the value to the consumer for viewing said material. This may be discounted for multiple showings. It may include bonuses if accessed by particular types of users (and/or for any other reason). • 335 any restrictions on using this material when the consumer may have been exposed to competitor advertising, for example, there may be a time delay between ads for one car manufacturer and another. • 336 whether the advertising includes games and/or competitions and/or may be coupled to games and/or competitions supplied by alternative means. • 337 the content of the advertising.
The disclosed specifications incorporated by reference describe PSOs and/or digital containers that are similar to the structure required to implement an advertising Protected Software Object (PSO). The invention allows that advertising PSO(s) may include advertising content for a plurality of advertisements and/or a plurality of control means.
It is preferable that a means is provided to encourage users to view advertising material. The benefits of having EIC usage paid for, may be one said means to encourage users. It is preferable that there are additional incentives. For example the user may be paid to view advertising. The secure means of the specifications incorporated by reference describe means for secure electronic commerce. This may be readily adapted to pay electronic funds to the consumer. For example it may be possible to securely meter usage and securely reward the consumer offline. The invention allows for any online involvement. The invention particularly allows for secure advertising means that are coupled, in part at least, to secure processing and/or secure operating and/or secure rights management means. Many consumers also like games of chance. It is preferable that this may be used as a means of encouraging user interaction witii advertising.
The provision of: • secure processing, and/or » secure transfer of software objects, and/or • secure electronic fund means, and/or • the flexible display means of the present invention, provides the tools for those experienced in the art of electtonic games of chance to implement one at least secure games of chance, that preferably may run offline, in part at least. Those experienced in the art may adapt present Internet casino games, for example, to replace the online metering with a secure offline means. The invention also allows for the use of games of chance that depend on an online connection, in part at least. It is preferable when games of chance are used as promotional tools that participation is free to users. Users preferably may win prizes and/or product discounts and/or cash and/or coupons and/or any otiier reward. The process described for integrating games of chance with advertising and other forms of promotion may be readily adapted to an offline, in part at least, casino means, preferably providing a plurality of gaming services. Any means may be used to integrated advertising into games of chance. For example, the user may be required to view advertising prior to the game being commenced and/or prior to collecting prizes. Advertising may be incorporated into the game. Advertising may be shown concurrently to the game being played. The invention allows that the user may be exposed, in part at least, to advertising when offered the opportunity to play a game of chance (this may also be based on a random event and/or other element of chance). A casino PSO 360 is shown in figure 9. This may be a complete casino package that is supplied encrypted, in part at least. This preferably includes and/or securely points to, information on the conditions of use and/or rules of said casino.
The awarding of prizes (that may include cash) to consumers may include the updating of electronic credits coupled directly (eg within a secure processing means) and/or indirectly (eg a smart card) to a UCDPS. It may include the transfer of electtonic funds means via the Internet, in part at least. The secure processing means may also generate a code(s) that may be used in exchange for rewards (that may preferably be any type of reward). The means used for awarding prizes may also be used, in part at least, to provide consumers with coupons (that may be for any reason and may include reasons that are independent of games of chance) that may be used in exchange for goods and services, in part at least.
Said code(s) may be printed on a physical media (eg paper) and/or transferred to a portable secure means (eg smart card, smart watch) as non-limiting examples. Said code is preferably a one off code that uniquely identifies the source of the code (eg the secure processing means), the prize, the date, and the consumer ID as non-limiting examples.
Prior art that issue coupons via the Internet may need to store a database of coupons detailing who they have been issued to. The means of the present invention for awarding coupons and/or prizes does not require such a record. The secure processing means may create said awards/coupons using predetermined and secret processes and preferably may do this offline, in part at least. When said coupon/award is claimed the code preferably may be regenerated by another secure processing means to confirm the validity of the coupon and/or award.
This may require the award/coupon redemption means to communicate with an authorised service provider witii knowledge of the trusted means in said secure processing means 5 (or any other secure means) and/or said redemption means may have a secure means to perform validation. A database may be required of used coupons and/or awards to prevent reuse where prohibited. When the reward means is within a portable secure means (eg smart card), said portable secure means may erase the code, providing for an electtonic coupon method that is independent of remote database means to track used and/or expired awards/coupons.
When a UCDPS is left inactive for a preferably predetermined period of time, advertising material may be shown in the display area, in part at least. This may use any of the means described for advertising in this specification. The information on display prior to the advertising material being displayed, is preferably redisplayed, in part at least, if said UCDPS is reactivated (eg by mouse movement, key depression as non-limiting examples). If said reactivation is greater and/or equal to said predetermined period, it is preferable that said advertising and or other images remain on the display area until a password is entered. This may be used as a security means. Secure Mass Storage Means. The means described for the secure processing means 5, to intercept I/O calls may also be adapted to intercept, in part at least, calls by die system operating means to one at least mass storage means, for example, a hard disk. For example, the secure processing means (and/or any one at least other alternate processing means) may partition one at least mass storage means, using any method, wherein, one at least said partitions may not be apparent to the system operating means and partitions that are apparent to said system operating means may be logically partitioned, in part at least, as determined by said operating system, however, their physical partitioning may vary, in part at least. The secure processing means may apply password protection to one at least system partitions and/or files in said partitions. Said password means may be ttansparent to said system operating means. The invention allows for any pre-processing by said secure processing means 5 of information transferred by die system operating system to said mass storage means and/or the reverse process. The secure processing means is preferably able to encrypt/decrypt files and/or any other information, stored to and/or retrieved form said mass storage means. This is preferably transparent to said system operating means.
Secure Transaction Processing Means. The secure processing means described for trusted systems may be adapted to portable secure means, for example, smart watches, smart cards. One potential problem with the known art of said portable secure processing means (that may be referenced as PSPM) is tiiat when the owner of said PSPM is required to key information into any input means provided by another party, there is a possibility that the keyed information may be intercepted and/or saved for future unautiiorised use. For example, the PIN number may be obtained. The user's input data may also be modified for any reason, for example, to debit smart cards with more funds than the user intends. If the presentation of information (visual and/or auditory) pertaining, in part at least, to the transaction is in the hands of another party, there is no certainty about die truth of what the user of the PSPM sees/hears. One solution may be to integrate a display means and/or keyboard means into said PSPM. Alternatively and/or in conjunction, a Personal Security Unit (PST) may be provided, that interfaces directly, in part at least, with said PSPM that provides the input and/or output means, in part at least. As die PST is the property of the user and as it directly transfers, in part at least, input directly to the PSPM and/or any external processing (preferably secure) means, die user of their PSPM may be confident that clear code versions of their PIN have been entered directly into their PSPM and any part of the PIN that may be required by external processing means may be transferred, in part at least, in encrypted format. The generation of the encrypted PIN is preferably performed by said PSPM. Part of the generation of the encrypted PIN may be performed by said PST, however, it is preferred that said PST remain a low cost, minimal device that is not dependent on integrated security. Other information input by the user of the PST is preferably processed by the PSPM, especially financial amounts. In this way no usable information may be accessed between PST/PSPM and any external secure means (eg smart card reader in the store) .
Information that is displayed pertaining to the cost of a transaction or similar, is preferably received by said PSPM, processed and the amount to be charged output to said PST to enable the user to verify the amount.
The invention allows that communications between PSPM and PST and/or an external secure processing means (eg store terminal) may be audio and/or electrical and/or optical and/or infrared and/or radio/microwave. The preferred embodiment of a PST is a form factor and transfer means equivalent to the PSPM (to couple with an external secure processing means), with suitable connections for the PSPM protruding from said PST when the PST requires direct connection.
This may be better understood by reference to Figure 10. A PSPM 402 includes a coupling means 401 (in tiiis example a connector). This may couple directly to an external secure processor eg a store smart card reader 409 using socket 408. It is preferably coupled to said 409 via PST 404. It may couple to said PST 404 using connector 403. Said PST may couple to said 409 using connector 407 and socket 409. The PST preferably includes a display 405 and keypad 406. When a password is first entered at keyboard 406 it may be passed to PSPM 402 for processing via interface means 401/403. PSPM may be activated if the password is valid. This may be indicated to the user by sending a message to display 405. Terminal 409 may send the amount of the transaction to PSPM 402 (passing through PST 404). PSPM preferably decodes this information and sends the amount in clear text to display 405. The user preferably confirms/denies the amount using keyboard means 406. If valid PSPM 402 preferably generates a validation code and sends it to terminal 409.
The invention also allows for any means that allows one or multiple partitions of secure memory to be accessed by one or multiple secure processing means, such that there is no practical way for programs witiiin one partition to alter and or threaten the security of other functions - deliberately or otherwise, unless otherwise determined eg, secure system functions.
The preferred means of protecting the system partition(s) from user partitions and/or user partitions from one another is described with reference to Figure 11.
Security is maintained in part at least, by allocating an area of system resources tiiat are known to have secure routines that may allocate various user resources without compromising system memory security and user security. The invention allows for any means to do this.
To permit a secure processor(s) means to perform secure and unsecure processing, any means is allowed for to maintain security when program execution is transferred from unsecure locations to secure locations. Ensuring secure processing begins at known routines enables software processes to further control (in part at least) system security. A similar process also enables processing to return from a secure user function to secure system functions. The preferred method checks the processor address bus, ensuring diat the initial access to secure memory is an instruction fetch to intended address locations - ensuring known outcomes in subsequent processing. Any method/apparatus may be used, with one means described with reference to Figure 11. Comparator 100 examines the address bus of the secure processor 101 and compares it to one or multiple predetermined address locations 102 (these may in part or whole, be programmable locations - security is preferably maintained by only activating address decoding to these programmable registers when the secure system resources are active) and the instruction signal line 103 is examined to ensure this is an instruction fetch. A valid outcome activates all the secure memory, allowing system resources to access any user partition. However, the invention allows that part at least of one or multiple user partitions may not be enabled (access to these may be gained using a similar process used to activate the secure system partition and/or any other method).
While software objects are executing from within secure system resources, security may be maintained in part or whole by software processes.
The decoding by 110 allows that the partitons allocated to system and or user resources may be varied in size, in part or whole, preferably by writeable registers that can only be decoded when access to secure system memory is activated.
When secure processing is to terminate, the disable line 111 inactivates decode logic. The invention allows for any method to do this, with the preferred one being to decode the disable signal into the secure system address space and delay its activation until another instruction has been fetched from secure system memory - usually an instruction redirecting processing to unsecure functions.
While it is generally permissible to allow system functions to access user resources, the reverse does not usually apply, similarly, different user partitions usually need to be protected from one another. The invention allows for any means to do this. The preferred embodiment has secure system routines program secure decode logic with register bounds defining a user partition prior to transferring processing to said user partition. Once processing is transferred to these locations other secure area are usually prevented from being decoded until processing returns to known system resources. Delayed activation of the user decoding for one (or as otherwise determined) instruction cycle allows an instruction to be fetched from system resources directing processing to a secure user partition.
The invention allows for any means to prevent processing being trapped in a user partition (usually secondary to a software error) and in particular any means dependent on the timeout (and/or equivalent) of one or multiple timers and/or software routines. The preferred method is to use a watchdog timer (that may have a programmable timeout). A similar mechanism may be used to allocate a particular time slice to a user partition prior to returning processing to secure system resources (and/or elsewhere). The invention allows that the timer may automatically timeout when triggered by any one or more exception (eg interrupts, reset etc). Timeout may be zero and/or any other predetermined value.
The timeout process usually returns processing to secure system resources - this may use any means. The preferred means does not interrupt the secure processing means, however, it redirects processing to secure system memory by multiplexing the address output by the next instruction seek, redirecting the instruction fetch to secure system locations. The decode logic for secure system resources is also reactivated. The address of the instruction originally intended for fetching by the processing means is saved in a storage means to enable a return to this instruction later. Other relevant parameters eg. condition codes, stack pointers, may be saved using secure system routines.

Claims

The invention also allows for any software means to transfer processing from secure user to secure system functions, the preferred means being a software counter that is updated at the completion of selected or all subroutines within a user partition that on timeout, accesses one or more address locations to trigger equivalent responses to the watchdog timer.Claims.
1. A method of priority advertising on a User Conttolled Data Processing System, wherein said advertising may be displayed, in part at least, using means that may not be accessed by the operating system of said User Controlled Data Processing System.
2. The method of claim 1 wherein said operating system is one at least versions of Microsoft Windows.
3. A method of coupling a display control means to the movement of a pointer means, wherein, said display conttol means, in part at least, includes a means of scrolling one at least Windows, and/or moving one at least Windows, and/or resizing one at least Windows.
4. A metiiod of metering electronic advertising displayed on a User Conttolled Data Processing System using offline means that include a logically and/or physically secure means, wherein, the user is compensated for accessing and/or interacting with said advertising.
5. A method of offline gaming using a secure processing means coupled to a User Conttolled Data Processing System.
6. The method of claim 5 wherein, said gaming is part of one at least advertising means.
7. A method of priority display of advertising on a mobile display control means coupled to a User Conttolled Data Processing System.
8. A means of defining a boundary perimeter to one at least display objects, wherein said boundary perimeter defines, in part at least, an area that penetrates one at least layers of overlying display objects.
9. T e method of claim 8 wherein, said penetration is limited, by the number of layers of said overlying display objects.
10. The method of claim 8 wherein, said penetration is all of said overlying objects.
11. The method of claim 8 wherein, said penetration includes a component of translucency to overlying objects.
12. A method of advertising in the startup screen of a User Controlled Data Processing System that takes priority, in part at least, over information displayed under the control of the system operating system.
13. A method of advertising within the display area when a User Conttolled Data Processing System has been inactive for a predetermined period of time.
14. The method of claim 13 when said advertising is coupled to secure means.
15. The method of claim 13 wherein said advertising is terminated when said inactive becomes active within a predetermined period.
16. The method of claim 15 wherein said advertising requires a password to terminate when said inactive to active exceeds and/or equals said predetermined period.
17. A metiiod of interfacing a portable secure processing means owned and/or operated by a first means to a secure processing means owned and/or operated by a second means, wherein, said portable means receives input information from a keyboard means owned and/or operated by said first means, wherein said keyboard means is not an integral part of said portable means; and/or said portable means outputs display information to a display means owned and/or operated by said first means, wherein said display means is not an integral part of said portable means.
18. The method of claim 18 wherein said portable secure processing means is performing an electronic ttansfer of funds.
PCT/AU1998/000403 1997-05-29 1998-05-29 Securely metering advertising in data processing systems WO1998054672A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU76303/98A AU7630398A (en) 1997-05-29 1998-05-29 Securely metering advertising in data processing systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AUPO7040 1997-05-29
AUPO7040A AUPO704097A0 (en) 1997-05-29 1997-05-29 Priority display of advertising on a personal computer

Publications (1)

Publication Number Publication Date
WO1998054672A1 true WO1998054672A1 (en) 1998-12-03

Family

ID=3801331

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU1998/000403 WO1998054672A1 (en) 1997-05-29 1998-05-29 Securely metering advertising in data processing systems

Country Status (2)

Country Link
AU (1) AUPO704097A0 (en)
WO (1) WO1998054672A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1089210A1 (en) * 1999-09-30 2001-04-04 Swisscom AG Method and device for the distribution of advertising information
EP1143692A2 (en) * 2000-04-04 2001-10-10 Sony Corporation Transmission apparatus and method, reception apparatus and method, management apparatus and method, charging apparatus and method, providing apparatus and method, and recording medium
EP1158404A2 (en) * 2000-05-26 2001-11-28 Sharp Kabushiki Kaisha Server device and application communication system for proper communication of application divided into portions
US7043636B2 (en) 2000-09-26 2006-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Data integrity mechanisms for static and dynamic data
US20120116889A1 (en) * 2000-06-23 2012-05-10 Hoshiko Llc Method and apparatus for providing audio advertisements in a computer network
US8768766B2 (en) 2005-03-07 2014-07-01 Turn Inc. Enhanced online advertising system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2141907A (en) * 1983-06-02 1985-01-03 Michael Gilmore Video games with advertising facility
DE4216617A1 (en) * 1992-05-20 1993-05-27 Theodor Eistert Advertising system using computer to control display - has programme to blend advertising with background information on television screen
US5532735A (en) * 1994-04-29 1996-07-02 At&T Corp. Method of advertisement selection for interactive service
EP0749081A1 (en) * 1995-06-12 1996-12-18 Pointcast Inc. Information and advertising distribution system and method
EP0752678A2 (en) * 1995-06-30 1997-01-08 Sony Corporation Apparatus and method for executing game programs having advertisements therein
WO1997025675A1 (en) * 1996-01-10 1997-07-17 John Philip Griffits A secure pay-as-you-use system for computer software
WO1997040447A1 (en) * 1996-04-19 1997-10-30 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
EP0817486A2 (en) * 1996-06-27 1998-01-07 AT&T Corp. Method for altering a broadcast transmission as a function of its recipient on a communications network

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2141907A (en) * 1983-06-02 1985-01-03 Michael Gilmore Video games with advertising facility
DE4216617A1 (en) * 1992-05-20 1993-05-27 Theodor Eistert Advertising system using computer to control display - has programme to blend advertising with background information on television screen
US5532735A (en) * 1994-04-29 1996-07-02 At&T Corp. Method of advertisement selection for interactive service
EP0749081A1 (en) * 1995-06-12 1996-12-18 Pointcast Inc. Information and advertising distribution system and method
EP0752678A2 (en) * 1995-06-30 1997-01-08 Sony Corporation Apparatus and method for executing game programs having advertisements therein
WO1997025675A1 (en) * 1996-01-10 1997-07-17 John Philip Griffits A secure pay-as-you-use system for computer software
WO1997040447A1 (en) * 1996-04-19 1997-10-30 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
EP0817486A2 (en) * 1996-06-27 1998-01-07 AT&T Corp. Method for altering a broadcast transmission as a function of its recipient on a communications network

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1089210A1 (en) * 1999-09-30 2001-04-04 Swisscom AG Method and device for the distribution of advertising information
EP1143692A2 (en) * 2000-04-04 2001-10-10 Sony Corporation Transmission apparatus and method, reception apparatus and method, management apparatus and method, charging apparatus and method, providing apparatus and method, and recording medium
EP1143692A3 (en) * 2000-04-04 2005-07-06 Sony Corporation Transmission apparatus and method, reception apparatus and method, management apparatus and method, charging apparatus and method, providing apparatus and method, and recording medium
US7054839B2 (en) 2000-04-04 2006-05-30 Sony Corporation Transmission apparatus and method, reception apparatus and method, management apparatus and method, charging apparatus and method, providing apparatus and method, and recording medium
US7769692B2 (en) 2000-04-04 2010-08-03 Sony Corporation Transmission apparatus and method, reception apparatus and method, management apparatus and method, charging apparatus and method, providing apparatus and method, and recording medium
EP1158404A2 (en) * 2000-05-26 2001-11-28 Sharp Kabushiki Kaisha Server device and application communication system for proper communication of application divided into portions
EP1158404A3 (en) * 2000-05-26 2004-04-14 Sharp Kabushiki Kaisha Server device and application communication system for proper communication of application divided into portions
US20120116889A1 (en) * 2000-06-23 2012-05-10 Hoshiko Llc Method and apparatus for providing audio advertisements in a computer network
US7043636B2 (en) 2000-09-26 2006-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Data integrity mechanisms for static and dynamic data
US8768766B2 (en) 2005-03-07 2014-07-01 Turn Inc. Enhanced online advertising system

Also Published As

Publication number Publication date
AUPO704097A0 (en) 1997-06-19

Similar Documents

Publication Publication Date Title
JP5133400B2 (en) Online distribution method of digital files protected by intellectual property rights via data network, and computer-readable medium including a program for executing the method
US6717592B2 (en) Notification processing system
JP4909360B2 (en) System and method for creating, distributing and tracking advertisements via an electronic network
US20030149618A1 (en) Flexible dynamic advertising
US20170323303A1 (en) Distributing coupon content and transactional advertisements
US7039872B1 (en) Method and system of creating floating windows for displaying sponsor information, messages or programs in non-obtrusive areas of the graphic user interface of a software application
US20130311300A1 (en) Method of advertising technology
US20140180840A1 (en) System and method of cursor-based content delivery
US20070174230A1 (en) System and method for displaying information in association with an electronic file management application
US20080077492A1 (en) Method, system, and computer-readable instructions for advertisement using a multi-flipbook system
JP2006350331A (en) Method and system for advertisement using internet browser with book-like interface
JP2005525714A (en) Digital content distribution, advertisement, payment, refund method and apparatus.
JP2005285134A (en) Method and system for advertisement using internet browser to insert advertisement
CN106204115B (en) Information popularization method, server and client
WO2011009113A2 (en) Apparatus and method for anonymously presenting targeted advertisements and desirable media content in association with a virtual currency
AU2020202023A1 (en) A method and system for providing interactive digital advertising
WO1998054672A1 (en) Securely metering advertising in data processing systems
WO2000068851A2 (en) Computer-based system and method for delivering and tracking advertisements
Shaari et al. An extensive study on online and mobile ad fraud
JP2002123635A (en) Method and system for calculating royalty and storage medium stored with royalty calculation program
AU7630398A (en) Securely metering advertising in data processing systems
US20120151325A1 (en) Apparatus, system and method for blacklisting content of a contextually-based media enhancement widget
KR20130135638A (en) Server for dealing works of individuals and method thereof
Saluke Ad-blocking software as third-party tortious interference with advertising contracts
KR20000058245A (en) The software which has an adverstising function

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA NZ US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WR Later publication of a revised version of an international search report
WWE Wipo information: entry into national phase

Ref document number: 09230917

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 76303/98

Country of ref document: AU

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: CA

122 Ep: pct application non-entry in european phase