throbber
(19) United States
`(12) Patent Application Publication
`Schull
`
`(10) Pub. No.: US 2002/0004785 Al
`Jan. 10, 2002
`(43) Pub. Date:
`
`I lllll llllllll II llllll lllll lllll lllll lllll 1111111111111111111111111111111111
`US 20020004 785Al
`
`(54) METHOD FOR SELLING, PROTECTING,
`AND REDISTRIBUTING DIGITAL GOODS
`
`(76)
`
`Inventor: Jonathan Schull, Hudson, MA (US)
`
`Publication Classification
`
`Int. Cl.7 .............................. H04L 9/00; G06F 17/60
`(51)
`(52) U.S. Cl. ............................... 705/51; 705/59; 713/186
`
`Correspondence Address:
`BROWN RUDNICK FREED AND GESMER P
`c
`BOX IP
`18TH FLOOR ONE FINANCIAL CENTER
`BOSTON, MA 02111 (US)
`
`(21)
`
`Appl. No.:
`
`09/942,232
`
`(22)
`
`Filed:
`
`Aug. 29, 2001
`
`Related U.S. Application Data
`
`(63)
`
`Continuation-in-part of application No. 09/764,293,
`filed on Jan. 19, 2001, which is a continuation of
`application No. 08/631,411, filed on Apr. 12, 1996,
`now Pat. No. 6,266,654, which is a continuation-in(cid:173)
`part of application No. 07/990,445, filed on Dec. 15,
`1992, now abandoned.
`
`(57)
`
`ABSTRACT
`
`This is a method for limiting access to selected features of
`a freely distributed multimedia file, by disabling selected
`features of the file (using encryption, compression, or other
`access denial), distributing the file with some enabled fea(cid:173)
`tures as an inducement to new users, and offering to enable
`more features when a new user attempts to use a disabled
`feature. A licensing system then receives a request from the
`user's system, identifying a specific operating context and
`one or more features desired by the corresponding user.
`Accounting is done and an authorization is sent to the user
`or the user's system to enable the features. However, the
`authorization is uniquely associated with the measured oper(cid:173)
`ating context of the user and the features remain enabled
`only for said operating context, thus limiting full operation
`to authorized users, while permitting new users access to
`limited operations.
`
`Laissez Faire Distribution Channel 10
`User puts
`User passes
`User receives
`copy-able -software in-copies on to
`Software
`Processor
`other Users
`
`-<
`
`~ "'
`
`) J J
`I 20 ~ -
`
`USER'S
`
`~ 15
`J PROCESSOR
`
`GENERATE
`30
`~---_,.(_
`PASSWORDABLE-ID
`GENERATE TARGET ID
`ID TARGET
`(e.g. USER's VOICE) APPLY FEATURE ID
`APPLY PROGRAM ID
`
`PROGRAMMER'S
`PROGRAM
`
`25
`
`PROTECTED
`50 SOFTWARE
`
`40
`PREVIOUSLY
`INSTALLED-~­
`PASSWORD
`
`O>-.--..__.,
`YES
`
`0 0
`
`UNLOCK ADVANCED
`FEATURES
`90
`85
`LICENSING
`LICENSING
`PROCESSOR
`PROGRAM
`Transmit ID Payment Authorization and
`Registration Information
`
`LEAVE
`ADVANCED
`FEATURES
`LOCKED
`
`100
`
`UNLOCK
`ADVANCED
`FEATURES
`
`93
`
`CREDIT
`PROGRAMMER
`
`O&
`
`Locked
`
`0 0 (But Advanced Features are
`
`)
`outomotically relocked when Software ~
`
`is copied to another ID-target) -
`
`APPLE EXHIBIT 1006
`Page 1 of 16
`
`

`

`Patent Application Publication
`
`Jan. 10, 2002 Sheet 1 of 2
`
`US 2002/0004785 Al
`
`Laissez Faire Distribution Channel 10
`User receives
`User puts
`User passes
`copy-able --software in --copies on to
`Software
`Processor
`other Users
`
`I 20
`
`[Yoc'ZJ
`
`PROGRAMMER~
`PROGRAM
`
`30
`GENERATE
`--
`~---./
`PASSWORDABLE-ID
`GENERATE TARGET ID
`ID TARGET
`(e.g. USER's VOICE) APPLY FEATURE ID
`APPLY PROGRAM ID
`
`[J:c~ 15
`
`USER~
`
`J PROCESSOR
`
`40
`PREVIOUSLY
`INSTALLED ----1><
`PASSWORD
`
`55
`
`25
`
`PROTECTED
`SOFTWARE
`
`YES
`
`OFFER
`PASSWORD
`
`UNLOCK ADVANCED
`FEATURES
`90
`85
`.
`LICENSING
`LICENSING
`PROGRAM
`PROCESSOR
`Transmit ID Payment Authorization and
`Registration Information
`
`80
`AUTHORIZATION
`CHANNEL
`
`GENERATE
`INSTALL
`PASSWORD Transmit Password PASSWORD
`
`DEBIT
`USER
`
`$ t
`
`CREDIT
`PROGRAMMER
`
`LEAVE
`ADVANCED
`FEATURES
`LOCKED
`
`100
`
`UNLOCK
`ADVANCED
`FEATURES
`
`93
`
`o~
`Locked
`
`0 0 (But Advanced Features are
`
`)
`automatically relocked when Software
`is copied to another ID-target)
`
`-4
`
`FIG. 1
`
`APPLE EXHIBIT 1006
`Page 2 of 16
`
`

`

`Patent Application Publication
`
`Jan. 10, 2002 Sheet 2 of 2
`
`US 2002/0004785 Al
`
`210
`\
`ENCRYPT TEXT USING ENCRYPTING SEED S
`
`ASSIGN FEATURE ID TO ENCRYPTED TEXT
`
`PROVIDE LICENSING SYSTEM WITH S FOR EACH
`FEATURE ID
`
`22~
`
`GENERATE PASSWORDABLE-ID
`
`USE FEATURE ID TO ACCESS
`~ ENCRYPTING SEED S
`
`•
`
`TRANSMIT PASSWORDABLE-10
`AND FEATURE ID TO
`LICENSING SYSTEM
`
`240
`
`.\
`
`USE PASSWORDABLE ID TO
`DECRYPT ENCRYPTING
`SEED S FROM PASSWORD
`+
`USE ENCRYPTING SEED S TO
`DECRYPT TEXT
`
`t
`t
`t
`
`USE PASSWORD ABLE ID TO
`ENCRYPT ENCRYPTING SEED S
`
`USE ENCRYPTED SEED S AS
`PASSWORD
`
`~TRANSMIT PASSWORD TO
`USER SYSTEM
`
`FIG. 2
`
`APPLE EXHIBIT 1006
`Page 3 of 16
`
`

`

`US 2002/0004 785 Al
`
`Jan. 10, 2002
`
`1
`
`METHOD FOR SELLING, PROTECTING, AND
`REDISTRIBUTING DIGITAL GOODS
`
`[0001] This is a Continuation in Part based upon pending
`application U.S. Ser. No. 09/764,293, which was filed on
`Jan. 19, 2001, which was a Continuation of U.S. Ser. No.
`08/631,411, filed on Apr. 12, 1996, now issued as U.S. Pat
`No. 6,266,654, which was a Continuation in Part of U.S. Ser.
`No. 07/990,445, filed on Dec. 15, 1992, now issued on Apr.
`16, 1996 as U.S. Pat. No. 5,509,070.
`
`BACKGROUND-FIELD OF THE INVENTION
`
`[0002] This invention relates to a method of encouraging
`distribution, registration, and purchase of freely copyable
`software and other digital information. The invention
`applies to software as well as other information which can
`be repeatedly copied with little loss of fidelity, and which is
`expressed via a hardware- or software- programmable appa(cid:173)
`ratus, such as a computer or a digital audio tape player.
`
`[0003] The Copyability of Software-problem and
`Opportunity.
`
`[0004] Digitally encoded information ("software") is one
`of the most economically important commodities of the era.
`The ease and economy with which perfect copies can be
`made, copied and distributed has promoted the spread of
`software and related technologies through "traditional"
`commercial channels (retail and mail order sales, etc.) and
`through "non-traditional" distribution channels: computer
`user groups, user-to-user copying and sharing (e.g., of
`software and of music and video tapes), digital data net(cid:173)
`works such as the internet, CompuServe, static media such
`as CD-ROM disks loaded with large quantities of data,
`public libraries, and broadcast media. These non-traditional
`distribution channels in particular have made it difficult for
`software creators and copyright holders to regulate the use
`of their creations, or to receive payment and registration
`information from their users. Consequently, software pro(cid:173)
`ducers forfeit substantial revenues and valuable information
`about their customer base and potential markets, while
`businesses and universities find themselves subject to legal
`prosecution and intimidation for software piracy.
`
`[0005] Two approaches to these problems are copy-deter(cid:173)
`rence, and copy- encouragement. Copy-deterrence is imple(cid:173)
`mented through laws, license agreements and copy-protec(cid:173)
`tion technologies. Copy-encouragement is practiced by
`"shareware" and small scale marketers who tolerate the low
`registration rates in order to reach the many potential users
`who can be reached at little cost through non-traditional
`distribution channels. Separately and in combination, how(cid:173)
`ever, these approaches have had significant disadvantages.
`
`[0006] Copy-deterrence.
`
`[0007] Legal copy-deterrence techniques such as licensing
`agreements, and litigation against companies and universi(cid:173)
`ties whose members knowingly or unknowingly engage in
`piracy are inefficient, expensive, and often unsuccessful.
`They incidentally create large numbers of "software crimi(cid:173)
`nals" or "pirates" who routinely violate these unenforceable,
`hard-to-understand, and often unreasonable contracts.
`
`[0008] Hardware and software copy-deterrence technolo(cid:173)
`gies have also been developed, but they often raise the price
`and complexity of the software product, and inspire the
`
`development, sale and use of counter-technologies
`intended to defeat these copy-protection technologies.
`Copy-protection techniques often inconvenience Users who
`have legitimate needs and good reasons for making copies,
`and User protests against such inconveniences have in fact
`caused many software vendors to abandon copy-protection
`schemes. Yet another disadvantage of hardware-based copy(cid:173)
`protection techniques, as well as those which involve modi(cid:173)
`fication or customization of the executable program itself is
`that they prevent software vendors from exploiting the
`remarkable non-traditional distribution networks which
`have sprung up in the software marketplace, and which have
`given rise to the alternative approach, copy-encouragement.
`
`[0009] Copy-encouragement
`
`[0010] Shareware programmers and vendors encourage
`their users to copy, share, and distribute software to others
`in hopes that an adequate proportion of recipients will
`voluntarily contact the vendors, register themselves, and pay
`for the software which they are using. Only a small fraction
`of users actually oblige, but the non-traditional distribution
`channels reach so many potential customers so cheaply, that
`the shareware strategy has been adopted by small-scale
`vendors who do not have the resources for traditional
`manufacturing, advertising, packaging, and distribution
`methods.
`
`[0011]
`In addition to the explicitly-shareware oriented
`software vendors, it has been observed that many purveyors
`of popular software packages actually tolerate a large
`amount of illicit copying in the hopes that users will even(cid:173)
`tually purchase a copy or an upgrade. In any case, it is
`obviously and crucially desirable to the vendors of easily(cid:173)
`copyable software that users register and pay for software.
`
`[0012] Users of freely copyable software are often encour(cid:173)
`aged to register and pay for software by offering them
`additional benefits including "enhanced" versions of the
`software. But this strategy is deficient: withholding such
`benefits reduces the attractiveness of the product to potential
`users, and reduces the probability that users will recommend
`or give the program to other paying customers. And once a
`user has purchased one enhanced copy, he or she has even
`less incentive for registering additional copies to be used on
`additional machines, and is now able to pirate the more
`powerful program, thus undercutting incentives for registra(cid:173)
`tion among future users who might receive copies. There is
`a need for a means of INSTANTLY rewarding Users who
`register and pay for freely copyable software, without under(cid:173)
`cutting future incentives for registering, copying, and dis(cid:173)
`tributing additional copies.
`
`[0013] Another problem with the prior art is that the
`people who actually create software (i.e., programmers)
`often do not have the financial resources, business experi(cid:173)
`ence, time or motivation required for registering, billing, and
`collecting money from paying users. This is why they often
`license their programs to established publishers and settle
`for a small percentage of the profits which arise from the sale
`of their creations. Programmers would benefit greatly if they
`could "program a business operation" into their software just
`as they can now "program a computational operation" into
`their software-i.e., by adding a few lines of code which
`activate other routines which will do their bidding. The
`present invention provides a means of satisfying this unrec(cid:173)
`ognized need in the industry.
`
`APPLE EXHIBIT 1006
`Page 4 of 16
`
`

`

`US 2002/0004 785 Al
`
`Jan. 10, 2002
`
`2
`
`[0014] Objects of the Present Invention
`
`[0015] One object of the present invention is to encourage
`users to pay for, and register the freely-copyable software
`they actually use.
`
`[0016] Another object is to enable programmers to "pro(cid:173)
`gram a business operation" by writing a few lines of code,
`and thus reduce their financial and other dependence upon
`software publishers, distributors, and vendors.
`
`[0017] Another object is to allow programmers to be
`confident that their licensed representatives (software dis(cid:173)
`tributors and vendors) are in fact reporting and paying
`royalties on all product sales.
`
`[0018] Another object is to encourage and allow users to
`evaluate and exploit useful software before deciding
`whether to purchase, and to provide a convenient and rapid
`way for them to purchase access to advanced features
`severally or individually, as they and the programmer
`choose.
`
`[0019] Another object is to incent users to distribute
`freely-copyable software to other people who would benefit
`from, and possibly purchase the software.
`
`[0020] Another object is to create economic and pragmatic
`incentives which deter piracy: the idea is that if higher
`registration rates could be attained, software prices could
`more accurately reflect their actual utility to the average
`user. This would reduce the incentives for piracy and asso(cid:173)
`ciated technologies.
`
`[0021] Another object is to increase the availability and
`profitability of freely copyable software and of the grass(cid:173)
`roots distribution channels.
`
`[0022] Another object is to enable users to gain instant
`access to advanced features of freely copyable software with
`minimal delay through virtually any form of communication
`technology with or without auxiliary telecommunications
`equipment such as modem.
`
`[0023] Another object is to eliminate the need for costly
`and inconvenient non-copy-able adjuncts to software pro(cid:173)
`grams (such as expensively printed manuals and packaging,
`hardware locks) etc., whose only purpose is to deter illegal
`copying of software and whose effect is to inflate software
`prices.
`
`[0024] Another object is to improve upon the technology
`embedded in the author's prior art (TAU) so that technology
`can be made available to other programmers as freely(cid:173)
`copyable software tools.
`
`[0025] Still further objects and advantages of the present
`invention will become apparent from a consideration of the
`ensuing description and drawings.
`
`SUMMARY DESCRIPTION OF IBE
`INVENTION
`
`[0026] Some of the above objects have been partially
`realized in a computer program developed for different
`purposes by the present author in 1989. This is probably the
`most relevant prior art, and the present invention is both an
`improvement and a new use of the author's earlier invention,
`and of other related inventions, such as U.S. Pat. Nos.
`4,796,220 and 5,113,118.
`
`[0027] My previously-developed program ("TAU" for the
`scientific analysis of biological rhythms data) is not copy(cid:173)
`protected, and copying is encouraged. However certain
`"advanced features" of the program are inaccessible on a
`given machine until a unique, or nearly-unique password is
`installed on that machine. These advanced features (such as
`the ability to make publication-quality reports) are inessen(cid:173)
`tial for educational and evaluation purposes (and so they do
`not discourage distribution along the grassroots channel),
`but they are desirable for serious or professional use (and so
`they do encourage user registration). The instant the pass(cid:173)
`word is installed, the "advanced features" of the program are
`unlocked. The password, like the program itself, is freely(cid:173)
`copyable (so backups can be made and restored freely on the
`machine for which that password is appropriate). However,
`since the password is useless on other machines to which
`copies might be transferred, a new password must be pur(cid:173)
`chased for each new machine on which the advanced
`features are desired. Thus the method encourages all users to
`evaluate, copy, and distribute the software to other machines
`and other potential users, while at the same time encourag(cid:173)
`ing serious users to register and pay for not-merely-evalu(cid:173)
`ative use.
`
`[0028] During two years of experimental monitoring,
`some deficiencies of this method were identified. While the
`method did ensure that the software vendor would report and
`pay royalties to the author (who was the only party with the
`routine for generate appropriate passwords) the process by
`which the user obtained a password proved inconvenient for
`vendor, author, and customer. The protocol for obtaining
`passwords was: Program presents ID to User, User gives ID
`to Vendor (by phone, mail or fax), Vendor gives ID to Author
`(by phone), Author gives Password to Vendor (by phone),
`the Vendor gives ID to User, User gives ID to program (via
`the keyboard), the program installs the ID. The present
`invention preserves the security advantages while simplify(cid:173)
`ing and making more flexible the process by which pass(cid:173)
`words are obtained. A second deficiency was that while the
`method allows selective locking of particular features in an
`otherwise functional program, it became clear that we
`needed a method by which Users could selectively purchase
`only those advanced features which were required on a
`particular machine. A third deficiency was that when users
`upgraded or repaired their computers over the course of the
`experimental period, we had to issue replacement passwords
`at no charge, and had no convenient means of verifying
`claims about computer modifications. During testing it
`became clear that if such deficiencies could be addressed,
`and if the scheme could be disembedded from the particular
`biological rhythms program for which it had been devel(cid:173)
`oped, it could be of quite general utility. The present
`invention addresses these deficiencies, generalizes the
`scheme tested in the author's earlier creation, and disembeds
`it from that experimental context in such a way that it can be
`incorporated into other programmer's and software produc(cid:173)
`ers creations.
`
`OVERVIEW OF IBE INVENTION
`[0029] The invention as described is most easily under(cid:173)
`stood as a set of software tools which computer program(cid:173)
`mers can incorporate into their own programs by adding a
`few lines of code. These programmer-written lines activate
`the software tools which enable or perform some or all of the
`functions to be described. However, it should be understood
`
`APPLE EXHIBIT 1006
`Page 5 of 16
`
`

`

`US 2002/0004 785 Al
`
`Jan. 10, 2002
`
`3
`
`that the scope of the present invention is not restricted to the
`distribution of executable software such as computer pro(cid:173)
`grams per Se. For example, the invention could just as easily
`apply to a freely-copyable audio tape which would play at
`full fidelity only on an audio processor which was pro(cid:173)
`grammed to require a valid password. Thus, the protected
`software and the programmer's program might be separate
`entities with the latter integrated into firmware, the protected
`software and the programmer's program might be integrated
`with each other as in the case of my program TAU, and so
`on.
`
`[0030] FIG. 1 illustrates the physical entities, processes,
`and functions comprise the present invention.
`
`software
`freely-copyable
`[0031] The User acquires
`through the "Laissez Faire Distribution Channel"lO which
`comprises all of the methods previously described as non(cid:173)
`traditional distribution channels as well as other distribution
`methods which might be developed in order to exploit the
`present invention. The "User's Processor"l5 is the device
`(typically a computer, or digital signal processing device)
`which processes "the Protected Software" under the control
`of the "Programmer's Program"20, and the Licensing Pro(cid:173)
`cessor 90 under the control of the Licensing Program 85,
`generates passwords for one or more Programmer's Pro(cid:173)
`grams and may also transact financial other transactions with
`the User. The Authorization Channel 80 will often consist of
`a 2-way telecommunications channel such as a telephone
`line, and participates in the transmission of IDs, Passwords
`and other information between the User's Processor and the
`Licensing Processor.
`
`[0032] When a Valid Password is Already Present.
`
`[0033] We first describe the processes which occur when
`a User executes the Protected Software in the presence of a
`previously-installed valid password. When the Program(cid:173)
`mer's Program 20 is loaded and executed on the User's
`Processor, one of its component processes is to "Generate a
`Password-able ID"25 based in part upon the adequately(cid:173)
`unique characteristics of an ID-Target. The ID-Target 30 is
`the entity to which access to the Software's advanced
`features is linked. In the figure, it is supposed that the
`ID-Target is the User's voice, but in other embodiments it
`might be the serial number or other distinct features of the
`User's processor. (Prior art methods by which ID-targets
`such as voices might be characterized for the production of
`Target-IDs will be discussed below.) Once a Passwordable
`ID is generated, the Programmer's Program looks in an
`information storage location for a "Previously Installed
`Password 40. In a computer, the information storage location
`would typically be a file on a hard disk drive, but in principle
`the Password could be installed in any location accessible by
`the Programmer's Program, including the memory of the
`User interacting with his or her Processor. The Program(cid:173)
`mer's Program then conducts a Check 45 to determines
`whether the Previously Installed Password (if any) is the
`correct match for the specific Password-able ID which has
`been generated. If the password is valid the Programmer's
`Program Unlocks the Advanced Features of the Software,
`and gives the User full and unimpeded access to the pro(cid:173)
`gram's advanced features (End State 50).
`
`[0034] No Valid Password
`
`If Check 45 does not find a Valid Password, the
`[0035]
`Programmer's Program gives the User the information he or
`she needs in order to decide whether to a password for the
`Software's still-locked Advanced Features. Given this Offer
`
`55, it is up to the User to decide whether or not to Obtain a
`Valid Password (60) and communicate that decision to the
`Programmer's program. If the User decides not to obtain a
`valid password, the program simply leaves the advanced
`features Locked (End State 70).
`
`[0036] User Decides to Obtain a Valid Password
`
`[0037] However, if the User's Decision 60 is to obtain a
`valid password, an Authorization channel 80 must be acti(cid:173)
`vated which establishes communication between the User
`(or his processor) and the Licensing system which is com(cid:173)
`prised of Licensing Processor 85 executing Licensing Soft(cid:173)
`ware 90. The function of the Authorization Channel 80 is to
`send the Passwordable ID, and typically other payment
`information as well, from the Programmer's Program to the
`Licensing system and then to transmit a valid Password from
`the Licensing System to the Programmer's Program. The
`functions of the Licensing system is typically to receive
`payment information from the User, arrange for the transfer
`of funds from the User to the Programmer, and generate and
`transmit the specific password required by the Passwordable
`ID. Upon receipt of the password the Programmer's program
`unlocks the advanced features of the program just as in Step
`50, and also installs the Password in storage location 40 so
`that on subsequent executions of the Programmer's program
`the flow of control will terminate at End State 120, (identical
`to end state 50) with Advanced Features Unlocked.
`
`[0038] Punchline
`
`[0039] Note that if a copy of the now-Unlocked software
`is copied to another ID-target it will automatically relock,
`provided either that the new target-ID is different from the
`old target-ID, and/or that the Password for the original
`ID-target was installed in such a way that it could not be
`transferred to the new ID-target.
`
`DETAILED EXPLICATION OF THE
`INVENTION
`[0040] The Laissez Faire Distribution Channel
`
`[0041] The present invention differs from earlier inven(cid:173)
`tions in separating the distribution channel by which soft(cid:173)
`ware is acquired and distributed from the authorization
`channel by which licensing is transacted. One advantage of
`this innovation is that it allows Users and software distribu(cid:173)
`tors to support rather than impede the flow of information
`through the Laissez Faire Distribution channel which devel(cid:173)
`ops relatively spontaneously and at little cost to participants
`when freely-copyable software is present. Another advan(cid:173)
`tage is that relatively little information needs to flow through
`the proprietary authorization channel. The present invention
`may well expand the Laissez Faire Distribution channel by
`making it economically viable for Software publishers to
`distribute software through the mail, as give-away items
`tucked into the volumes of third-party books, or as donations
`to public libraries, and so on. Note however, that while the
`Laissez Faire Distribution Channel may thus support and be
`supported by the present invention, it is not a necessary part
`of the present invention. The present invention could also
`support the distribution, by mail and other means, of non(cid:173)
`copyable software (e.g., on CDROMs), provided only that
`access to advanced features can be locked in the absence of
`a valid password on the User's System.
`
`[0042] The User's System
`
`[0043] The nature of the User's Processor and the Pro(cid:173)
`grammer's Program will depend on the nature of the Pro(cid:173)
`tected Software being processed. The processor for a pro-
`
`APPLE EXHIBIT 1006
`Page 6 of 16
`
`

`

`US 2002/0004 785 Al
`
`Jan. 10, 2002
`
`4
`
`tected computer program or a protected text file is typically
`a traditional computer; the processor for a protected audio(cid:173)
`tape is a tape player, and so on. In essence then the User's
`processor is a device which processes the protected software
`under control of the Programmer's Program. Several obser(cid:173)
`vations are pertinent. First as multi-media processors are
`developed they will be able to deal with more and more
`kinds of protected software in an integrated fashion, so the
`scope of the present invention should be increasingly broad.
`Second, the Programmer's Program need not necessarily be
`distributed or distributable through the Laissez Faire Distri(cid:173)
`bution Channel. It could therefore be incorporated into the
`hardware, firmware, or software of the User's Processor.
`Thus, to the extent that the User's Processor has been made
`to mediate the methods of the present invention, it is
`intended that it be covered by this patent.
`
`[0044] Generate Passwordable-ID
`
`[0045] The Passwordable ID is the adequately unique
`string of symbols for which a specific password is required.
`The oxymoron "adequately-unique" is used because (1)
`adequate utility may be achieved even if Passwordable IDs
`are just variegated enough to significantly reduce the prob(cid:173)
`ability that a password obtained for one ID-target will work
`for another ID-target to which the first password might be
`transferred, and (2) because the need for one-of-a-kind
`uniqueness can be further reduced if passwords are installed
`(in step 100) in such a way that they are not transferrable
`from one ID-target to another.
`
`[0046] The ID must be generated in such a way that two
`ID-Targets will generate different IDs. Also, in order that a
`plurality of Licensed-features in a plurality of software
`programs be independently licensable on the same ID(cid:173)
`Target, any two Licensed features must be able to generate
`different IDs even in conjunction with a single ID-Target.
`Those familiar with the art will recognize that this can be
`achieved a variety of ways. In one preferred embodiment,
`each item of protected software is assigned an adequately
`unique P-digit Program ID, and each licensed Feature is
`assigned an F-digit Feature-ID, and each ID-Target can be
`associated with a T-digit Target-ID such as a serial number.
`Once assigned (using methods described below) these ID
`numbers are combined in a fashion which preserves their
`uniqueness (e.g., by concatenating them to produce a num(cid:173)
`ber with N+M+T digits capable encoding lOA(N+M+T)
`values) and then using this combination, an encryption of it,
`or some other adequately-unique transform of it, as the ID.
`
`[0047]
`In addition, to ensure error-checking when the
`Passwordable ID is transmitted to the central computer (80),
`it is desirable that a Passwordable ID satisfy some kind of
`coherence constraint such that the mis-report of a single
`digit can be detected. One coherence constraint would be to
`append two more digits to the ID which would constitute a
`checksum for the preceding digits. Thus an error would be
`detected when the checksum and the preceding digits were
`inconsistent.
`
`[0049] Thus the invention requires only that an adequately
`unique ID be generated; it does not require that the ID be
`generated any particular way, and our invention should not
`be considered to be dependent on any particular method. As
`illustrated in the next paragraphs, a variety of methods-can
`be adopted by individual programmers to suit the needs of
`their application.
`
`[0050] Method of Assigning Feature-IDs and Program IDs
`
`[0051] To the extent that a sufficiently large number of
`digits have been allocated Feature and Program IDs, the
`programmer can safely use a randomly-seeded number
`generator to select values for these IDs, since the probability
`that two programmers would fall upon the same numbers is
`adequately small. Alternatively, unpredictable Feature-IDs
`can be assigned by a central computer maintained by opera(cid:173)
`tor the Licensing System, which computer maintains a
`database of previously assigned IDs.
`
`[0052] Method of Assigning Target-IDs
`
`[0053] The method of assigning target-IDs will depend
`upon the nature of the ID-Target device, the requirements of
`the Programmer's program, and the intended distribution. It
`should be noted that target-IDs need not be genuinely unique
`for the present invention to be of substantial utility: it is
`sufficient that they be rare enough to substantially reduce the
`probability that the ID assigned to one ID-Target will not
`also be assigned to one of the ID-Targets to which the
`software might be copied. Furthermore, to the extent that
`adequately rare Target-IDs cannot be assigned, the objec(cid:173)
`tives of the invention can still be achieved by rendering the
`installed password non-copyable using conventional copy(cid:173)
`protection techniques. Thus, the purpose of the next para(cid:173)
`graph is to demonstrate that adequately unique IDs can be
`generated in a variety of existing and anticipatable situations
`using currently-available technology.
`
`[0054] Those with ordinary skill in the art will recognize
`that many ID-Target devices possess unique identifiers
`which can be accessed by the Programmer's Program and
`used as the basis for target-IDs. For example, many com(cid:173)
`puters, printers, hard disks, and CD-ROM disks have soft(cid:173)
`ware-accessible serial numbers. Of those devices which do
`not have serial numbers, many have software-assessable
`characteristics (such as the number and kind of peripherals,
`central processing unit chips, the interleave factor and
`timing characteristics of the hard drive, etc.) which can be
`used to generate a target-ID which is sufficiently unique to
`satisfy the needs of the situation. In addition, a variety of
`computer devices have been invented for retrofitting a
`computer with a unique serial number, and these too could
`be used to generate target-IDs on computers which were
`so-equipped.
`
`[0055] Other kinds of ID-targets, such as the voice of the
`User can be characterized using existing pattern-recognition
`technologies to generate a user-specific target-ID which is
`"fuzzy enough" to recognize the user under varying condi(cid:173)
`tions, but specific enough to reject other Users.
`
`[0048] Other information could usefully be encrypted into
`the ID as well. For example, to facilitate compensation of the
`software creator and to ensure that the correct price is being
`assessed for a given Password (Step 95), the ID could also
`encrypt the price of the software and the name of the party
`who should receive royalties, and so on.
`
`[0056]
`In this paragraph we disclose a software-based
`method we have developed to retrofit Target-IDs with write(cid:173)
`able non-volatile storage devices (such as computer hard
`drives or programmable read

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket