`
`US 8,566,960 B2
`(10) Patent No.:
`(12) Unlted States Patent
`
`Richardson
`(45) Date of Patent:
`Oct. 22, 2013
`
`(54
`
`(75
`
`(73
`
`( *
`
`(21
`(22
`
`(65
`
`
`
`SYSTEM AND METHOD FOR ADJUSTABLE
`LICENSING OF DIGITAL PRODUCTS
`
`.
`.
`.
`Inventor: Rlc B. Rlchardson, Irv1ne, CA (US)
`.
`A551gnee: Uniloc Luxembourg S.A., Luxembourg
`(LU)
`
`Notice:
`
`Subject. to any (gsglaimeé, the tiermdofthis
`patent IS exten e or a Juste un er 35
`U.S.C.154b b 466d
`.
`( ) y
`ays
`
`4,446,519 A
`4,458,315 A
`4,471,163 A
`4,484,217 A
`4,593,353 A
`4,593,376 A
`4,599,489 A
`4,609,777 A
`4,646,234 A
`2
`4,683,553 A
`
`5/1984 Thomas
`7/1984 Uchenlck
`9/1984 Donaldet a1.
`11/1984 Block et a1.
`6/1986 Pickholtz
`6/1986 Volk
`7/1986 Cargile
`9/1986 Cargile
`2/1987 Tolman et a1.
`3512:; 31'
`7/1987 Mollier
`(Continued)
`
`Appl‘ NO‘: 12/272570
`Filed:
`Nov. 17, 2008
`
`Prior Publication Data
`US 2009/0138975 A1
`M 28 2009
`ay
`’
`
`FOREIGN PATENT DOCUMENTS
`678985
`6/1997
`10155 755 A1
`5/2003
`
`AU
`DE
`
`.
`(Continued)
`
`OTHER PUBLICATIONS
`
`Related U-S- Application Data
`
`“Technical Details on Microsoft Product Activation for Windows
`
`(60) Provisional application No. 60/988,778, filed on Nov.
`17, 2007.
`
`XP’
`
`Internet Cltatlon’ XP002398930’ Aug' 13’ 2001'
`(Continued)
`
`(51)
`
`Int. Cl.
`G06F 21/00
`(52) US. Cl.
`USPC ................. .. 726/32; 726/27; 726/28; 726/29;
`726/33; 713/165; 713/166; 713/167; 380/201;
`380/227
`
`(2013.01)
`
`(58) Field of Classification Search
`USPC ...... .. 726/27, 28, 29, 30, 31, 32, 33; 713/165,
`713/166, 167; 705/57, 58, 59; 380/201,
`380/227, 23(L234
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`
`U8. pATENT DOCUMENTS
`
`4,278,837 A
`4,351,982 A
`
`7/1981 Best
`9/1982 Miller et a1.
`
`Primary Examiner 7 Kambiz Zand
`Assistant Examiner 7 Ali Shayanfar
`(74) Attorney, Agent, or Firm 7 Sean D. Burdick
`
`(57)
`
`ABSTRACT
`
`Techniques are provided for adjusting the number of devices
`allowed to use a digital product (e. g., software) under a
`license. In one embodiment, the technique may involve set-
`ting the allowed number of devices to a first upper/lower limit
`for a first time period, and, after the first time period has
`expired, increasing/lowering the allowed number of devices
`to a second upper/lower limit for a second time period. The
`technique may involve, readjusting the allowed number for a
`third time period, thereby allowing for a changing number of
`device installations of the digital product.
`
`25 Claims, 5 Drawing Sheets
`
`
`
`1
`
`1
`;
`‘
`
`Mg
`m
`:Mmmbn mm.“
`n
`
`1
`
`GOOGLE 1001
`
`
`"""""""""""""""""""
`''''‘"3
`fem'""'$5311.;MW"'7' '''''''
`mm
`Device
`
`imamm mauqu
`
`1
`
` =, 1
`
`
`1
`
`
`
`l
`:
`E
`s
`Raqusauur
`1
`1‘:
`|
`
` mm
`_
`Aulhorltlmn
`:
`1
`,
`Amw 1
`* mam
`1
`
`
`'
`
`
`
`
`
`
`
`
`Dyermmat
`leeme1m"
`
`
`um"Mtfiad of
`
`‘— mmmum
`
`
`+._.A..__
`
`
`
`arwamedm
`Lloume am“
`
`
`
`
`
`
`
`
`
`maw
`
`u
`
`GOOGLE 1001
`
`1
`
`
`
`US 8,566,960 B2
`
`Page 2
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,685 055 A
`4,688,169 A
`4,704:610 A
`4,712,238 A
`4,740,890 A
`4,791,565 A
`4,796,220 A
`4,864 494 A
`4,888,798 A
`4,903,296 A
`4,924,378 A
`4,937,863 A
`4959 861 A
`4,982,430 A
`4,999,806 A
`5,014,234 A
`5,033,084 A
`5,034,980 A
`5,081,676 A
`5,083,309 A
`5,103,476 A
`5,109,413 A
`5 113 518 A
`5:146:575 A
`5,199,066 A
`5,210,795 A
`5,222,133 A
`5,222,134 A
`5,259,029 A
`5260999 A
`5,287,408 A
`5291598 A
`5 319 705 A
`5:337:357 A
`5,341,429 A
`5 343 526 A
`5375240 A
`5390297 A
`5,414,269 A
`5,418,854 A
`5,440,635 A
`5,490,216 A
`5 495 411 A
`5:509’070 A
`5,548:645 A
`5,559,884 A
`5 579 222 A
`5:666’4 15 A
`5,703:951 A
`5,745,879 A
`5,754,763 A
`5,754 864 A
`5,790:664 A
`5,835,911 A
`5,893,910 A
`5,925,127 A
`5,940,504 A
`5956505 A
`5974150 A
`6,006,190 A
`6,009,401 A
`6 029 141 A
`6’044’471 A
`6:049:789 A
`6,070,171 A
`6,101,606 A
`6,134,659 A
`6,158,005 A
`6,169,976 B1
`6,189,146 B1
`6,226,747 B1
`6,230,199 B1
`6,233,567 B1
`6,236,971 B1
`6,243,468 B1
`
`
`
`8/1987 Thomas
`8/1987 Joshi
`11/1987 Smith et 3.
`12/1987 Gilhousen et a1.
`4/1988 Wi11iam
`12/1988 Dunham et a1.
`1/1989 Wolfe
`9/1989 Kobus Jr.
`12/1989 Earnest
`2/1990 Chandra et a1.
`5/1990 Hershey et al.
`6/1990 Robert 61,11.
`9/1990 Howlette
`1/1991 Frezza et a1.
`3/1991 Chemow 61211.
`5/1991 Edwards, Jr.
`7/1991 Beecher
`7/1991 Kubota
`1/1992 Chou et a1.
`1/1992 Beysson
`4/1992 Waite 6131.
`4/1992 Comerford etal.
`5/1992 Durst et 31.
`9/1992 Nolan Jr.
`3/1993 Logan,
`5/1993 Lipner et a1.
`6/1993 Chou et a1.
`6/1993 Waite 6131.
`11/1993 Duncan, Jr.
`11/1993 Wyman
`2/1994 Samson
`3/1994 Grundy
`6/1994 Haher e131.
`8/1994 Chou 6131.
`8/1994 Stringer 61211.
`8/1994 Lassers
`12/1994 Grundy
`2/1995 Barber 61,11.
`5/1995 Takahashi
`5/1995 Kaufman 6131.
`8/1995 Bellovin et a1.
`2/1996 Richardson, 111
`2/1996 Ananda
`4996 Schull
`8/1996 Ananda
`9/1996 Davidson 6131.
`11/1996 Bains e131.
`9/1997 Kaufman
`12/1997 13011511111
`4/1998 Wyman
`5/1998 Bereiter
`5/1998 H111
`8/1998 C01ey e131.
`11/1998 Nakagawa 61211.
`4/1999 Martineau 61211.
`7/1999 Ahmad ......................... .. 726/31
`8/1999 Grisw01d
`9/1999 Mandu1ey
`10/1999 Kaish et a1.
`12/1999 Baena-Arnaiz et a1.
`12/1999 Horstmann
`2/2000 Bezos 6131.
`3/2000 ColV1n
`4/2000 Prison et 31.
`5/2000 Snyder 6131.
`8/2000 Diersch e131.
`10/2000 Sprong et al,
`12/2000 Bharathan et a1.
`1/2001 Colosso
`2/2001 Misra et al.
`5/2001 Larsson et a1.
`5/2001 Revashettiet a1.
`5/2001 Cohen
`5/2001 Stefik et al.
`6/2001 Pearce et a1.
`
`6,294,793 B1
`6,327,617 B1
`6,330,670 B1
`6,343,280 B2
`6,363,486 B1
`6,449,645 B1
`6,467,088 B1
`6,536,005 B1
`6,557,105 B1
`6,587,842 Bl
`6,697,948 B1
`6,785,825 B2
`6329-596 Bl
`6,857,078 132
`6859793 Bl
`6,880,086 B2
`6,920,567 B1
`6,976,009 B2
`7,020,635 B2
`7,024,696 Bl
`7,032,110 B1
`7,069,440 B2
`7,069,595 B2
`7,085,741 B2
`7,146,645 B1
`7,188,241 132
`7,203,966 B2
`7,206,765 B2
`7,228,567 B2
`7,272,728 B2
`7,313,828 B2
`7,319,987 B1
`7,327,280 B2
`7,328,453 B2
`7,337,147 B2
`7,343,297 B2
`7,463,945 B2
`7,644,442 B2
`7,653,899 B1
`7,676,804 B2
`7,870,273 B2
`7,890,950 B1
`7,908,662 B2
`7,912,787 B2
`8,229,858 Bl
`2001/0034712 A1
`2001/0044782 A1
`2002/0019814 A1
`2002/0069172 A1
`2002/0082997 A1
`2002/0152395 A1
`2002/0152401 A1
`2002/0161718 A1
`2003/0046566 A1
`2003/0065918 A1
`2003/0125975 A1
`2003/0172035 A1
`2003/0200541 A1
`2004/0009815 A1
`2004/0024860 A1
`2004/0030912 A1
`2004/0039916 A1
`2004/0059929 A1
`2004/0059938 A1
`2004/0066417 A1
`2004/0143746 A1
`2004/0148525 A1
`2004/0152516 A1
`2004/0177354 A1
`2004/0187018 A1
`2004/0221169 A1
`2004/0249763 A1
`2005/0027657 A1
`2005/0069129 A1
`2005/0071280 A1
`2005/0076334 A1
`2005/0108173 A1
`2005/0138155 A1
`2005/0165693 A1
`
`9/2001 Brunfeld et a1.
`12/2001 Fawcett
`12/2001 England et al.
`1/2002 Clark
`3/2002 Knapton,III
`9/2002 Nash
`10/2002 alSafadi et a1.
`3/2003 Augarten
`4/2003 Tardo et a1.
`7/2003 Watts
`2/2004 Rabin et al.
`8/2004 Colvin
`12/2004 Frazee
`20005 C01VII}
`2/2005 Lamblase
`4/2005 Kldder et a1.
`7/2005 Doherty etal~
`12/2005 Tadayon etal.
`3/2006 Hamilton et a1.
`4/2006 Bahar
`4/2006 Su etal.
`6/2006 Aull
`6/2006 Cognignietal.
`8/2006 Lao et a1.
`12/2006 Hellsten et a1.
`30007 Crone? ML
`4/2007 Abburl et a1.
`4/2007 Gilliam et a1.
`6/2007 Serkowski et a1.
`9/2007 Pierson et a1.
`12/2007 Holopainen
`1/2008 Hoffman et 211.
`2/2008 Bachelder et al.
`2/2008 Merkle et al.
`2/2008 Chen et al.
`3/2008 Bergler et a1.
`12/2008 Kiesel et al.
`1/2010 Miller et a1.
`1/2010 Lindahl et a1.
`3/2010 Ferguson et al.
`1/2011 Watson et al.
`2/2011 Nanavati et a1.
`3/2011 Richardson
`3/2011 Sakakihara et a1.
`7/2012 Mazza etal.
`10/2001 ColV1n
`11/2001 Hughes et a1.
`2/2002 Ganesan
`6/2002 Omshehe et a1.
`6/2002 Kobata et a1.
`10/2002 Zhang et al.
`10/2002 Zhang et a1.
`10/2002 Coley et al.
`3/2003 Holopainen
`4/2003 Willey
`7/2003 Danz et a1.
`9/2003 Cronce et al.
`10/2003 Cheng et a1.
`1/2004 Zotto et al.
`2/2004 Sato etal~
`2/2004 Merkle, Jr. et al.
`2/2004 Aldis et al.
`3/2004 Rodgers et a1.
`3/2004 Hughes et al~
`4/2004 Anabukiet a1.
`7/2004 Ligeti et a1.
`7/2004 Aida et a1.
`8/2004 Blatter et a1.
`9/2004 Gunyakti et a1.
`9/2004 Owen et a1.
`11/2004 Lee et a1.
`12/2004 Vardi
`2/2005 LeontieV et a1.
`3/2005 Ho et a1.
`3/2005 Irwin et a1.
`4/2005 Demeyer
`5/2005 Stefik et a1.
`6/2005 Lewis
`7/2005 Morritzen et a1.
`
`............. .. 345/848
`
`2
`
`
`
`US 8,566,960 B2
`
`Page 3
`
`(56)
`
`References Cited
`
`
`U.S. PATENT DOCUMENTS
`
`2005/0172280 A1
`2005/0262498 A1
`2005/0278395 A1
`2005/0289072 A1
`2006/0048236 A1
`2006/0064756 A1
`2006/0072444 A1
`2006/0095454 A1
`2006/0161914 A1
`2006/0190403 A1
`2006/0242081 A1
`2006/0265337 A1
`
`2006/0282511 A1
`2007/0143228 A1
`2007/0150418 A1
`2007/0162395 A1
`2007/0168288 A1
`2007/0198422 A1
`
`2007/0300308 A1
`2008/0065552 A1
`2008/0086423 A1
`zoos/0141378 A1
`igggfigijgggg :1
`zoos/0172300 A1
`2008/0228578 A1
`2008/0244754 A1
`2008/0247731 A1
`2008/0289050 A1
`2008/0320607 A1
`
`2009/0083730 A1
`2009/0138643 A1
`2009/0165080 A1
`2009/0228982 A1
`2010/0057703 A1
`
`20 13/0007892 A1
`
`.............. .. 726/28
`
`8/2005 Ziegler et a1.
`11/2005 Ferguson et a1.
`12/2005 Sandaire
`12/2005 Sabharwal
`3/2006 Multerer et a1.
`3/2006 Ebert
`4/2006 En el et al.
`5/2006 Shagnkar et a1.
`7/2006 Morrison et a1.
`8/2006 Lin et 31.
`10/2006 Ivanov et al.
`11/2006 Wesinger, Jr.
`gfliilgélffg: ........... H 726/28
`12/2006 Takano et a1.
`............... N 709/217
`6/2007 Jorden et a1.
`6/2007 Ben-Menahem et al,
`7/2007 Ben-Yaacov et a1.
`7/2007 Bozeman
`8/2007 Prahlafi et 31'
`523:2? al'
`
`12/2007 Mishum
`3/2008 Elazar et a1.
`4/2008 WaiteS
`6/2008 McLean
`$883 3:301:35
`7/2008 Karki et a1. '
`9/2008 Mashinsky
`10/2008 Curren
`10/2008 Yamauchi et al.
`11/2008 Kawamoto et a1.
`12/2008 RIChardson
`gaifgilal et al.
`3/2009 Richardson
`5/2009 Charles et 31.
`6/2009 Fahn et a1.
`9/2009 Kobayashi et a1.
`3/2010 Blallfit et al'
`3211'
`'
`
`“2013 Inooka
`
`FOREIGN PATENT DOCUMENTS
`
`Eg
`EP
`Ep
`EP
`JP
`
`i
`1 637 958
`1 637 961
`1 670 188 A2
`4 369 068
`
`3/2006
`3/2006
`6/2006
`12/1992
`
`W0
`WC
`W0
`WC
`
`W0
`W0
`W0
`W0
`W0
`W0
`
`WO 92/09160
`9220022
`9301550
`9535533
`
`98/42098
`0067095
`W0 00/72119
`2005/ 104686 A2
`2007/060516 AZ
`2008013504
`
`5/ 1992
`11/1992
`“1993
`12/1995
`
`9/1998
`11/2000
`11/2000
`11/2005
`50007
`“2008
`
`OTHER PUBLICATIONS
`_
`_
`_
`_
`_
`International Search Report and Written Opinion for corresponding
`International Application No. PCT/US2008/083809 dated Apr. 29,
`2009, total 14 pages.
`Angha et al., Securing Transportation Network Infrastructure with
`Patented Technology of Device LockingiDeveloped by Uniloc
`USA;
`http://www.dksassociates.corn/admin/paperfile/
`ITS%20World%20Paper%20Submission,Uniloc% 2072,.pdf;
`Oct. 24, 2006.
`Econolite; Econolite and Uniloc Partner to Bring Unmatched Infra-
`structure Security to Advanced Traffic Control Networks with
`Launch
`of StrongPoint;
`http://www.econolite.com/docs/press/
`
`Wikipedia: “Software Extension,” May 28, 2009, Internet Article
`retrieved on Oct. 11, 2010. XP002604710.
`Williams et al., “Web Database Applications with PHP & MySQL,”
`O’Reilly Media Chapter 1. DatabaseApplications and the Web Mar.
`2002, Internet Article retrieved on Sep. 21, 2010. XP002603488.
`Williams, R., “A Painless Guide to CRC Error Detection Algo-
`rithms,” Aug. 13, 1993, 33 pages, www.ross.net/crc/download/crc,
`V3.96.
`Osgood, David, Letter to Rhythms Researcher, Mini-Mitter Co., Inc.,
`after 1990, 2 pgs.
`Corcoran et al., “Techniques for Securing Multimedia Content in
`Consumer Electronic Appliances using Biometrics Signatures,”
`Transactions on Consumer Electronics, vol. 51, No. 2, pp. 545-551.
`Microsoft Corporation, “Operations Guide: Microsoft Systems Man-
`agement Server 2003,” 2003, Internet Citation retrieved on Jun. 27,
`2007. XP 002439673.
`Rivest, R. “RFC 13217The MD5 Message Digest Algorithm,” Apr.
`1992, Retrieved from the Internet on Jul. 21, 2005.
`Ye, Ruopeng, “Authenticated Software Update,” A Dissertation Sub—
`mitted to the College ofComputer and Information Science ofNorth—
`easter University in Partial Fulfillment of the Requirements for the
`Degree ofDoctor ofPhisosophy in Computer Science, Apr. 28, 2008.
`Wikberg, Michael, “Software License Management from System-
`Intergrator Viewpoint,” Master’s Thesis for a Degree for Computer
`Science and Engineering, School of Science and Technology, Aalto
`University, Helsinki, Apr. 30, 2010.
`
`* cited by examiner
`
`3
`
`
`
`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 1 of5
`
`US 8,566,960 B2
`
`Exempie License Rules
`
`License altews:
`
`- 5 devices to be added within the first 5
`
`days of the initiai authorization date and
`time.
`
`for devices aiready authorized.
`
`- 7 devices to be added within the first
`
`30 days of the initiai authorization date
`and time.
`
`- 11 devices to be aliewed in total.
`
`° Indefinite numbers of re~euthorizatione
`
`Figure 1
`
`4
`
`
`
`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 2 of5
`
`US 8,566,960 B2
`
`i I i I I l I
`
`E I I 7
`
`I
`
`1
`
`r f
`
`l I l I I l I i z 1 I i l I I l I I I l l '- l I I l I l I I I I I
`
`‘L:
`
`r'ra",g:01‘5.5
`
`“it
`
`>1
`
`C
`
`E}34QEI
`
`M
`
`i :
`
`I g
`
`I ‘
`
`l
`
`I 2
`
`GI
`
`1
`
`Authorization
`denied
`
`
`
`
`
`_-_,-V_________-______4,---_-_-.L-_-____-_2__,-,____
`
`
`
`22
`
`,,,,..
`
`25
`
`User warned of
`License limit
`
`mJ: :lmi2.::3:mI
`32:":#13|orEA
`|.....:8!
`!mIOI
`304'
`I
`
`Device
`License
`
`
`
`0
`.
`identity
`
`Inf rmatim
`
` Authorization
`
`
`
`
`Device
`
`
`
`Authorized to
`
`
`run
`
`
`Request for
`Authorization
`
`
`.
`License info
`checked
`
`Database
`
`consulted
`
`
`
`ls
`
`
`Pie-Authorization
`device identity
`
`
`on record?
`Allowed
`
`No
`
`i
`
`
`
`
`
`
`_.“3____-_-H-_____-----g_-____m-_r__-____-_____‘___-_
`
`
`
`
`Days
`since 13‘
`
`
`authorization
`
`<6
`
`E
`
`
`
`
`
`
` since 15‘-t
`
`authorization
`
`
`«:31
`26
`
`3N0
`
`
`Days
`since 15g
`
`authorization
`>30
`
`34
`
`j
`
`1
`
`
`
`usefiéggfd of
` Authorization
`
`
`
`denied
`exceeded ‘
`Device
`
`
`Authorized to
`
`
`run
`
`
`
`User warned of
`
`License iimit
`
`User notified of
`Authorization
`
`
`license
`exceeded
`denied
`
` Device
`
`Authorized to
`
`
`run
`3‘5
`
`
`User warned of
`
`License limit
`
`
`
`User notified of
` Authorization
`license
`
`denied
`exceeded
`
`
`
`
`
`
`
`
`Figure 2
`
`5
`
`
`
`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 3 of5
`
`US 8,566,960 B2
`
`300
`
`Receive a request for authorization to use the digital product on a
`
`given device
`
`310
`
`320
`
`Verify that a license data associated with the digital product is valid
`based at least in part on a device identity associated with the given
`
`device
`
`330
`
`in response to the device identity already being on a record, ailow the
`
`digital product to be used on the given device
`
`340
`
`in response to the device identity not being on the record, set the
`allowed cepy count to a first upper iimit for a first time period after an
`
`initial authorization of the digital product
`
`Calculate a device count corresponding to totai number of devices
`
`aireedy authorized for use with the digital product
`
`350
`
`When the caicuieted device count is iees then the first upper limit,
`
`allow the digital product to be used on the given device.
`
`360
`
`Figure 3A
`
`6
`
`
`
`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 4 of5
`
`US 8,566,960 B2
`
`in response to the device identity not being on the record, after the first
`time period has expired, set the allowed copy count to a second upper
`
`limit for a second time period
`
`370
`
`Recalculate the device ocunt
`
`372
`
`374
`
`When the recalculated device count is tees than the second upper limit,
`
`allow the digitei product to be used on the given device
`
`in response to the device identity not being on the record, after the
`second time period has expired, set the allowed copy count to a third
`
`upper limit
`
`380
`
`Recalculate the device count
`
`382
`
`384
`
`When the recalculated device count is less than the third upper limit,
`
`allow the digital product to be used on the given device
`
`Figure SB
`
`7
`
`
`
`U.S. Patent
`
`Oct. 22, 2013
`
`Sheet 5 of5
`
`US 8,566,960 B2
`
`400
`
`450
`
`Means for verifying that a license data
`
`associated with the digital product is
`vaiid based at least in part on a device
`
`440
`
`460
`
`.
`Means for, in response to the demos
`
`identity already being on a record,
`
`allowing the digital product to be used
`
`on the given device
`
`470
`
`device identity not being on
`the record, setting the
`
`allowed copy count to a first
`
`upper limit for a first time
`
`period after an initial
`
`authorization of the digital
`
`identity associated with the given device Means for. in response to the
`product
`the digital product
`
`480
`
`-
`
`Means for calculating a device count
`
`corresponding to total number of
`
`devices already authorized for use with
`
`49C}
`
`allowing the digital product to be used
`
`Means for. when the calcutated device
`
`count is tees than the first upper limit,
`
`on the given device
`
`Figure 4
`
`8
`
`
`
`US 8,566,960 B2
`
`1
`SYSTEM AND METHOD FOR ADJUSTABLE
`LICENSING OF DIGITAL PRODUCTS
`
`CROSS-REFERENCE TO RELATED
`
`APPLICATION(S)
`
`This application claims priority pursuant to 35 U.S.C. §1 19
`(e) to US. Provisional Application No. 60/988,778, entitled
`“SYSTEM FOR ADJUSTABLE DIGITAL LICENSING
`
`OVER TIME,” filed Nov. 17, 2007, which application is
`specifically incorporated herein, in its entirety, by reference.
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`
`The present application relates generally to managing soft-
`ware use, and more specifically to systems and methods to
`enable the monitoring and adjusting software usage under a
`software license.
`
`2. Description of the Related Art
`A common capability of digital product license systems is
`the ability to control how many devices are allowed to be used
`with each product license which is usually sold to an indi-
`vidual customer or company. For example US. Pat. No.
`5,490,216 refers to a system where a license is given to an
`individual, but in turn that license is linked to a specific
`personal computer thereby limiting the copyright holders
`exposure to copyright abuse if the user decided to share their
`license with other unauthorized users.
`
`A problem that has arisen over time is the fact that con-
`sumers of software have normal patterns of use that include
`the installation and use of digital products on multiple
`devices. For example a person may wish to buy software and
`use it on three computers at their home, a computer at work,
`a mobile computer and the computers at their holiday home
`and their parent’s house. In addition to these uses, computers
`are also bought, sold and replaced so over time maybe two or
`three times this number of computers may be used by the user
`over time with a legitimate need to install and use the software
`on every computer.
`Publishers of digital products have a dilemma in that they
`may want their customers to receive the normal freedom to
`use the software that they have purchased but they also do not
`want the software licenses to be freely shared amongst end
`users or even in worst case shared anonymously over the
`Internet resulting in massive piracy and copyright abuse ofthe
`product.
`To solve this problem some publishers have set a relatively
`high device to license ratio in their control systems in the hope
`that customers will not exceed the maximum number of
`
`devices per license. An example ofthis is Apple iTunes which
`enables customers to play a purchased music file on up to a
`preset number (e.g., five) of devices (e.g., PCs) per license
`before being requested to buy an additional license. They
`have also implemented a system that allows customers to turn
`off the license rights of individual devices with regard to a
`specific music file license and therefore free up that device
`installation so that the music file can be used on one additional
`device.
`
`While this method does go some way to appeasing the
`problem of a normal customers usage expectations, it does
`not take into consideration the normal attrition that occurs
`
`with the purchase and upgrade ofpersonal computing devices
`or the like and places an expectation on the user to go through
`a number of involved steps to retain their rights to use the
`software. Accordingly, there is a need for an improved tech-
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`nique for allowing for a changing number of device installa-
`tions on a per license basis over time.
`
`SUMMARY OF THE INVENTION
`
`The following presents a simplified summary of one or
`more embodiments in order to provide a basic understanding
`of such embodiments. This summary is not an extensive over-
`view of all contemplated embodiments, and is intended to
`neither identify key or critical elements of all embodiments
`nor delineate the scope of any or all embodiments. Its sole
`purpose is to present some concepts of one or more embodi-
`ments in a simplified form as a prelude to the more detailed
`description that is presented later.
`In accordance with one or more embodiments and corre-
`
`sponding disclosure thereof, various aspects are described in
`connection with adjusting a license for a digital product over
`time. The license may comprise at least one allowed copy
`count corresponding to a maximum number of devices autho-
`rized for use with the digital product. In one embodiment, a
`system for adjustable licensing includes: a communication
`module for receiving a request for authorization to use the
`digital product from a given device; a processor module in
`operative communication with the communication module;
`and a memory module in operative communication with the
`processor module.
`The memory module may include executable code for the
`processor module to: (a) verify that a license data associated
`with the digital product is valid based at least in part on a
`device identity associated with the given device; and (b) in
`response to the device identity already being on a record,
`allow the digital product to be used on the given device.
`The memory module may further include executable code
`for the processor module to: (c) in response to the device
`identity not being on the record, set the allowed copy count to
`a first upper limit for a first time period; (d) calculate a device
`count corresponding to total number of devices already
`authorized for use with the digital product; and (e) when the
`calculated device count is less than the first upper limit, allow
`the digital product to be used on the given device.
`In related aspects, the processor module may be adapted to:
`(a) in response to the device identity not being on the record,
`after the first time period has expired, set the allowed copy
`count to a second upper limit for a second time period; (b)
`recalculate the device count; and/or (c) when the recalculated
`device count is less than the second upper limit, allow the
`digital product to be used on the given device. For example,
`the second time period may comprise a defined number of
`days since the initial authorization. The processor module
`may be adapted to, in response to the calculated device count
`equaling the second upper limit, send a warning regarding the
`allowed copy count to the given device. The processor mod-
`ule may be adapted to, in response to the calculated device
`count exceeding the second upper limit, deny the request for
`authorization.
`
`In further related aspects, the processor module may be
`adapted to:
`in response to the device identity not being on
`the record, after the second time period has expired, set the
`allowed copy count to a third upper limit; (b) recalculate the
`device count; and (c) when the recalculated device count is
`less than the third upper limit, allow the digital product to be
`used on the given device. The processor module may be
`adapted to, in response to the calculated device count equal-
`ing the third upper limit, send a warning regarding the
`allowed copy count to the given device. The processor mod-
`
`9
`
`
`
`US 8,566,960 B2
`
`3
`ule may be adapted to, in response to the calculated device
`count exceeding the third upper limit, deny the request for
`authorization.
`
`To the accomplishment of the foregoing and related ends,
`the one or more embodiments comprise the features herein-
`after fully described and particularly pointed out in the
`claims. The following description and the annexed drawings
`set forth in detail certain illustrative aspects ofthe one or more
`embodiments. These aspects are indicative, however, of but a
`few of the various ways in which the principles of various
`embodiments may be employed and the described embodi-
`ments are intended to include all such aspects and their
`equivalents.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is an exemplary set of license rules that may be
`implemented to adjust the number of device installations on a
`per license basis over time.
`FIG. 2 shows an exemplary approach for adjusting a
`license for a digital product.
`FIG. 3A shows one embodiment for a method for adjusting
`a license for a digital product.
`FIG. 3B shows several sample aspects of the method
`shown in FIG. 3A.
`
`FIG. 4 shows one embodiment for a system for adjusting a
`license for a digital product.
`
`DETAILED DESCRIPTION
`
`Various embodiments are now described with reference to
`
`the drawings, wherein like reference numerals are used to
`refer to like elements throughout. In the following descrip-
`tion, for purposes of explanation, numerous specific details
`are set forth in order to provide a thorough understanding of
`one or more embodiments. It may be evident, however, that
`such embodiment(s) can be practiced without these specific
`details. In other instances, well-known structures and devices
`are shown in block diagram form in order to facilitate describ-
`ing one or more embodiments.
`The techniques described herein allow for a changing num-
`ber of device installations on a per license basis over time.
`Aspects of the techniques may include a customer feedback
`system that warns a user when they are nearing the limit of
`their device installation ceiling for their license. An example
`scenario could be as follows. A software publisher wants to
`commence distribution of a software product and to minimize
`unauthorized copying of their software. Their license may
`state that the publisher authorizes the user to use their soft-
`ware on up to, for example, five devices, but that the publisher
`reserves the right to increase this limit at their own discretion.
`The customer installs the software on the three computers
`they have at home. Each time the software connects to a
`license management server controlled by the publisher over
`the Internet to ensure that the device limit for the individual
`license has not been exceeded.
`
`The customer may choose to install the same software on
`their personal computer (PC) at work. Upon contacting the
`publishers license management server over the Internet a
`message is displayed to the user warning them that they are
`nearing the limit of their device count for their license.
`Two weeks later the user wishes to install their software on
`
`the two computers they own at the customers holiday home. If
`the publisher uses the proposed invention the maximum num-
`ber of devices for the license may have been adjusted to
`accommodate a reasonable small increase in the number of
`
`devices linked to a specific license and both PCs may be
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`
`allowed to install and run even though the publishers stated
`device limit per license is five.
`Then three months later, the user experiences water dam-
`age from a flood in their house and a new PC is purchased.
`Upon installation of the protected software the invention will
`allow the user to obtain additional device installations from
`
`the publishers license management server for the same
`license (e.g., up to a total of seven devices) even though the
`device limit is initially set to five. However, ifthat user shares
`their license with all the computer users in a college dormi-
`tory, the invention can be set to stop wholesale abuse of the
`license terms, as described in further detail herein.
`In accordance with one or more aspects of the embodi-
`ments described herein, there is provided a system for adjust-
`able digital licensing over time allows a software user to
`increase the number of devices they can use with a particular
`software license over the period of ownership of that license.
`The terms or rules 60 of an exemplary software license are
`shown in FIG. 1. For example,
`initially, the publisher or
`distributor of the software sets rules 60 that govern the use of
`the software on a specific number of devices. The number of
`devices allowed to run the software in an authorized or
`
`enabled state may increase over time to reflect the normal
`usage pattern of software users where the user adds devices,
`replaces or upgrades devices over time. The rules 60 may
`reflect this pattern of an increasing number of devices autho-
`rized overtime. For the first five days of the users use of the
`software a total of five devices can be authorized on new
`
`devices. For the next twenty-five days until the thirtieth day
`after first authorization, the user is allowed to authorize a total
`of seven new devices. After the first thirty days an additional
`four devices can be authorized, delivering the maximum
`number of copies on separate devices under the license
`which, in this example embodiment, is eleven.
`It is noted that the various numbers used to describe the
`
`embodiments herein, such as, for example, the allowed copy
`counts, the maximum number of devices authorized for use,
`the upper limit on the number of devices for a given time
`period, or the like, are purely exemplary, and that other num-
`bers, data, values, or algorithms may be used in lieu of the
`exemplary numbers herein.
`In related aspects, FIG. 2 shows an example embodiment
`of a software system that is designed to manage and imple-
`ment the rules under a license, such as, for example, the
`licensing terms 60 described in FIG. 1. Device locked license
`systems such as described in US. Pat. No. 5,490,216, entitled
`“SYSTEM FOR SOFTWARE REGISTRATION,” which is
`specifically incorporated herein, in its entirety, by reference,
`allow a software license to be locked to a license agreement
`and specific authorized devices. With continued reference to
`FIG. 2, there is shown a system comprising a device 50 that
`requests authorization via a software process, and a licensing
`authority 55 that may be a software system that represents the
`publisher or distributors interests and regulates the number of
`devices that can be used with each license.
`
`Typically the device 50 requesting authorization collects
`license related information 10 and unique device identifying
`information 11, compiles the collected information into a
`communication and sends it to the authorization authority 55.
`Upon receipt of this communication from the device 50, the
`license authority 55 checks that the license information is
`valid (step 13). If the request fails, an authorization is disal-
`lowed (step 14) and the device based software is sent a mes-
`sage to this effect. In practice this may involve further action
`by the device based software to notify the user ofthe failure to
`authorize and then either terminate the software or allow the
`software to continue in some form of trial mode or the like.
`
`10
`
`10
`
`
`
`US 8,566,960 B2
`
`5
`If the request for authorization 12 includes license infor-
`mation/data that is valid, the license information checking
`process (at step 13) will pass and the requesting devices
`unique identity information 11 is checked to see if it exists in
`the database of prior authorizations 15. If the device identity
`exists (step 16), meaning that the software has been success-
`fully registered on the same device in the past, then according
`to the license terms 60 for the software a reauthorization is
`
`automatically allowed (step 17). A communication allowing
`the software to continue in an authorized state is passed to the
`requesting device software 50 and the software on the device
`is subsequently authorized (step 18) and allowed to run.
`If the unique identity of the device 11 is not in the autho-
`rization database 15 of previous device requests, then the
`licensing authority 55 checks to see if the new authorization
`request is the first request or is a subsequent request that has
`occurred in the first five days from the date of the first suc-
`cessful authorization (step 19).
`At step 19, if the request is within the first five day period,
`the authorization database 15 is consulted for a count of how
`
`many successful authorizations for new devices have been
`allowed. Under the license rules 60, if the device count is less
`than five then a message is sent to the request device that
`allows the software to continue in an authorized state (step
`18). If the device count is equal to five then the licensing
`authority 55 may send a message to the requesting device 50
`allowing the device to run in an authorized state (step 18), but
`also may optionally inform the user that the limit of the
`number of devices available to run under this license has been
`
`reached and that subsequent requests for authorization may
`be denied in the short term (step 22).
`If the count of devices authorized for use with the specific
`license 10 is greater than five (step 23), then the licensing
`authority 55 sends a message denying authorization (step 25)
`and the user is optionally notified that the limit of devices that
`can be authorized with their license terms has been exceeded
`
`10
`
`15
`
`25
`
`30
`
`35
`
`(step 24). In practice, the software on the requesting device 50
`may subsequently terminate the software