Home
Patent Search
IMT Blog
REGISTER
|
SIGN IN
United States Patent
5917912
Ginter , ; et al.
June 29, 1999
Title
System and methods for secure transaction management and electronic rights protection
Abstract
The present invention provides systems and methods for secure transaction management and electronic rights protection. Electronic appliances such as computers equipped in accordance with the present invention help to ensure that information is accessed and used only in authorized ways, and maintain the integrity, availability, and/or confidentiality of the information. Such electronic appliances provide a distributed virtual distribution environment (VDE) that may enforce a secure chain of handling and control, for example, to control and/or meter or otherwise monitor use of electronically stored or disseminated information. Such a virtual distribution environment may be used to protect rights of various participants in electronic commerce and other electronic or electronic-facilitated transactions. Distributed and other operating systems, environments and architectures, such as, for example, those using tamper-resistant hardware-based processors, may establish security at each node. These techniques may be used to support an all-electronic information distribution, for example, utilizing the "electronic highway."
Inventors:
Ginter; Karl L.
(Beltsville,
MD
)
, Shear; Victor H.
(Bethesda,
MD
)
, Spahn; Francis J.
(El Cerrito,
CA
)
, Van Wie; David M.
(Sunnyvale,
CA
)
Assignee:
InterTrust Technologies Corporation
(Sunnyvale,
CA
)
Appl. No.:
780545
Filed:
January 8, 1997
Current U.S. Class:
713/187
719/312
705/40
713/164
Field of Search:
380/4,25 395/186,683,684
U.S. Patent Documents
3573747
April 1971
Adams et al.
3609697
September 1971
Blevins
3796830
March 1974
Smith
3798359
March 1974
Feistel
3798360
March 1974
Feistel
3798605
March 1974
Feistel
3806882
April 1974
Clarke
3829833
August 1974
Freeny, Jr.
3906448
September 1975
Henriques
3911397
October 1975
Freeny, Jr.
3924065
December 1975
Freeny, Jr.
3931504
January 1976
Jacoby
3946220
March 1976
Brobeck et al.
3956615
May 1976
Anderson et al.
3958081
May 1976
Ehrsam et al.
3970992
July 1976
Boothroyd et al.
4048619
September 1977
Forman, Jr. et al.
4071911
January 1978
Mazur
4112421
September 1978
Freeny, Jr.
4120030
October 1978
Johnstone
4163280
July 1979
Mori et al.
4168396
September 1979
Best
4196310
April 1980
Forman et al.
4200913
April 1980
Kuhar et al.
4209787
June 1980
Freeny, Jr.
4217588
August 1980
Freeny, Jr.
4220991
September 1980
Hamano et al.
4232193
November 1980
Gerard
4232317
November 1980
Freeny, Jr.
4236217
November 1980
Kennedy
4253157
February 1981
Kirschner et al.
4262329
April 1981
Bright et al.
4265371
May 1981
Desai et al.
4270182
May 1981
Asija
4278837
July 1981
Best
4305131
December 1981
Best
4306289
December 1981
Lumley
4309569
January 1982
Merkle
4319079
March 1982
Best
4323921
April 1982
Guillou
4328544
May 1982
Baldwin et al.
4337483
June 1982
Guillou
4361877
November 1982
Dyer et al.
4375579
March 1983
Davida et al.
4433207
February 1984
Best
4434464
February 1984
Suzuki et al.
4442486
April 1984
Mayer
4446519
May 1984
Thomas
4454594
June 1984
Heffron et al.
4458315
July 1984
Uchenick
4462076
July 1984
Smith, III
4462078
July 1984
Ross
4465901
August 1984
Best
4471163
September 1984
Donald et al.
4484217
November 1984
Block et al.
4494156
January 1985
Kadison et al.
4513174
April 1985
Herman
4528588
July 1985
Lofberg
4528643
July 1985
Freeny, Jr.
4553252
November 1985
Egendorf
4558176
December 1985
Matyas et al.
4558413
December 1985
Schmidt et al.
4562306
December 1985
Chou et al.
4562495
December 1985
Bond et al.
4577289
March 1986
Comerford et al.
4584641
April 1986
Guglielmino
4588991
May 1986
Atalla
4589064
May 1986
Chiba et al.
4593353
June 1986
Pickholtz
4593376
June 1986
Volk
4595950
June 1986
Lofberg
4597058
June 1986
Izumi et al.
4634807
January 1987
Chorley et al.
4644493
February 1987
Chandra et al.
4646234
February 1987
Tolman et al.
4652990
March 1987
Pailen et al.
4658093
April 1987
Hellman
4670857
June 1987
Rackman
4672572
June 1987
Alsberg
4677434
June 1987
Fascenda
4680731
July 1987
Izumi et al.
4683553
July 1987
Mollier
4685056
August 1987
Barnsdale et al.
4688169
August 1987
Joshi
4691350
September 1987
Kleijne et al.
4696034
September 1987
Wiedemer
4701846
October 1987
Ikeda et al.
4712238
December 1987
Gilhousen et al.
4713753
December 1987
Boebert et al.
4740890
April 1988
William
4747139
May 1988
Taaffe
4757533
July 1988
Allen et al.
4768087
August 1988
Taub et al.
4791565
December 1988
Dunham et al.
4796181
January 1989
Wiedemer
4799156
January 1989
Shavit et al.
4807288
February 1989
Ugon et al.
4817140
March 1989
Chandra et al.
4823264
April 1989
Deming
4827508
May 1989
Shear
4858121
August 1989
Barber et al.
4864494
September 1989
Kobus
4868877
September 1989
Fischer
4903296
February 1990
Chandra et al.
4924378
May 1990
Hershey et al.
4930073
May 1990
Cina, Jr.
4949187
August 1990
Cohen
4977594
December 1990
Shear
4999806
March 1991
Chernow et al.
5001752
March 1991
Fischer
5005122
April 1991
Griffin et al.
5005200
April 1991
Fisher
5010571
April 1991
Katznelson
5023907
June 1991
Johnson et al.
5047928
September 1991
Wiedemer
5048085
September 1991
Abraham et al.
5050213
September 1991
Shear
5091966
February 1992
Bloomberg et al.
5103392
April 1992
Mori
5103476
April 1992
Waite et al.
5111390
May 1992
Ketcham
5119493
June 1992
Janis et al.
5128525
July 1992
Stearns et al.
5136643
August 1992
Fischer
5136646
August 1992
Haber et al.
5136647
August 1992
Haber et al.
5136716
August 1992
Harvey et al.
5146575
September 1992
Nolan, Jr.
5148481
September 1992
Abraham et al.
5155680
October 1992
Wiedemer
5168147
December 1992
Bloomberg
5185717
February 1993
Mori
5201046
April 1993
Goldberg et al.
5201047
April 1993
Maki et al.
5208748
May 1993
Flores et al.
5214702
May 1993
Fischer
5216603
June 1993
Flores et al.
5221833
June 1993
Hecht
5222134
June 1993
Waite et al.
5224160
June 1993
Paulini et al.
5224163
June 1993
Gasser et al.
5235642
August 1993
Wobber et al.
5245165
September 1993
Zhang
5260999
November 1993
Wyman
5263158
November 1993
Janis
5265164
November 1993
Matyas et al.
5276735
January 1994
Boebert et al.
5280479
January 1994
Mary
5285494
February 1994
Sprecher et al.
5301231
April 1994
Abraham et al.
5311591
May 1994
Fischer
5319705
June 1994
Halter et al.
5337360
August 1994
Fischer
5341429
August 1994
Stringer et al.
5343527
August 1994
Moore
5347579
September 1994
Blandford
5351293
September 1994
Michener et al.
5355474
October 1994
Thuraisngham et al.
5373561
December 1994
Haber et al.
5390247
February 1995
Fischer
5390330
February 1995
Talati
5392220
February 1995
van den Hamer et al.
5392390
February 1995
Crozier
5394469
February 1995
Nagel et al.
5410598
April 1995
Shear
5412717
May 1995
Fischer
5421006
May 1995
Jablon
5422953
June 1995
Fischer
5428606
June 1995
Moskowitz
5438508
August 1995
Wyman
5442645
August 1995
Ugon
5444779
August 1995
Daniele
5449895
September 1995
Hecht et al.
5449896
September 1995
Hecht et al.
5450493
September 1995
Maher
5453601
September 1995
Rosen
5453605
September 1995
Hecht et al.
5455407
October 1995
Rosen
5455861
October 1995
Faucher et al.
5455953
October 1995
Russell
5457736
October 1995
Dolphin
5457746
October 1995
Dolphin
5463565
October 1995
Cookson et al.
5473687
December 1995
Lipscomb et al.
5473692
December 1995
Davis
5479509
December 1995
Ugon
5485622
January 1996
Yamaki
5491800
February 1996
Goldsmith et al.
5497479
March 1996
Hornbuckle
5497491
March 1996
Mitchell et al.
5499298
March 1996
Narasimhalu et al.
5504757
April 1996
Cook et al.
5504818
April 1996
Okano
5504837
April 1996
Griffeth et al.
5508913
April 1996
Yamamoto et al.
5509070
April 1996
Schull
5513261
April 1996
Maher
5530235
June 1996
Stefik et al.
5530752
June 1996
Rubin
5533123
July 1996
Force et al.
5534975
July 1996
Stefik et al.
5537526
July 1996
Anderson et al.
5539735
July 1996
Moskowitz
5539828
July 1996
Davis
5550971
August 1996
Brunner et al.
5553282
September 1996
Parrish et al.
5557518
September 1996
Rosen
5563946
October 1996
Cooper et al.
5568552
October 1996
Davis
5572673
November 1996
Shurts
5592549
January 1997
Nagel et al.
5606609
February 1997
Houser et al.
5613004
March 1997
Cooperman et al.
5621797
April 1997
Rosen
5629980
May 1997
Stefik et al.
5633932
May 1997
Davis et al.
5634012
May 1997
Stefik et al.
5636292
June 1997
Rhoads
5638443
June 1997
Stefik
5638504
June 1997
Scott et al.
5640546
June 1997
Gopinath et al.
5655077
August 1997
Jones et al.
5687236
November 1997
Moskowitz et al.
5689587
November 1997
Bender et al.
5692180
November 1997
Lee
5710834
January 1998
Rhoads
5740549
April 1998
Reilly et al.
5745604
April 1998
Rhoads
5748763
May 1998
Rhoads
5748783
May 1998
Rhoads
5748960
May 1998
Fischer
5754849
May 1998
Dyer et al.
5757914
May 1998
McManis
5758152
May 1998
LeTourneau
5765152
June 1998
Erickson
5768426
June 1998
Rhoads
Foreign Patent Documents
0 370 146
Nov., 1988
EP
0 456 386 A2
Nov., 1991
EP
0 469 864 A2
Feb., 1992
EP
0 469 864 A3
Feb., 1992
EP
0 593 305 A2
Apr., 1994
EP
0 651 554 A1
May., 1995
EP
0 668 695 A2
Aug., 1995
EP
0 695 985 A1
Jan., 1996
EP
0 696 798 A1
Feb., 1996
EP
0 725 376
Jan., 1996
EP
0 778 513 A2
Jun., 1997
EP
0 795 873 A2
Sep., 1997
EP
0 84 441
Jul., 1983
EP
0128672
Dec., 1984
EP
0180460
May., 1986
EP
0399822A2
Nov., 1990
EP
0421409A2
Apr., 1991
EP
0565314A2
Oct., 1993
EP
0715243A1
Jun., 1996
EP
0715244A1
Jun., 1996
EP
0715245A1
Jun., 1996
EP
0715246A1
Jun., 1996
EP
0715247A1
Jun., 1996
EP
0749081A1
Dec., 1996
EP
1-068835
Mar., 1989
JP
2-242352
Sep., 1990
JP
2-247763
Oct., 1990
JP
2-294855
Dec., 1990
JP
2264796
Sep., 1993
GB
2294348
Apr., 1996
GB
2295947
Jun., 1996
GB
3803982A1
Jan., 1990
DE
4-369068
Dec., 1992
JP
5-181734
Jul., 1993
JP
5-257783
Oct., 1993
JP
5-268415
Oct., 1993
JP
57-726
May., 1982
JP
6-175794
Jun., 1994
JP
6-215010
Aug., 1994
JP
62-241061
Oct., 1987
JP
6225059
Aug., 1994
JP
64-68835
Mar., 1989
JP
7-056794
Mar., 1995
JP
7-084852
Mar., 1995
JP
7-141138
Jun., 1995
JP
7-200317
Aug., 1995
JP
7-200492
Aug., 1995
JP
7-244639
Sep., 1995
JP
8-137795
May., 1996
JP
8-152990
Jun., 1996
JP
8-185298
Jul., 1996
JP
9 004 79
Dec., 1984
BE
A0135422
Mar., 1985
EP
A2136175
Sep., 1984
GB
WO 85/03584
Aug., 1985
WO
WO 94/01821
Jan., 1994
WO
WO 94/16395
Jul., 1994
WO
WO 94/18620
Aug., 1994
WO
WO 94/22266
Sep., 1994
WO
WO 94/27406
Nov., 1994
WO
WO 96/00963
Jan., 1996
WO
WO 96/03835
Feb., 1996
WO
WO 96/05698
Feb., 1996
WO
WO 96/06503
Feb., 1996
WO
WO 97/03423
Jan., 1997
WO
WO 97/48203
Dec., 1997
WO
WO90/02382
Mar., 1990
WO
WO92/06438
Apr., 1992
WO
WO92/22870
Dec., 1992
WO
WO93/01550
Jan., 1993
WO
WO94/03859
Feb., 1994
WO
WO9406103
Mar., 1994
WO
WO95/14289
May., 1995
WO
WO96/13013
May., 1996
WO
WO96/21192
Jul., 1996
WO
WO97/07656
Mar., 1997
WO
WO97/32251
Sep., 1997
WO
WOA8502310
May., 1985
WO
Other References
Applications Requirements for Innovative Video Programming: How to Foster (or Cripple) Program Development Opportunities for Interactive Video Programs Delivered on Optical Media; A Challenge for the Introduction of DVD (Digital Video Disc) (Oct. 19-20, 1995, Sheraton Universal Hotel, Universal City CA). .
Bruner, Rick E., PowerAgent, NetBot help advertisers reach Internet shoppers, Aug. 1997 (Document from Internet). .
CD ROM, Introducing . . . The Workflow CD-ROM Sampler, Creative Networks, MCIMail: Creative Networks, Inc., Palo Alto, California. .
Clark, Tim, Ad service gives cash back, www.news.com, Aug. 4, 1997, 2 pages (Document from Internet). .
Dempsey, et al., D-Lib Magazine, July/August 1996 The Warwick Metadata Workshop: A Framework for the Deployent of Resource Description, Jul. 15, 1966. .
Firefly Network, Inc., www.ffly.com, What is Firefly? Firefly revision: 41.4 Copyright 1995, 1996. .
Gleick, James, "Dead as a Dollar" The New York Times Magazine, Jun. 16, 1996, Section 6, pp. 26-30, 35, 42, 50, 54. .
Harman, Harry H., Modern Factor Analysis, Third Edition Revised, University of Chicago Press Chicago and London, Third revision published 1976. .
Herzberg, Amir et al., Public Protection of Software, ACM Transactions on Computer Systems, vol. 5, No. 4, Nov. 1987, pp. 371-393. .
Holt, Stannie, Start-up promises user confidentiality in Web marketing service, Info World Electric, Aug. 13, 1997 (Document from Internet). .
Jiang, et al, A concept-Based Approach to Retrieval from an Electronic Industrialn Directory, International Journal of Electronic Commerce, vol. 1, No. 1, Fall 1996, pp. 51-72. .
Jones, Debra, Top Tech Stories, PowerAgent Introducts First Internet `Infomediary` to Empower and Protect Consumers, Aug. 13, 1997 3 pages (Document from Internet). .
Lagoze, Carl, D-Lib Magazine, July/August 1996, The Warwick Framework, A Container Architecture for Diverse Sets of Metadata. .
Maclachlan, Malcolm, PowerAgent Debuts Spam-Free Marketing, TechWire, Aug. 13, 1997, 3 pages (Document from Internet). .
Mossberg, Walter S., Personal Technology, Threats to Privacy On-Line Become More Worrisome, Wall Street Journal, Oct. 24, 1996. .
Negroponte, Electronic Word of Mouth, Wired Oct. 1996, p. 218. .
PowerAgent Inc., Proper Use of Consumer Information on the Internet White Paper, Jun. 1997, Document from Internet, 9 pages (Document from Internet). .
PowerAgent Press Releases, What the Experts are Reporting on PowerAgent, Aug. 13, 1997, 6 pages (Document from Internet). .
PowerAgent Press Releases, What the Experts are Reporting on PowerAgent, Aug. 4, 1997, 5 pages (Document from Internet). .
PowerAgent Press Releases, What the Experts are Reporting on PowerAgent, Aug. 13, 1997, 3 pages (Document from Internet). .
Resnick, et al., Recommender Systems, Communications of the ACM, vol. 40, No. 3, Mar. 1997, pp. 56-89. .
Rothstein, Edward, The New York Times, Technology, Connections, Making th eInternet come to you, through `push` technology . . . p. D5, Jan. 20, 1997. .
Rutkowski, Ken, PowerAgent Introduces First Internet `Infomediary` to Empower and Protect Consumers, Tech Talk News Story, Aug. 4, 1997 (Document from Internet). .
Sager, Ira (Edited by), Bits & Bytes, Business Week, Sep. 23, 1996, p. 142E. .
Schurmann, Jurgen, Pattern Classification, A Unified View of Statistical and Neural Approaches, John Wiley & Sons, Inc., 1996. .
Special Report, The Internet:Fulfilling the Promise The Internet: Bring Order From Chaos; Lynch, Clifford, Search the Internet; Resnick, Paul, Filtering Information on the Internet; Hearst, Marti A., Interfaces for Searching the Web; Stefik, Mark, Trusted Systems; Scientific American, Mar. 1997, pp. 49-56, 62-64, 68-72, 78-81. .
Stefik, Mark, Introduction to Knowledge Systems, Chapter 7, Classification, pp. 543-607, 1995 by Morgan Kaufmann Publishers, Inc. .
Voight, Joan, Beyond the Banner, Wired, Dec. 1996, pp. 196, 200, 204. .
Vonder Haar, Steven, PowerAgent Launches Commercial Service, Inter@ctive Week, Aug. 4, 1997 (Document from Internet). .
Amerke, David, et al., News Release, AT&T, Jan. 9, 1995, AT&T encryption system protects information services, 1 page. .
AT&T Technology, vol. 9, No. 4, New Products, Systems and Services, pp. 16-19. .
Barassi, Theodore Sedgwick Esq., The Cybernotary: Public Key Registration and Certificaiton and Authentication of International Legal Transactions, 4 pages. .
Communications of the ACM, Jun. 1996, vol. 39, No. 6. .
Cunningham, Donna, et al., News Release, AT&T, Jan. 31, 1995, AT&T, VLSI Technology join to improve info highway security, 3 pages. .
Data Sheet, About the Digital Notary Service, Surety Technologies, Inc., 1994-1995, 6 pages. .
DiscStore (Electronic Pulishing Resources 1991). .
Document from Internet, cgi@ncsa.uiuc.edu, CGI Common Gateway Interface, 1 page, 1996. .
Electronic Publishing Resources Inc. Protecting Electronically Published Properties Increasing Publishing Profits (Electronic Publishing Resources 1991). .
Greguras, Fred, Softic Symposium '95, Copyright Clearances and Moral Rights, Nov. 30, 1995 (as updated Dec. 11, 1995), 3 pages. .
HOTJAVA.TM.: The Security Story, 4 pages. .
Invoice? What is an Invoice? Business Week, Jun. 10, 1996. .
JAVASOFT, Frequently Asked Questions -- Applet Security, What's Java.TM.? Products and Services, Java/Soft News, Developer's Cornier,Jun. 7, 1996, 8 pages. .
Kohntopp, M., Sag's durch die Blume, Apr. 1996, marit@schulung.netuse.de .
Milbrandt, E., Stenanography Info and Archive, 1996. .
News Release, Premenos Announces Templar 2.0 -- Next Generation Software for Secure Internet EDI, webmaster@templar.net, 1 page, Jan. 17, 1996. .
News Release, The Document Company Xerox, Xerox Announces Software Kit For Creating Working Documents With Dataglyphs, Nov. 6, 1995, Minneapolis, MN, 13 pages. .
Premenos Corp. White Paper: The Future of Electronic Commerce, A Supplement to Midrange Systems, Internet webmaster@premenos.com, 4 pages. .
Press Release, National Semiconductor and EPR Partner For Information Metering/Data Security Cards (Mar. 4, 1994). .
ROI (Personal Library Software, 1987 or 1988). .
ROI-Solving Critical Electronic Publishing Problems (Personal Library Software, 1987 or 1988). .
Shear, Solutions for CD-ROM Pricing and Data Security Problems, pp. 530-533, CD ROM Yearbook 1988-1989 (Microsoft Press 1988 or 1989). .
Stefik, Internet Dreams: Archetypes, Myths, and Metaphors, Letting Loose the Light: Igniting Commerce in Electronic Publication, pp. 219-253, (1996) Massachusetts Institute of Technology. .
Stefik, Mark, Letting Loose the Light, Igniting Commerce in Electronic Publication, (1994, 1995) Palo Alto, California. .
Templar Overview,: Premenos, Internet info@templar.net, 4 pages. .
Templar Software and Services: Secure, Reliable, Standards-Based EDI Over the Internet, Prementos, Internet info@templar.net, 1page. .
The Benefits of ROI For Database Protection and Usage Based Billing (Personal Library Software, 1987 or 1988). .
Weber, Dr. Robert, Digital Rights Management Technologies, A Report to the International Federation of Reproduction Rights Organisations, Oct. 1995,pp. 1-49. .
Weber, Dr. Robert, Digital Rights Management Technologies, Oct. 1995, 21 pages. .
Weber, Metering Technologies for Digital Intellectual Property, A Report to the International Federation of Reproduction Rights Organisations, pp. 1-29; Oct. 1994, Boston, MA, USA. .
WEPIN Store, Stenography (Hidden Writing) (Common Law 1995). .
World Wide Web FAQ, How can I put an access counter on my home page?, 1 page, 1996. .
Yellin, F. Low Level Security in Java, 8 pages. .
Yee, "Using Secure Coprocessors," CMU-CS-94-149, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213. .
Tygar et al., "Dyad: A System for Using Physically Secure Coprocessors," School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213 (undated). .
Tygar et al., "Dyad: A System for Using Physically Secure Coprocessors," School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213 (May 1991). .
Maxemchuk, "Electronic Document Distribution," AT&T Bell Laboratories, Murry Hill, New Jersey 07974. .
Choudhury, et al., "Copyright Protection for Electronic Publishing over Computer Networks," At&T Bell Laboratores, Murray Hill, New Jersey 07974 (Jun. 1994). .
Weingart, "Physical Security for the .mu.ABYSS System," IBM Thomas J. Watson Research Center, Yorktown Heights, New York 10598 (1987). .
White, "ABYSS: A Trusted Architecture for Software Protection," IBM Thomas J. Watson Research Center, Yorktown Heights, New York 10598 (1987). .
Neumann, et al., "A Provably Secure Operating System: The System, Its Applications, and Proofs," Computer Science Laboratory Report CSL-116, Second Edition, SRI International (May, 1980). .
Caruso, "Technology, Digital Commerce 2 plans for watermarks, which can bind proof of authorship to electronic works," New York Times (Aug. 1995). .
"Electronic Currency Requirements, XIWT (Cross Industry Working Group)," no date. .
"NII, Architecture Requirements, XIWT," no date. .
Arthur K. Reilly, "Standards committee T1--Telecommunications,"Input to the `International Telecommunications Hearings,` Panel 1: Component Technologies of the NII/GII, no date. .
Dan Bart, Comments in the Matter of Public Hearing and Request for Comments on the International Aspects of the National Information Infrastructure, Aug. 12, 1994. .
"Open System Environment Architectural Framework for National Infrastructure Services and Standards, in Support of National Class Distributed Systems," Distributed System Engineering Program Sponsor Group, Draft 1.0, Aug. 5, 1994. .
"Information Infrastructure Standards Panel: NII `The Information Superhighway`," NationsBank -- HGDeal -- ASC X9, 15 pages. .
Jud Hofmann, "Interfacing the NII to User Homes," Electronic Industries Association, Consumer Electronic Bus Committee, 14 slides, no date. .
"Framework for National Information Infrastructure Services," NIST, Jul. 1994, 12 slides. .
Claude Baggett, "Cable's Emerging Role in the Information Superhighway," Cable Labs, 13 slides. .
"IISP Break Out Session Report for Group Number 3, Standards Development and Tracking System," no date. .
"XIWT Cross Industry Working Team," 5 pages, Jul. 1994. .
"Computer Systems Policy Project (CSSP), Perspectives on the National Information Infrastructure: Ensuring Interoperability (Feb. 1994)," Feb. 1994. .
"Framework for National Information Infrastructure Services," Draft, U.S. Department of Commerce, Jul. 1994. .
"EIA and TIA White Paper on National Information Infrastructure,"published by the Electronic Industries Association and the Telecommunications Industry Association, Washington, D.C., no date. .
Michael Baum, "Worldwide Electronic Commerce: Law, Policy and Controls Conference," program details, Nov. 11, 1993. .
Bruce Sterling, "Literary freeware: Not for Commercial Use," remarks at Computers, Freedom and Privace Conference IV, Chicago, Mar. 26, 1994. .
"The 1:1 Future of the Electronic Marketplace: Return to a Hunting and Gathering Society," 2 pages, no date. .
D. Linda Garcia, testimony before a hearing on science, space and technology, May 26, 1994. .
Wired 1.02, "Is Advertising Really dead?, Part 2," 1994. .
Hugh Barnes, memo to Henry LaMuth, subject: George Gilder articles, May 31, 1994. .
Daniel J. Weitzner, A Statement on EFF's Open Platform Campaign as of Nov., 1993, 3 pages. .
"Serving the Community: A Public-Interest Vision of the National Information Infrastructure," Computer Professionals for Social Responsibility, Executive Summary, no date. .
Steven Schlossstein, International Economy, "America: The G7's Comeback Kid," Jun./Jul. 1993. .
Lance Rose, "Cyberspace and the Legal Matrix: Laws or Confusion?," 1991. .
"Cable Television and America's Telecommunications Infrastructure," National Cable Television Association, Apr. 1993. .
Adele Weder, "Life on the Infohighway," 4 pages, no date. .
T. Valovic, Telecommunications, "The Role of Computer Networking in the Emerging Virtual Marketplace," pp. 40-44. .
Dr. Joseph N. Pelton, Telecommunications, "Why Nicholas Negroponte is Wrong About the Future of Telecommunication," pp. 35-40, Jan. 1993. .
Nicholas Negroponte, Telecommunications, "Some Thoughts on Likely and expected Communications scenarios: A Rebuttal," pp. 41-42, Jan. 1993. .
Tom Stephenson, Advanced Imaging, "The Info Infrastructure Initiative: Data SuperHighways and You," pp. 73-74, May 1993. .
Steve Rosenthal, New Media, "Mega Channels," pp. 36-46, Sep. 1993. .
News Release, The White House, Office of the President, "Background on the Administration's Telecommunications Policy Reform Initiative," Jan. 11, 1994. .
Steve Rosenthal, New Media, "Interactive Network: Viewers Get Involoved," pp. 30-31, Dec. 1992. .
Steve Rosenthal, New Media, "Interactive TV: The Gold Rush Is On," pp. 27-29, Dec. 1992. .
EFFector Online vol. 6 No. 6, "A Publication of the Electronic Frontier Foundation," 8 pages, Dec. 6, 1993. .
Mike Lanza, electronic mail, "George Gilder's Fifth Article -- Digital Darkhorse -- Newspapers," Feb. 21, 1994. .
Steven Levy, Wired, "E-Money, That's What I Want," 10 pages, Dec. 1994. .
Keven Kelly, Whole Earth Review, "E-Money,"pp. 40-59, Summer 1993. .
Green paper, "Intellectual Property and the National Information Infrastructure, a Preliminary Draft of the Report of the Working Group on Intellectual Property Rights," Jul. 1994. .
Communications of the ACM, "Intelligent Agents," Jul. 1994, vol. 37, No. 7. .
"Encapsulation: An Approach to Operating System Security," Bisbey, II et al., Oct. 1973, pp. 666-675. .
"Encryption Methods in Data Networks," Blom et al., Ericsson Technics, No. 2, 1978, Stockholm, Sweden. .
First CII Honeywell Bull International Symposium on Computer Security and Confidentiality, Jan. 26-28, 1981, Conference Text, pp. 1-21. .
Codercard, Spec Sheet -- Basic Coder Subsystem, No date given. .
"Micro Card" -- Micro Card Technologies, Inc., Dallas, Texas, No date given. .
"A Method of Software Protection Based on the Use of Smart Cards and Cryptographic Techniques," Scnaumueller-Bichl et al., No date given. .
.vertline. "The New Alexandria" No. 1, Alexandria Institute, pp. 1-12, Jul.-Aug. 1986. .
Denning et al., "Data Security," 11 Computing Surveys No. 3, Sep. 1979. .
Kent, "Protecting Externally Supplied Software in Small Computers" (MIT/LCS/TR-255 Sep. 1980). .
Proceedings of the IEEE, vol. 67, No. 3, Mar. 1979, "Privacy and Authentication: An Introduction to Cryptography," Whitfield Diffie and Martin E. Hellman, pp. 397-427. .
Digest of Papers, VLSI: New Architectural Horizons, Feb. 1980, "Preventing Software Piracy With Crypto-Microprocessors," Robert M. Best, pp. 466-469. .
IEEE Transactions on Information Theory, vol. 22, No. 6, Nov. 1976, "New Directions in Cryptography," Whitfield Diffie and Martin E. Hellman, pp. 644-651. .
Low, et al., "Anonymous Credit Cards," AT&T Bell Laboratories, Proceedings of the 2nd ACM Conference on Computer and Communication Security, Fairfax, Virginia, Nov. 2-4, 1994. .
Ivgar et al., "Cryptography: It's Not Just For Electronic Mail Anymore," CMU-CS-93-107, School of Computer Science Carnegie Mellon University, Pittsburgh, Pennsylvania, Mar. 1, 1993. .
Smith, et al., "Signed Vector Timestamps: A Secure Protocol for Partial Order Time," CMU-93-116, School of Computer Science Carnegie Mellon University, Pittsburgh, Pennsylvania, Oct. 1991; version of Feb. 1993. .
Kristol et al., "Anonymous Internet Mercantile Protocol," AT&T Bell Laboratories, Murray Hill, New Jersey, Draft: Mar. 17, 1994. .
Low et al., "Document Marking and Identification using both Line and Word Shifting," AT&T Bell Laboratories, Murray Hill, New Jersey, Jul. 29, 1994. .
Low et al., "Anonymous Credit Cards and its Collusion Analysis," AT&T Bell Laboratories, Murray Hill, New Jersey, Oct. 10, 1994. .
Ryoichi Mori and Masaji Kawahara, The Transactions of the Eieice, V, "Superdistribution: The Concept and the Architecture," E73 (Jul. 1990), No. 7, Tokyo, Japan. .
Argent Information Q&A Sheet, http://www.digital-watermark.com/, Copyright 1995, The DICE Company, 7 pages. .
Struif, Bruno "The Use of Chipcards for Electronic Signatures and Encryption" in: Proceedings for the 1989 Conference on VSLI and Computer Peripherals, IEEE Computer Society Press, 1989, pp. 4/155-4/158. .
Dusse, Stephen R. and Burton S. Kaliski "A Cryptographic Library for the Motorola 56000" in Damgard, I. M., Advances in Cryptology-Proceedings EUROCRYPT 90, Springer-Verlag, 1991, pp. 230-244. .
DSP56000/DSP56001 Digital Signal Processor User's Manual, Motorola, 1990, p. 2-2. .
Rankine, G., "Thomas -- A Complete Single-Chip RSA Device," Advances in Cryptography, Proceedings of CRYPTO 86, pp. 480-487 (A.M. Odlyzko Ed., Springer-Verlag 1987). .
Guillou, L.: "Smart Cards and Conditional Access", pp. 480-490 Advances in Cryptography, Proceedings of EuroCrypt 84 (Beth et al, Ed., Springer-Verlag 1985). .
Dyson, Esther, "Intellectual Value," Wired Magazine, Jul. 1995, pp. 136-141 and 182-184. .
IBM Technical Disclosure Bulletin, "Multimedia Mixed Object Envelopes Supporting a Graduated Fee Scheme via Encryption," vol. 37, No. 03, Mar. 1994, Armonk, NY. .
IBM Technical Disclosure Bulletin, "Transformer Rules for Software Distribution Mechanism-Support Products," vol. 37, No. 04B, Apr. 1994, Armonk, NY. .
Suida, Karl, Mapping New Applications Onto New Technologies, "Security Services in Telecommunications Networks," Mar. 8-10, 1988, Zurich. .
Portland Software's ZipLock, Internet information, Copyright Portland Software, 1996-1997, 12 pages..~
Primary Examiner:
Barron, Jr.; Gilberto
Attorney, Agent or Firm:
Nixon & Vanderhye P.C.
Parent Case Text
This is a divisional of Ser. No. 08/388,107, filed Feb. 13, 1995, abandoned .
Claims
We claim:
1. A process which takes place in an apparatus including a secure processing unit, comprising the following steps:
accessing a first record containing information directly or indirectly identifying one or more elements of a first component assembly, at least one of said elements including at least some executable programming;
using said information to identify and locate said one or more elements;
said step of identifying and locating one or more elements includes locating one or more load modules, said load module(s) locating step comprising:
searching in at least one memory of said secure processing unit to determine whether at least one of said one or more load modules is located in said memory;
if at least one of said one or more load modules is located in a memory of said secure processing unit, loading and using said load module without decrypting said load module; and
if at least one of said one or more load modules is located outside of a memory of said secure processing unit, decrypting said load module prior to use of said load module;
accessing said located one or more elements;
securely assembling said one or more elements to form at least a portion of said first component assembly; and
executing at least some of said executable programming.
2. A process as in claim 1 in which at least one memory of said secure processing unit contains at least one load module relating to a budget method.
3. A process as in claim 1 in which at least one memory of said secure processing unit contains at least one load module relating to a billing method.
4. A process as in claim 1 in which at least one memory of said secure processing unit contains at least one load module relating to an audit method.
5. A process as in claim 1 in which at least one memory of said secure processing unit contains at least one load module relating to an aggregate method comprising budgeting, billing and auditing functions.
6. A process comprising the following steps:
accessing a first record containing information directly or indirectly identifying one or more elements of a first component assembly,
at least one of said elements including at least some executable programming,
at least one of said elements constituting a load module,
said load module including executable programming and a header;
at least a portion of said header is a public portion which is characterized by a relatively lower level of security protection; and
at least a portion of said header is a private portion which is characterized, at least some of the time, by a level of security protection which is relatively higher than said relatively lower level of security protection,
using said information to identify and locate said one or more elements;
accessing said located one or more elements;
securely assembling said one or more elements to form at least a portion of said first component assembly;
executing at least some of said executable programming; and
checking said record for validity prior to performing said executing step.
7. A process as in claim 6 in which:
said relatively lower level of security protection comprises storing said public header portion in an unencrypted state; and
said relatively higher level of security protection comprises storing said private header portion in an encrypted state.
8. A process comprising the following steps:
accessing a first record containing information directly or indirectly identifying one or more elements of a first component assembly,
at least one of said elements including at least some executable programming,
at least one of said elements constituting a load module,
said load module including executable programming and a header;
said header including an execution space identifier identifying at least one aspect of an execution space required for use and/or execution of the load module associated with said header;
said execution space identifier provides the capability for distinguishing between execution spaces providing a higher level of security and execution spaces providing a lower level of security;
using said information to identify and locate said one or more elements;
accessing said located one or more elements;
securely assembling said one or more elements to form at least a portion of said first component assembly;
executing at least some of said executable programming; and
checking said record for validity prior to performing said executing step.
9. A process as in claim 8 in which said execution space providing a higher level of security comprises a secure processing environment.
10. A process as in claim 9 in which said secure processing environment contains at least one secure processing unit.
11. A process as in claim 10 in which said execution space providing a lower level of security comprises a host event processing environment.
12. A process as in claim 11 in which said host event processing environment does not contain a secure processing unit.
13. A process as in claim 8 further comprising:
comparing said execution space identifier against information identifying the execution space in which said executing step is to occur; and
taking an action if said execution space identifier requires an execution space with a security level higher than that of the execution space in which said executing step is to occur.
14. A process as in claim 13 in which said action includes terminating said process prior to said executing step.
15. A process as in claim 14 in which said action includes failing to include said load module in said component assembly.
16. A process as in claim 15 further comprising:
following said action, attempting to locate a second load module, incorporating a second execution space identifier, for inclusion in said component assembly.
17. A process as in claim 6 in which:
said private header portion includes a check value calculated based on the contents of said public portion; and
said process further includes the step of using said check value to determine whether said public portion has been altered or replaced in an unauthorized manner.
18. A process as in claim 6 in which said private header portion includes one or more tags.
19. A process as in claim 18 in which at least one of said tags comprises an access tag.
20. A process as in claim 19 further comprising:
checking said access tag at some point before said execution step, in order to determine if use of said load module will be allowed.
21. A process as in claim 6 in which said private header portion includes one or more digital signatures.
22. A process as in claim 21 further comprising:
checking said digital signature at some point before said executing step; and
taking at least one action depending on the outcome of said checking step.
23. A process as in claim 22 in which said at least one action includes terminating said process prior to said executing step.
24. A process as in claim 22 in which said at least one action includes allowing said executing step to proceed.
25. A process as in claim 22 in which:
said at least one action includes replacing the load module containing said digital signature with a second load module, and
said process further includes incorporating said second load module into said component assembly.
26. A process as in claim 22 in which said digital signature checking step includes identifying the creator of said digital signature.
27. A process as in claim 6 in which said private header portion includes at least one check value representing at least one aspect of the state of said load module.
28. A process as in claim 27 further comprising:
comparing said check value to an expected value; and
taking at least one action based on the results of said comparison.
29. A process as in claim 28 in which said at least one action includes terminating said process prior to said executing step.
30. A process as in claim 28 in which:
said load module comprises a first load module;
at least one action includes accessing a second load module; and
said securely assembling step comprises assembling said component assembly using said second load module but not said first load module.
31. A process comprising the following steps:
accessing a first record containing information directly or indirectly identifying one or more elements of a first component assembly,
at least one of said elements including at least some executable programming consisting of at least two code segments;
a first of said code segments being written in a first programming language; and
a second of said code segments being written in a second programming language different from said first programming language,
at least one of said elements constituting a load module, said load module including executable programming;
using said information to identify and locate said one or more elements;
accessing said located one or more elements;
securely assembling said one or more elements to form at least a portion of said first component assembly;
choosing said first code segment for inclusion in said component assembly;
including said first code segment in said component assembly; and
excluding said second code segment from said component assembly;
executing at least some of said first code segment executable programming; and
checking said record for validity prior to performing said executing step.
32. A process as in claim 31, in which:
said executing step takes place in a processing environment; and
said choosing step includes identifying said first code segment as being more suited for execution at said processing environment than said second code segment.
33. A process as in claim 32 in which said step of identifying said first code segment as being more suited is based at least in part on the programming language in which said first code segment is written.
34. A process comprising the following steps:
at a first processing environment receiving a first record from a second processing environment remote from said first processing environment;
said first record containing identification information directly or indirectly identifying one or more elements of a component assembly;
at least one of said elements including at least some executable programming;
a first of said elements being designed to carry out or participate in metering of user activities;
a second of said elements being designed to carry out or participate in budgeting functions said second element specifying a credit method;
said component assembly allowing access to or use of specified information;
accessing said first record;
using said identification information to identify and locate said one or more elements;
said element locating step including locating said first element at said second processing environment and locating said second element at a third processing environment located remotely from said first processing environment and said second processing environment;
accessing said located one or more elements;
said element accessing step including retrieving said first element from said second processing environment and retrieving said second element from said third processing environment;
securely assembling said one or more elements to form at least a portion of said component assembly specified by said first record; and
executing at least some of said executable programming,
said executing step taking place at said first processing environment;
said executing step including metering use of said specified information, using said first element.
35. A process comprising the following steps:
at a first processing environment receiving a first record from a second processing environment remote from said first processing environment;
said first record being received in a secure container;
said first record containing identification information directly or indirectly identifying one or more elements of a first component assembly;
at least one of said elements including at least some executable programming;
said component assembly allowing access to or use of specified information;
said secure container also including a first of said elements;
accessing said first record;
using said identification information to identify and locate said one or more elements;
said locating step including locating a second of said elements at a third processing environment located remotely from said first processing environment and said second processing environment;
accessing said located one or more elements;
said element accessing step including retrieving said second element from said third processing environment;
securely assembling said one or more elements to form at least a portion of said first component assembly specified by said first record; and
executing at least some of said executable programming,
said executing step taking place at said first processing environment.
36. A process as in claim 35 in which:
said first element comprises a metering method; and
said executing step includes using said first element to meter use of said specified information.
37. A process as in claim 36 in which:
said second element comprises a credit method; and
said executing step includes charging against credit supplied by said credit method in return for use of said specified information.
38. A process comprising the following steps:
creating an initial channel;
after creation of said initial channel, creating a first channel;
said initial channel allocating said first channel to handle a first component assembly;
accessing a first record containing information directly or indirectly identifying one or more elements of said first component assembly, at least one of said elements including at least some executable programming;
using said information to identify and locate said one or more elements;
accessing said located one or more elements;
within said first channel, securely assembling said one or more elements to form at least a portion of said first component assembly; and
executing at least some of said executable programming.
39. A process as in claim 38 in which said step of said initial channel allocating said first channel includes:
making, with said initial channel, one or more calls to a secure database manager; and
returning, from said secure database manager, a channel blueprint from a secure database.
40. A process as in claim 39 in which said step of creating a first channel is based at least it part on said channel blueprint.
41. A process as in claim 40 in which:
said channel blueprint includes at least one tag; and
said step of creating a first channel includes checking said tag to determine the validity or suitability of said channel blueprint.
42. A process as in claim 41 in which said first channel includes a channel header.
43. A process as in claim 42 in which said step of creating a first channel includes incorporating information into said first channel header.
44. A process as in claim 43 in which said incorporated information includes user identification information.
45. A process as in claim 44 in which said incorporated information includes object identification information.
46. A process as in claim 45 in which said incorporated information includes a reference to the type of function to be processed by said first channel.
47. A process as in claim 46 in which said step of creating a first channel includes:
accessing a control method; and
binding said control method to said first channel.
48. A process as in claim 47 in which said assembling step includes binding at least one of said elements to said first channel.
49. A process as in claim 48 in which said assembling step includes said control method obtaining memory allocations required for said executing step.
50. A process as in claim 49 in which said step of accessing said one or more located elements includes accessing, with said control method, at least one of said elements from a secure database.
51. A process as in claim 50 in which said step of assembling includes calling, with said control method, an encryption manager to decrypt at least one of said elements.
52. A process as in claim 51 in which said step of assembling includes calling a tag manager with said control method, and comparing, with said tag manager, a tag contained in one of said elements with an expected value or range of values.
53. A process as in claim 52 in which:
said first channel further includes an event queue;
said method further comprising writing at least one event into said event queue.
54. A load module comprising:
a load module header including a public portion and a private portion:
said public portion including identification information;
said private portion including at least one correlation tag;
said correlation tag including information used to determine whether a method has authorization to call or load the load module; and
a load module body including:
executable programming which calls or includes:
programming which controls at least one aspect of use of at least one file, said programming calling or including programming which provides information relating to the user of said file to an external site;
said programming providing information provides such information in a summary fashion which does not include information deemed confidential by said user; and
a reference to data;
at least some of said data being associated with or used by said executable programming.
55. An operating system comprising:
component assembling programming which assembles a plurality of elements into a component, said component assembling programming including;
validation programming used to validate said elements, said validation programming including:
tag checking programming used to check the identity, validity or integrity of elements by comparing tags incorporated in said elements to expected values; and
element identification and referencing programming; and
an object switch which controls and communicates objects, said object switch including:
a stream router;
one or more stream interfaces;
a container manager used to manage secure containers;
said container manager contains programming which recognizes secure containers and performs operations on said secure containers;
buffering and storage programming; and
an object switch interface.
56. An operating system as in claim 55, in which:
said operations include:
constructing secure containers;
opening secure containers; and
routing secure containers.
57. A component assembly comprising:
a first load module and a second load module, each load module comprising:
a load module header, made up of a public portion and a private portion;
said public portion including identification information;
said private portion including at least one correlation tag;
said correlation tag including information used to determine whether a method has authorization to call or load the load module; and
a load module body, including:
executable programming which calls or includes:
programming which controls at least one aspect of use of at least one file,
said programming controlling at least one aspect of use of at least one file calls or includes programming which provides information relating to the user of said file to an external site;
said programming providing information provides such information in a summary fashion which does not include information deemed confidential by said user; and
a reference to data;
at least some of said data being associated with or used by said executable programming.
58. A component assembly comprising:
a first load module received from a first source and a second load module received from a second source remote from said first source, each load module comprising:
a load module header, made up of a public portion and a private portion;
said public portion including identification information;
said private portion including at least one correlation tag;
said correlation tag including information used to determine whether a method has authorization to call or load the load module; and
a load module body, including:
executable programming; and
a reference to data;
at least some of said data being associated with or used by said executable programming.
Description
FIELD(S) OF THE INVENTION(S)
This invention generally relates to computer and/or electronic security.
More particularly, this invention relates to systems and techniques for secure transaction management. This invention also relates to computer-based and other electronic appliance-based technologies that help to ensure that information is accessed and/or otherwise used only in authorized ways, and maintains the integrity, availability, and/or confidentiality of such information and processes related to such use.
The invention also relates to systems and methods for protecting rights of various participants in electronic commerce and other electronic or electronically-facilitated transactions.
The invention also relates to secure chains of handling and control for both information content and information employed to regulate the use of such content and consequences of such use. It also relates to systems and techniques that manage, including meter and/or limit and/or otherwise monitor use of electronically stored and/or disseminated information. The invention particularly relates to transactions, conduct and arrangements that make use of, including consequences of use of, such systems and/or techniques.
The invention also relates to distributed and other operating systems, environments and architectures. It also generally relates to secure architectures, including, for example, tamper-resistant hardware-based processors, that can be used to establish security at each node of a distributed system.
BACKGROUND AND SUMMARY OF THE INVENTION(S)
Telecommunications, financial transactions, government processes, business operations, entertainment, and personal business productivity all now depend on electronic appliances. Millions of these electronic appliances have been electronically connected together. These interconnected electronic appliances comprise what is increasingly called the "information highway." Many businesses, academicians, and government leaders are concerned about how to protect the rights of citizens and organizations who use this information (also "electronic" or "digital") highway.
Electronic Content
Today, virtually anything that can be represented by words, numbers, graphics, or system of commands and instructions can be formatted into electronic digital information. Television, cable, satellite transmissions, and on-line services transmitted over telephone lines, compete to distribute digital information and entertainment to homes and businesses. The owners and marketers of this content include software developers, motion picture and recording companies, publishers of books, magazines, and newspapers, and information database providers. The popularization of on-line services has also enabled the individual personal computer user to participate as a content provider. It is estimated that the worldwide market for electronic information in 1992 was approximately $40 billion and is expected to grow to $200 billion by 1997, according to Microsoft Corporation. The present invention can materially enhance the revenue of content providers, lower the distribution costs and the costs for content, better support advertising and usage information gathering, and better satisfy the needs of electronic information users. These improvements can lead to a significant increase in the amount and variety of electronic information and the methods by which such information is distributed.
The inability of conventional products to be shaped to the needs of electronic information providers and users is sharply in contrast to the present invention. Despite the attention devoted by a cross-section of America's largest telecommunications, computer, entertainment and information provider companies to some of the problems addressed by the present invention, only the present invention provides commercially secure, effective solutions for configurable, general purpose electronic commerce transaction/distribution control systems.
Controlling Electronic Content
The present invention provides a new kind of "virtual distribution environment" (called "VDE" in this document) that secures, administers, and audits electronic information use. VDE also features fundamentally important capabilities for managing content that travels "across" the "information highway." These capabilities comprise a rights protection solution that serves all electronic community members. These members include content creators and distributors, financial service providers, end-users, and others. VDE is the first general purpose, configurable, transaction control/rights protection solution for users of computers, other electronic appliances, networks, and the information highway.
A fundamental problem for electronic content providers is extending their ability to control the use of proprietary information. Content providers often need to limit use to authorized activities and amounts. Participants in a business model involving, for example, provision of movies and advertising on optical discs may include actors, directors, script and other writers, musicians, studios, publishers, distributors, retailers, advertisers, credit card services, and content end-users. These participants need the ability to embody their range of agreements and requirements, including use limitations, into an "extended" agreement comprising an overall electronic business model. This extended agreement is represented by electronic content control information that can automatically enforce agreed upon rights and obligations. Under VDE, such an extended agreement may comprise an electronic contract involving all business model participants. Such an agreement may alternatively, or in addition, be made up of electronic agreements between subsets of the business model participants. Through the use of VDE, electronic commerce can function in the same way as traditional commerce--that is commercial relationships regarding products and services can be shaped through the negotiation of one or more agreements between a variety of parties.
Commercial content providers are concerned with ensuring proper compensation for the use of their electronic information. Electronic digital information, for example a CD recording, can today be copied relatively easily and inexpensively. Similarly, unauthorized copying and use of software programs deprives rightful owners of billions of dollars in annual revenue according to the International Intellectual Property Alliance. Content providers and distributors have devised a number of limited function rights protection mechanisms to protect their rights. Authorization passwords and protocols, license servers, "lock/unlock" distribution methods, and non-electronic contractual limitations imposed on users of shrink-wrapped software are a few of the more prevalent content protection schemes. In a commercial context, these efforts are inefficient and limited solutions.
Providers of "electronic currency" have also created protections for their type of content. These systems are not sufficiently adaptable, efficient, nor flexible enough to support the generalized use of electronic currency. Furthermore, they do not provide sophisticated auditing and control configuration capabilities. This means that current electronic currency tools lack the sophistication needed for many real-world financial business models. VDE provides means for anonymous currency and for "conditionally" anonymous currency, wherein currency related activities remain anonymous except under special circumstances.
VDE Control Capabilities
VDE allows the owners and distributors of electronic digital information to reliably bill for, and securely control, audit, and budget the use of, electronic information. It can reliably detect and monitor the use of commercial information products. VDE uses a wide variety of different electronic information delivery means: including, for example, digital networks, digital broadcast, and physical storage media such as optical and magnetic disks. VDE can be used by major network providers, hardware manufacturers, owners of electronic information, providers of such information, and clearinghouses that gather usage information regarding, and bill for the use of, electronic information.
VDE provides comprehensive and configurable transaction management, metering and monitoring technology. It can change how electronic information products are protected, marketed, packaged, and distributed. When used, VDE should result in higher revenues for information providers and greater user satisfaction and value. Use of VDE will normally result in lower usage costs, decreased transaction costs, more efficient access to electronic information, re-usability of rights protection and other transaction management implementations, greatly improved flexibility in the use of secured information, and greater standardization of tools and processes for electronic transaction management. VDE can be used to create an adaptable environment that fulfills the needs of electronic information owners, distributors, and users; financial clearinghouses; and usage information analyzers and resellers.
Rights and Control Information
In general, the present invention can be used to protect the rights of parties who have:
(a) proprietary or confidentiality interests in electronic information. It can, for example, help ensure that information is used only in authorized ways;
(b) financial interests resulting from the use of electronically distributed information. It can help ensure that content providers will be paid for use of distributed information; and
(c) interests in electronic credit and electronic currency storage, communication, and/or use including electronic cash, banking, and purchasing.
Protecting the rights of electronic community members involves a broad range of technologies. VDE combines these technologies in a way that creates a "distributed" electronic rights protection "environment." This environment secures and protects transactions and other processes important for rights protection. VDE, for example, provides the ability to prevent, or impede, interference with and/or observation of, important rights related transactions and processes. VDE, in its preferred embodiment, uses special purpose tamper resistant Secure Processing Units (SPUs) to help provide a high level of security for VDE processes and information storage and communication.
The rights protection problems solved by the present invention are electronic versions of basic societal issues. These issues include protecting property rights, protecting privacy rights, properly compensating people and organizations for their work and risk, protecting money and credit, and generally protecting the security of information. VDE employs a system that uses a common set of processes to manage rights issues in an efficient, trusted, and cost-effective way.
VDE can be used to protect the rights of parties who create electronic content such as, for example: records, games, movies, newspapers, electronic books and reference materials, personal electronic mail, and confidential records and communications. The invention can also be used to protect the rights of parties who provide electronic products, such as publishers and distributors; the rights of parties who provide electronic credit and currency to pay for use of products, for example, credit clearinghouses and banks; the rights to privacy of parties who use electronic content (such as consumers, business people, governments); and the privacy rights of parties described by electronic information, such as privacy rights related to information contained in a medical record, tax record, or personnel record.
In general, the present invention can protect the rights of parties who have:
(a) commercial interests in electronically distributed information--the present invention can help ensure, for example, that parties, will be paid for use of distributed information in a manner consistent with their agreement;
(b) proprietary and/or confidentiality interests in electronic information--the present invention can, for example, help ensure that data is used only in authorized ways;
(c) interests in electronic credit and electronic currency storage, communication, and/or use--this can include electronic cash, banking, and purchasing; and
(d) interests in electronic information derived, at least in part, from use of other electronic information.
VDE Functional Properties
VDE is a cost-effective and efficient rights protection solution that provides a unified, consistent system for securing and managing transaction processing. VDE can:
(a) audit and analyze the use of content,
(b) ensure that content is used only in authorized ways, and
(c) allow information regarding content usage to be used only in ways approved by content users.
In addition, VDE:
(a) is very configurable, modifiable, and re-usable;
(b) supports a wide range of useful capabilities that may be combined in different ways to accommodate most potential applications;
(c) operates on a wide variety of electronic appliances ranging from hand-held inexpensive devices to large mainframe computers;
(d) is able to ensure the various rights of a number of different parties, and a number of different rights protection schemes, simultaneously;
(e) is able to preserve the rights of parties through a series of transactions that may occur at different times and different locations;
(f) is able to flexibly accommodate different ways of securely delivering information and reporting usage; and
(g) provides for electronic analogues to "real" money and credit, including anonymous electronic cash, to pay for products and services and to support personal (including home) banking and other financial activities.
VDE economically and efficiently fulfills the rights protection needs of electronic community members. Users of VDE will not require additional rights protection systems for different information highway products and rights problems--nor will they be required to install and learn a new system for each new information highway application.
VDE provides a unified solution that allows all content creators, providers, and users to employ the same electronic rights protection solution. Under authorized circumstances, the participants can freely exchange content and associated content control sets. This means that a user of VDE may, if allowed, use the same electronic system to work with different kinds of content having different sets of content control information. The content and control information supplied by one group can be used by people who normally use content and control information supplied by a different group. VDE can allow content to be exchanged "universally" and users of an implementation of the present invention can interact electronically without fear of incompatibilities in content control, violation of rights, or the need to get, install, or learn a new content control system.
The VDE securely administers transactions that specify protection of rights. It can protect electronic rights including, for example:
(a) the property rights of authors of electronic content,
(b) the commercial rights of distributors of content,
(c) the rights of any parties who facilitated the distribution of content,
(d) the privacy rights of users of content,
(e) the privacy rights of parties portrayed by stored and/or distributed content, and
(f) any other rights regarding enforcement of electronic agreements.
VDE can enable a very broad variety of electronically enforced commercial and societal agreements. These agreements can include electronically implemented contracts, licenses, laws, regulations, and tax collection.
Contrast With Traditional Solutions
Traditional content control mechanisms often require users to purchase more electronic information than the user needs or desires. For example, infrequent users of shrink-wrapped software are required to purchase a program at the same price as frequent users, even though they may receive much less value from their less frequent use. Traditional systems do not scale cost according to the extent or character of usage and traditional systems can not attract potential customers who find that a fixed price is too high. Systems using traditional mechanisms are also not normally particularly secure. For example, shrink-wrapping does not prevent the constant illegal pirating of software once removed from either its physical or electronic package.
Traditional electronic information rights protection systems are often inflexible and inefficient and may cause a content provider to choose costly distribution channels that increase a product's price. In general these mechanisms restrict product pricing, configuration, and marketing flexibility. These compromises are the result of techniques for controlling information which cannot accommodate both different content models and content models which reflect the many, varied requirements, such as content delivery strategies, of the model participants. This can limit a provider's ability to deliver sufficient overall value to justify a given product's cost in the eyes of many potential users. VDE allows content providers and distributors to create applications and distribution networks that reflect content providers' and users' preferred business models. It offers users a uniquely cost effective and feature rich system that supports the ways providers want to distribute information and the ways users want to use such information. VDE supports content control models that ensure rights and allow content delivery strategies to be shaped for maximum commercial results.
Chain of Handling and Control
VDE can protect a collection of rights belonging to various parties having in rights in, or to, electronic information. This information may be at one location or dispersed across (and/or moving between) multiple locations. The information may pass through a "chain" of distributors and a "chain" of users. Usage information may also be reported through one or more "chains" of parties. In general, VDE enables parties that (a) have rights in electronic information, and/or (b) act as direct or indirect agents for parties who have rights in electronic information, to ensure that the moving, accessing, modifying, or otherwise using of information can be securely controlled by rules regarding how, when, where, and by whom such activities can be performed.
VDE Applications and Software
VDE is a secure system for regulating electronic conduct and commerce. Regulation is ensured by control information put in place by one or more parties. These parties may include content providers, electronic hardware manufacturers, financial service providers, or electronic "infrastructure" companies such as cable or telecommunications companies. The control information implements "Rights Applications." Rights applications "run on" the "base software" of the preferred embodiment. This base software serves as a secure, flexible, general purpose foundation that can accommodate many different rights applications, that is, many different business models and their respective participant requirements.
A rights application under VDE is made up of special purpose pieces, each of which can correspond to one or more basic electronic processes needed for a rights protection environment. These processes can be combined together like building blocks to create electronic agreements that can protect the rights, and may enforce fulfillment of the obligations, of electronic information users and providers. One or more providers of electronic information can easily combine selected building blocks to create a rights application that is unique to a specific content distribution model. A group of these pieces can represent the capabilities needed to fulfill the agreement(s) between users and providers. These pieces accommodate many requirements of electronic commerce including:
the distribution of permissions to use electronic information;
the persistence of the control information and sets of control information managing these permissions;
configurable control set information that can be selected by users for use with such information;
data security and usage auditing of electronic information; and
a secure system for currency, compensation and debit management.
For electronic commerce, a rights application, under the preferred embodiment of the present invention, can provide electronic enforcement of the business agreements between all participants. Since different groups of components can be put together for different applications, the present invention can provide electronic control information for a wide variety of different products and markets. This means the present invention can provide a "unified," efficient, secure, and cost-effective system for electronic commerce and data security. This allows VDE to serve as a single standard for electronic rights protection, data security, and electronic currency and banking.
In a VDE, the separation between a rights application and its foundation permits the efficient selection of sets of control information that are appropriate for each of many different types of applications and uses. These control sets can reflect both rights of electronic community members, as well as obligations (such as providing a history of one's use of a product or paying taxes on one's electronic purchases). VDE flexibility allows its users to electronically implement and enforce common social and commercial ethics and practices. By providing a unified control system, the present invention supports a vast range of possible transaction related interests and concerns of individuals, communities, businesses, and governments. Due to its open design, VDE allows (normally under securely controlled circumstances) applications using technology independently created by users to be "added" to the system and used in conjunction with the foundation of the invention. In sum, VDE provides a system that can fairly reflect and enforce agreements among parties. It is a broad ranging and systematic solution that answers the pressing need for a secure, cost-effective, and fair electronic environment.
VDE Implementation
The preferred embodiment of the present invention includes various tools that enable system designers to directly insert VDE capabilities into their products. These tools include an Application Programmer's Interface ("API") and a Rights Permissioning and Management Language ("RPML"). The RPML provides comprehensive and detailed control over the use of the invention's features. VDE also includes certain user interface subsystems for satisfying the needs of content providers, distributors, and users.
Information distributed using VDE may take many forms. It may, for example, be "distributed" for use on an individual's own computer, that is the present invention can be used to provide security for locally stored data. Alternatively, VDE may be used with information that is dispersed by authors and/or publishers to one or more recipients. This information may take many forms including: movies, audio recordings, games, electronic catalog shopping, multimedia, training materials, E-mail and personal documents, object oriented libraries, software programming resources, and reference/record keeping information resources (such as business, medical, legal, scientific, governmental, and consumer databases).
Electronic rights protection provided by the present invention will also provide an important foundation for trusted and efficient home and commercial banking, electronic credit processes, electronic purchasing, true or conditionally anonymous electronic cash, and EDI (Electronic Data Interchange). VDE provides important enhancements for improving data security in organizations by providing "smart" transaction management features that can be far more effective than key and password based "go/no go" technology.
VDE normally employs an integration of cryptographic and other security technologies (e.g. encryption, digital signatures, etc.), with other technologies including: component, distributed, and event driven operating system technology, and related communications, object container, database, smart agent, smart card, and semiconductor design technologies.
I. Overview
A. VDE Solves Important Problems and Fills Critical Needs
The world is moving towards an integration of electronic information appliances. This interconnection of appliances provides a foundation for much greater electronic interaction and the evolution of electronic commerce. A variety of capabilities are required to implement an electronic commerce environment. VDE is the first system that provides many of these capabilities and therefore solves fundamental problems related to electronic dissemination of information.
Electronic Content
VDE allows electronic arrangements to be created involving two or more parties. These agreements can themselves comprise a collection of agreements between participants in a commercial value chain and/or a data security chain model for handling, auditing, reporting, and payment. It can provide efficient, reusable, modifiable, and consistent means for secure electronic content: distribution, usage control, usage payment, usage auditing, and usage reporting. Content may, for example, include:
financial information such as electronic currency and credit;
commercially distributed electronic information such as reference databases, movies, games, and advertising; and
electronic properties produced by persons and organizations, such as documents, e-mail, and proprietary database information.
VDE enables an electronic commerce marketplace that supports differing, competitive business partnerships, agreements, and evolving overall business models.
The features of VDE allow it to function as the first trusted electronic information control environment that can conform to, and support, the bulk of conventional electronic commerce and data security requirements. In particular, VDE enables the participants in a business value chain model to create an electronic version of traditional business agreement terms and conditions and further enables these participants to shape and evolve their electronic commerce models as they believe appropriate to their business requirements.
VDE offers an architecture that avoids reflecting specific distribution biases, administrative and control perspectives, and content types. Instead, VDE provides a broad-spectrum, fundamentally configurable and portable, electronic transaction control, distributing, usage, auditing, reporting, and payment operating environment. VDE is not limited to being an application or application specific toolset that covers only a limited subset of electronic interaction activities and participants. Rather, VDE supports systems by which such applications can be created, modified, and/or reused. As a result, the present invention answers pressing, unsolved needs by offering a system that supports a standardized control environment which facilitates interoperability of electronic appliances, interoperability of content containers, and efficient creation of electronic commerce applications and models through the use of a programmable, secure electronic transactions management foundation and reusable and extensible executable components. VDE can support a single electronic "world" within which most forms of electronic transaction activities can be managed.
To answer the developing needs of rights owners and content providers and to provide a system that can accommodate the requirements and agreements of all parties that may be involved in electronic business models (creators, distributors, administrators, users, credit providers, etc.), VDE supplies an efficient, largely transparent, low cost and sufficiently secure system (supporting both hardware/software and software only models). VDE provides the widely varying secure control and administration capabilities required for:
1. Different types of electronic content,
2. Differing electronic content delivery schemes,
3. Differing electronic content usage schemes,
4. Different content usage platforms, and
5. Differing content marketing and model strategies.
VDE may be combined with, or integrated into, many separate computers and/or other electronic appliances. These appliances typically include a secure subsystem that can enable control of content use such as displaying, encrypting, decrypting, printing, copying, saving, extracting, embedding, distributing, auditing usage, etc. The secure subsystem in the preferred embodiment comprises one or more "protected processing environments", one or more secure databases, and secure "component assemblies" and other items and processes that need to be kept secured. VDE can, for example, securely control electronic currency, payments, and/or credit management (including electronic credit and/or currency receipt, disbursement, encumbering, and/or allocation) using such a "secure subsystem."
VDE provides a secure, distributed electronic transaction management system for controlling the distribution and/or other usage of electronically provided and/or stored information. VDE controls auditing and reporting of electronic content and/or appliance usage. Users of VDE may include content creators who apply content usage, usage reporting, and/or usage payment related control information to electronic content and/or appliances for users such as end-user organizations, individuals, and content and/or appliance distributors. VDE also securely supports the payment of money owed (including money owed for content and/or appliance usage) by one or more parties to one or more other parties, in the form of electronic credit and/or currency.
Electronic appliances under control of VDE represent VDE `nodes` that securely process and control; distributed electronic information and/or appliance usage, control information formulation, and related transactions. VDE can securely manage the integration of control information provided by two or more parties. As a result, VDE can construct an electronic agreement between VDE participants that represent a "negotiation" between, the control requirements of, two or more parties and enacts terms and conditions of a resulting agreement. VDE ensures the rights of each party to an electronic agreement regarding a wide range of electronic activities related to electronic information and/or appliance usage.
Through use of VDE's control system, traditional content providers and users can create electronic relationships that reflect traditional, non-electronic relationships. They can shape and modify commercial relationships to accommodate the e