throbber
FILE HISTORY
`US 6,105,013
`
`6,105,013
`PATENT:
`INVENTORS: Curry, Stephen M.
`Loomis, Donald W.
`Fox, Christopher W.
`
`TITLE:
`
`Method, apparatus, system and firmware for
`secure transactions
`
`APPLICATION
`NO:
`FILED:
`ISSUED:
`
`US199841190A
`
`10 MAR 1998
`15 AUG 2000
`
`COMPILED:
`
`21 FEB 2012
`
`Page 1 of 544
`
`UNITED SERVICES AUTOMOBILE ASSOCIATION
`Exhibit 1008
`
`

`
`.._.—
`
`
`
`E |
`on
`E_..
`§gr; I
`E3
`an
`E3
`%
`
`I-
`_
`:3
`LB
`E
`:2
`6
`3
`3
`-
`
`-.
`
`
`
`PREPARED Ann APPROVED FOR ISSUE
`
`ISSUING CLASIFICATION
`
`5I
`
`FILED wrrn: E DISK {CFIFJ .|:|FIcHE
`«.
`_{Ana:hqcIinpod:alonrigrn':_saidaflaPl
`
`‘»
`
`
`
`CLAIMS ALLOWED
`
`'PriI1t Qlgim WU-G.
`
`TERMINAL
`
`
`
`DISCLAI MEH A DRAWINGS
`Sheergfifilvg.
`FIg§,Drwg.
`P|;infFig.
`Total CIairn§_,_-
`/
`'3’
`/.7_
`‘/
`7%/6
`. " NOTICE or ALLOWANCE IJAILED
`J a}Thatern1 of this patent
`subsequent in
`(date)
`
`has been disciaimed.
`.:| b) The term 01 this palant shalt
`not extend beyond the expiration data
`of U.S Palant. Nu.
`
`
`
` CI c) The 1'.ermirIa|
`rnomhs of
`this patent have been disclaimed.
`
`
`
`WAR MING:
`The iniormalion disclosed herein may be restriclad. Unaulhorlzed disclosure may be prohibited by me Unified States
`Poassssion outside me US. Parent 8. Trademark Oflica is rsstncied to authorized enwployees and contractors only.
`Form Pro-ma
`(Rev. 1049?]
`
`
`
`
`FFF [M |:|L(EBELAi‘-IEA)
`
`
`
`FormaiBtaVnn§%L4-—5m‘}‘“-**
`
`
`
`{FACE}
`
`.-
`
`Page 2 of 544
`
`

