throbber
United States Patent [19]
`Schull
`
`llllllllllllll|||ll|||llllllllllllllllllllllllllllll|ll||ll||||ll|||l||||ll
`5,509,070
`Apr. 16, 1996
`
`USO05509070A
`Patent Number:
`[11]
`[45] Date of Patent:
`
`[54] METHOD FOR ENCOURAGING PURCHASE
`OF EXECUTABLE AND NON-EXECUTABLE
`SOFTWARE
`
`[75] Inventor: Jonathan Schull, Haverford, Pa.
`
`[73] Assignee: SoftLock Services Inc., Rochester, NY.
`
`[21] Appl. No.: 990,455
`[22] Filed:
`Dec. 15, 1992
`
`[51] Int. Cl.6 ........................................... ... ........ .. H04L 4/00
`
`[52] US. Cl. . . . . . . . . . . . . . . . . . . . . . . .
`
`. . . . .. 380/4; 380/23
`
`[58] Field of Search .......... ..
`
`. 380/3, 4, 23, 24,
`380/25, 49, 50
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`8/1987 Joshi.
`4,688,169
`4/1988 Wiliam .................................. .. 380/4 X
`4,740,890
`5/1988 Taaffe .
`4,747,139
`111989 Wolfe .
`4,796,220
`4,864,494 9/1989 Kobus, Jr. .
`4,864,616
`9/1989 Pond et a1. .
`4,888,798 12/1989 Earnest ...................................... .. 380/4
`4,991,208
`2/1991 Walker et al. .
`4,998,279
`3/1991 Weiss.
`4,999,806
`3/1991 Chernow et a1. .
`5,023,907
`6/1991 Johnson et a1. ........................... .. 380/4
`5,027,398
`6/1991 Miyoshi.
`5,046,090
`9/1991 Walker et a1. .
`5,046,092
`9/1991 Walker et a1. .
`5,047,928
`9/1991 Wiedemer ............................. .. 380/4 X
`5,054,064 10/1991 Walker et a1. .
`5,058,162 10/1991 Santon et al. .
`
`ABSTRACT
`
`5,065,429 11/1991 Lang.
`5,070,479 12/1991 Nakagawa .
`5,099,516
`3/1992 Durkin et a1. .
`5,103,476
`4/1992 Waite et a1. .............................. .. 380/4
`5,109,413
`4/1992 Comerford et a1. ...................... .. 380/4
`5,113,518
`5/1992 Durst Jr. et a1. .
`5,117,458
`5/1992 Takaragi et al. .
`5,119,319
`6/1992 Tanenbaum .
`5,126,728
`6/1992 Hall.
`5,166,866 11/1992 Moinar et a1. ........................ .. 380/4 X
`5,319,705
`6/1994 Halter et a1. .............................. .. 380/4
`Primary Examiner-David C. Cain
`Attorney, Agent, or Firm—Oppedahl & Larson
`[57]
`A method and apparatus of encouraging distribution, regis
`tration, and purchase of free copyable software and other
`digital information which is accessed on a User’s System via
`a Programmer’s Program. Software tools which can be
`incorporated into a Programmer’s Program allow the User to
`access Advanced Features of the Programmer’s Program
`only in the presence of a valid Password which is unique to
`a particular Target ID generated on an ID-Target such as the
`User’s system. Advanced features will thus re-loek if the
`Password is copied to another ID-target. If a valid Password
`is not present, the User is invited to obtain one, and provided
`with the means of doing so, and of installing that Password
`in a place accessible to the User’s System on subsequent
`occasions. The present invention also provides Programmers
`with means to invoke business operations as well as com
`putational operations with their programs, and thus to auto
`matically obtain payment from Users who elect to obtain
`passwords.
`
`19 Claims, 2 Drawing Sheets
`
`Laissez Faire Distribution Channel 10
`User puts
`User receives
`User passes
`“ copy-able —->Software |n—>copies on to
`yj Software
`Processor
`other Users
`U W
`L) W
`Locked 15
`Locked
`20
`us?z's
`PRFGRAMMER'S
`PROCESSOR
`PROGRAM
`
`GENERATE
`PASSWORD/ABLE‘ ID
`_
`‘"“GENERATE TARGET ID
`APPLY FEATURE lD
`APPLY PROGRAM ID
`
`4O
`_
`PREVIOUSLY
`INSTALLED
`PASSWORD
`
`CHECK
`FOR VALID
`PASSWORD?
`-
`
`55
`
`/25
`
`PROT ECTED
`50 SOFTWARE
`
`?
`4
`
`OBTAIN VALID
`PASSWORD?
`
`UNLOCK ADVANCED
`FEATURES
`g)
`E
`LICENSING
`LICENSING
`PROCESSOR PROGRAM
`Transmit ID Payment Authorization and
`Registration Information
`
`Q
`
`d GENERATE
`H P
`INSTALL T
`PASSWORD ransm
`asswor PASSWORD
`UNLOCK
`ADVANCED
`FEATURES
`
`LEAVD
`ADVANCE
`FEATURES
`LOCKED
`
`100
`
`93
`
`USER
`$ l
`CREDIT
`PROGRAMMER
`
`r
`(But Advanced Features are
`automatically relocked when Software “
`is copied to another lD-target)
`
`Petitioners Ex. 1002 Page 1
`
`

`
`US. Patent
`
`Apr. 16, 1996
`
`Sheet 1 of 2
`
`5,509,070
`
`Loissez Foire Dis’rribu’rion Channel 10
`User pu'I's
`User p
`User receives
`‘‘ copy-Obie —>SofTw0rein—->copies onTo
`SOfTwore
`Processor
`other Users
`|\/ WI ___>
`20
`Locked
`PRDGRAIVIMER'S
`PROGRAM
`
`US$85 $3
`
`IL) W,
`15
`Locked
`USER'S
`3t~~NL
`PROCESSOR
`“g 30
`GENERATE
`PASSWORDABLE- ID
`T"“GENERATE TARGET ID
`ID TARGET
`APPLY FEATURE ID
`(eg. USERS VOICE)
`APPLY PROGRAM ID
`
`/25
`
`PROTECTED
`50 SOFTWARE
`
`40
`_
`
`4s
`
`PREVIOUSLY
`INSTALLED
`PASSWORD
`
`?

`
`CHECK
`‘ FOR VALID
`PASSWORD?
`-
`
`55
`\
`OFFER
`PASSWORD
`
`UNLOCK ADVANCED
`FEATURES
`g@
`@5-
`LICENSING
`LICENSING
`PROCESSOR PROGRAM
`Au'rhOrizOTiOn 0nd
`
`OBTAIN VALID
`PASSWORD P
`NOT L——I
`
`60
`
`LEAVE
`ADVANCED
`FEATURES
`LOCKED
`
`100
`
`8_O_
`AUTHORIZATION
`CHANNEL
`INSTALL /|——+————GENERATE
`PASSWORD TI'GFISmI‘I' Password PASSWORD
`\'
`UNLOCK
`ADVANCED
`FEATURES
`
`DEBIT
`USER
`$ I
`
`93/
`
`CREDIT
`PROGRAMMER
`
`OS OOw
`
`Locked
`
`(BUT Advanced FeOTUres are
`automatically relocked when SOf’IWore Q
`IS Copied To ono’rher lD~TorgeTI
`
`FIG. 1
`
`Petitioners Ex. 1002 Page 2
`
`

`
`US. Patent
`
`Apr. 16, ‘1996
`
`Sheet 2 of 2
`
`5,509,070
`
`21G
`
`ENCRYPT TEXT USING ENCRYPTING SEED s
`
`ASSIGN FEATURE ID TO ENCRYPTED TEXT
`
`PROVIDE LICENSING SYSTEM WITH 8 FOR EACH ,
`FEATURE ID
`
`220
`\
`
`GENERATE PASSWORDABLE-ID
`I
`TRANSMIT PASSWORDABLE-ID
`AND FEATURE ID TO
`LICENSING SYSTEM
`
`230
`v
`\
`USE FEATURE ID TO ACCESS
`ENCRYPTING SEED
`
`240
`
`USE PASSWORDABLE ID TO
`ENCRYPT ENCRYPTING SEED S
`
`USE ENCRYPTED SEED S AS
`PASSWORD
`
`I
`
`USE PASSWORDABLE ID TO
`DECRYPT ENCRYPTING
`SEED S FROM PASSWORD
`
`TRANSMIT PASSWORD TO
`USER SYSTEM
`
`I
`
`USE ENCRYPTING SEED S TO
`DECRYPT TEXT
`
`FIG. 2
`
`Petitioners Ex. 1002 Page 3
`
`

`
`1
`METHOD FOR ENCOURAGING PURCHASE
`OF EXECUTABLE AND NON-EXECUTABLE
`SOFTWARE
`
`5,509,070
`
`BACKGROUND-‘FIELD OF THE INVENTION
`
`2
`in the software marketplace, and which have given rise to
`the alternative approach, copy-encouragement.
`Copy-encouragement
`Shareware programmers and vendors encourage their
`users to copy, share, and distribute software to others in
`hopes that an adequate proportion of recipients will volun
`tarily 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.
`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 eventually
`purchase a copy or an upgrade. In any case, it is obviously
`and crucially desirable to the vendors of easily-copyable
`software that users register and pay for software.
`Users of freely copyable software are often encouraged to
`register and pay for software by offering them additional
`bene?ts including “enhanced” versions of the software. But
`this strategy is de?cient: withholding such bene?ts 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
`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
`cutting future incentives for registering, copying, and dis
`tributing additional copies.
`Another problem with the prior art is that the people who
`actually create software (i.e., programmers) often do not
`have the ?nancial resources, business experience, 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 pro?ts which arise from the sale of
`their creations. Programmers would bene?t 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
`ognized need in the industry.
`
`OBJECTS OF THE PRESENT INVENTION
`
`One object of the present invention is to encourage users
`to pay for, and register the freely-copyable software they
`actually use.
`Another object is to enable programmers to “program a
`business operation” by writing a few lines of code, and thus
`reduce their ?nancial and other dependence upon software
`publishers, distributors, and vendors.
`Another object is to allow programmers to be con?dent
`that their licensed representatives (software distributors and
`vendors) are in fact reporting and paying royalties on all
`product sales.
`Another object is to encourage and allow users to evaluate
`and exploit useful software before deciding whether to
`
`This invention relates to a method of encouraging distri
`bution, registration, and purchase of freely copyable soft
`ware and other digital information. The invention applies to
`software as well as other information which can be repeat
`edly copied with little loss of ?delity, and which is expressed
`via a hardware- or software-programmable apparatus, such
`as a computer or a digital audio tape player.
`The copyability of software—problem and opportunity.
`' 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 networks 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 di?icult 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 producers forfeit
`substantial revenues and valuable information about their
`customer base and potential markets, while businesses and
`universities ?nd themselves subject to legal prosecution and
`intimidation for software piracy.
`Two approaches to these problems are copy-deterrence,
`and copy-encouragement. Copy-deterrence is implemented
`through laws, licence agreements and copy-protection tech- '
`nologies. 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, however, these
`approaches have had signi?cant disadvantages.
`Copy-deterrence.
`Legal copy-deterrence techniques such as licensing agree—
`ments, and litigation against companies and universities
`whose members knowingly or unknowingly engage in
`piracy are ine?icient, expensive, and often unsuccessful.
`
`They incidentally create large numbers of “software rials” or “pirates” who routinely violate these unenforceable,
`hard-to-understand, and often unreasonable contracts.
`Hardware and software copy-deterrence technologies
`have also been developed, but they often raise the price and
`complexity of the software product, and inspire the devel
`opment, 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-protection
`techniques, as well as those which involve modi?cation 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
`
`10
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Petitioners Ex. 1002 Page 4
`
`

`
`5,509,070
`
`10
`
`15
`
`3
`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.
`Another object is to incent users to distribute freely
`copyable software to other people who would bene?t from,
`and possibly purchase the software.
`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 re?ect their actual utility to the average
`user. This would reduce the incentives for piracy and asso
`ciated technologies.
`Another object is to increase the availability and pro?t- ‘
`ability of freely copyable software and of the grassroots
`distribution channels.
`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 tech
`nology with or without auxiliary telecommunications equip
`ment such as modern.
`Another object is to eliminate the need for costly and
`inconvenient non-copy-able adjuncts to software programs
`(such as expensively printed manuals and packaging, hard
`ware locks) etc., whose only purpose is to deter illegal
`copying of software and whose effect is to in?ate software
`prices.
`Another object is to improve upon the technology embed
`ded in the author’ s prior art (TAU) so that technology can be
`made available to other programmers as freely-copyable
`software tools.
`Still further objects and advantages of the present inven
`tion will become apparent from a consideration of the
`ensuing description and drawings.
`
`4
`ing serious users to register and pay for not-merely-evalu
`ative use.
`During two years of experimental monitoring, some de?
`ciencies of this method were identi?ed. 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
`ing and making more ?exible the process by which pass
`words are obtained. A second de?ciency 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 de?ciency 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 modi?cations. During testing it
`became clear that if such de?ciencies could be addressed,
`and if the scheme could be disembedded from the particular
`biological rhythms program for which it had been devel
`oped, it could be of quite general utility. The present
`invention addresses these de?ciencies, generalizes the
`scheme tested in the authors 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
`ers creations.
`
`20
`
`25
`
`30
`
`35
`
`SUMMARY DESCRIPTION OF THE
`INVENTION
`
`Some of the above objects have been partially realized in
`a 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 authors earlier invention,
`and of other related inventions, such as US. Pat. Nos.
`4,796,220 and 5,113,118.
`My previously-developed program (“TAU” for the scien
`ti?c analysis of biological rhythms data) is not copy~pro~
`tected, 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
`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
`word is installed, the “advanced features” of the program are
`unlocked. The password, like the program itself, is freely
`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
`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
`
`BRIEF DESCRIPTION OF THE DRAWING
`
`The invention will be described with respect to a drawing,
`of which:
`FIG. 1 is an illustration of the physical entities, processes,
`and functions which comprise the present invention: and
`FIG. 2 is an illustration of a technique used in connection
`with the invention whereby the Encrypting/Decrypting Seed
`only needs to exist transiently in the User’s System.
`
`40
`
`45
`
`OVERVIEW OF THE INVENTION
`
`The invention as described is most easily understood as a
`set of software tools which computer programmers 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 that the
`scope of the present invention is not restricted to the
`distribution of executable software such as computer pro
`grams per Se. For example, the invention could just as easily
`apply to a freely-copyable audio tape which would play at
`full ?delity only on an audio processor which was pro
`grammed to require a valid password. Thus, the protected
`software and the programmer’s program might be separate
`entities with the latter integrated into ?rmware, 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.
`FIG. 1 illustrates the physical entities, processes, and
`functions comprise the present invention.
`
`55
`
`60
`
`65
`
`Petitioners Ex. 1002 Page 5
`
`

`
`5,509,070
`
`5
`FIG. 2 illustrates the encryption protocol. The User
`acquires freely~copyable software through the “Laissez
`Faire Distribution Channel” 10 which comprises all of the
`methods previously described as non-traditional distribution
`channels as well as other distribution methods which might
`be developed in order to exploit the present invention. The
`“User’s Processor” 15 is the device (typically a computer, or
`digital signal processing device) which processes “the Pro
`tected Software” under the control of the “Programmer’s
`Program” 20, and the Licensing Processor 90 under the
`control of the Licensing Program 85, generates passwords
`for one or more Programmer’s Programs and may also
`transact ?nancial other transactions with eh 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.
`When a Valid Password is already present.
`We ?rst describe the processes which occur when a User
`executes the Protected Software in the presence of a previ
`ously-installed valid password. When the Programmer’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-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 ?gure, 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 ?le on a hard disk drive, but in principle the Password
`could be installed in any location accessible by the Pro
`grammer’s Program, including the memory of the User
`interacting with his or her Processor. The Programmer’s
`Program then conducts a Check 45 to determines whether
`the Previously Installed Password (if any) is the correct
`match for the speci?c Password-able ID which has been
`generated. If the password is valid the Programmer’s Pro
`gram Unlocks the Advanced Features of the Software, and
`gives the User full and unimpeded access to the program’s
`advanced features (End State 50).
`No Valid Password
`If Check 45 does not ?nd a Valid Password, the Program
`mer’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
`Progamrner’s program. If the User decides not to obtain a
`valid password, the program simply leaves the advanced
`features Locked (End State 70).
`User decides to obtain a valid password
`However, if the User’s Decision 60 is to obtain a valid
`password, an Authorization channel 80 must be activated
`which establishes communication between the User (or his
`processor) and the Licensing system which is comprised of
`Licensing Processor 85 executing Licensing Software 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
`
`6
`Licensing System to the Programmer’s Program. The func
`tions 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 speci?c 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 ?ow of control will terminate at End State 120, (identical
`to end state 50) with Advanced Features Unlocked.
`Punchline
`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
`
`The Laissez Faire Distribution Channel
`The present invention differs from earlier inventions in
`separating the distribution channel by which software is
`acquired and distributed from the authorization channel by
`which licensing is transacted. One advantage of this inno
`vation is that it allows Users and software distributors to
`support rather than impede the ?ow of information through
`the Laissez Faire Distribution channel which develops rela
`tively spontaneously and at little cost to participants when
`freely-copyable software is present. Another advantage is
`that relatively little information needs to ?ow 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
`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.
`The User’s System
`The nature of the User’s Processor and the Programmer’s
`Program will depend on the nature of the Protected Software
`being processed. The processor for a protected computer
`program or a protected text ?le is typically a traditional
`computer; the processor for a protected audio-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 observations 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 distrib
`uted or distributable through the Liassez Faire Distribution
`Channel. It could therefore be incorporated into the hard
`ware, ?rmware, 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.
`Generic Passwordable-ID
`The Passwordable ID is the adequately-unique string of
`symbols for which a speci?c password is required. The
`
`15
`
`20
`
`25
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`Petitioners Ex. 1002 Page 6
`
`

`
`5,509,070
`
`7
`oxymoron “adequately-unique” is used because (1) adequate
`utility may be achieved even if Passwordable IDs are just
`variegated enough to signi?cantly reduce the probability that
`a password obtained for one ID-target will work for another
`ID-target to which the ?rst 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.
`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
`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
`ber with N+M+T digits capable encoding l0“(N+M+n values)
`and then using this combination, an encryption of it, or some
`other adequately-unique transform of it, as the ID.
`In addition, to ensure error-checking when the Password
`able 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.
`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.
`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.
`Method of assigning Feature-IDs and Program IDs
`To the extent that a su?iciently large number of digits
`have been allocated Feature and Program IDs, the program
`mer 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
`tor the Licensing System, which computer maintains a
`data-base of previously assigned IDs.
`Method of assigning Target-IDs
`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
`
`20
`
`25
`
`30
`
`35
`
`45
`
`55
`
`60
`
`65
`
`8
`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
`tives of the invention can still be achieved by rendering the
`installed password non-copyable using conventional copy
`protection techniques. Thus, the purpose of the next para
`graph is to demonstrate that adequately unique IDs can be
`generated in a variety of existing and anticipatable situations
`using currently-available technology.
`Those with ordinary skill in the art will recognize that
`many ID-Target devices possess unique identi?ers which
`can be accessed by the Programmer’s Program and used as
`the basis for target-IDs. For example, many computers,
`printers, hard-disks, and CD-Rom disks have software
`accessible serial numbers. Of those devices which do not
`have serial numbers, many have software-assessable char
`acteristics (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 retro?tting a
`computer with a unique serial number, and these too could
`be used to generate target-IDs on computers which were
`so-equipped.
`Other kinds of ID-targets, such as the voice of the User
`can be characterized using existing pattern-recognition tech
`nologies to generate a user-speci?c target-ID which is
`“fuzzy enough” to recognize the user under varying condi
`tions, but speci?c enough to reject ot

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