WO1998016033A1 - Secured electronic information delivery system having separate data management - Google Patents

Secured electronic information delivery system having separate data management Download PDF

Info

Publication number
WO1998016033A1
WO1998016033A1 PCT/US1997/018164 US9718164W WO9816033A1 WO 1998016033 A1 WO1998016033 A1 WO 1998016033A1 US 9718164 W US9718164 W US 9718164W WO 9816033 A1 WO9816033 A1 WO 9816033A1
Authority
WO
WIPO (PCT)
Prior art keywords
software product
decryption key
product
data
storage device
Prior art date
Application number
PCT/US1997/018164
Other languages
French (fr)
Inventor
Michael S. Blumenthal
Daniel J. Barthel
Bruce Newman
Brenda S. Newman
Original Assignee
Protocall Technologies, Inc.
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 Protocall Technologies, Inc. filed Critical Protocall Technologies, Inc.
Priority to AU48119/97A priority Critical patent/AU4811997A/en
Publication of WO1998016033A1 publication Critical patent/WO1998016033A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy

Definitions

  • the invention relates generally to a system for retrieving secured data
  • Consignment inventory also bears a large up-front cost for suppliers.
  • the storage device may be located remotely from the retailer's user station over, e.g., a local area network (LAN) or a wide area network (WAN) or
  • LAN local area network
  • WAN wide area network
  • a CD-ROM located at the user station from, e.g., a CD-ROM.
  • decryption keys to unlock the desired secured data from a CD-ROM.
  • a SCSI (small computer system interface) device acting as an external hard drive and connected to the user station, includes the metering chip having the decryption keys.
  • the selected secured data is decrypted with a corresponding decryption key, while the user's order is simultaneously written
  • every user station must be polled on a regular bases, e.g., daily, to capture the data stored
  • the metering chip is not located in an external SCSI device but in
  • any PC or Macintosh based user station would require that the
  • motherboard be manufactured with the metering chip. This has the inherent
  • an application program including the product information corresponding to the encrypted software products and a decryption algorithm capable of taking partial
  • decryption keys supplied transparently from a remote server, to generate corresponding full decryption keys to decrypt the selected software products from the CD-ROM.
  • each storage device is at least partially encrypted and is coupled to a user station.
  • the user station may be used by a retailer, a consumer, and the like.
  • each user station is coupled to at least one storage device, such as a CD-ROM.
  • Each station has a processor responsive to a data
  • the data file system includes at least one database file, each comprising data corresponding to a respective software product.
  • the processor responsive to the Application program, receives the data from the database file that corresponds to a user selected software product, requests a decryption key from a remote network server based at least on the
  • an end-user station is coupled to at least one
  • each station has unique serial number and a processor that is responsive to an Application program stored
  • the user can select a software product to decrypt upon receipt of a
  • a remote vendor station having a unique password, is selectively coupled to the end-user station, via a network, to receive a request for the
  • the vendor station receives the serial number from the end-user station.
  • a remote server is connected to the vendor station, via a network, when the password transmitted from the vendor station is validated.
  • the server receives a request for the decryption key corresponding to the transmitted selected software product and the end-user serial number. The server then
  • the vendor station transmits the decryption key to the end-user station, so that the end-user Application program can decrypt the selected software product based on the received decryption key.
  • each user station (vendor or consumer) is coupled to at least one storage device, such as a CD-ROM, having at least one
  • At least one of the database files stores
  • a metering device is coupled to each user station.
  • each respective user station is able to retrieve
  • FIG 1 is a diagram schematically illustrating a three-tier network having a server connected to a first group of user stations, where a station in the first
  • FIG 2 shows an example of a user station of FIG 1 , in accordance with
  • FIGs 3A-3D is a flow chart showing the steps for decrypting selected
  • FIGs 4A-4D is a flow chart showing the steps for decrypting selected
  • FIGs 5A-5D is a flow chart showing the steps for decrypting selected
  • a retailer or a consumer may access software products from a storage device, such as a CD-ROM, that is coupled to the retailer or consumer user
  • Each software product on, e.g., a CD-ROM, has been secured by an encryption technique so that the retailer or consumer may access any encrypted software product upon receipt of a decryption key.
  • the retailer or consumer user station every time the retailer or consumer wants to decrypt a software product, the retailer or consumer user station must link up with a remote server.
  • the server will first ascertain that the station may
  • decryption keys through, e.g., passwords and external serial
  • the server may generate the
  • desired decryption key based on, e.g., the software product item number, an internal serial number (not known to the retailer or consumer) and a purchase
  • the decryption key generated by the server is
  • a partial key may simply be a
  • the retailer or consumer user station having an Application program, generates the full 56 bit decryption key. If the station is a retailer
  • the retailer typically will decrypt and write a product onto an end-user
  • the retailer or consumer user station has a metering device or "dongle" attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server, but in a known path to the Application in each station.
  • the dongle has a metering device or "dongle" attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server, but in a known path to the Application in each station.
  • the dongle attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server, but in a known path to the Application in each station.
  • the dongle is attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server, but in a known path to the Application in each station.
  • the dongle is a metering device or "dongle" attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server
  • a network 1 0 is illustrated having a server 1 5 that may
  • Server 1 5 may be a conventional computer having PC DOS
  • Server 1 5 may be
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection.
  • a station may also be a station in station group 1 2, and vice-versa, by
  • FIG 1 also shows a second station group 14 that includes stations 24,
  • station 1 7 may be connected to each station in group
  • Every station in first station group 1 2 may be connected to
  • stations in second station group 14 or other station groups may communicate with stations from the second station group, and vice versa, without being physically connected via a modem link or LAN, but by facsimile machines and the like, external to each station.
  • stations 1 6-20 and 24-28 are typical computer systems, preferably PC or Macintosh ® based.
  • FIG 2 illustrates a conventional computer
  • Housing 40 comprises a modem jack 36, a hard drive 34, a floppy disk
  • a station may include additional or less hardware as desired.
  • Connecting housing 40 with keyboard 46 is a
  • metering device or dongle 50 which, as will be described hereinlater, may prevent a station user from decrypting secured data from a storage device, such
  • a printer 48 may also be any external or internal station port (not shown), as well.
  • a printer 48 may also be any external or internal station port (not shown), as well.
  • each station Prior to decrypting any software products, each station preferably has
  • the directory includes separate database or
  • the database/resource files include
  • the database files include trademark information for each manufacturer, and the correct path for each software product, i.e. on which CD-ROM. Since the database files are preferably
  • Macintosh platform requires a specific utility to run the selected software
  • the Application program performs the majority of the functions for the
  • the software products, stored on the CD-ROMs, are preferably encrypted in the following manner. Each unsecured product is first encrypted by a
  • a phantom key is any random key so long as it is not the same as the unique encryption key.
  • Each phantom decrypted product is then written to a
  • FIGs 3A-D is a flow chart showing the steps for decrypting selected
  • the retailer or consumer user station is powered on and the
  • Application is launched, it checks that all of the necessary files from the directory are present. If not, an error message is flashed on the monitor and,
  • the Application will read the available database files and include the contents of these files in dynamically built menus.
  • An example of a dynamically built menu would be a list of manufacturer and corresponding product menus.
  • the station is idle while it waits for a user input.
  • the station is idle while it waits for a user input.
  • the Application searches in the
  • Step 74 indicates that the selected items were found. If not,
  • step 76 will alert the user and return to step 70.
  • Order Detail screen that includes other selected items, if any, at step 78.
  • the user can select some or all of the selected items for
  • Step 80 inquires if the user wants to select more
  • a registration data entry screen that includes a space to enter
  • step 86 the Application ensures that all fields in the registration data entry are populated. If not, the user optionally is returned to step 84.
  • the Application will request the station user's name and a pre-assigned password which will be subsequently transmitted to the server at step 90.
  • the Application will preferably automatically dial a predetermined phone number to connect to the remote server. To avoid anticipated traffic of several stations trying to connect to the server simultaneously, conventional network solutions can be implemented if a server
  • connection to the server is made.
  • server
  • Some of the criteria include the station name, a
  • step 98 if access to the server is denied, the modem connection is terminated by, e.g., an ATF command, at
  • step 100 If access is granted, step 102 transfers the Order Detail and registration data entry information to the server.
  • the server may store this
  • step the product item number, the external serial number, and a purchase
  • the purchase code is a code
  • the server Based upon the supplied information, the server generates partial decryption keys to be transmitted to the requesting station.
  • the partial decryption keys are transmitted transparently to
  • This partial decryption key is invisible to the user and is only used internally to generate the full decryption keys in step 106.
  • the Application generates the full decryption keys that will decrypt the selected software product. This is achieved, e.g., by using a private key
  • the full decryption keys are preferably 56 bit keys using the multi-level encryption scheme previously discussed.
  • the Application queries whether there are any items to print.
  • the Application will generate these documents locally at the station's printer.
  • the labels are for the
  • the labels and documentation may or may not
  • the printing routines are initialized at
  • step 1 10 Once the items are printed, the user will have the opportunity to check the documents for printing flaws, at step 1 1 2, and if necessary reprint
  • the encrypted CD-ROM volume is determined at step 1 14.
  • the path to the correct CD-ROM that contains the selected encrypted product is stored in the corresponding database file.
  • a dialog box will appear requesting that the user mounts the appropriate CD-ROM for the item or items that need processing.
  • the Application will process the first item, then request that a new CD-ROM be
  • step 1 1 8 the Application requests for the correct CD-ROM and at step 1 20, the user may change to the correct CD-ROM.
  • step 1 1 8 If it is still not correct, the process returns to step 1 1 8; however, if the CD- ROM is now correct the process proceeds to step 1 22 where it is determined
  • step 1 26 the full item
  • decryption keys are used to decrypt the selected items from the Order Detail. These keys are then immediately discarded by the Application and
  • the selected product item has been decrypted and is temporarily stored in the station memory. If the station user is a consumer, the station user is a consumer, the station user is a consumer, the station user is a consumer.
  • the product may be stored on the hard drive of the station. Alternatively or in addition to, the consumer may also write the decrypted product to a blank
  • the product may only be stored temporarily in the RAM as was the decryption key.
  • the Application will request a media type to be mounted.
  • the media is a floppy disk which is specially serialized. If the Application requires
  • the Application determines whether the media are the
  • step 1 38 the Application determines whether the media is filled to capacity or require decryption from multiple CD-ROMs. If the order is not complete, the process is returned to step 1 32. If the order is complete, the Application will return to the Order Detail screen at step 1 40. At step 144, the
  • step 146 the station is idle waiting for the
  • step 148 the process is ended.
  • FIGS 4A-D is a flow chart showing the steps for a consumer decrypting selected software products from a plurality of CD-ROMs from the consumer
  • the consumer preferably goes through the retailer
  • the retailer connects to the server for the partial decryption keys and once received, subsequently transmits on
  • Steps 300 to 320 are essentially identical to steps 60 to 80 of FIG 3A
  • step 322 the consumer user will
  • the user may contact the retailer by telephone or facsimile to request the partial decryption key for the selected software product, or may
  • supplied to the retailer include the product item number, the purchase number
  • the retailer initiates a request for the partial decryption keys from the remote server.
  • Steps 326 to 340 are substantially the same as steps 84 to 94 and 102 to 104 of Figs 3A-B, and therefore will not be redescribed.
  • step 342 the
  • a retailer transmits by modem, facsimile or telephone a partial decryption key, which is preferably 9 bits in length.
  • a partial decryption key which is preferably 9 bits in length.
  • Steps 346 to 368 are essentially the same as steps 108 to 1 30 of FIG 3C and therefore will not be redescribed.
  • step 370 the Application
  • step 374 the decrypted product items are copied to the directory on the consumer's hard
  • Steps 376 to 382 are essentially the same as steps 140 to 148 of FIG.
  • FIGS 5A-D is a flow chart showing the steps for decrypting selected
  • station in station group 1 2, where the partial decryption keys are generated
  • a dongle 50 is utilized to monitor
  • the partial decryption keys are located in a "resource" file which is one of the database files in the
  • Steps 200 to 206 are essentially the same as steps 60 to 66 of FIG 3A and therefore will not be redescribed.
  • step 208 the Application verifies that
  • the Application checks that there is an resource file. If the Application is not set to receive the dongle or
  • step 210 the process may proceed to step 68 of FIGS 3A-D, or else terminate.
  • the Application verifies that the bus, preferably a Processor Direct Bus, is connected to the dongle.
  • the bus preferably a Processor Direct Bus
  • a dialog box appears on the monitor informing the user that the dongle has an expiration date approaching in X number of days, in X
  • step 224 if either limits are expiring, the user
  • the dongle can initiate a revalidation process at step 226.
  • the dongle is
  • step 230 the user may determine that it is premature to initiate the revalidation process and instead
  • Steps 232 to 252 are essentially the same as steps 68 to 88 of FIGS 3A- B and therefore will not be redescribed. Additionally, steps 254-258 are
  • steps 96-100 of FIG 3B essentially the same as steps 96-100 of FIG 3B and will also not be redescribed.
  • step 260 in the event that access is granted, the order detail and the customer's registration information will be written to a preferably DES
  • the server will automatically retrieve the data from the DES resource file.
  • the dongle is updated indicating that an additional use has procured.
  • Steps 266 to the end at step 299 are essentially the same as steps 106