`
`METHOD,(cid:3)APPARATUS,(cid:3)SYSTEM(cid:3)AND(cid:3)FIRMWARE(cid:3)FOR(cid:3)SECURE(cid:3)TRANSACTIONS(cid:3)
`
`6,105,013(cid:3)
`
`Transaction(cid:3)History(cid:3)
`
`Transaction(cid:3)Description(cid:3)
`Date(cid:3)(cid:3)
`3/10/1998(cid:3)Information(cid:3)Disclosure(cid:3)Statement(cid:3)(IDS)(cid:3)Filed(cid:3)
`3/10/1998(cid:3)Information(cid:3)Disclosure(cid:3)Statement(cid:3)(IDS)(cid:3)Filed(cid:3)
`3/10/1998(cid:3)Preliminary(cid:3)Amendment(cid:3)
`3/16/1998(cid:3)Initial(cid:3)Exam(cid:3)Team(cid:3)nn(cid:3)
`3/23/1998(cid:3)IFW(cid:3)Scan(cid:3)&(cid:3)PACR(cid:3)Auto(cid:3)Security(cid:3)Review(cid:3)
`4/1/1998(cid:3)Application(cid:3)Dispatched(cid:3)from(cid:3)OIPE(cid:3)
`4/10/1998(cid:3)Case(cid:3)Docketed(cid:3)to(cid:3)Examiner(cid:3)in(cid:3)GAU(cid:3)
`6/24/1998(cid:3)Case(cid:3)Docketed(cid:3)to(cid:3)Examiner(cid:3)in(cid:3)GAU(cid:3)
`7/30/1998(cid:3)Non(cid:882)Final(cid:3)Rejection(cid:3)
`8/3/1998(cid:3)Mail(cid:3)Non(cid:882)Final(cid:3)Rejection(cid:3)
`11/9/1998(cid:3)Response(cid:3)after(cid:3)Non(cid:882)Final(cid:3)Action(cid:3)
`11/9/1998(cid:3)Request(cid:3)for(cid:3)Extension(cid:3)of(cid:3)Time(cid:3)(cid:882)(cid:3)Granted(cid:3)
`11/16/1998(cid:3)Date(cid:3)Forwarded(cid:3)to(cid:3)Examiner(cid:3)
`12/16/1998(cid:3)Mail(cid:3)Ex(cid:3)Parte(cid:3)Quayle(cid:3)Action(cid:3)(PTOL(cid:3)(cid:882)(cid:3)326)(cid:3)
`12/16/1998(cid:3)Quayle(cid:3)action(cid:3)
`1/11/1999(cid:3)Response(cid:3)after(cid:3)Ex(cid:3)Parte(cid:3)Quayle(cid:3)Action(cid:3)
`1/20/1999(cid:3)Date(cid:3)Forwarded(cid:3)to(cid:3)Examiner(cid:3)
`1/25/1999(cid:3)Mail(cid:3)Notice(cid:3)of(cid:3)Allowance(cid:3)
`1/25/1999(cid:3)Notice(cid:3)of(cid:3)Allowance(cid:3)Data(cid:3)Verification(cid:3)Completed(cid:3)
`4/16/1999(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Finished(cid:3)
`4/16/1999(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Matched(cid:3)with(cid:3)File(cid:3)at(cid:3)Contractor(cid:3)
`4/16/1999(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Received(cid:3)at(cid:3)Contractor(cid:3)
`4/16/1999(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Sent(cid:3)to(cid:3)Contractor(cid:3)
`6/25/1999(cid:3)Miscellaneous(cid:3)Incoming(cid:3)Letter(cid:3)
`7/21/1999(cid:3)Date(cid:3)Forwarded(cid:3)to(cid:3)Examiner(cid:3)
`7/21/1999(cid:3)Withdrawal(cid:3)of(cid:3)Notice(cid:3)of(cid:3)Allowance(cid:3)
`7/22/1999(cid:3)Withdrawal(cid:3)of(cid:3)Allowance(cid:3)Action(cid:3)Count(cid:3)
`7/23/1999(cid:3)Mail(cid:3)Non(cid:882)Final(cid:3)Rejection(cid:3)
`7/23/1999(cid:3)Non(cid:882)Final(cid:3)Rejection(cid:3)
`10/25/1999(cid:3)Informal(cid:3)or(cid:3)Non(cid:882)Responsive(cid:3)Amendment(cid:3)after(cid:3)Examiner(cid:3)Action(cid:3)
`10/28/1999(cid:3)Date(cid:3)Forwarded(cid:3)to(cid:3)Examiner(cid:3)
`11/1/1999(cid:3)Mail(cid:3)Notice(cid:3)of(cid:3)Informal(cid:3)or(cid:3)Non(cid:882)Responsive(cid:3)Amendment(cid:3)
`11/22/1999(cid:3)Response(cid:3)after(cid:3)Non(cid:882)Final(cid:3)Action(cid:3)
`
`Page 3 of 544
`
`

`
`11/26/1999(cid:3)Date(cid:3)Forwarded(cid:3)to(cid:3)Examiner(cid:3)
`1/12/2000(cid:3)Mail(cid:3)Notice(cid:3)of(cid:3)Allowance(cid:3)
`1/12/2000(cid:3)Notice(cid:3)of(cid:3)Allowance(cid:3)Data(cid:3)Verification(cid:3)Completed(cid:3)
`2/2/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)File(cid:3)Sent(cid:3)to(cid:3)Contractor(cid:3)
`4/14/2000(cid:3)Issue(cid:3)Fee(cid:3)Payment(cid:3)Verified(cid:3)
`4/14/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Finished(cid:3)
`4/14/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Matched(cid:3)with(cid:3)File(cid:3)at(cid:3)Contractor(cid:3)
`4/14/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Received(cid:3)at(cid:3)Contractor(cid:3)
`4/14/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Drawings(cid:3)Sent(cid:3)to(cid:3)Contractor(cid:3)
`5/3/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Complete(cid:3)WF(cid:3)Records(cid:3)for(cid:3)Drawings(cid:3)
`6/30/2000(cid:3)Workflow(cid:3)(cid:882)(cid:3)Complete(cid:3)WF(cid:3)Records(cid:3)for(cid:3)Drawings(cid:3)
`7/2/2000(cid:3)Application(cid:3)Is(cid:3)Considered(cid:3)Ready(cid:3)for(cid:3)Issue(cid:3)
`7/28/2000(cid:3)Issue(cid:3)Notification(cid:3)Mailed(cid:3)
`8/15/2000(cid:3)Recordation(cid:3)of(cid:3)Patent(cid:3)Grant(cid:3)Mailed(cid:3)
`9/29/2004(cid:3)Post(cid:3)Issue(cid:3)Communication(cid:3)(cid:882)(cid:3)Certificate(cid:3)of(cid:3)Correction(cid:3)
`(cid:3)
`
`Page 4 of 544
`
`

`
`PATtEN.'i5*:At=PL|CkIl0N
`mmmummmmummm
`nanazuau
`
`_l
`
`__
`
`.
`
`CONTENTS
`_ Date race-lured
`(Incl. C. of M.)
`or
`Date Hailed
`
`,
`
`,
`If
`
`W;Ls
`
`'<
`
`_
`
`- -
`-
`
`Date received
`(Incl. C. of III.)
`or
`Date Mailed
`
`L
`t
`N
`
`.\
`
`
`
`72.
`
`__..TR,._._
`
`Page 5 of 544
`
`

`
`
`
`
`
`
`
`
`
` (RIGHT OUTSIDE]
`
`sEAncHEI 5%””%if
`
`L
`
`NOTES
`
`(INCLUDING SEARCH STRATEGY)
`
`Page 6 of 544
`
`

`
`ISS7.
`
`*‘ SLIP STAPLE AREA (fbr édditional cross references)
`
`POSITION
`
`FEE DETERMINATION.
`O.l.P.E. cunssu-nan
`FOFIMALITY nswew
`
`INDEX OF CLAIMS
`
`Rejected
`Allowed
`— [Through numeral) Canceled
`Hestrlcted
`
`Non-elected
`Interference
`Appeal
`. . . Obie cted
`
`mC
`
` _m_E_a..o1..M
`
`B
`
`55
`
`m...
`
`E__.....IIIIII
`
`mC
`m
`
`
`Tirm...I
`in
`
`._%..N\NI»fl—u
`
`B|.....1.I.l‘l_-fll‘.I....I...l.I1.I
`......u1.u“““_.mm."..u:I..mvp.EII
`‘.___-=__.-EEEEE
`.
`
`_-=-
`
`—=
`
`IIIIIIIIIIIImIIIIIIIIIII
`IIIIIIIIIIIIIIIIIIII
`
`IIIIIIIIII
`
`HEM
`
`_-BE.¢
`
`—E__—EEEEEE,E
`fl
`
`7 of 544
`
`If more than 150 claims or 10 actions
`staple additional sheet here
`
`(LEFT INSIDE)
`
`Page 7 of 544
`
`
`
`
`
`
`
`
`
`

`
`File History Report
`
`While copying your file we noticed that there are one or
`more ‘Other Publications’ missing from the contents of the
`file wrapper. At your request, we will attempt to obtain the
`missing publication(s) from alternative resources. Please
`note that additional charges will apply to this service.
`
`Page 8 of 544
`
`

`
`United States Patent
`[191
`Curry et at.
`
`1111111111111111 �I IIIII 11111111111111111
`
`US006105013A
`6,105,013
`Potent Number:
`[111
`Aug. 15, 2000
`Date of Patent:
`(45]
`
`[54] METHO(), APPARATUS, SYSTEM AND
`OTIIER PUBl.JCATIONS
`
`Federal Information Processing Standards Publication,
`FIRMWARE FOR SECURE TRANSACI'IONS
`
`(FIPS PUB) 186, DigiJaJ Signatur Standard (DDS), Issued:
`Stephen M. Curry, Dallas; Donald W.
`[751 Inventors:
`May 19, 1994.
`Processing Standards Publication, Federal Information
`
`Loo mis, Coppell; Christopher W. Fox,
`
`
`(FJPS PUB) 190-1, Secun� Hash Standard, Issued: May 31,
`Dallas, aU of Tex.
`1994.
`[73] Assignee: Dalla9 Semiconductor Corporation,
`Microsoft O>rporation's Secure Transaction Technology,
`
`
`511' Wire Fonnats and Protoc version 0.902, Oct. 5, 1995.
`Dallas, Tex.
`Matonis, Jon W., Digital Cash and Monetary Freedom,
`http://www .info.i.soc.org/HMP!PAPER/136/htmVpa­
`
`per.btml, as of Apr. 1995.
`MasterCard, Secure Electronic Paymenl Protocol, Draft
`
`
`Version 1.1, Sep. 29, 1995.
`
`
`Ma�1erCard, Secure Electronic Payment Protocol, Part 2;
`Related U.S. Application Data
`
`Functional SpecifiCations, Draft Version 1.1, Sep. 29, 1995.
`
`No. 08/594,983, Continuation of application Jan. 31, 19%,
`
`MasterCard, Secure Electronic Payment Proloco� Part 3;
`[631
`
`
`Payment
`
`System Specification, Draft Version 1.1, Sep. 29,
`Put No. 5,748,740.
`application No. 60/004,510, Sep.
`1995.
`(60]
`79, 1995.
`Provisional
`MasterCard,
`Secure Electronic Paymenl Prolocol, Part 4;
`
`Tnt. Cl.' ................................. H04L 9!00; H04L
`9/30
`[51]
`
`Certificate Management Specification, Draft Version 1.1,
`U.S. Cl. .............................. 705/65; 2351379; 380!30;
`[52)
`Sep. 29, 1995.
`
`
`1osns; 7131156; 713!173; 713/174
`SGS-Thorru;on Microelectronics, CMOS Crypto-Computer
`
`Field of Search ............................... 380/4, 9, 21, 23,
`
`Family, Advance Datasheet ST16xF74, Oct., 1993.
`(58)
`CMOS MCU Based Safe·
`SGS-Thomsoo Microelectronics,
`380/24, 25, 30, 46, 49, 50; 2351379, 380;
`guarded Smarrcarri /C with Modular Arilmetic Proc essor,
`705/64, 65, 66, 67, 68, 69, 75; 713/155,
`Advanced Data Sheet, ST16CF54, Scp. 1994.
`156, 157, 158, 168, 172, 173, 174
`
`Micro Card, CP8® Products Crypto Card, Jan. 25, 1995.
`Wayner, Peter, Digital Ca$h, Commerce on the Net, Cbpt. 3
`& 10 and Appendix B, Jun. 1995.
`
`Schneier, Bruce, Applied Cryptography, Cbpl. 19, pp.
`461-482, 1996.
`r--Be cnacr E. Gregory
`Primary Examine
`Agent, or Firm -J enkens & Gilchrist
`Attorney,
`ABSTRACf
`(57]
`
`The present invention relates to an electronic module used
`
`
`for secure transactions. More specifically, the electtonic
`
`module is capable of passing information back and forth
`equipment via a se,cure, between a service provider's
`
`1mcrypted techniqu e so that money and other valuable
`data
`The module is capable
`
`can be securely passed electronically.
`of being programmed, keeping track of realtime, recording
`for later R:view, aod creating encryption
`transaction.s
`
`key
`pairs.
`
`(21] Appl. No.: 09/041,190
`[22] Filed: Mar. 10, 1998
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,73t,842 3/1988 Smith
`380124
`
`5,577,120 11/1996 Peozi .. ..................................... 380/23
`5,748,740 5/1998 Curry et al . .............................. 380125
`
`........................................
`
`FOREIGN PATENT DOCUMENTS
`
`0172b70A2 2/1986 European Pat. OfT . .
`0186981A2 7/1986 European Pat. Off . .
`0194839A2 9/1986 European Pat. Off ..
`12/1988 European Pat. Off ..
`0794248A1
`03371&SA2 10/1989 European Pat. Off ..
`045806A2 11/1991 European Pat. Off . .
`0624014A2 ll/t994 European
`Pol Off ..
`9/1995 Gem1any .
`4406602A1
`W093/0&S45 4/1993 WIPO.
`
`16 Claims, 8 Drawing Sheet�
`
`12
`
`16
`
`?4
`lO
`2l
`
`J2
`
`lUI<IOUEIONUoatRl /"''"
`I
`
`..
`
`16
`
`22
`20
`21
`
`34
`
`IIOilO.U
`
`Page 9 of 544
`
`

`
`U.S. Patent Aug. 15, 2000 Sheet 1
`of 8
`
`6,105,013
`
`12
`......
`...........
`
`1-
`
`14
`
`16
`
`22
`20
`24
`
`34
`
`CIRCUITRY
`
`I UNIQUE 10 NU�BER I
`'
`MICRO PROCESSOR 1 CLOCK�
`t 1 CLOCK r--1-
`-
`...........
`I.IICRO PROCESSOR � � RO� H __,
`18
`......
`- -
`I r - -
`I NVRAM
`r--.. '
`.....
`r-... OUTPUT BUFFER
`28
`r-.. r..... INPUT BUFFER
`.....
`I ENERGY h 1-
`30

`r--..
`.....
`26
`......
`r-... r..... ONE-WIRE
`32
`
`INTERFACE
`
`I.IOOULE
`
`FIG. 1
`
`CREATE TRANSACTION GROUP
`
`Sl
`
`GENERATE KEYS AND LOAD 52
`
`INTO A TRANSACTION GROUP
`
`S3
`PRNATIZE DECRYPTION EXPONEN
`
`
`CREATE TRANSACTION SCRIPT 54
`
`LOCK TRANSACTION
`
`GROUP ss
`FIG. 2
`
`Page 10 of 544
`
`

`
`U.S. Patent Aug. 15, 2000
`
`Sheet 2 or 8
`
`6,105,013
`
`FIG. 3
`
`USER RECEWES SECURE E-M�L Al
`AND ENCRYPTED IDEA KEY
`
`MODULE RECE�S ENCRYPTED
`IDEA KEY IN AN INPUT
`OBJECT OF A TRANSACTION GROUP
`
`TRANSACTION SCRIPT DECRYPTS A3
`THE IDEA KEY
`
`DECRYPTED IDEA KEY IS PLACED A4
`IN AN OUTPUT DATA OBJECT
`
`IDEA KEY IS USED TO DECRYPT A5
`THE SECURE E-�L
`
`CREATE TRANSACTION GROUP FOR 81
`
`PERFORMING ELECTRONIC
`NOTARY FUNCTIONS
`
`CREATE OBJECT($) FOR
`
`RSA ENCRYPTION KEYS
`
`82
`
`OBJECT (COUNTER)
`
`CREATE OBLECT FOR TIMEKEEPING 83
`FIG. 4 CREATE TRANSACTION SEQUENCE 84
`CREATE A TRANSACTION SCRIPT THAT CREATES 85
`A CERTIFICATE
`
`BY COt.lBINING AN INPUT DATA
`OBJECT WlTH THE TRUE TIME, THE VALUE Of
`
`THE TRANSACTION COUNTER AND A UNIQUE
`
`NUMBER ASSOCIATED TO THE MODULE, THEN
`SIGNS THE CERTIFICATE
`
`PRIVATE OBJECTS
`
`
`
`LOCK TRANSACTION GROUP
`
`86
`
`87
`
`Page 11 of 544
`
`

`
`U.S. Patent Aug. 15, 2000 Sheet 3 of 8
`
`6,105,013
`
`C1
`
`MESSASGE IS PLACED IN AN
`INPUT DATA OBJECT
`•
`SIGNS THE COMBINATION
`
`C2
`
`TRANSACTION SCRIPT COMBINES
`MESSAGE WITH OTHER DATA AND
`WITH A
`PRIVATE KEY CREATING AN
`ENCRYPTED CERTIFICATE
`
`v- ,-
`
`�
`CAN BE READ AT A
`-
`THE CERTIFICATE
`LATER TIME BY DECRYPTING
`WITH THE PUBLIC KEY
`t
`,--
`DOCUMENT CAN BE
`FIG. 5
`PREPARE
`MODULE
`CREATE TRANSACTION GROUP
`
`COMPRISING: MONEY OBJECT
`
`TRANSACTION COUNT OBJECT
`PRIVATE KEY AND
`
`C3
`
`IT
`
`C4
`THE CERTIFICATE AND ORIGINAL
`
`
`
`STORED ELECTRONICALLY
`
`01
`
`PUBLIC KEY OBJECTS ETC.
`PRIVATIZE PRIVATE KEY RELATED OBJECT{S)
`
`02
`
`CREATE TRANSACTION SCRIPT TO
`
`
`PERFORM MONElARY TRANSACTION
`
`D3
`
`04
`
`05
`
`LOCK TRANSACTION GROUP
`
`PUBUSH PUBLIC KEY
`
`FIG. 6
`
`Page 12 of 544
`
`

`
`U.S. Patent Aug. 15, 2000 Sheet 4 of 8
`
`6,105,013
`
`BANK/.SERVICE PROVIDER
`
`
`E2
`
`E12
`
`USER WANTS TO MAKE __] READS MODULE'S
`US£B
`MERCHANT
`A PURCHASE --L ID NUMBER
`USING A MODULE �---,tr-----'
`E,J CREATES DATA PACKET
`y E3
`THAT INCLUDES A
`'RANDOM SALT' AND
`MODULE ID NUMBER
`t
`CREATES A SIGNED !---E4
`E
`MERCHANT CERTIFICAT
`
`BY ENCRYPTING DATA
`PACKET WITH
`
`MERCHANT'S PRIVATE KEY
`t
`ATIACHES PURCHASE !---E5
`SUBTRACT PURCHASE
`AMOUNT FROM
`PRICE TO MERCHANT'S
`-
`MONEY REGISTER
`SIGNED CERTIFICATE
`t
`E7
`t
`COMBINE TRANSACTION 1--EB
`SIGNED MODULE !---E9
`COUNT WITH MERCHANT'S
`SIGNED CERTIFICATE RECEIVED
`THEN ENCRYPT WITH r- USING SERVICE PROVIDER'S
`
`AND PURCHASE AMOUNT; CERTIFICATE AND DECRYPT
`. \.
`SERVICE PROVIDER'S PUBLIC KEY
`\
`t
`PRIVATE KEY THEREBY
`CREATING A SIGNED
`MODULE CERTIFICATE CONFIRM THAT: H RECEIVE t.lOOULE'S
`RECEIVE ITEM L IS CORRECT
`1) AMOUNT OF PURCHASE SIGNED CERTIFICATE
`t
`SERVICE PURCHASED 12) DATA IN MERCHANT'S
`,
`)
`DECRYPT MODULES
`
`CERTIFICATE IS THE
`ERVICE
`
`SAME AS ORIGINALLY SENT CERTIFICATE WITH S
`/ 1_..., PROVIDER'S PUBLIC KEY
`t
`E13
`DECRYPT MODULE'S
`
`CERTIFICATE WITH
`MERCHANT'S PUBLIC KEY
`t
`E14
`FIG. 7
`IF BOTH CERTIFICATES ARE
`
`OK THEN ADD PURCHASE
`. _,- AMOUNT TO MERCHANT'S
`E15--
`BANK BALANCE
`
`INCREMENT
`TRANSACTION COUNT
`
`E11
`
`E10
`
`Page 13 of 544
`
`

`
`U.S. Patent Aug. 15, 2000 Sheet 5 of 8
`
`6,105,013
`
`USER
`WANTS TO ADO AN
`AMOUNT
`Of CASH
`TO MODULE
`
`CREATE RANDOM
`
`SALT NUMBER
`
`PRO�DER
`BANK/SE�CE
`READ UOOULE 10
`F2
`NUMBER AND AMOUNT
`OF CASH REQUESTED
`
`REQUEST MODULE TO
`
`PRODUCE A RANDOM SALT
`
`Fl
`
`F3
`
`F5
`
`FIG. 8
`
`COMBINE SALT, ID NUMBER
`
`AND CASH AMOUNT AND
`F4
`WITH SERVICE
`ENCRYPT
`DECRYPT SIGNED SERVICE
`
`
`PRO�DER'S PRIVATE KEY,
`
`PROVIDER CERTIFICATE
`
`
`THEREBY CREATING A
`
`WITH SERVICE PRO�DER'S
`
`SIGNED SER�CE
`
`PUBLIC KEY AND CHECK
`
`PROVIDER CERTIFICATE
`THE 10 NUMBER AND
`RANDOM SALT NUMBER
`IF THE 10 NUMBER
`AND RANDOM SALT NUMBER
`
`IS UNCHANGED THEN ADD
`THE CASH AMOUNT TO THE
`MONEY REGISTER
`OF THE MODULE
`
`EXAMPLE OF
`
`
`TRANSFER FROM USER'S MODULE TO MERCHANT'S MODULE
`---
`MERCHANT
`/�
`USER/PAYER
`
`1. CREATE RANDOM SALT
`SALT AND
`RECEIVE
`/ Gl
`
`2. DETERMINE-AMOUNT OF
`
`REQUEST FOR MONEY
`MONEY TO BE
`
`SUBTRACT REQUESTED RECEIVED FROM PAYER
`G2 �
`MONEY AMOUNT FROM
`-�
`A MONEY REGISTER
`
`
`CREATE SIGNED PAYMENT RECEIVE SIGNED PAYMENT
`v G3
`CERTIFICATE
`BY COMBINING CERTIFICATE
`AND DECRYPT
`
`SALT WITH PAYMENT USING SERVICE PROVIDER'S
`
`AMOUNT THEN ENCRYPTING PUBLIC KEY
`WITH BANKER/SERVICE '
`
`
`PROVIDER'S ORIVATE KEY
`v G4
`�GAINST ORIGINALLY
`= MERCHANT CHECK DECRYPTED SALT
`
`SENT SALl
`PAYEE
`
`PAYER = USER
`IF THEY ARE THE
`
`SAME ADD PAYMENT AMOUNT
`TO MONEY REGISTER
`FIG. 9
`
`Page 14 of 544
`
`

`
`U.S. Patent Aug. 15, 2000
`
`Sheet 6 of 8
`
`6,105,013
`
`TRANSACTION OVER A NElWORK WITH A MODULE
`
`MERCHANT/PAYEE
`
`
`
`PROVIDER'S PUBLIC KEY
`
`Hl
`
`H3
`
`H4
`
`H5
`
`RECEIVE PAYER SALT AND
`CREATE RANDOM
`COUBINE WITH AMOUNT OF
`PAYER SALT
`MONEY TO BE RECEIVED, AND v
`H2
`+
`NCLUDE A PAYEE SALT, THEN
`ENCRYPT WITH SERVICE
`'""'\ RECEIVE FIRST DATA PACKET
`AND DECRYPT WITH SERVICE �REATE A FIRST DATA PACKET
`
`PROVIDER'S PRIVATE KEY TO
`J
`COMPARE DECRYPTED
`PAYER SALT WITH ORIGINAL
`PAYER SALT
`IF TMEY ARE THE SAME,
`""" ::sUBTRACT AMOUNT OF MONEY
`TO BE SENT FROM
`PAYER t.AONEY REGISTER
`t
`GENERATE A SECOND DATA
`PACKET CONSISTING
`OF
`PAYEE'S SALT AND THE
`""" AMOUNT OF MONEY TO
`BE SENT AND ENCRYPT
`USING SERVICE
`PROVIDER'S PRIVATE KEY
`
`AND DECRYPT WITH SERVICE
`PROVIDER'S PUBUC KEY
`
`H6
`
`t
`RECEIVE SECOND DATA PACKET v-
`+
`EXTRACT DECRY PTED PAYEE
`SALT AND COMPARE WITH
`PAYEE SALT PROVIDED EARLIER
`IF BOTH ARE THE SAME ADD �
`H7
`
`FIG. 10
`
`MONEY AMOUNT TO
`PAYEE MONEY REGISTER
`
`Page 15 of 544
`
`

`
`U.S. Patent
`
`Aug. 15, 2000
`
`Sheet 7 of 8
`
`6,105,013
`
`_
`
`10
`MODULE
`
`PIN
`MATCH
`
`r-
`
`READ/WRITE OBJECT COMMANDS
`LOCKED �.-Ao
`TRANSACTION
`GROUP 1-42
`4\ rlo�E�s(o)t
`H SCRIPTS �HPRIVATE (P) r !--42
`OBJECTS 4 LOCKED (L) t 1--42
`OBJECTS
`READ-ONLY
`OBJECT COMMAND
`
`READ/WRITE OBJECT COMt.tANDS
`LOCKED �40
`TRANSACTION
`GROUP
`4\ rl o�E��s (o) I
`IRE
`,...,... COMt.IAND r-f-
`DATA
`PIN
`"'""" INTER-
`H SCRIPTS �H PRIVATE (P) I
`TRANSPORT
`I.IATCH
`PRETER
`OBJECTS 4 LOCKED ( ) I
`LAYER
`L
`OBJECTS
`OBJECT COMMAND
`READ-ONLY
`OBJECT COMMANDS
`READ/WRITE
`,....40
`LOCKED
`TRANSACTION
`GROUP
`
`H\ rlo�E�s<o>l
`PIN
`t.IATCH
`
`�SCRIPTS �HI PRIVATE (P) I
`OBJECTS
`�'LOCKED
`(L) I
`OBJECTS
`READ-ONLY OBJECT COMMAND
`
`'---
`�
`
`.____
`
`-
`
`.___
`
`1-W 1/0 - r-
`
`FIG. 11
`
`Page 16 of 544
`
`

`
`U.S. Patent Aug. 15, 2000 Sheet 8 or 8
`
`6,105,013
`
`1/0 DATA BUffERS
`
`SYSTEM DATA
`COMMON PIN, RANDOIA
`
`NUMBER REGISTER, ETC ...
`
`TRANSACTION GROUP
`GROUP NAME,
`PASSWORD AND ATTRIBUTES
`OBJECT
`
`OUTPUT DATA OBJECT ,, I
`OUTPUT DATA OBJECT #2
`1 ,..-42
`
`WORKING REGISTER
`L....--.---...J
`40 .............
`OBJECT 2 . . .
`GROUP 1
`TRANSACTION
`.............
`. . .
`
`TRANSACTION GROUP 2
`OBJECT N / 42
`
`40
`
`
`
`TRANSACTION GROUP N
`
`AUDIT TRAIL•
`
`CIRCUlAR BUFFER OF
`
`
`TRANSACTION RECORDS
`
`''THE AUDIT TRAJL DOES
`NOT EXIST UNTIL THE
`MICRO-IN-A-CANn.t
`
`HAS BEEN LOCKED I
`
`ONCE LOCKED ALL
`UNUSED RAM IS
`
`ALLOCATED FOR
`...._ ___ TH...:.E_A...:.UD:......
`IT_T.,...RA.,...IL:...__-J
`FIG. 12
`
`Page 17 of 544
`
`

`
`2
`
`1
`
`6,105,013
`METHOD, APPARATUS, SYSTEM AND
`BRIEF DESCRIP1lON OF TilE DRAWINGS
`of tbe method and appa­
`A more complete undcrsraoding
`FlRMWARF. FOR SECURF. TRANSACTIONS
`Detailed Oescriplion when taken in oonjuoction
`
`ratus of the present invention may be ba.d by reference to the
`of application Ser. No.
`
`RELATED APPLJCATIONS
`witb the occompanyiog
`following
`08/S94,983 6ledJao. 31, 1996, now U.S. Pat. No. 5,748,740,
`
`This application is a continuation
`Drawings wherein;
`No.
`aod claims
`
`FIG. 1 is a block diagram of an embodiment of a module;
`FIG. 2 is an exemplary
`process for creating
`the benefit of U.S. ProvisioMl Application
`a transaction
`601004 ,510, filed Sep. 29, 1995.
`of common assit,\llte contain
`group;
`by ref· 10 related subject matter and are hereby incorporated
`The foUowing applicatioos
`IDCSSSIJ!ej
`FIG. 3 is an exemplary technique for receiving an E·mail
`
`
`ere nee:
`FlO. 4 is an exemplary tecbnique for preparing
`filed Jan. 31, 1996, entitled
`for ootary functions;
`a module
`METHOD, APPARATUS, AND
`Ser. No.: 08/595,014,
`SYSTEM FOR TRANS·
`
`FIG. 5 is an exemplary technique for usiog the module as
`JS a notary;
`FERRlNG UNITS OF VALUE, now U.S. Pat. No. 5,805,
`702;
`FIG. 6 is an exemplary technique
`a module
`for preparing
`
`Ser. No.: 08/594,975, filed Jan. 31, 1996, entitled
`to perform a money transaction;
`BETWEEN A SEC URE MODULE AND ANOTHER
`TRANSFER OF VALUABLE INFORMATION
`20 transac tion using a module;
`
`FIG. 7 is an exemplary technique for performing a money
`MODULE, now pendiog.
`
`FIG. 8 is an exemplary technique for performing a money
`BACKGROUND OF TilE INVENTION
`
`tranuction using a module;
`J. Technical Field of the Invention
`
`
`
`is ao exemplary technique for performing a money
`relates to 1 metbod, apparatus and
`FIG. 9
`
`transaction u.�ing a module;
`!'I G. 10 is an exemplary technique for passing dau over
`Jirmwar� used for l;CCUre lrln�c
`lbe present invention
`tioos. lo par1icular, in an 25
`a network;
`organization of tbc software aod
`ured to provide at least secure data transfers,
`electromc module based system, the module can be coofig·
`FIG. 11 is an exemplary
`
`digital signa­
`tures or to authorize
`firmware within a module; and
`monetary trans.actions.
`2. Description
`30
`firmwa"" within a module.
`
`FlO. 12 is an exemplary configuration of software and
`of Related Art
`Prese_ntly, c�it cards that bave
`ated wllb tbcm, are a preferred
`a magnetic strip associ­
`medium in tbe market place. A card user can take tbe card
`monetary trao.saction
`DETAILED DllSCRIPTI
`ON OF A PRESEN11.Y
`PREFERRED EXEMPLARY EMBODIMENT
`
`to an automatic easb machine, a local store or a bank and
`In many instances the card is 35
`FlO. 1 depicts a block diagram of an exemplary module
`make monetary transactions.
`10 that incorporates ao exemplary embodiment of the
`The magnetic strip card is u.o:ed 10 help identify the card and
`
`
`used via a telephone interface to make monetary exchanges.
`circuit. It is uoderstood that the module 10 could
`
`
`present i.ovention. Tbe module circuitry can be a single
`
`user of the card. Tbe card provides a relatively low level of
`also be on multiple integrated or dcscrete clement circuits
`integralcd
`security for the transfer.
`Regardless, tbe card enables a card
`
`bolder 10 buy products, pay deb!& and make monetary 40
`Ces&nr 12, a real time clock 14, control circuitry .16, a math
`
`combined together. Tbe module 10 comprises a micropro·
`
`exchanges between separate bank accouniS.
`
`
`coprocessor 18, memory circuitry 20, input/output circuitry
`lmprovc!D<OniS bavc been made to the magnetic strip card.
`26, and an energy circuit.
`magnetic strips. In general the microcilcu
`There bave been cards created with microcircuits instead of
`1be module 10 could be made smaU enough to be
`of objects including. but not
`
`strip, is used to enable a card-reader to perfonn a rransaction. 45
`it,like a magnetic
`limited to a token, a card, a ring, a computer, a wallet, a key
`incorporated
`into a variety
`any object I bat can
`
`fob, badge, jewelry, Slamp, or practicaUy
`SUMMARY OF 111E INVENTION
`
`be grasped and/or articulated by a user of tbe object.
`
`
`The present invention is an apparatus, system and method
`so microproocs.'lDr, but could be 16, 32. 64 or any operable
`
`
`The microprocessor 12 is preferably an S·bit
`
`
`for communicating encrypted information between a pref·
`number of bits. The clock 14 provide$ timing for the: module
`The in,•ention comprises a module, that bL< a unique
`
`erably portable module aod a service provider's equipmeo�
`There can also be separate clock circuitry
`that •� capable of creatiog a random number,
`circuitry.
`14 that
`identification,
`provides a continuously running realtime clock.
`Co� example, a SALT, and pa.'l.<ing the random number, along
`
`wttb, for example, a request to exchange money, to a service
`handle very large oumbers. In par1icular, tbe coprocc&'!Or
`
`Tbe math coprocessor circuitry 18 is designed and used to
`prov�er's equipment Tbe service provider's equipment ss
`will handle the complex mathematics of RSAcocryption and
`may m return eocrypt the random number with a private
`public key {depending on the type nfuansa ction) elong with
`or
`decryption.
`The memory circuitry 20 may contain both rcad-ooly·
`
`
`other information aod pass the eocryptcd info�ation back
`
`10 the module as a signed certificate. 1lle module, upon
`one of ordinary skill in the: art would under·
`
`memory and non-volatile random-access-memory.
`60 Furthermore,
`
`rccciviog tho signed c.;rtificatc, will
`on the type of
`memory, EPROM, SRAM aod a variety
`docrypt the certificate
`could be used 10 create an
`stand that volatile
`of
`tramactioo) and compare the decrypted
`with a public or private key (depeoding
`original random niUDber. Furthermore, if the numbetli arc the
`other types of memory circuitry
`number with the
`
`equivalent device.
`same tbcn IlK transaction that was requested may be deemed
`secure and thereby proceeds. The module is capable of time
`
`Control circuitry 16 provides timing, latebiog and various
`stamping and storing in memory information about the
`
`6S necessary control functions !or the entire circuit.
`An inpuVoutput
`
`
`circuit 26 enables bidirectional commu­
`with the module 10. The iopuVoutput
`
`transaction for later review.
`nication
`
`circuitry 26
`
`Page 18 of 544
`
`

`
`prefenbly
`
`input buffer. For commwtication
`
`3
`
`
`
`output circuitry 26.
`
`Service Providers
`bus, one·
`number aod complexity
`transaction group 40. Example$ of
`
`that can be defined within a ttansactioo group 40 are tbe
`the
`following:
`
`RSAModi>M
`RSA E:lpooc.lt
`1butd.OO Script
`Tnu•csklo Couou:r
`Money RcJilttr
`DeiiNdor
`
`Clocl O«oct Raado .. SALT
`Coollp•tlo• o. ..
`lnpUI Dolo
`Outpul o. ..
`
`circuitry in the module 10. The energy circuit
`
`capacitor,
`or any other equivalent
`energy producing circuit or means.
`The firmware architect
`ure of a prefem:d embodiment
`module and a series of sample applica­
`
`[earure set of
`
`
`
`
`
`for
`
`intended to be used first by
`
`examples
`the module 10 and to explain
`otrers. These applications
`tbe capabilities
`Within each transaction group 40 tbe module 10 will
`
`
`of tbe invention, but instead bring to light a sampling of its
`
`initially aa::ept certain commands which have an irreversible
`capabilities.
`
`effect. Once any of these irreversible commands are
`gtOup 40, they remain in effect
`
`6,105,013
`4
`comprises at least an output buffer 28 aod an
`via a one-wire
`vices in tbc same module 10. The number of independent
`that can be supported depends on tbe
`wire interface circuitry 32 can be included with the input/
`of tbe objects 42 defined in each
`some of the objects 42
`All ener&Y circu it 34 may be occessuy to maintain
`memory circuitry 20 and/or aid in powering the other
`34 could
`consist of a batlcry,
`RIC circuit, pbotovoltaie cell,
`of a 10
`secure transaction
`tions using tbe module 10 will now be di'ICOSSC d. The.�
`are intended to illu.� rate a preferred
`
`the services that the module
`IS
`by no means limit
`executed in a transaction
`20 until the end of the module's
`useful life or until tbe lr811S·
`I. OVERVIEW OP Till! PREFERRED MODULE
`AND ITS liiRMWARE DESIGN
`action group 40, to wbicb it applies, is deleted from the
`
`
`effect untillbe cod o£ the module's life
`
`The module 10 preferably contains a general-purpose,
`
`
`
`module 10. In addition, there are certain commands which
`
`8051-compatiblc micro controller 12 or a reasonably similar
`
`
`for large integers 25
`have an irrever:sil,le
`clock 14, a high­
`
`
`product, a continuously ruo.ning real·time
`(math coprocesso r) 18, input and output
`or until a master erase command is issued to erase !he entire
`
`
`cussed funbcr below.
`
`
`spec:<� modular exponentiation accelerator
`
`contents of the module 10. The.5C commands will be dis­
`buffers 28, 30 with
`Kbytes of ROM memory 22 with pre programmed
`
`These commands are essential to give
`data, 32
`a one-wire interface 32 for sending and receiving
`e RAM) 24 for storage of
`the Service Provider the necessary control over the opera·
`some of the irreversible
`oommands are:
`firmware,
`
`of lions that can be performed by tbe End User. Examples
`
`16 that enables the micro 30
`8 Kbytes of NVRAM (non-volatil
`
`critical data, and control circuitry
`
`
`
`controller 12 to be powered up to interpret and act on the
`Loci: Object
`l'rivolizoObj«t
`data placed in an input cirocuitry 26. The module 10 draws
`loct M�I•A-O.t,...
`12, clock 14, memory 20, buffers 28, 30, one-wire
`Loclt 'rn.ocsioo Oroop
`
`it$ operating power from the one-wire line. The micro
`
`lerator 18, and 35 -------------------­
`controller
`Jfi are preferably
`ceotcrs on its abiliry to
`Since much of the module's
`front-end 32, moc.lular exponentiation aa::e
`
`
`in a stainless steel microcao using
`control circuitry
`integrated on a single
`utility
`
`silicon cbip and packaged
`
`keep a sccn:t, lbe Privatiu comm�d is a very imponant
`
`techniques which make it virlllally impossible to
`packaging
`Once the module 10, u a wbolc, is locked, the remaining
`
`irreversible command.
`for u.� 40
`
`probe tbe data in the NVRAM 24 without destroying the
`NVRAM memory 24 is allocated for 1 circular buJrer
`sucb as tbose described below. One
`
`data. Initially, most of the NVRAM 24 is available
`
`an audit trail of previous tra.usactioos. Each of tbe
`slciU will understand that there are many com·
`to $Upport applications
`balding
`of ordia.ry
`memory can be used, or an interface
`transactioos
`ate ideot.iJicd by the number of the transaction
`
`
`parable variations
`of the module design. For example,
`could be used. The silicon cbip can be packaged in 45
`
`group, the number of the transaction script 40 within the
`volatile
`other than a
`card.�. rings etc.
`
`group, and the date/time stamp.
`specified
`one-wire
`44 in
`'lbe module 10 is preferably
`
`
`
`The fundamental concept implemented by the firmware is
`credit
`wbo loads the module 10 with data to
`scripts
`
`tbal tbe Service Provider can store transaction
`among objects that he wishes the End User 10 be able to
`
`
`a transaction group 40 to perform only those operations
`a Service Provider
`
`The Service Provider
`User who issues commauds to tbe module 10 to perform
`
`
`enable it to perform useful functions, and second by an End
`keys) that allow the module JO
`can also store and privatize
`so perfonn.
`
`RSAkey or keys (encryption
`operations
`for the benefit on behalf of the Service Provider
`
`
`thereby guaranteeing their authenticity.
`
`to "sign" traosactioos on behalf of the Service Provider,
`or the End User. For this reason, the module 10 offers
`
`By privatizing and/
`
`
`
`
`functions to support the Service Provider in setting up tbe
`offered by the 55
`
`or locking one or more objects 42 in tbe transaction group
`
`
`module for an intended application. It also offers functions
`
`to do on his behalf. The End User
`Scrvi<:<: Provider.
`
`
`40, the Service Provider maintains control over what the
`
`
`to allow tbc l!nd User to invoke the services
`scripts 44 and is therefore
`can reserve a block of NVRAM
`module 10 is allowed
`42 that can be performed
`cannot add new traMactinn
`Each Service Provider
`
`to FIGS. U and 12). A transaction
`
`
`limited l o the operations on objects
`memory to suppon its services by creating a uansaclioo
`
`
`with the transaction scripts 44 programmed
`is simply a set of objects 42 that arc defined by the Service 60
`by the Service
`group 40 (refer
`group 40
`
`These objects 42 inc lude both data objects
`Provider.
`This section presents a serie& of practica.l
`lime stamps, etc.) and transaction saipls 44 which specify
`the module 10, ranging from the simplest
`oomplex. Each of tbese applications
`
`creates his own transaction group 40, 6S
`to make it clear why tbe module 10 is tbe central
`
`Provider.
`
`(encryption
`
`keys, trausaction counts, money amounts. date/
`
`II. USAGE MODELS OF ·rnE MODULE
`
`
`bow to combine tbe data objects in useful ways. Eacb
`
`Service Provider
`detail
`which is independent of every other transaction group 40.
`
`
`
`enabling tecboolo gy for tbat application.
`
`
`
`Hcocc, multiple Service Providers can offer different ser·
`
`applications of
`
`to the most
`is described in eoough
`
`Page 19 of 544
`
`

`
`
`
`
`
`provider's computer for new ma.il. The ma.il R:$ides on the
`
`transaction
`loads it into three objects
`group 40 (ooe
`
`
`
`objects, E RSA modulus object, N, and two RSA exponent
`
`and D). He thea privatizes the decryption
`Finally,
`
`
`placed in the input data objc;ct, encrypt it with the modulus
`
`a
`
`transaction
`
`any additional
`
`retric;ve
`
`provides the password when it polls the provider's com·
`calls the transaction saipt
`puler.
`place the decrypted
`n:sult in the output data object A4. He
`It is Cro;qu�ntly
`
`
`IDEA key from the output data
`configuration
`then reads the decrypted
`mail £rom a different computer.
`distribution of the e-mail in plain t�xt form and the wcaknc..-.�
`impos.�ible for anyone, including
`as very
`of password prolcelion,
`mail without
`
`physical possession
`having
`iMecure.
`To oounter this pr

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


Or .

Accessing this document will incur an additional charge of $.

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

Accept $ Charge
throbber

Still Working On It

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

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

throbber

A few More Minutes ... Still Working

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

Thank you for your continued patience.

This document could not be displayed.

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

Your account does not support viewing this document.

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

Your account does not support viewing this document.

Set your membership status to view this document.

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

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

Become a Member

One Moment Please

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

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

Your document is on its way!

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

Sealed Document

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

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


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket