`United States Patent
`Kahnet al.
`
`[19]
`
`[54]
`
`[75]
`
`SYSTEM FOR UNIQUELY AND
`PERSISTENTLY IDENTIFYING, MANAGING,
`AND TRACKING DIGITAL OBJECTS
`Inventors: Robert E. Kahn, McLean; David K.
`Ely, Oakton, both of Va.
`
`i.
`[*] Notice:
`
`[73] Assignee: Corporation for National Research
`Initiatives, Reston, Va.
`anal
`pg
`‘
`This patent
`issued on a continued pros-
`ecution application filed under 37 CFR
`1,.53(d), and is subject to the twenty year
`patent
`term provisions of 35 U.S.C.
`154(a)(2).
`
`[21] Appl. No.: 08/808,050
`[22]
`Filed:
`Feb. 28, 1997
`
`Related U.S. Application Data
`
`[63] Continuation of application No, 08/142,161, Oct, 22, 1993,
`abandoned.
`[ST] Ute C17 ccc cccseecceeseeeeseeeeeeeeeeenseeesneee GOGF 13/00
`[52] US. Ch. cecsccscnsisnsenniene 395/200.47; 395/200.49;
`707/104
`. 395/616, 421.1,
`Field of Search ..
`395/677, 610,
`615, 187.01, 200.49, 200.47;
`380/4; 707/104
`
`[58]
`
`[56]
`
`4,914,571
`4,937,863
`4,953,209
`5,032,979
`5,222,134
`3,230,051
`5,239,648
`5,241,671
`5,260,999
`5,321,841
`5,339,403
`5,357,630
`5,375,206
`
`IANACA
`
`S006135646A
`[ii] Patent Number:
`6,135,646
`[45] Date of Patent:
`*Oct. 24, 2000
`
`
`5,491,817
`395/616
`2/1996 Gopal et al.
`
`5,596,744
`395/610
`1/1997 Daoetal. ..
`5,638,443
`..
`- 380/4
`6/1997 Stefik etal.
`
`a
`oy
`ENTS
`FIGN
`PATENT
`FOREIGN PATENT DOCUMENTS
`WO91/12583
`8/1991 WIPO.
`
`OTHER PUBLICATIONS
`CNRI Brochure, Workshop on the Protection of Intellectual
`Property Rights In A Digital Library System, “Knowbots In
`The Real World”, May 18-19, 1989.
`Kahn, Robert E. et al., “The Digital Library Project—
`Volume I: The World of Knowbots (Draft)", An Open
`Architecture for a Digital Library System and a Planfor Its
`Development, Mar. 1988 (49 pp) and Dec. 1987 (75 pp).
`Garrett, John R. et al., Copyright Clearance Center, “Text to
`Screen: Copyright Issues in the Electronic Age”, pp. 1-12,
`Copyright 1989.
`Garrett, John R.et al., Copyright Clearance Center, “Toward
`a Copyright Management System for Digital Libraries”, pp.
`1-74, Copyright 1991.
`Kahn, Robert E., “Deposit, Registration and Recordation in
`an Electronic Copyright Management System”, [MA Intel-
`feetual Property Project Proceedings, Jan. 1994, vol. 1,
`Issue 1, pp. 111-120.
`Kahn, Robert and Robert Wilensky, “Locating Electronic
`Library Services and Objects: A Frame of Reference for the
`CS-TR Project”, Feb. 1994 and later versions.
`Kahn, Robert et al., “A Framework for Distributed Digital
`Objects Services”, May 13, 1995.
`Kahn, Robert, “National Information Infrastructure Compo-
`nents”, Serials Review, vol. 18, No. 1-2, 1992.
`
`(List continued on next page.)
`Primary Examiner—Le Hien Luu
`Attorney, Agent, or-Firm—Fish & Richardson PC
`sa rea
`te
`[57]
`ABSTRACT
`
`References Cited
`coe
`eee
`eee
`U.S. PATENT DOCUMENTS
`
`|, 395/610
`..
`4/1990 Baratz et al.
`
`..
`6/1990 Robert et al.
`+ 3380/4
`
`8/1990 Ryder, Sr. etal.
`380/23
`
`7/1991 Hecht etal. ....
`395/187.01
`
`
`- 380/4
`6/1993 Waite et al.
`393/700
`7/1993 Quan...
`
`8/1993 Nukui..
`395/610
`Methods of managing digital objects in a network are
`8/1993 Reed et al.
`
`395/615
`presented. Holders ofrights in digital objects are enabled to
`11/1993 Wyman ...
`- et control terns and conditions under which they are accessed
`
`6/1994 East etal.
`8/1994 Parker......
`305/421.1
`by users in a network, or are granted to others.
`
`. 395/600
`10/1994 Oprescuet al.
`12/1994 Hunter et al.
`...
`
`were 395/700
`
`14 Claims, 25 Drawing Sheets
`
`Workstanon
`
`
`
`{Cataloger)
`Woauutation (Examiner)
`
`EVERNOTEEX. 1005
`
`1 of 45
`
`1 of 45
`
`
`
`6,135,646
`Page 2
`
`OTHER PUBLICATIONS
`
`Lyons, Patrice A., “Knowledge-Based Systems and Copy-
`right”, Serials Review, pp. 88-91, 1992.
`Kahn, Robert E, Deposit, Registration and Recordation in an
`Electronic Copyright Management Systems, 18 pp (pub-
`lished Oct. 1992).
`Dunstan, James E. et al., “Access to Digital Objects: A
`Communications Law Perspective”, Annual Survey of
`American Law, NY University School of Law, 1994 Vol-
`ume, Issue 3.
`Lagoze, Carl et al., “Implementation Issues in an Open
`Architectural Framework for Digital Object Services”, Jun.
`6, 1995—Revision 1.3.
`Kahn, Robert E., Deposit, Registration and Recordation in
`an Electronic Copyright Management System, Corporation
`for National Research Initiatives, Reston, VA, Aug., 1992.
`Lyons, Patrice, Computer Programs: A Fair Use Analysis,
`Twenty-First Annual Telecommunications Policy Research
`Conference, Solomons, MD, Oct. 2-4, 1993.
`Copyright Clearance Center Online, Apr. 6, 1995, Danvers,
`MA,Press Release.
`
`EPR Electronic Commerce Technologies Press Release,
`“Breakthrough Digital Rights Protection Information Meter-
`ing Architecture with a Universal Digital Content and Com-
`merce Container”, Apr. 10, 1995, Press Release, San Jose,
`CA, Internet World 95—EPR Inc.
`Cerf et al., “A Protocol for Packet Network Intercommuni-
`cation,”,
`IEEE Transactions On Communications, vol.
`Com-22, No. 5, May 1974, pp. 637-648.
`Cerf et al. “Issues in Packet Network Intercommunication”,
`Proceedings of the TEEE, vol. 66, No. 11, Nov, 1978, pp.
`1386-1408.
`Kahn, “Resource—Sharing Computer Communications Net-
`works”, Proceedings of the IEEE, vol. 60, No, 11, Nov.
`1972, pp. 1397-1407.
`Postel, “NCP/TCP Transition Plan”, USC/Information Sci-
`ences Institute, Nov, 1981.
`Mockapetris, “Domain Names—Concepts and Facilities”,
`http: |/www.ietf-org/rfc/rfc0882. txt., Nov. 1983. pp. 1-28.
`Mockapetris, “Domain Names—Implementation and Speci-
`fication”, hitp://www.ietf.org/rfc/rf[c0883.text., Nov., 1983,
`pp. 1-67.
`
`2 of 45
`
`2 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`
`
`JOAISSSHUSID;SYPuUONHEWIOjUT
`
`
`
`AIO\SIH,AMLJOUleEYD
`
`
`
`spiooaysaiadoig
`
`
`
`aunjeubigjenbiq
`
`OLOL
`
`
`
`
`
`woaldQ-pareyeyjoAuoysiyyesodway
`
`Prol
`
`
`
`SIBA1BSJUBWARG
`
`Sua|
`
`
`
`OyuUOHOeSUeLL
`
`SUON|PUOD/Stwa}
`
`
`
`
`
`yeuuo-4swajshsjuawabeueyy
`
`ayeqg/aul|
`
`auleNe
`
`JoyeulBuge
`
`
`
`piovaysaledoig
`
`
`
`
`
`giSWHUOHVEWUO;LLPayejay
`
`
`
`
`
`SIPUeHalgojen6ig‘
`
`Sheet 1 of 25
`
`
`
`
`
`psooayUOHOesUeL|
`
`ayeq/ewl
`
`
`
`
`
`9r0lS18MaSJBUIOeeeSeOoL
`
`6,135,646
`
`
`
`[sn]f2PIOHSUHOrolrOL
`
`ee
`
`e°
`
`e
`
`°L‘Olas
`
`
`
`
`
`julUoloesued]TUIDWSiubig
`
`
`
`
`
`WS}SASjlewebeueyStybiy
`
`
`
`SUONIPUOD/sW9|UONeUWJOJU)UONDeSsUeL
`
`3 of 45
`
`3 of 45
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 2 of 25
`
`6,135,646
`
`syy6iy Asoysoday
`
`
`os”
`
`UDIJEISHIOAA
`
`
`
`swajsAgyoddns
`
`Jeysibay
`
`Ayjoes
`
`
`
`washjuawabeueyy
`
`
`
`way)jen6ig
`
`Buiboyeyeg
`
`Buryoesy
`
`WwajskS
`
`
`
`ssaoayo19Nd
`
`uonensiBay
`
`asequieg
`
`uonesysibay
`
`waysks
`
`uonepio9ay
`
`wiayshg
`
`juewabeueyy
`
`wajsAS
`
`siy6iycr
`
`
`
`juaBbysesp
`
`
`
`JapjoHsiybiy
`
`UOIPEISWO‘
`
`
`
`
`
`swajshsjuawabeueyyajpuey
`
`8S
`
`
`
`
`
`
`
`@|PuRHajpuey4aAsaSajpuey
`
`
`
`
`
`Joyesauayy18AIaSAlojoe41G
`
`¢Old
`
`4 of 45
`
`4 of 45
`
`
`
`U.S. Patent
`
`JOJEIBUdy)
`
`hayokt
`
`
`Oct. 24, 2000
`
`
`
`
`jen6iguondAiougBurysepsyoalqo
`Sol901rolZOL
`
`
`ainjeubiswywoblyuonouns
`
`
`
`
`
`Sheet 3 of 25
`
`cbt
`
`aleouiiag
`
`peysinBurjsiq
`
`awen
`
`eyINGNd
`
`6,135,646
`
`€Sls
`
`901volcOl
`
`jeyb6iguondAssugéBuiysey}palqo
`ainjeubiswyWwioby——uonoun4
`
`
`
`
`UONEDIJHaA
`
`5 of 45
`
`
`
`AayaIeAuda1eoiiiedBuiubis
`
`eB
`
`5 of 45
`
`
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 4 of 25
`
`6,135,646
`
`
`
`vilSJBaylaDayeoymagayeoyed
`
`
`AuounyAuounyAwoyiny
`
`
`
`
`
`UMOUY-[[amM
`
`Aayayqnd
`
`
`
`Awoyjnyuonesjsibay
`
`
`
`Aoyogjausayu|
`
`
`
`Ayais0gjaulayuy
`
`Ott
`
`ayeoyiyiag
`
`Ayuouiny
`
`AdlOd
`
`ayeoyiyag
`
`yuouiny
`
`Aaiog
`
`OLL
`
`za
`sk
`%iS
`
`a44ay4cAAPIZIPELIIILELELELELIEEE
`ITTPAAAREERERE
`
`v-Sls
`
`6 of 45
`
`6 of 45
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 5 of 25
`
`6,135,646
`
`variable length string defined on a per country basis
`|
`134
`
`130
`
`132
`
`FIG 5
`
`FIG 6
`
`130
`
`Handle
`Server
`
`m+1
`
`e
`
`
`Handle
`Server
`#N
`
`
`Handle
`Server
`#4
`
`Handle
`Server
`#2
`
`#3
`hash code space
`
`FIG 7
`
`58
`
`7 of 45
`
`7 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 6 of 25
`
`6,135,646
`
`
`
` System Reads Hash
`170
`
`
`Range From Handle
`Server Directory
`
`System Obtains Handle
`
`172
`
`System Generates
`Hash Code for Handle
`
`174
`
`176
`
`
`
`
`
`System Finds Domain
`Name of Handle server
`
`
`From Hash Table
`
`System Sends Handle
`to Handle Server
`
`
`178
`
`
`
`Handle Server Has
`Pointer for Handle?
`
`
`
`180
`
`Handle Server
`Returns Pointer
`
`
`
`
`
`
`Handle Server
`
`Handle Sent To
`Returns
`Wrong Handle Server?
`
`"Not Responsible"
`
`
`
`
`Handle Server
`184
`“Handle
`Returns
`
`
`Not Found."
`
`
`182
`
`FIG. 8
`
`8 of 45
`
`8 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 7 of 25
`
`6,135,646
`
`|
`|
`
`
`
`
`70 60
` Applicant Places
`
`Applicant Makes
`Object ina
`To Own System
`Object Available
`Repository
`
` Applicant Runs Registration
`
`
`Program and Fills Out
`
`Application & Object's Handle
`Electronically Mailed to
`Registration System
`
`64
`
`Template
`
` 66
`
`Registration System Checks
`Application
`Object with Application ?
`
`Registration
`System Retrieves
`
`Object From
`
`Repository
`Registration System
`Verifies Object Not
`
`
`Corrupted
`
`
`
`
`RIP Created & Sent
`
`To Tracking System
`
`74 76
`
`
`
`
`
`
` 80
`
`
`Tracking System Verifies Account
`
`78
`
`Examiner Accesses Application
`& Object Through Workstation
`
`Registration System Assigns
`Number & Sends Centificate
`To Applicant
`
`Updated RIP Sent to Tracking System
`
`
`
`82
`
`FIG. 9
`
`9 of 45
`
`9 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 8 of 25
`
`6,135,646
`
`Buryoesy
`
`wejshs
`
`
`
`Ol‘Sid
`
`uoyensibay
`
`aseqejeqGay
`
`uoyesddy
`
`juawns0q
`
`ayeoyag
`
`Buiboyeye
`
`Wwa}shS
`
`JNGNd
`
`ssaaoy
`
`uonessibayy
`
`aseqeieq
`
`UOHEISHION,
`
`UOIEISHIOAA
`
`(iaBoyejey)
`
`(4autwex9)
`
`UOIEISHIOAA
`
`10 of 45
`
`10 of 45
`
`
`
`
`
`U.S. Patent
`
`Oct.24, 2000
`
`Sheet 9 of 25
`
`6,135,646
`
`
`
`Applicant Generates
`Digital Signature for Document
`
`Applicant Makes Signature
`Document & Key Available to UA
`
`UA Fills Out & Signs Registration
`Application
`
`UA Sends Message to Registration
`System VIA PEM/MIME
`
`Registration System Records
`Message Receipt
`
`Registration System Accepts
`Applications From UA?
`
`Yes
`
`Digital Signature Valid
`Over Message?
`
`Yes
`
`Receipt Contirmation Sent
`to UA
`
`Registration Information
`Valid?
`Yes
`
`250
`
`
`
`252
`
`254
`
`256
`
`258
`260
`
`262
`
`
` Send Message
`ToUA&
`Record Failure
`
`
`
`
`
`
`
`Document in PEM/MIME
`
`Message?
`
`Yes
`
`Digital! Signature Valid
`Over Document?
`
` Information Entered in Registration
`
`System Data Base + Recorded in Log
`
`
`FIG. 11
`
`268
`
`270
`
`272
`
`No
`
`274
`
`11 of 45
`
`11 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 10 of 25
`
`6,135,646
`
`280
`
`Documentin
`PEM/MIME Message
`
`276
`No
`
`278
`
`Retrieve
`Copy ?
`
`Send
`Message
`ToUA
`
`Validate
`Digital
`Signature
`Over Document ?|
`
`
`
`
`
`
`
`Remove
`Entries
`In Database
`
`
`
`
`
`& Record Failure
`& Assigns Number to Application
`
`Document
`Published ?
`
`Place Document
`In Acquisition Queue
`
`Registration System
`Prepares Initial RIP
`
`290
`
`300
`
`Delete
`Document
`From
`Registration
`System
`
`Check if Doc 296
`298
`
`Request Sent To Tracking
`Process VIA FTP
`
`292
`
`No
`
`Account Valid?
`
`Yes
`
`Sufficient Funds?
`
`294
`eS
`
`No
`
`Tracking System Sends
`Message to
`Registration System
`
`Published
`
`302
`
`Yes
`
`Tracking System Sends OK To Registration
`System & Places RIP in Database
`
`
`
`
`
`
`
`304
`
`Registration System Places
`Application in Examiner's
`Queue
`
`
`
`FIG 12
`
`12 of 45
`
`12 of 45
`
`
`
`U.S. Patent
`
`Sheet 11 of 25
`
`6,135,646
`
`Oct. 24, 2000
`
`
`Figure 12
`
`
`
`306
`
`Examiners Views Document &
`
`Adds Name & Class to Application
`
`318
`
`“Rejection’ Message
`Sent to Applicant
`
`
`Examiner Approves?
`
`Yes
`
`“Approved” Message Sent
`To Registration System
`
`Registration System Assigns
`Registration Number
`
`
`
`
`
`
`
`
`
`
`Registration System Creates
`Signs & Archives Certificate
`
`
`
`Certificate Sent Via PEM
`To UA
`
`
` Updated RIP Sent
`320
`To Tracking System
`
`
`
`
`Coins Adds Updated RIP
`To Database + Sends Confirmation
`
`
`To Registration System
`
`
`
`Registration System Moves
`Application To Catalog Queue
`324
`
`
`
`Cataloger Creates Catalog
`Information with Cataloging System
`
`
`
`
`
`Cataloger Sends Confirmation
`To Registration System
`
`
`
`Registration System Records
`“Processing Complete" in Log
`
`
`322
`
`326
`
`328
`
`330
`
`FIG.13
`
`13 of 45
`
`13 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 12 of 25
`
`6,135,646
`
`42
`
`Workstation
`
`Handle
`Server
`
`Directory
`
`
`
`59
`
`56
`
`14 of 45
`
`get:
`Management
`System
`
`58 Handle
`Server
`
`
`
`Handle
`
`
`
`Generator
`
`
`Repository
`
`FIG. 14
`
`14 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 13 of 25
`
`6,135,646
`
`User Makes Object
`Available to UA
`
`350
`
`
`
`UA sends Handle
`Request to Handle
`Generator System
`
`352
`
`Handie Generator
`Returns Handle
`
`354
`
`
`
`
`
`
`
`RMSAccepts Requests
`From UA?
` RMS Sends
`"Invalid" Message
`to UA & Discards
`Request
`
`
`
`360
`
`362
`
`
`
`Set of Terms for
`
`Handle Already Stored?
`
`364
`
`RMSStores Handle &
`Associated Terms
`
`366
`
`368
`
`RMS Sends Confirmation
`To UA
`
`
`
`
`FIG. 15
`
`15 of 45
`
`15 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 14 of 25
`
`6,135,646
`
`
`
`UA Computes Object's
`Digital Signature Over
`
`
`370
`Handle, Group & Object
`
`
`UA Signs + Sends Request
`VIA PEM/MIME To Repository
`
`372
`
`374
` Repository Accepts Submissions
`
`No
`From UA
`
`Repository
`
`
`
`
`
`
`Message to UA
`& Discards Request
`
`
`Signature Valid Over
`Message?
`
`376
`
`382
`
`380
`
`384
`
`386
`
`388
`
`390
`
`392
`
`5
`Retrieve
`i
`idessane?
`Object In Message?
`Yes
`
`
`
`
`
`
`
`UA's Signature
`Valid Over Handle
`
`
`Group & Object?
`
`
`To UA
`
`Request Date
`Reasonable
`
`Repository Stores
`Object & Information
`
`Repository Computes Digital
`Signature over Handle,
`Group & Object
`
`Repository Sends
`Confirmation VIA PEM
`
`FIG. 16
`
`16 of 45
`
`16 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet15 of 25
`
`6,135,646
`
` :
`
`UA Verifies Repository s
`Digital Signal Over Handle.
`Group + Object
`
`UA Stores Handle, Object
`& Repository Information
`
`UA Computes Object Handle
`Hash
`
`394
`
`396
`
`398
`
`400
`
`402
`
`408
`
`UA Reads New
`Hash Table From
`Handle Server
`Directory
`
`406
`
`No
`
`server
`
`Handle S
`angle
`Sends Message
`ToUA&
`
`Handle Server
`Sends “Invalid” Message
`ToUA&
`Discards Message
`
`
`
`412
`
`404 Discards Message
`
`
`
`
`
`
`UA Looks Up Handle Server
`Responsible for Handle
`
`In Hash Table
`
`UA Signs & Sends Message
`To Handle Server Via PEM
`
`Handle Server Responsible
`For Handle?
`Yes
`
`Digital Signal Valid
`Over Message?
`
`410
`
`
`
`414
`
`416
`
`
`
`418
`
`420
`
`
`Handle Server Accepts
`Messages from UA?
`
`.
`
`Yes
`Handle Server Stores
`Handle Information
`
`
`
`From UA's Message
`
`
`Handle Server Sends
`Contirmation to UA
`
`FIG, 17
`
`17 of 45
`
`17 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 16 of 25
`
`6,135,646
`
`eT Tena ae nt eeet
`
`8t“Sis
`
`ow
`
`+
`
`Buryoesy
`
`
`
`wie}sASAiousoday
`
`18 of 45
`
`OS
`
`BuiBojeye
`
`we}sks
`
`Lv
`
`uonensibay
`
`eseqeyeqd
`
`ongnd
`
`ssaooy
`
`PaUONEISYION
`
`cr
`
`As0\9911q
`
`a|PueH
`
`J9A19S
`
`
`
`UOHEISHIONUONRISHIONA
`
`(sauiwex3)
`
` (uaBoyeyeo)
`
`ZSOFuonesibay
`eseqeyeqBay
`
`uoyeayddy
`
`juawnsoq
`
`aLeayIaD
`
`juawabeueyy
`
`wayshs
`
`siyBiy
`
`JaAIBS
`
`18 of 45
`
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 17 of 25
`
`6,135,646
`
`Applicant Generates
`Digital Signature
`For Document
`
`450
`
`Applicant Makes Signature
`and Public Key Certificate
`Chain Available To UA
`
`452
`
`UA Fills Out Application
`
`454
`
`PEM/MIME
`
`UA Signs & Sends Request To
`Registration System Via
`
`456
`
`Registration System Records
`Request Receipt In Log
`
`Registration
`System Sends
`
`Form & Signs It
`aGe
`
`eae .
`ecor Ss
`Failure in Log
`
`Registration System Accepts
`Applications From UA?
`Yes
`
`
`Digital Signature Valid
`Over Message
`
`
`
`Send Confirmation of
`
`Receipt to UA Via PEM
`
`in Database & Log
`
`469
`
`466
`
`468
`
`470
`
`Application |nformation
`Valid?
`
`Registration Records
`Application Information
`
`FIG. 19
`
`19 of 45
`
`19 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 18 of 25
`
`6,135,646
`
`Figure 19
`
`472
`
`Registration System
`Computes Document Handle
`Hash
`
`482
`
`Look Up Handle Server
`In Hash Table
`
`Registration System Sends
`Pointer Request To
`Handle Server
`
`476
`
`Handle Server Responsible
`For Handle?
`
`Yes
`
`Handle In Database?
`
`Yes
`
`Handle Server
`Returns Pointers To
`Registration System
`
`Registration System
`Reloads Hash Table
`From Handle Server
`Directory
`
`Handle Server
`Sends Error
`
`Messageto
`Registration
`System
`
`
`
`Handle Server
`Sends Error
`Message to
`Registration
`System
`
`
`
`
`
`
`478
` 484
` 492
`
`
`
`Figure 21
`
`488
`
`Registration System
`Sends Message to UA
`
`
`Registration System
`Removes Information
`
`
`From Database &
`
`
`
`
`Records Failure in Log
`
`490
`
`FIG. 20
`
`20 of 45
`
`20 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 19 of 25
`
`6,135,646
`
`Figure 20
`
`498
`
`Yes
`
`Pointer Indicates
`RMS Negotiation
`Required ?
`No
`
`Another Pointer
`Exists?
`
`No
`
`
`
`
`
`Ragisiration
`System Connects
`To RMS
`
`RMS Returns
`Random Value Tag
`To Registration System
`
`Registration System
`Sends Information
`To RMS
`
`
`
`RMS Sends Error
`Message to Registration
`System
`
`:
`Registration System Logs
`Error & Removes Application
`Information from Database
`
`494
`
`496
`
`Signature Valid
`Over TAG?
`
`:
`;
`Registration System
`Neots: Terme &
`Carditions For Document
`
`
`
`
`RMS Connects To
`
`Repository
`
`Repository Returns
`TAG To RMS
`
`500
`
`502
`
`4
`
`50
`
`506
`
`508
`
`510
`
`512
`
`RMS Sends Information
`To Repository
`
`514
`
`Figure 22
`
`FIG. 21
`
`21 of 45
`
`21 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 20 of 25
`
`6,135,646
`
`516
`
`18
`
`Digital Signature of
`RMSValid Over Tag?
`
`No
`
`Repository Sends
`Error Message
`To RMS
`
` RMSAllowed to
`Contirmation to RMS Registration System
`
`RMS Logs Error
`& Sends Error Message
`To Registration System
`
`
`
`Logs Error &
`Removes Intormation
`Fron Database
`
`med
`
`22
`
`Transfer Document
`Veg
`
`526
`
`Repository Sends
`
`.
`,
`Repository Disconnects
`From RMS
`
`528
`
`RMS Forwards "Retrieval
`Allowed" Messageto
`Registration System
`
`RMS Disconnects From
`Registration System
`
`530
`
`532
`
`Repository Connects to
`Registration System and
`Transmits Handle & Signed
`
`534
`
`536
`
`Repository Sends Confirmation
`To RMS
`
`"
`Applicant's Signature
`Valid Over Document?
`Yes
`
`Handle Placed in
`Acquisition Queue
`
`Figure 20, Step X
`
`538
`N
`
`oO
`
`544
`
`FIG. 22
`
`Document Registration System
`
`542
`
`REcords Error In
`Log & REmoves Information
`From Database
`
`
`
`Registration
`System Sends
`Error Message to UA
`
`22 of 45
`
`22 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`
`Sheet 21 of 25
`
`6,135,646
`
`vol
`
`
`
`JaJUaysdINaS
`
`upaig
`
`cOL
`
`Asoysoday
`
`waysAS
`
`juawAed
`
`19A18S
`
`
`
`syy6iy
`
`Huysanbay
`
`walqo
`
`BE
`
`juawaBbeueyy
`
`wa\sksS
`
`GPL
`
`6SIPUPH,
`
`a]pue
`
`1BA1BS
`
`Aio}I81IGg
`
`8S
`
`ajpue}
`
`JaA18S
`
`EeOls
`
`23 of 45
`
`23 of 45
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Oct.24, 2000
`
`Sheet 22 of 25
`
`6,135,646
`
`Format Set-Up-New-Account Message
`
`706
`
`Sign and Send Message To Payment Server
`
`708
`
`
`
`
`
`
` Invalid
`
`‘Si
`tise
`Payment Server Verifies Signature
`
`710
`
`714
`
`Invalid
`
`Credit Verification
`
`Invalid
`
`724
`
`Assign Account
`
`726
`
`Format and Send New Account Message
`
`728
`
`
`Number & Store
`
`
`
`Store New Account Information
`
`FIG 24
`
`
`
`730
`
`24 of 45
`
`24 of 45
`
`
`
`U.S. Patent
`
`Oct.24, 2000
`
`Sheet 23 of 25
`
`6,135,646
`
`Retrieve Table
`
`|——740
`
`742
`
`746
`
`Hash Handle and Perform Table Lookup
`
`Send Pointer Request
`
`Handle Server Verifies Hash Range
`
`
`
` 748
`
` 756
`
`No
`
`Refresh Table
`
`L_Seratestoe
`
`
`
`SendMessage_|iM 758|RetreshTable|
`
`
`
`
`
`
`774
`
`
`
`Use Pointers To
`Get Object
`
`
`
`Send Message
`If Unsuccessful
`
`64
`
`Connect to Repository
`
`766
`
`Flooding
`
`_-770
`
`Request Terms & Conditions
`
`768
`
`fite
`
`Verify Signature
`
`Incorrect
`
`Verify Payment
`
`25 of 45
`
`25 of 45
`
`
`
`U.S. Patent
`
`Oct.24, 2000
`
`
`
`
`
`Repository Retrieves Terms and Conditions
`
`Repository Signs and Sends Terms and Conditions
`
`Sheet 24 of 25
`790
`
`
`6,135,646
`
`792
`
`Requesting System Verifies Signature
`
`794
`
`
`796
`
`User Selects Terms
`
`
`Requesting System
`Creates/Signs/Sends
`
`
`
`
` — 798
`Message
`
`Repository Verifies Signature
`
`
`Repository
`Establish Connection To Payment Server
`
`
`
`
`802
`
`806
`
`Payment Server
`Returns Random-Value Tag
`
`Repository
`Forms/Signs/Sends Debit Account Message
`
` 808
`
`804—
`
`
`
`
`
`
`Payment Server Validates Signature
`
`810
`
`Payment Server Validates Signature
`
`812
`
`Payment Server Verifies Account Access Rights
`
`814
`
`Payment Server Verifies That Amount May Be Charged
`
`816
`
`
`
`
`
`PaymentServer Signs and Sends Debit Message
`
`Repository Sends Object, Handle, Etc.
`
`FIG 26
`
` 820
`
`818
`
`26 of 45
`
`26 of 45
`
`
`
`U.S. Patent
`
`Oct. 24, 2000
`Sheet 25 of 25
`
`
`
`Requesting System
`Connects To RMS
`
`—830
`
`RMS Retums Random Value Tag
`
`832
`
`RMS SendsInformation
`
`RMS Validates Signature
`
`834
`
`836
`
`Repository Verifies Payment Server's Signature
`
`838
`
`RMS Connects To Repository
`
`Repository Returns Random Tag Value
`
`842
`
`844
`
`RMSSends Information
`
`846
`
`Repository Verifies Signature
`
`Repository Connects To Payment Server
`
`Payment Server Retums Random Value Tag
`
`850
`
`852
`
`Repository Creates, Signs, and Sends, Debit Account Message
`
`Payment Server Validates Signature
`
`
`Payment Server Verifies Account Rights
`
`Payment Server Verifies Charge Amount
`
`
`
`Payment Server Sends Account Debit Message
`
`858
`
`860
`
`
`
`862
`
`6,135,646
`
`854
`
`
`
`848
`
`
`
`
`
`
`
`
`
`Repository Returns Retrieval Allowed Message
`
`864
`
`RMS Forward Message
`
`866
`
`-
`-
`Repository Sends Object, Etc
`
`868
`
`Repository Sends
`
`FIG. 27
`
`27 of 45
`
`27 of 45
`
`
`
`6,135,646
`
`1
`SYSTEM FOR UNIQUELY AND
`PERSISTENTLY IDENTIFYING, MANAGING,
`AND TRACKING DIGITAL OBJECTS
`
`This is a continuation ofapplication Ser. No. 08/142,161,
`filed Oct. 22, 1993, now abandoned.
`BACKGROUND
`
`§
`
`2
`third is export of internal network based information to
`paperusingdigital printers or facsimile machines or copying
`to separable media such as tape or DATfor external trans-
`port to others, The fourth is that digital objects maybeeasily
`manipulated on a computer to produce derivative works. The
`derivative works can also be easily moved about
`in a
`computer network environment and be subject
`to further
`manipulation by other parties. Parallel and concurrent
`manipulation can generate an exponential proliferation of
`derivative works.
`Several technologies are known for handling privacy and
`authentication in a digital network environment, including
`public key cryptography, digital signatures, privacy
`enhanced mail, and notarization.
`SUMMARY OF THE INVENTION
`
`In general, in one aspect, the invention features a method
`of managing digital objects in a network, the objects are
`stored at locations accessible in the network using a storage
`technique which renders the digital objects secure against
`unauthorized access. Pointer information which associates
`each digital object identifier with a pointer indicating the
`location of the stored digital object is also stored in the
`network. For each digital object validation information is
`stored, separately from the digital object, and is sufficient to
`permit a determination whether a purported instance of a
`digital objectis identical to the original. In examples of the
`invention, an authorized user may have access to the vali-
`dation information, using the digital object identifier,
`to
`determine whether a purported instance of a digital object is
`identical to the original. The validation information com-
`prises a digital signature over the digital object.
`Another general aspectof the invention concerns manag-
`ing reference information aboutdigital objects in a network.
`The reference information is stored for each of the digital
`objects. Validation information is also stored and is substan-
`tially smallerin size than the corresponding digital object. In
`examples of the invention, an authorized user may have
`access to the reference information using the unique iden-
`tifier, The reference information includes information con-
`cerning at least one of the following: registration ofrights in
`the digital object
`including performance of the object;
`accesses to and uses ofdigital object; the terms and condi-
`tions for use of digital objects; the ownership and transfer of
`rights to disseminate digital objects; links between different
`digital objects.
`In another general aspect of the invention, which concerns
`the storing of the digital objects in a network, the verification
`information is stored separately from the digital object. In
`examples of this aspect of the invention, the pointer to the
`object (versus identifier information for the object) is stored
`in multiple servers on the network. The identifiers are
`generated in a manner to distribute the pointer information
`with the unique identifier information) relatively evenly
`among, the servers, using a hashing algorithm.
`Another general aspect of the invention concerns enabling
`users of a network to accessor perform digital objects stored
`in the network. There are multiple pointer servers each of
`which accepts identifiers of a subset of the digital objects
`and returns corresponding pointers to the locations ofthe
`digital objects in the network. A directory server accepts
`identifiers of any of the digital objects and maintains and
`returns a table containing the locations of the pointer servers
`which accept those identifiers.
`Another general aspect ofthe invention concernsapplying
`for registration of rights in digital objects by submitting to
`
`28 of 45
`
`es 5
`
`~
`
`This invention relates to digital objects and associated
`rights and payments.
`By a “digital object” we broadly mean any set of
`sequences ofbits or digits and an associated unique identi-
`fier which we call a “handle”. A digital object may incor-
`porate information or material in which rights (¢.g., copy-
`right rights) or other interests are or may be claimed. There
`may also be rights associated with the digital object itself.
`Thus digital objects may include conventional digital rep-
`resentations of works (books, papers,
`images, sounds,
`software), and more broadly any digital material which is
`capable of producing desired manifestations for a computer
`user, Thus, a digital object could include programs and data
`which, though not directly a representation of the text of a
`work, enable the delivery over a network and the subsequent
`reproduction on a computer screen of selected portions of
`the text of the work. Bythe notion ofrights which are or may
`be claimed in a digital object, we mean rights which exist
`under statute (¢.g., copyright, patent,
`trade secret,
`trademark), or as a result of private action (¢.g., via secrecy,
`cooperative ventures, or negotiation).
`Rights are normally protected under the law by mecha-
`nisms that are paper-based. Patent and trademark applica-
`tions are prosecuted by exchanges of paper with the Patent
`and Trademark Office. Trade secret rights are often protected
`by appropriate legends on paper, and by physically guarding 4
`paper copies against disclosure. Registration of claims in ~
`copyright is largely based on a paper system. Registration
`systems generally involve providing physical copies
`(sometimes voluminous) to the registering authority of the
`object to be registered.
`Holders of rights may get value from those rights by
`allowing others to copy, use, or perform the object covered
`by the rights in exchange for consideration (e.g., a photog-
`rapher may sell copies of his photographs). In somesitua-
`tions there may no need for negotiation of the terms, which
`may be simple and well understood. The working out of
`compensation may be done automatically by private clearing
`house operations, such as the Copyright Clearance Center
`(as to photocopying) or ASCAP and BMI (in the music
`field).
`In other situations the rights holders may derive value by
`granting to others exclusive rights to disseminate the object
`in exchange for a royalty (e.g., a book author grants a
`publisher the North American paperback distribution rights).
`Exclusive rights are typically subject to direct negotiation.
`It is common to provide for central registration of own-
`ership and other exclusive rights so that others may know the
`timing and termsof those rights.
`Making digital objects available on networks (e.g.,
`Internet), gives rise to at
`least four specific activities of
`concern. Thefirst is the ease of movementofdigital objects
`already contained in a computer network environment
`allowing the creation of multiple copies in multiple
`machines in fractions of a second. The secondis the impor-
`tation of external
`information, such as print material or
`isolated CD-ROM based material, which must
`first be
`scanned or read into the system before it can be used. The
`
`30
`
`;
`
`28 of 45
`
`
`
`6,135,646
`
`3
`a registering authority an application for registration of
`rights including the validation information and the unique
`identifier of a digital object and its properties.
`Another general aspectof the invention concerns enabling
`holders of rights in digital objects to control
`terms and
`conditions under which they are accessed or performed by
`users in a network. Information is stored about terms and
`conditions for access to and performance of each digital
`object. The information is made available to a user in
`connection with a request for access to a digital object. The
`useris enabled to indicate assent to the terms and conditions.
`Access is permitted to the user only upon the user indicating
`assent to the terms and conditions.
`Another general aspectof the invention concerns enabling
`holders of rights in digital objects to control
`terms and
`conditions under which rights in the digital objects may be
`granted to others. Terms and conditions for the granting of
`rights is stored in the network. The terms and conditions are
`made available to potential rights holders upon request via
`the network. The potential rights holder and the current
`rights holder interact via the network to reach agreement on
`terms and conditions for grant of dissemination rights.
`Information identifying grants of such rights for digital
`objects on the network are stored in a recordation server on
`the network. This will generally be part of the reference
`service.
`Another general aspect of the invention concerns main-
`taining a record of information concerning digital objects
`stored on a network, The digital objects are stored on the
`network in a mannerthalrestricts unauthorized access to and
`transactions associated with the digital objects. A reference
`service is provided onthe network, separate from the storage
`of the digital objects,
`for
`recording information about
`accesses to and transactions associated with the digital
`objects.
`Information about accesses to and transactions
`associated with the digital objects is recorded in the refer-
`ence service. Access to the records of the reference service
`is permitted to authorized users.
`Another general aspect of the invention relates to man-
`aging registration of claims to rights in digital objects.
`Copies of the digital objects are stored in a repository in a
`manner that enables only authorized accesses to the digital
`objects and permits verification that the stored digital objects
`have not been subjected to unauthorized alteration, At a
`registrar which is accessible on the network at a different
`network address from the repository, registration services
`are provided including receipt via the network of registration
`requests and delivery via the network of registration certi-
`fications. The objects are accessed at the repository via the
`network for use in providing the registration services.
`Examples ofthe invention include the following features.
`Ownersofrights in digital objects may deposit copies of the
`digital objects in the repository, via the network. There may
`be multiple repositories. A set of servers, accessible on the
`network, are provided for the purpose of generating a unique
`handle for each digital object. The handle for a digital object
`is unique both across the network and over time. A service,
`accessible on the network,
`is provided for locating the
`handle associatedwith a digital object. The handle is used to
`obtain a pointer to the network location of an accessible
`copy (by “copy” we intend a broader concept
`then the
`conventional notion of copy; see other sections of this
`application for explanation) of the digital object. The handle
`is used to obtain a pointer to the network location of
`information concerning obtaining authorization to use the
`digital object. The services are provided at multiple different
`
`10
`
`15
`
`~
`
`30
`
`35
`
`40
`
`48
`
`50
`
`55
`
`60
`
`65
`
`4
`locations on the network. The handles comprise unique
`character strings associated with the servers which generated
`them. A handle server, accessible on the network, provides
`the pointer in response to presentation of a handle. Multiple
`servers provide the service, each serving a portion of the
`handle space. Multiple handle generation servers may gen-
`erate handles independently. Information concerning simple
`terms and conditions is stored in the repository. Information
`concerning non-simple termsis held in a rights management
`system (it may also contain the simple terms and
`conditions). Each of the handles is used to obtain a pointer
`to a rights management system in which information con-
`cerning non-simple termsis held. Hash values are computed
`on the handles and the hash values are distributed among
`multiple handle servers, each handle server having a table
`which associates handles with pointers.
`Another general aspect of the invention features a method
`for providing network based regulation of claimsin rights in
`digital objects, and, in connection with actions (e.g., regis-
`tration of rights or obtaining copies for consideration) per-
`taining to regulation of claimsin rights in t