Abstract

A system is provided for retrieving secured electronic information stored in at least one storage device (44), where each storage device, such as a CD-ROM, is at least partially encrypted and is coupled to a user station. Each user station (40) has a processor responsive to a data file system and to a separate application program. The data file system includes at least one database file, each comprising data corresponding to a respective software product. The processor that is responsive to the application product receives the data from the database file that corresponds to a user selected software product, requests (36) a decryption key from a remote network server based at least on the user selected software product data from the database files, and processes the requested decryption key that is selectively received from the server for decrypting the selected software product from the storage device.

Description

SECURED ELECTRONIC INFORMATION DELIVERY SYSTEM HAVING SEPARATE DATA MANAGEMENT
Related Applications
U.S. Patent Application Serial Number 08/731 , 185, entitled "Secured Electronic Information Delivery System Having a Metering Device, " was filed on October 1 1 , 1 996 for Daniel J. Barthel et al. and U.S. Patent Application Serial Number 08/720,968, entitled "Secured Electronic Information Delivery System Having a Three-Tier Structure, " was filed on October 1 1 , 1 996 for Daniel J.
Barthel et al. The above-noted applications are assigned to the assignee of this
application. The contents of the above-noted applications are relevant to the subject matter of this application and are fully incorporated herein by reference.
Field of the Invention
The invention relates generally to a system for retrieving secured data
from a storage device and, more particularly, to a system having a user station
with a data file system separate from an application program for selectively
receiving decryption keyes from a remote server to retrieve secured data from
a storage device.
Background of the Invention
Traditional methods of product distribution within the retail software
business generally involve the retailer having to purchase up-front inventories of each product before actual market demand can be determined. Moreover,
retailers inevitably face the "80/20" rule - unless you have the 80% of inventory in stock which rarely sells, you won't have the opportunity to sell the 20% which does sell frequently. The only alternative previously available to
retailers was to arrange a consignment inventory with the supplier. Consignment, however, does not resolve "out-of-stock" items, space
requirements, or inventory management issues. Consignment inventory also bears a large up-front cost for suppliers.
These factors, combined with increased competition from superstores, declining retail prices, and the perceived threat of the Internet as a convenient
mechanism to purchase a wide assortment of software products, make traditional methods of software distribution highly inefficient in today's market
environment. Therefore, there is a need for retailers to be able to produce software products "on-demand" as the items are needed. One such solution
is a system for retrieving secured data from a storage device.
In a conventional system for retrieving secured data from a storage
device, the storage device may be located remotely from the retailer's user station over, e.g., a local area network (LAN) or a wide area network (WAN) or
be located at the user station from, e.g., a CD-ROM.
In systems where the storage device is at the user station, the user's
access to the secured data from the storage device needs to be regulated. For example, in a hardware based system developed by Infosafe Systems, Inc.,
such regulation is accomplished by a metering chip that comprises all of the
decryption keys to unlock the desired secured data from a CD-ROM.
Essentially, a SCSI (small computer system interface) device, acting as an external hard drive and connected to the user station, includes the metering chip having the decryption keys. The selected secured data is decrypted with a corresponding decryption key, while the user's order is simultaneously written
and stored in the flash memory of the SCSI device. However, for the distributor to monitor each user station's usage (for billing purposes), every user station must be polled on a regular bases, e.g., daily, to capture the data stored
in each SCSI device and subsequently purge the flash memory. This system has the disadvantage in that the distributor must poll each user station having the metering chip which is extremely time consuming, if not unrealistic, when the amount of user stations are in the thousands. In another hardware based system by Wave Systems Corp., another
metering chip that comprises all of the decryption keys to unlock the desired secured data from a CD-ROM has been developed. However, unlike the system
by Infosafe, the metering chip is not located in an external SCSI device but in
the motherboard of the user station. This system has the same disadvantage
in that the distributor must poll each user station having the metering chip.
Further, any PC or Macintosh based user station would require that the
motherboard be manufactured with the metering chip. This has the inherent
disadvantages of taking up valuable real estate, i.e. space, on the motherboard,
adding a significant cost to new computers, and difficult to service if there is a problem with the chip.
In another secured data delivery system, developed by the assignee of
this application, a combined hardware and software system has been produced.
In this system, a retailer is supplied with a CD-ROM having encrypted software
products stored thereon, and an application program (hereinafter an "Application") including the product information corresponding to the encrypted software products and a decryption algorithm capable of taking partial
decryption keys, supplied transparently from a remote server, to generate corresponding full decryption keys to decrypt the selected software products from the CD-ROM.
However, in this system, since product data information is encrypted and incorporated into the Application program, a new Application is needed any time there is a change to the available products or when additional products or manufacturers are offered. Further, the Application risks becoming "bloated" with data and would require more memory to run as the number of products
and manufacturers increases with time. Additionally, this system does not
contemplate having a retailer sell CD-ROMs and Application software to
customers, while being able to monitor the consumer's use by having the user connect to the retailer for decryption keys. Furthermore, this system requires
that the retailer contact the server to receive the decryption keys every time the
retailer produces a software product.
It is therefore an object of the present invention to overcome the
disadvantages of the prior art.
Summary of the Invention
This and other objects are realized by an inventive system and method
of retrieving secured electronic information stored in at least one storage
device, where each storage device is at least partially encrypted and is coupled to a user station. The user station may be used by a retailer, a consumer, and the like.
In one embodiment, each user station is coupled to at least one storage device, such as a CD-ROM. Each station has a processor responsive to a data
file system and to a separate Application program. The data file system includes at least one database file, each comprising data corresponding to a respective software product.
The processor, responsive to the Application program, receives the data from the database file that corresponds to a user selected software product, requests a decryption key from a remote network server based at least on the
user selected software product data from the database files, and processes the requested decryption key that is selectively received from the server for
decrypting the selected software product from the storage device.
In another embodiment, an end-user station is coupled to at least one
storage device, such as a CD-ROM, where each station has unique serial number and a processor that is responsive to an Application program stored
therein. The user can select a software product to decrypt upon receipt of a
corresponding decryption key.
A remote vendor station, having a unique password, is selectively coupled to the end-user station, via a network, to receive a request for the
decryption key corresponding to the selected software product. Further, the vendor station receives the serial number from the end-user station. A remote server is connected to the vendor station, via a network, when the password transmitted from the vendor station is validated. The server receives a request for the decryption key corresponding to the transmitted selected software product and the end-user serial number. The server then
generates and transmits the decryption key to the vendor station based on the
selected software product and the serial number. Thereafter, the vendor station transmits the decryption key to the end-user station, so that the end-user Application program can decrypt the selected software product based on the received decryption key.
In yet another embodiment, each user station (vendor or consumer) is coupled to at least one storage device, such as a CD-ROM, having at least one
electronic database file stored therein. At least one of the database files stores
numerous decryption keys, each key corresponding to decrypting a predetermined data portion of the secured electronic information.
Further, a metering device is coupled to each user station. When the
metering device is valid, each respective user station is able to retrieve
decryption keys from the corresponding database file for use in decrypting the
corresponding selected data portion. In addition, a server that is selectably
connected to each user station across a network controls whether the metering
device is valid and operable so as to permit or deny the user station to retrieve
the corresponding decryption keys. Brief Description of the Drawing
The following detailed description, given by way of example and not
intended to limit the present invention solely thereto, will best be understood in conjunction with the accompanying drawings in which:
FIG 1 is a diagram schematically illustrating a three-tier network having a server connected to a first group of user stations, where a station in the first
group is connected to a second group of user stations, in accordance with the present invention.
FIG 2 shows an example of a user station of FIG 1 , in accordance with
the present invention.
FIGs 3A-3D is a flow chart showing the steps for decrypting selected
software products from one of a plurality of CD-ROMs connected to a user
station from the first group of stations, in accordance with the present
invention. FIGs 4A-4D is a flow chart showing the steps for decrypting selected
software products from one of a plurality of CD-ROMs connected to a user
station from the second group of stations, in accordance with the present
invention.
FIGs 5A-5D is a flow chart showing the steps for decrypting selected
software products from one of a plurality of CD-ROMs connected to a user
station from the first group of stations having a metering device, in accordance
with the present invention. Detailed Description of the Invention
The preferred embodiments of the present invention all relate to a system
where a retailer or a consumer may access software products from a storage device, such as a CD-ROM, that is coupled to the retailer or consumer user
station or computer. Each software product on, e.g., a CD-ROM, has been secured by an encryption technique so that the retailer or consumer may access any encrypted software product upon receipt of a decryption key.
For example, in one embodiment, every time the retailer or consumer wants to decrypt a software product, the retailer or consumer user station must link up with a remote server. The server will first ascertain that the station may
access such decryption keys through, e.g., passwords and external serial
numbers. Once the connection is validated, the server may generate the
desired decryption key, based on, e.g., the software product item number, an internal serial number (not known to the retailer or consumer) and a purchase
code.
For added security, the decryption key generated by the server is
preferably only a partial decryption key. Thus, if the decryption key required to unlock an encrypted product is 56 bits long, a partial key may simply be a
portion thereof. The retailer or consumer user station, having an Application program, generates the full 56 bit decryption key. If the station is a retailer
station, the retailer typically will decrypt and write a product onto an end-user
media of choice, such as a floppy disk. In another embodiment, the retailer or consumer user station has a metering device or "dongle" attached thereto for monitoring and selectively preventing access to decryption keys that are stored, not in a remote server, but in a known path to the Application in each station. In this case, the dongle
will only permit a predetermined amount of products to be decrypted, an unlimited amount of products but for a predetermined amount of time, a
predetermined monetary amount, or any other preset criteria. Once the preset criteria has expired, the retailer or consumer must link up with the remote
server for revalidation. As seen in FIG 1 , a network 1 0 is illustrated having a server 1 5 that may
be directly connected to a plurality of stations 1 6, 1 7, 1 8, 1 9 and 20 of first station group 1 2. Server 1 5 may be a conventional computer having PC DOS
or Windows®, Macintosh®, UNIX or other OS (operating system) platform or a specialized server such as an exemplary Sun® Server. Server 1 5 may be
connected to any station in station group 1 2, and vice-versa, by, for example, a typical modem link or LAN/WAN connection. A station may also be a
conventional computer having any platform. Although only five stations in station group 1 2 are shown, it should be understood that there is substantially
no limit to the amount of stations connected to server 1 5. FIG 1 also shows a second station group 14 that includes stations 24,
25, 26, 27 and 28. As with station group 12, additional stations can be added to group 14. As shown, station 1 7 may be connected to each station in group
14. Additionally, every station in first station group 1 2 may be connected to
stations in second station group 14 or other station groups (not shown). Further, stations from the first station group may communicate with stations from the second station group, and vice versa, without being physically connected via a modem link or LAN, but by facsimile machines and the like, external to each station.
As stated, stations 1 6-20 and 24-28 are typical computer systems, preferably PC or Macintosh® based. FIG 2 illustrates a conventional computer
station which includes a computer housing 40, a monitor 32 and a keyboard 46. Housing 40 comprises a modem jack 36, a hard drive 34, a floppy disk
drive 42 and a CD-ROM drive 44. Of course, a station may include additional or less hardware as desired. Connecting housing 40 with keyboard 46 is a
metering device or dongle 50 which, as will be described hereinlater, may prevent a station user from decrypting secured data from a storage device, such
as a CD-ROM. It should be noted that the dongle may be connected to any external or internal station port (not shown), as well. A printer 48 may also be
included for printing out, among other things, software manuals and disk labels.
Prior to decrypting any software products, each station preferably has
specialized software for installing an Application program and a data file system, such as a directory, although the directory may be included in the
Application program, if desired. The directory includes separate database or
resource files and universal files. In short, the database/resource files include
each software manufacturers or foundries name and corresponding software
product name, so that when the Application program is launched, the station
will dynamically build menus that include each manufacturer and a list of each
corresponding software product. Further, the database files include trademark information for each manufacturer, and the correct path for each software product, i.e. on which CD-ROM. Since the database files are preferably
separate from the Application program (although the Application program retrieves the data from the database files), it is relatively easy to upgrade or
limit the amount of manufacturers available on each station.
The universal files in the directory link together necessary products that
are required for each selected manufacturer product. For example, if a user selects a software product from a specific manufacturer, three additional
products may need to be retrieved for the selected product to work. Also, depending on the platform of the station (PC, Macintosh, etc.) certain programs must be linked with the selected product. For example, if the station has a
Macintosh platform and requires a specific utility to run the selected software
product.
The Application program performs the majority of the functions for the
station when decrypting software products. Among its functions are dynamically building manufacturer and software item menus, linking with the
server or other stations, generating full decryption keys from partial keys,
accessing the selected software product from one of a plurality of CD-ROMs,
performing the decryption algorithms of the selected products for storage on, e.g. the hard drive or a floppy disk (or any high density storage medium), and
queuing an attached printer to print out software manuals, labels for the floppy
disks, and the like. The software products, stored on the CD-ROMs, are preferably encrypted in the following manner. Each unsecured product is first encrypted by a
conventional encrypting process using a unique corresponding encryption key. Thereafter, each encrypted product is decrypted using a unique phantom key.
A phantom key is any random key so long as it is not the same as the unique encryption key. Each phantom decrypted product is then written to a
corresponding CD-ROM. This scheme of first encrypting and then decrypting with a phantom key ensures that the software products on the CD-ROMs are
virtually unbreakable without having both the phantom key and the encryption key. It has been estimated that it would take a Cray supercomputer
approximately five years of non-stop processing to break the key codes for each software product. Of course, any encryption scheme will work with this
invention as well.
FIGs 3A-D is a flow chart showing the steps for decrypting selected
software products from a plurality of CD-ROMs from a retailer or consumer station (in station group 1 2), where a partial decryption key, for each selected
product, is generated from the remote server.
At step 60, the retailer or consumer user station is powered on and the
Application program is launched. For example, on a Windows based operating system, the user would "click-on" the Application icon. At step 62, once the
Application is launched, it checks that all of the necessary files from the directory are present. If not, an error message is flashed on the monitor and,
upon user confirmation, the Application is terminated at step 64. Assuming
that all files are present, at step 66, the Application will read the available database files and include the contents of these files in dynamically built menus. An example of a dynamically built menu would be a list of manufacturer and corresponding product menus.
At step 68, the station is idle while it waits for a user input. At step 70,
the user will select the software product item or items that need to be
decrypted and optionally written on a storage device. The user may select the desired item via SKU numbers, actual product names, scrolling lists or other criteria depending on the product. At step 72, the Application searches in the
database files for the selected item. If, however, the item was selected from a scrolling list (a list created from the menus built from the database files), then
the user selected an item directly from the database and therefore, a search is not necessary. Step 74 indicates that the selected items were found. If not,
step 76 will alert the user and return to step 70.
Assuming that the item is found, the selected item will be added to an
Order Detail screen that includes other selected items, if any, at step 78. In the Order Detail screen, the user can select some or all of the selected items for
decrypting and manufacture. Step 80 inquires if the user wants to select more
product items. If yes, then the user returns to step 72, while if no, the user
initiates the request for decryption keys to decrypt each selected item, at step 82, by, e.g., clicking a Request icon.
At step 84, a registration data entry screen that includes a space to enter
in the customer's name, address, and the like appears. This feature enables the
retailer or the consumer himself to register the user of the selected software
product with the manufacturer, so that the user can receive additional information regarding updates, etc. Further, this enables the retailer to build a customer database of software purchasers simultaneously. At step 86, the Application ensures that all fields in the registration data entry are populated. If not, the user optionally is returned to step 84.
At step 88, the Application will request the station user's name and a pre-assigned password which will be subsequently transmitted to the server at step 90. At this step, the Application will preferably automatically dial a predetermined phone number to connect to the remote server. To avoid anticipated traffic of several stations trying to connect to the server simultaneously, conventional network solutions can be implemented if a server
is on a LAN.
At step 92, in the event of a busy signal, the Application will continue
dialing periodically until a connection is made or the user terminates the process. At step 94, connection to the server is made. At step 96, the server
will initiate a series of requests for data to determine if the station is qualified
to "Login" to the server. Some of the criteria include the station name, a
password, and the external serial number. At step 98, if access to the server is denied, the modem connection is terminated by, e.g., an ATF command, at
step 100. If access is granted, step 102 transfers the Order Detail and registration data entry information to the server. The server may store this
information for future billing and royalty reporting purposes. Further, in this
step, the product item number, the external serial number, and a purchase
code, among others, is supplied to the server. The purchase code is a code
generated by the Application that is not dependent on the selected product item but based on the internal serial number of the Application. Based upon the supplied information, the server generates partial decryption keys to be transmitted to the requesting station.
At step 104, the partial decryption keys are transmitted transparently to
the Application via the modem. This partial decryption key is invisible to the user and is only used internally to generate the full decryption keys in step 106.
At step 106, the Application generates the full decryption keys that will decrypt the selected software product. This is achieved, e.g., by using a private key
encryption/decryption scheme. The full decryption keys are preferably 56 bit keys using the multi-level encryption scheme previously discussed. For
example, since only portions of the decryption keys are sent, there is little risk of a security breach since the balance of the decryption key that needs to be
used is calculated "on-the-fly" by the Application.
At step 108, the Application queries whether there are any items to print.
That is, if the product requires labels or documentation, the Application will generate these documents locally at the station's printer. The labels are for the
floppy disks and casing which will be manufactured, if desired, for the decrypted software products. The labels and documentation may or may not
be encrypted in the database or CD-ROM, depending on the manufacturer's specifications. If there are items to print, the printing routines are initialized at
step 1 10. Once the items are printed, the user will have the opportunity to check the documents for printing flaws, at step 1 1 2, and if necessary reprint
the documentation back at step 1 10. If the documentation is error free, or if
the user chooses not to print any items, the encrypted CD-ROM volume is determined at step 1 14. The path to the correct CD-ROM that contains the selected encrypted product is stored in the corresponding database file.
Preferably, a dialog box will appear requesting that the user mounts the appropriate CD-ROM for the item or items that need processing. In the event
that the order contains items that are located on multiple CD-ROMs, the Application will process the first item, then request that a new CD-ROM be
mounted, and proceed with processing that item.
At step 1 1 6, the Application checks to make sure that the CD-ROM
mounted is the correct one. If not, at step 1 1 8 the Application requests for the correct CD-ROM and at step 1 20, the user may change to the correct CD-ROM.
If it is still not correct, the process returns to step 1 1 8; however, if the CD- ROM is now correct the process proceeds to step 1 22 where it is determined
whether the selected item is found on the corrected CD-ROM. If not, the CD- ROM is likely outdated and an error message will appear which terminates the
order.
Once the item is found, the process proceeds to step 1 26 where the full
generated decryption keys are used to decrypt the selected items from the Order Detail. These keys are then immediately discarded by the Application and
thus cannot be used again. This occurs since the keys that are generated may
only exist one time for a single order. The keys that are generated in the future
to decrypt the same item will be completely different. Thus, the full decryption
keys are only temporarily stored in a RAM (random access memory) until the
item is decrypted and then discarded. At step 128, the decrypted items are
checked by the Application in a process called "Checksum" to insure the integrity of the data. In the event of a Checksum error, the order will be terminated at step 1 30. In this case, it is most likely that the internal serial
number in the Application has been set incorrectly or that the installation procedures were not correctly followed.
At this point, the selected product item has been decrypted and is temporarily stored in the station memory. If the station user is a consumer, the
product may be stored on the hard drive of the station. Alternatively or in addition to, the consumer may also write the decrypted product to a blank
floppy disk. On the other hand, if the user station is from a retailer, the product may only be stored temporarily in the RAM as was the decryption key. At step
132, the Application will request a media type to be mounted. Preferably, the media is a floppy disk which is specially serialized. If the Application requires
that the floppy disks be specially serialized, then the specialized disks must be supplied to the user since no other media will work with the system. This
procedure is to ensure quality control and maintain a control over the amount of products that can be decrypted per retailer and consumer station.
At step 1 34, the Application determines whether the media are the
correct type and formatted for the correct platform. Additionally, the
Application "flags" the media once it is mounted so it cannot be used again. If the media does not meet these criteria, the media will be rejected, and a
request will be made of the user to mount valid media back at step 1 32.
Assuming that the media is correct, the product items are copied to the media
at step 136. At step 1 38, the Application determines whether the media is filled to capacity or require decryption from multiple CD-ROMs. If the order is not complete, the process is returned to step 1 32. If the order is complete, the Application will return to the Order Detail screen at step 1 40. At step 144, the
order screen is cleared and the Application is ready for the next order to be processed through the system. At step 146, the station is idle waiting for the
user to initiate the next selected item, if any. Lastly, at step 148, the process is ended.
FIGS 4A-D is a flow chart showing the steps for a consumer decrypting selected software products from a plurality of CD-ROMs from the consumer
station. In this embodiment, the consumer preferably goes through the retailer,
where the consumer purchased the software and CD-ROMs, to receive the partial decryption keys, as desired. The retailer, in turn, connects to the server for the partial decryption keys and once received, subsequently transmits on
line or by facsimile to the consumer.
Steps 300 to 320 are essentially identical to steps 60 to 80 of FIG 3A
and therefore will not be redescribed. At step 322, the consumer user will
contact the retailer, where he purchased the Application program, for the partial
decryption keys. The user may contact the retailer by telephone or facsimile to request the partial decryption key for the selected software product, or may
contact the retailer via other networks, such as a modem. The information
supplied to the retailer include the product item number, the purchase number
and an external serial number that was supplied with the Application program. At step 324, the retailer initiates a request for the partial decryption keys from the remote server.
Steps 326 to 340 are substantially the same as steps 84 to 94 and 102 to 104 of Figs 3A-B, and therefore will not be redescribed. At step 342, the
retailer transmits by modem, facsimile or telephone a partial decryption key, which is preferably 9 bits in length. At step 344, the consumer user enters the
9 bit partial decryption key into the Application to internally generate the full 56 bit decryption key to decrypt the selected product item.
Steps 346 to 368 are essentially the same as steps 108 to 1 30 of FIG 3C and therefore will not be redescribed. At step 370, the Application
preferably moves the decrypted software product from the CD-ROM to the recepticle directory. If a directory path is not located, an error message will
flash so that the user may create a proper directory at step 372. At step 374, the decrypted product items are copied to the directory on the consumer's hard
drive. Steps 376 to 382 are essentially the same as steps 140 to 148 of FIG
3D, and therefore, will not be described.
FIGS 5A-D is a flow chart showing the steps for decrypting selected
software products from a plurality of CD-ROMs from a retailer or consumer
station (in station group 1 2), where the partial decryption keys are generated
from the station itself. In this embodiment, a dongle 50 is utilized to monitor
the amount of items decrypted, as previously described. The partial decryption keys are located in a "resource" file which is one of the database files in the
directory. Steps 200 to 206 are essentially the same as steps 60 to 66 of FIG 3A and therefore will not be redescribed. At step 208, the Application verifies that
it is set to require a hardware dongle. Further, the Application checks that there is an resource file. If the Application is not set to receive the dongle or
if the resource file is not present, then at step 210, the process may proceed to step 68 of FIGS 3A-D, or else terminate.
At step 21 2, the Application verifies that the bus, preferably a Processor Direct Bus, is connected to the dongle. At step 21 4, if there is no dongle, an
error message is generated and the Application is flagged or terminated, at step 21 6. At step 21 8, the Application verifies that the dongle is set specifically for
the Application. At step 220, an error message is generated and the
Application is terminated if the dongle failed the verification.
At step 222, a dialog box appears on the monitor informing the user that the dongle has an expiration date approaching in X number of days, in X
number of additional manufacturing sessions, by X number of dollars, and/or any other criteria, as desired. At step 224, if either limits are expiring, the user
can initiate a revalidation process at step 226. Preferably, the dongle is
revalidated on line by the remote server at the server's discretion at step 228.
Once the dongle is revalidated the process returns to step 200 and the user
may begin again.
If the use limit was not running out or expired, at step 230 the user may determine that it is premature to initiate the revalidation process and instead
elects to proceed with the manufacturing process. Steps 232 to 252 are essentially the same as steps 68 to 88 of FIGS 3A- B and therefore will not be redescribed. Additionally, steps 254-258 are
essentially the same as steps 96-100 of FIG 3B and will also not be redescribed.
At step 260, in the event that access is granted, the order detail and the customer's registration information will be written to a preferably DES
encrypted database file where it will be stored for future billing and royalty reporting purposes. For example, every time that the user goes on line with the server to revalidate the dongle (at step 228) the server will automatically retrieve the data from the DES resource file. At step 262, the partial decryption
keys are retrieved from the resource file. At step 264, the dongle is updated indicating that an additional use has procured.
Steps 266 to the end at step 299 are essentially the same as steps 106
to 144 of Figs 3B-D and therefore will not be redescribed.
While several embodiments have been chosen to illustrate the invention, it will be understood by those skilled in the art that various changes and
modifications can be made herein without departing from the scope of the invention as defined in the appended claims.

Claims

ClaimsThe claimed invention is:
1 . A system for retrieving a plurality of secured electronic information stored in at least one storage device, each being at least partially encrypted,
and each of said plurality of secured electronic information being a software product, comprising:
at least one user station coupled to said at least one storage device, each having a processor responsive to a data file system and to a separate application program stored in said user station,
said data file system including at least one database file, each comprising
data corresponding to a respective one of said plurality of software products, wherein said processor, responsive to said application program,
receives said data from said database file that corresponds to a
user selected software product, requests a decryption key from a remote network server based at
least on the user selected software product data from said database files, and processes the requested decryption key, selectively received from
said server, for decrypting said selected software product from said at least one
storage device.
2. The system of claim 1 , wherein each said decryption key that is
requested and processed by said processor, responsive to said application
program, is a partial decryption key, and wherein said processor generates a corresponding full decryption key, for decrypting said selected software product from said at least one storage device, based on said partial decryption key.
3. The system of claim 2, wherein said generated full decryption key
is stored in said user station only until said selected software product is decrypted.
4. The system of claim 2, wherein each of said software products being previously encrypted on said at least one storage device by first encrypting each unsecured software product using a unique corresponding
encryption key and subsequently decrypting the encrypted product using a unique phantom key, so that to decrypt each software product, each said full
decryption key must correspond to said unique phantom key to encrypt said
product and to said unique corresponding encryption key to decrypt the
phantom encrypted product.
5. The system of claim 1 , wherein each of said data corresponding to a respective software product includes at least one of the product
manufacturer's name and trademarks, the location of said software product on
said storage device, the platform type that will utilize said software product,
and other software products relating thereto.
6. The system of claim 5, wherein said platform type is one of PC,
Macintosh and UNIX based.
7. The system of claim 1 , wherein said data file system further includes a plurality of universal files corresponding to one of a predetermined
group or the entirety of said software products, wherein said processor, responsive to said application program, receives the data from the
corresponding universal file.
8. The system of claim 7, wherein said data from said corresponding universal file includes verification to receive other necessary software products
for said at least one storage device corresponding to the user selected software product.
9. The system of claim 2, wherein said application program includes
an encrypted serial number stored therein which must be supplied to said server, with said data corresponding to a respective software product, to
receive said partial decryption key, such that said server will not transmit said partial decryption key if any of said serial number, said data corresponding to
a respective software product, and optionally a user password is determined to
be invalid by said server.
10. The system of claim 1 , wherein the decrypted selected software
product is written to a storage medium.
1 1 . The system of claim 10, wherein said processor, responsive to said
application program, verifies that said storage medium includes a predetermined data code, otherwise said decrypted software product is lost and not written to said storage medium.
12. The system of claim 1 1 , wherein said storage medium is a floppy disk.
13. The system of claim 1 , wherein each of said at least one storage device is a CD-Rom.
14. A method for retrieving a plurality of secured electronic information
stored in at least one storage device, each being at least partially encrypted,
and each of said plurality of secured electronic information being a software product, comprising the steps of:
selecting one of said software products for decryption through an
application program stored in a user station, said user station having a processor responsive to said application program and to a separate data file
system, said data file system including at least one database file, each comprising data corresponding to a respective one of said plurality of software
products; supplying said data regarding the corresponding selected product from
said database files to said application program; requesting, by said processor responsive to said application program, a
decryption key from a remote network server based at least on said data from
said database files; selectively receiving said decryption key from said server to said processor responsive to said application program; and
decrypting said selected software product from said at least one storage device based on said decryption key.
1 5. The method of claim 14, wherein each said decryption key is a partial decryption key.
1 6. The method of claim 14, further comprising the step of processing the partial decryption key received from said server to generate a full decryption
key, wherein said step of encrypting decrypts said selected software product based on said full decryption key.
1 7. The method of claim 1 6, further comprising the step of storing said
full decryption key only until said selected software is decrypted.
1 8. The method of claim 1 6, wherein each said software product being
previously encrypted on said at least one storage device by the steps of:
encrypting each unsecured software product using a unique
corresponding encryption key, and
subsequently decrypting each encrypted product using a unique phantom
key.
1 9. The method of claim 1 8, wherein said step of decrypting said selected software product comprises the steps of:
encrypting said selected software product based on said unique phantom key, and
decrypting the phantom encrypted product based on said unique corresponding encryption key,
wherein said phantom and corresponding encryption key is based on said generated full decryption key.
20. The method of claim 1 4, wherein each of said data corresponding to a respective software product includes at least one of the product manufacturer's name and trademarks, the location of said software product on
said storage device, the platform type that will utilize said software product,
and other software products relating thereto.
21 . The method of claim 20, wherein said platform type is one of PC,
Macintosh and UNIX based.
22. The method of claim 14, wherein said data file system further
includes a plurality of universal files corresponding to one of a predetermined
group or the entirety of said software products.
23. The method of claim 22, further comprising the step of selectively retrieving said predetermined group or said entirety of software products from
said at least one storage device when said selected software product corresponds to one of said plurality of universal file.
24. The system of claim 1 6, wherein said step of requesting said decryption key from said server is further based on an encrypted serial number, stored in said application program, such that said server will not transmit said partial decryption key if any of said serial number, said data corresponding to a respective software product, and optionally a user password is determined to
be invalid by said server.
25. The method of claim 14, further comprising the step of writing the decrypted selected software product to a storage medium.
26. The method of claim 25, further comprises the steps of:
verifying that said storage medium includes a predetermined data code;
destroying said decrypted software product without writing to said
storage medium if such verification fails, and
writing said decrypted software product to said storage medium if such
verification passes.
27. The method of claim 26, wherein said storage medium is a floppy
disk.
28. The system of claim 14, wherein each of said at least one storage device is a CD-Rom.
PCT/US1997/018164 1996-10-10 1997-10-08 Secured electronic information delivery system having separate data management WO1998016033A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU48119/97A AU4811997A (en) 1996-10-10 1997-10-08 Secured electronic information delivery system having separate data management

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US73118696A 1996-10-10 1996-10-10
US08/731,186 1996-10-10

Publications (1)

Publication Number Publication Date
WO1998016033A1 true WO1998016033A1 (en) 1998-04-16

Family

ID=24938443

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/018164 WO1998016033A1 (en) 1996-10-10 1997-10-08 Secured electronic information delivery system having separate data management

Country Status (2)

Country Link
AU (1) AU4811997A (en)
WO (1) WO1998016033A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000036536A2 (en) * 1998-12-17 2000-06-22 Tribeka Limited Method and apparatus for the distribution of digitised information on demand
WO2000069112A1 (en) * 1999-05-07 2000-11-16 Centura Software Precomputing des key schedules for quick access to encrypted databases
GB2390786A (en) * 2002-07-10 2004-01-14 Hewlett Packard Development Co Validating software code using a trusted third party
US7178038B2 (en) * 2001-07-19 2007-02-13 Koninklijke Philips Electronics N. V. Apparatus and method for reproducing user data
US7181016B2 (en) 2003-01-27 2007-02-20 Microsoft Corporation Deriving a symmetric key from an asymmetric key for file encryption or decryption

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5509070A (en) * 1992-12-15 1996-04-16 Softlock Services Inc. Method for encouraging purchase of executable and non-executable software
US5548645A (en) * 1993-12-22 1996-08-20 Ananda; Mohan Secure software rental system using distributed software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5509070A (en) * 1992-12-15 1996-04-16 Softlock Services Inc. Method for encouraging purchase of executable and non-executable software
US5548645A (en) * 1993-12-22 1996-08-20 Ananda; Mohan Secure software rental system using distributed software

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000036536A2 (en) * 1998-12-17 2000-06-22 Tribeka Limited Method and apparatus for the distribution of digitised information on demand
WO2000036536A3 (en) * 1998-12-17 2001-10-04 Tribeka Ltd Method and apparatus for the distribution of digitised information on demand
US7487129B2 (en) 1998-12-17 2009-02-03 Daniel Doll-Steinberg Method and apparatus for the distribution of digitised information on demand
WO2000069112A1 (en) * 1999-05-07 2000-11-16 Centura Software Precomputing des key schedules for quick access to encrypted databases
US7178038B2 (en) * 2001-07-19 2007-02-13 Koninklijke Philips Electronics N. V. Apparatus and method for reproducing user data
GB2390786A (en) * 2002-07-10 2004-01-14 Hewlett Packard Development Co Validating software code using a trusted third party
GB2390786B (en) * 2002-07-10 2006-02-15 Hewlett Packard Development Co Method and system for validating software code
US7246379B2 (en) 2002-07-10 2007-07-17 Hewlett-Packard Development Company, L.P. Method and system for validating software code
US7181016B2 (en) 2003-01-27 2007-02-20 Microsoft Corporation Deriving a symmetric key from an asymmetric key for file encryption or decryption

Also Published As

Publication number Publication date
AU4811997A (en) 1998-05-05

Similar Documents

Publication Publication Date Title
US5784460A (en) Secured electronic information delivery system having a three-tier structure
US20020007347A1 (en) Secured electronic information delivery system having a metering device
EP0719485B1 (en) Access control for portable data storage media
US5677953A (en) System and method for access control for portable data storage media
CA2145926C (en) Method and apparatus for enabling trial period use of software products: method and apparatus for generating a machine-dependent identification
US6954753B1 (en) Transparent electronic safety deposit box
US6067582A (en) System for installing information related to a software application to a remote computer over a network
US7143067B1 (en) System and method for installing personal computer software
EP0681233B1 (en) Method and apparatus enabling software trial using an encryption header
EP0679979B1 (en) Method and apparatus enabling software trial with a try-and-buy user interaction
US6092105A (en) System and method for vending retail software and other sets of information to end users
JP3503774B2 (en) Method and apparatus for securing access to a file
US5563946A (en) Method and apparatus for enabling trial period use of software products: method and apparatus for passing encrypted files between data processing systems
WO1995022796A1 (en) Method and apparatus for retrieving secure information from a cd-rom database
WO1998016033A1 (en) Secured electronic information delivery system having separate data management
WO2001071638A1 (en) An internet storage service system and method
AU694742C (en) Access control for portable data storage media
AU715638B2 (en) System and method for access control for data storage media
JP2002109253A (en) Package software rental system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU BB CN CU JP KR NZ UA AM AZ BY KG KZ MD RU TJ TM

NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 1998517719

Format of ref document f/p: F