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:
`
`12 JAN 2012
`
`COMPASS EXH. 1002 - Page 1 of 341
`
`

`
`-
`
`-lop__
`
`mr
`
`U.S. UTILITY PATEN,T-APPLIcATION
`
`SCANNEDPEG..
`
`PATENT DATE
`
`I
`
`SECTOR
`
`ICLASS
`
`SUBCLASS
`
`:7C
`
`ART UNIT
`
`EAINER((
`
`FILED WITH: []DISK (CRF),f FICHE
`(ARtached in pocket on dght Inade flap)
`
`-
`
`PREPARED AND APPROVED FOR ISSUE
`
`ORIGINAL
`
`ISSUING CLASSIFICATION
`CROSS REFERENCE(S)
`
`SUBCLASS
`
`CLASS
`7o5§
`t5_
`INTERNATIONAL CLASSIFICATION
`
`CLASS
`
`Z33
`3 O
`
`SUBCLASS (ONE SUBCLASS PER BLOCK)
`
`739
`30
`
`_
`
`_
`
`_
`
`_
`
`_
`
`__
`
`___
`
`___
`
`__________
`
`1
`
`-
`
`-
`
`4
`
`//
`
`T3__
`
`__
`
`___
`
`it]Y
`
`-
`
`-El
`
`Continued on issue Slip inside File Jacket
`
`o TERMINAL
`DISCLAIMER
`
`SheetsDf wg,
`
`,DRAWINGS
`Figs., Drwg.
`
`Pinttig.
`
`CLAIMS ALLOWED
`Total Claims,,
`Print Claim for 0.0.
`
`_____ ____
`
`_
`
`LH a) The term of this patent
`subsequent to ________(date)
`has been disclaimed.
`Hb) The term of this patent shall
`not extend beyond the expiration date
`of U.S Patent. No.
`
`V
`
`i 12-
`
`_______________
`
`_
`
`______________
`(Asisint Examniner)
`KtIin.tJY
`
`NOTICE OF ALLOWANCE MAILED
`
`(Dale)
`
`Z
`
`-Y6L
`
`Amount Due
`
`I
`
`ate P id
`
`ISSUE FEE__
`
`jPnmary Exannine?
`
`(Date)T
`
`-_months of
`L1c) The terminal
`this patent have been disclaimed.
`
`I //YOO
`J
`
`(Date)
`
`ISSU E B,EATCHW
`
`l
`-
`
`4
`
`.
`
`"ntumnExaminr
`
`WARNING:
`The information disclosed herein may be restricted. Unauthorized disclosure may be prohibited by the 'United Stales
`Possession outside the U.S. Patent & Trademark Office is restricted to authorized employees and contractors only.
`Form PT0-436A
`(Re, 10t97)
`
`Fov"At~ wMil~%loli-80 se
`ISSUEF
`FFII
`PIEBEL AREA)
`
`(FACE)
`
`de"Title 35, Sections 122, 181 and 368.
`
`'s~ifrrrI Ela
`
`COMPASS EXH. 1002 - Page 2 of 341
`
`

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

`
`1/12/2000  Notice of Allowance Data Verification Completed 
`2/2/2000  Workflow ‐ File Sent to Contractor 
`4/14/2000 
`Issue Fee Payment Verified 
`4/14/2000  Workflow ‐ Drawings Finished 
`4/14/2000  Workflow ‐ Drawings Matched with File at Contractor 
`4/14/2000  Workflow ‐ Drawings Received at Contractor 
`4/14/2000  Workflow ‐ Drawings Sent to Contractor 
`5/3/2000  Workflow ‐ Complete WF Records for Drawings 
`6/30/2000  Workflow ‐ Complete WF Records for Drawings 
`7/2/2000  Application Is Considered Ready for Issue 
`7/28/2000 
`Issue Notification Mailed 
`8/15/2000  Recordation of Patent Grant Mailed 
`9/29/2004  Post Issue Communication ‐ Certificate of Correction 

`
`COMPASS EXH. 1002 - Page 4 of 341
`
`

`
`IOU. S. PTO
`
`PATENT APPLICK TION
`
`09041 l90
`
`CONTENTS
`Date received
`(Inc. C. of M.)
`or
`Date Mailed
`
`INITIALS
`
`-
`
`.____
`
`Date received
`(Inicl. C. of M.)
`or
`Date Mailed
`
`papers.
`
`'p-Vt
`3 A-V-i
`
`43.
`
`44. _
`
`47.
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`48. _
`t-3 49.
`50. _
`
`_
`
`611
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`1
`
`52.
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`.53
`
`_
`
`_
`
`91.
`
`12.
`A13.
`14.
`
`15.
`
`20..-
`
`21..
`
`22..-
`23..
`
`24..
`
`25..
`
`26..
`27..
`
`28.,
`
`29..
`30..
`31.
`
`32.
`33.
`
`34.
`F35.
`36.
`
`37.
`
`38.
`
`39.
`
`40.
`
`41'.
`
`o~~~7 ~54.
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`55.
`
`56.
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`_
`
`Ij_610
`
`el-L A57.
`
`V(60.
`61.
`62.
`
`-t
`
`63.
`
`64.
`
`65.
`66.
`
`67.
`
`68.
`
`69.
`
`70.
`71.
`72.
`
`73.
`
`74.
`
`75.
`76.
`77.
`
`78.
`
`79.
`
`80.
`81,
`
`82.
`
`(FRONT)
`
`COMPASS EXH. 1002 - Page 5 of 341
`
`

`
`SEARCHED
`
`Class
`
`Sub.
`
`Date
`
`Exmr.
`
`Z3)?
`
`rSEAM NOTES
`
`I(INCLUOING SEARCH STRATEGY)
`
`Exmr.
`
`'$7
`
`P44
`
`A4
`
`,CZ7~ /26 d
`A.; -Zi~~
`c4~A 4r~1cn.X)
`
`u4/z'-s -
`
`a
`-A-n ,,&~r
`A-' n- ~
`o4q34&
`7c4/9t ~44- 9i*;
`
`//Z
`
`INTERFERENCE SEARCHED
`Class
`Sub.
`Date
`Ex
`F?o
`
`31
`
`??)
`
`5i,
`
`/
`
`z3f 2 79-
`3 ?o
`'
`
`/56/17/0
`
`(RIGHT OUTSIDE)
`
`COMPASS EXH. 1002 - Page 6 of 341
`
`

`
`ISSUEW SLIP STAPLE AREA (for additional cross references)
`
`POSITION
`
`~INITIALSIDN.AT
`POSITION
`
`ID NO.
`
`DATE
`
`FEE DETERMINATION
`O.I.P.E. CLASSIFIER
`FORMALITY REVIEW
`
`I_____
`(PoIA_ f-
`
`SA/757;'_
`
`INDEX OF CLAIMS
`.... ...................... Rejected
`.... ....................... Allowed
`(Through numeral) Canceled
`
`. .. ........I .
`............ Restricted
`
`Non-elected
`.................................
`Interference
`I., ....................
`..........
`Appeal
`.. ............
`I ..................
`Objected
`.................................
`
`Claim
`
`Date
`
`Claim
`
`Date
`
`115
`116
`117
`
`110
`
`115
`116
`117
`118
`19
`
`117
`112
`119
`
`122
`123
`116
`117
`
`118
`
`129
`
`121
`12
`13
`124
`125
`236
`127
`128
`239
`1401
`141
`
`14
`13
`13"
`
`f45
`141
`147
`
`LN 6
`o T3
`
`54
`55
`56
`57
`581
`591
`
`64
`65
`
`66
`67
`
`69
`
`70
`71
`721
`
`74
`75
`76 1
`
`77
`8
`
`7081
`
`82
`
`84
`85
`86
`87
`88
`89
`
`901
`91
`2
`
`93
`
`94
`
`96
`97
`
`99
`
`10
`
`1
`
`1
`
`1
`
`.
`
`.
`
`.
`
`.
`
`.
`
`if more than 150 claims or 10 actions
`staple additional sheet here
`
`(LEFT INSIDE)
`
`COMPASS EXH. 1002 - Page 7 of 341
`
`

`
`
`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.
`
`COMPASS EXH. 1002 - Page 8 of 341
`
`

`
`United States Patent [19
`Curry et al.
`
`[54] METHOD, APPARATUS, SYSTEM AND
`FIRMWARE FOR SECURE TRANSACTIONS
`
`[75]
`
`Inventors: Stephen M. Curry, Dallas; Donald W.
`Loomis, Coppell; Christopher W. Fox,
`Dallas, all of Tex.
`
`[73] Assignee: Dallas Semiconductor Corporation,
`Dallas, Tex.
`
`[21] Appl. No.: 09/041,190
`
`[22] Filed:
`
`Mar. 10, 1998
`
`Related U.S. Application Data
`
`[63] Continuation of application No. 08/594,983, Jan. 31, 1M9,
`Pat. No. 5,748,740.
`provisional application No. 60/004,510, Sep, 29, 1995.
`[60]
`.......... . . . . . . . . . . . . H04L 9/00; H-04L 9/30
`Int. Cl1.
`[51]
`[52] U.S. Cl ......................
`705/65; 235/379; 380/30;
`70517S; 713/156; 713/173; 713/174
`[58] Field of Search...................380/4, 9, 21, 23,
`380/24. 25, 30, 46, 49, 50; 235/379, 380;
`705/64, 65, 66, 67, 68, 69, 75; 713/155,
`156, 157, 158, 168, 172, 173, 174
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`3/1988 Smith.............................
`4,731,842
`5,577,120 11/1996 Penzias...........................
`5,748,740
`5/1998 Curry et al ......................
`
`380/24
`380/23
`380/25
`
`FOREIGN PATENT DOCUMENTS
`
`0172670A2
`0186981A2
`0194839A2
`0294248A1
`0337 185A2
`045 806A2
`06 240 14A2
`4406602A1
`W09 3/08545
`
`European Pat. Off..
`European Pat. off. .
`European Pat, Off. .
`European Pat. Off. .
`European Pat. Off. .
`European Pal. Off. .
`European Pat. Off..
`Germany
`WIPO.
`
`I ul
`IIlIl IIlul
`
`US006105013A
`[ill Patent Number:
`[45] Date of Patent:
`
`liiIIII11111
`
`6,105,013
`Aug. 15,2000
`
`OTHER PUBLICATIONS
`Information Processing Standards Publication,
`Federal
`(FIPS PUB) 186, Digital Signatur Standard (DDS), Issued:
`May 19, 1994.
`Information Processing Standards Publication,
`Federal
`(FIPS PUB) 190-1, Secure Hash Standard, Issued: May 31,
`1994.
`Microso,ft Corporation's Secure Transaction Technology,
`SlIT Wire Formats and Proloc version 0.902, Oct. 5, 1995.
`Matonis, Jon W., Digital Cash and Monetary Freedom,
`http;//www.info,isoc.org/HMP/PAPER/136/htmlpa-
`per.html, as of Apr. 1995.
`MasterCard, Secure Electronic Payment Protocol, Draft
`Version 1.1, Sep. 29, 1995.
`MasterCard, Secure Electronic Payment Protocol, Part 2;
`Functioanal Specifications, Draft Version 1.1, Sep. 29, 1995.
`MasterCard, Secure Electronic Payment Protocol, Part 3;
`Payment System Specification, Draft Version 1.1, Sep, 29,
`1995.
`MasterCard, Secure Electronic Payment Protocol, Part 4;
`Certificate Management Specification, Draft Version 1.1,
`Sep. 29, 1995.
`SGS-Thomnson Microelectronics, CMOS Crypto-Computer
`Family, Advance Datasheet ST16xF74, Oct., 1993.
`SGS-Tbornson Microelectronics, CMOS MCU Based Safe-
`guarded Smartcard IC with Modular Aritmetic Processor,
`Advanced Data Sheet, ST16CF54, Sep. 1994.
`Micro Card, CP80 Products Cryato Card, Jan. 25, 1995.
`Wayner, Peter,Digital Ca$h, Commerce on the Net, Chpt. 3
`& 10 and Appendix B, Jun. 1995.
`Schneier, Bruce, Applied Cryptography Chpt. 19, pp.
`461-482, 1996.
`Primary Examiner-Bernarr E_ Gregory
`Attorney, Agent, or Firm-Jenkens & Gilchrist
`[57]
`ABSTRACT
`
`The present invention relates to an electronic module used
`for secure transactions. More specifically, the electronic
`module is capable of passing information back and forth
`between a service provider's equipment via a secure,
`encrypted technique so that money and other valuable data
`can be securely passed electronically. The module is capable
`of being programmed, keeping track of real time, recording
`transactions for later review, and creating encryption key
`pairs.
`
`16 Claims, 8 Drawing Sheets
`
`-15
`
`22
`
`24
`
`COMPASS EXH. 1002 - Page 9 of 341
`
`

`
`U.S. Patent
`
`Aug. 15,2000
`
`Sheet 1 of 8
`
`6,105,013
`
`12
`
`18.
`
`28
`30
`
`26
`
`321
`
`10
`
`14
`
`16
`
`22
`20
`24
`
`.34
`
`FIG. 1
`
`CREATE TRANSACTION GROUP
`
`V Si
`
`GENERATE KEYS AND LOAD
`INTO A TRANSACTION GROUP
`
`t S2
`
`1PRIVATIZE DECRYPTION
`
`CREATE TRANSACTION
`
`~~yTrS 4
`V S
`
`LOCK TRANSACTION GROUP
`
`FIG. 2
`
`COMPASS EXH. 1002 - Page 10 of 341
`
`

`
`U.S. Patent
`
`Aug. 15, 2040
`
`Sheet 2 of 8
`
`6,105,013
`
`USER RECEIVES SECURE E-MAI
`IDEA KEY
`AND ENCRYPTED
`
`-Al
`
`MODULE RECEIVES ENCRYPTED
`INPUT
`IDEA KEY IN AN
`OBJECT OF A TRANSACTIONGRU
`
`JrA
`
`FIG. 3
`
`TRANSACTION SCRIPT DECRYPTS
`
`IDEA KEY IS USED TO DECRYPT
`THE SECURE E-M4AIL
`
`CREATE TRANSACTION GROUP FOR
`PERFORMING ELECTRONI
`NOTARY FUNCTIONS
`
`CREATE OBJECT(S) FOR
`RSA ENCRYPTION KEYS
`
`CREATE OBLECT FOR TIMEKEEPING
`
`FIG. 4
`
`CREATE TRANSACTION SEQUENCE
`(COUNTER)
`OBJECT
`
`-A4
`
`kB3
`BK 4
`
`CREATE A TRANSACTION SCRIPT THAT CREATES
`INPUT DATA
`A CERTIFICATE BY COMBINING AN
`OBJECT WITH THE TRUE TIME, THE VALUE OF
`THE TRANSACTION COUNTER AND A UNIQUE
`NUMBER ASSOCIATED TO THE MODULE, THEN
`SIGNS THE CERTIFICATE
`
`6-- 5
`
`PRIVATE OBJECTS
`
`I
`LOCK TRANSACTION GROUP
`
`V B6
`
`B7
`
`COMPASS EXH. 1002 - Page 11 of 341
`
`

`
`U.S. Patent
`
`Ag 5 00
`Aug. 15,2000
`
`Sheet 3 of 8
`Set3o
`
`691059013
`,0,1
`
`Cl
`
`k1Z
`
`ItC3
`
`C4
`
`MESSASGE IS PLACED IN AN
`INPUT DATA OBJECT
`
`TRANSACTION SCRIPT COMBINE
`MESSAGE WITH OTHER DATA AND
`SIGNS THE COMBINATION WITH A
`PRIVATE KEY CREATING AN
`ENCRYPTED CERTIFICATE
`
`THE CERTIFICATE AND ORIGINAL
`DOCUMENT CAN BE
`STORED ELECTRONICALLY
`
`FIG. 5
`
`PREPARE MODULE
`CREATE TRANSACTION GROUP
`COMPRISING: MONEY OBJECT
`TRANSACTION COUNT OBJECT
`PRIVATE KEY AND
`PUBLIC KEY OBJECTS ETC.
`
`, -Dl1
`
`PRIVATIZE PRIVATE KEY RELATED OBJECT(S)D2
`
`I-03
`V04
`
`CREATE TRANSACTION SCRIPT TO
`PERFORM MONETARY TRANSACTION
`
`LOCK TRANSACTION GROUP
`
`PUBUISH PUBLIC KEY
`
`FIG. 6
`
`COMPASS EXH. 1002 - Page 12 of 341
`
`

`
`U.S. Patent
`
`Aug. 15,2000
`
`Sheet 4 of 8
`
`6,105,013
`
`USER WANTS TO MAKJE
`A PURCHASE
`USING A MODULE
`
`ME-RCHANT
`READS MODULE'S
`ID NUMBER
`
`CREATES DATA PACKET
`INCLUDES A
`THAT
`'RANDOM SALT' AND
`MODULE ID NUMBER
`
`CREATES A SIGNED
`MERCHANT CERTIFICATE
`BY ENCRYPTING DATA
`PACKET WITH
`MERCHANT'S PRIVATE KEY
`
`SUBTRACT PURCHASE
`AMOUNT FROM
`MONEY REGISTER
`
`ATTACHES PURCHS
`PRICE TO MERCHANT'
`SIGNED CERTIFICATE
`
`INCREMENT
`TRANSACTION COUNT
`
`7
`
`rhE
`
`BANK/SERVICE PROVIDER
`
`VE2
`
`K4
`
`~E5
`
`COMBINE TRANSACTION
`COUNT WITH MERCHANT'S
`SIGNED CERTIFICATE
`AND PURCHASE AMOUNT;
`THEN ENCRYPT WITH
`SERVICE PROVIDER'S
`PRIVATE KEY THEREBY
`CREATING A SIGNED
`MODULE CERTIFICATE
`
`RECEIVE
`ITEM
`SERVICE PURCHASED
`
`RECEIVED SIGNED MODULE L-E9
`CERTIFICATE AND DECRYPT
`USING SERVICE PROVIDER'S
`PUBLIC KEY
`
`CONFIRM THAT:
`1) AMOUNT OF PURCR S
`ASE
`IS CORRECT
`le
`2) DATA IN MERCHANT'
`IS THE
`CERTIFICATE
`SAME AS ORIGINALLY
`
`E13
`
`E14f
`
`E15
`
`FIG. 7
`
`RECEIVE MODULE'S
`SIGNED CERTIFICATE
`
`SET CERTIFICATE WITH SERVICE
`PRVDRSPBIKE
`
`CERTIFICATE WITH
`MERCHANT'S PUBLIC KEY
`
`IF BOTH CERTIFICATES ARE
`OK THEN ADD PURCHASE
`AMOUNT TO MERCHANT'S
`BN BAANCE
`
`COMPASS EXH. 1002 - Page 13 of 341
`
`

`
`U.S. Patent
`
`Aug. 15,2000
`
`Sheet 5 of 8
`
`6,105,013
`
`WANTS TO ADD AN
`AMOUNT OF CASH
`TO MODULE
`
`F3j
`
`CREATE RANDOM
`SALT NUMBER
`
`DECRYPT SIGNED SERVICE
`PROVIDER CERTIFICATE
`WITH SERVICE PROVIDER'S
`PUBLIC KEY AND CHECK
`THE ID NUMBER AND
`RANDOM SALT NUMBER
`
`IF THE ID NUMBER
`AND RANDOM SALT NUMBER
`IS UNCHANGED THEN ADD
`THE CASH AMOUNT TO THE
`MONEY REGISTER
`OF THE MODULE
`
`BANK/SERVICE PROVIDER
`
`READ MODULE ID
`NUMBER AND AMOUNT
`OF CASH REQUESTED
`
`7F2
`
`REQUEST MODULE TO
`PRODUCE A RANDOM SALT
`
`COMBINE SALT, ID NUMBER
`AND CASH AMOUNT AND
`ENCRYPT WITH SERVICE
`PROVIDER'S PRIVATE KEY,
`THEREBY CREATING A
`SIGNED SERVICE
`PROVIDER CERTIFICATE
`
`4
`
`FIG. 8
`
`F5
`
`G2>
`
`EXAMPLE OF
`TRANSFER FROM USER'S MODULE TO
`USER/PAYER
`
`MERCHANT'S MODULE
`MERCHAN/MMxE
`
`RECEIVE SALT AND
`REQUEST FOR MONEY
`
`SUBTRACT REQUESTED
`MONEY AMOUNT FROM
`A MONEY REGISTER
`
`CREATE SIGNED PAYMENT
`CERTIFICATE BY COMBINING
`SALT WITH PAYMENT
`AMOUNT THEN ENCRYPTING
`WITH BANKER/SERVICE
`PROVIDER'S ORIVATE KEY
`
`PAYER = USER
`FIG. 9
`
`1. CREATE RANDOM SALT
`2. DETERMINE-AMOUNT OF
`MONEY TO BE
`RECEIVED FROM PAYER
`
`l
`KG
`
`RECEIVE SIGNED PAYMENT
`CERTIFICATE AND DECRYPT
`USING SERVICE PROVIDER'S
`PUBLIC KEY
`
`CHECK DECRYPTED SALT
`AGAINST ORIGINALLY SENT SALT
`IF THEY ARE THE
`SAME ADD PAYMENT AMOUNT
`TO MONEY REGISTER
`
`_
`
`VG3
`
`VG4
`
`COMPASS EXH. 1002 - Page 14 of 341
`
`

`
`U.S. Patent
`
`Aug. 15,2000
`
`Sheet 6 of 8
`
`6,105,013
`
`TRANSACTION OVER A NETWORK WITH A MODULE
`
`HI
`
`USER/PAYER
`
`CREATE RANDOM
`PAYER SALT
`
`RECEIVE FIRST DATA PACKET
`AND DECRYPT WfHSEVC
`PROVIDER'S PULI KE
`
`COMPARE DECRYPTED
`PAYER SALT WNTH ORIGINAL
`PAYER SALT
`IF THEY ARE THE SAME.
`SUBTRACT AMOUNT OF MONEY
`TO BE SENT FROM
`PAYER MONEY REGISTER
`
`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
`
`H4
`
`H5<
`
`FIG. 10
`
`MERCHANTPAEE
`
`RECEIVE PAYER SALT AND
`COMBINE WITH AMOUNT OF
`MONEY TO BE RECEIVED, AND
`:NCLUDE A PAYEE SALT, THEN
`ENCRYPT WITH SERICE
`PROVIDER'S PRIVATE KEY TO
`CREATE A FIRST DATA PACKET
`
`RECEIVE SECOND DATA PACKErr H6
`AND DECRYPT WITl EVC
`PROVIDER'S PULIKE
`
`EXTRACT DECRYPTED PAYEE
`SALT AND COMPARE WITH
`PAYEE SALT PROVIDED EARLIER
`IF BOTH ARE THE SAME ADD
`MONEY AMOUNT TO
`PAYEE MONEY REGISTER
`
`H7
`
`COMPASS EXH. 1002 - Page 15 of 341
`
`

`
`U.S. Patent
`
`Aug. 15, 2000
`
`Sheet 7 of 8
`
`6,105,013
`
`1 -WIRE
`1/0
`
`r
`
`COMPASS EXH. 1002 - Page 16 of 341
`
`

`
`U.S. Patent
`
`Aug. 15, 2000
`
`Sheet 8 of 8
`
`6,105,013
`
`1/0 DATA BUFFERS
`
`SYSTEM DATA
`COMMON PIN, RANDOM
`NUMBER REGISTER, ETC...
`
`OUTPUT DATA OBJECT #1
`OUTPUT DATA OBJECT #2
`WORKING REGISTER
`
`4O
`40~
`
`TRANSACTION GROUP 1
`TRANSACTION GROUP 2
`
`TRANSACTION GROUP N
`
`AUDIT TRAIL*
`
`CIRCULAR BUFFER OF
`TRANSACTION RECORDS
`
`*THE AUDIT TRAIL DOES
`NOT EXIST UNTIL THE
`MICRO-IN-A-CANTM
`HAS BEEN LOCKED
`
`ONCE LOCKED ALL
`UNUSED RAM IS
`ALLOCATED FOR
`THE AUDIT TRAIL
`
`FIG. 12
`
`TRANSACTION GROUP
`GROUP NAME,
`PASSWORD AND ATTRIBUTES
`OBJECT 1
`OBJECT 2
`
`OBJECT N
`
`TRANSACTION RECORD
`
`COMPASS EXH. 1002 - Page 17 of 341
`
`

`
`6,105,013
`
`to
`
`25
`
`45
`
`1
`METHOD, APPARATUS, SYSThM AND
`FIRMWARE FOR SECURE TRANSACTIONS
`RELATED APPLICAT'IONS
`'This application is a continuation of application Ser. No.
`08/594,983 filed Jan. 31, 1996, now U.S. Pat. No. 5,748,740,
`and claims the benefit of U.S. Provisional Application No.
`60/004,510, filed Sep- 29, 1995.
`The following applications of common assignee contain
`related subject matter and are hereby incorporated by ref-
`erence;
`filed Jan. 31, 1996, entitled
`Ser. No.; 08/595,014,
`METHOD, APPARATUS, AND SYSTEM FOR TRANS-
`FERRING UNITS OF VALUE, now U.S. Pat, No. 5,805,
`702;
`filed Jan, 31, 1996, entitled
`Ser. No.; 08/594,975,
`TRANSFER OF VALUABLE
`INFORMATION
`BETWEEN A SECURE MODULE AND ANOTHER
`MODULE, now pending.
`
`BACKGROUND OF THE INVENTION
`1. Technical Field of the Invention
`The present invention relates to a method, apparatus and
`firmware used for secure transactions. In particular, in an
`electronic module based system, the module can be config-
`ured to provide at least secure data transfers, digital signa-
`tures or to authorize monetary transactions.
`2. Description of Related Art
`Presently, credit cards that have a magnetic strip asSoci-
`ated with them, are a preferred monetary transaction
`medium in the market place. A card user can take the card
`to an automatic cash machine, a local store or a bank and
`make monetary transactions. In many instances the card is
`used via a telephone interface to make monetary exchanges.
`The magnetic strip card is used to help identify the card and
`user of the card. The card provides a relatively low level of
`security for the transfer. Regardless, the card enables a card
`to buy products, pay debts and make monetary
`holder
`exchanges between separate bank accounts.
`Improvements have been made to the magnetic strip card.
`There have been cards created with microcircuits instead of
`magnetic strips. In general the microcircuit, like a magnetic
`strip, is used to enable a card-reader to perform a transaction.
`
`SUMMARY OF TIlE INVENTION
`The present invention is an apparatus, system and method
`for communicating encrypted information between a pref-
`erably portable module and a service provider's equipment.
`The invention comprises a module,
`that has a unique
`identification, that is capable of creating a random number,
`for example, a SALT, and passing the random number, along
`with, for example, a request to exchange money, to a service
`provider's equipment. The service provider's equipment
`may in return encrypt the random number with a private or
`public key (depending on the type of transction), along with
`other information and pass the encrypted information back
`to the module as a signed certificate. The module, upon
`receiving the signed certificate, will decrypt the certificate
`with a public or private key (depending on the type of
`transaction) and compare the decrypted number with the
`original random number. Furthermore, if the numbers are the
`same then the transaction that was requested may be deemed
`secure and thereby proceeds. The module is capable of time
`stamping and storing in memory information about the
`transaction for later review.
`
`2
`BRIEF DESCRIPTION OF THE DRAWINGS
`A more complete understanding of the method and appa-
`ratus of the present invention may he had by reference to the
`5following Detailed Description when taken in conjunction
`with the accompanying Drawings wherein;
`FIG. 1 is a block diagram of an embodiment of a module;
`FIG. 2 is an exemplary process for creating a transaction
`group;
`FIG. 3 is an exemplary technique for receiving an E-mail
`message;
`FIG. 4 is an exemplary technique for preparing a module
`for notary functions;
`FIG. 5 is an exemplary technique for using the module as
`15 a notary;
`HIG. 6 is an exemplary technique for preparing a module
`to perform a money transaction;
`FIG. 7 is an exemplary technique for performing a money
`2transaction using a module;
`FIG. 8 is an exemplary technique for performing a money
`transaction uising a module;
`FIG. 9 is an exemplary technique for performing a money
`transaction using a module;
`FIG. 10 is an exemplary technique for passing data over
`a network;
`FIG. 11 is an exemplary organization of the software and
`firmware within a module; and
`FIG. 12 is an exemplary configuration of software and
`30 firmware within a module.
`DETAILED DESCRIPTION OF A PRESENTL-Y
`PREFERRED EXEMPLARY EMBODIMENT
`HIG. 1 depicts a block diagram of an exemplary module
`35 10 that incorporates an exemplary embodiment of the
`present invention. The module circuitry can be a single
`integrated circuit. It is understood that the module 10 could
`also be on multiple integrated or descrete element circuits
`combined together. The module 10 comprises a microipro-
`40 cessor 12, a real time clock 14, control circuitry 16, a math
`coprocessor 18, memory circuitry 20, input/output circuitry
`26, and an energy circuit.
`to be
`The module 19 could be made small enough
`into a variety of objects including, but not
`incorporated
`limited to a token, a card, a ring, a computer, a wallet, a key
`fob, badge, jewelry, stamp, or practically any object that can
`be grasped and/or articulated by a user of the object.
`is preferably an S-bit
`The microprocessor 12
`50 microprocessor, but could be 16, 32, 64 or any operable
`number of bits. The clock 14 provides timing for the module
`circuitry. There can also be separate clock circuitry 14 that
`provides a continuously running real time clock.
`The math coprocessor circuitry 18 is designed and used to
`55 handle very large numbers. In particular, the coprocessor
`will handle the complex mathematics of RSA encryption and
`decryption.
`The memory circuitry 20 may contain both read-only-
`memory and non-volatile random-access-memory.
`60 Furthermore, one of ordinary skill in the art would under-
`st.and that volatile memory, EPROM, SRAM and a variety of
`other types of memory circuitry could be used to create an
`equivalent device.
`Control circuitry 16 provides timing, latching and various
`65 necessary control functions for the entire circuit.
`An input/output circuit 26 enables bidirectional commu-
`nication with the module 10. The input/output circuitry 26
`
`COMPASS EXH. 1002 - Page 18 of 341
`
`

`
`3
`preferably comprises at least an output buffer 28 and an
`input buffer. For communication via a one-wire bus, one-
`wile interface circuitry 32 can be included with the input/
`output circuitry 26.
`An energy circuit 34 may be necessary to maintain the
`the other
`memory circuitry 20 and/or aid in powering
`in the module 10. The energy circuit 34 could
`circuitry
`consist of a battery, capacitor. R/G circuit, photovoltaic cell,
`or any other equivalent energy producing circuit or means.
`The firmware architecture of a preferred embodiment of a
`secure transaction module and a series of sample applica-
`tions using the module 10 will now be discussed. These
`examples are intended to illustrate a preferred feature set of
`the module 10 and to explain the services that the module
`offers. These applications by no means limit the capabilities
`of the invention, but instead bring to light a sampling of its
`capabilities.
`
`I. OVERVIEW OF THE PREFERRED MODULE
`AN]) ITS FIRMWARE DESIGN
`The module 19 preferably contains a general-purpose,
`8051-compatible micro controller 12 or a reasonably similar
`product, a continuously running real-time clock 14, a high-
`speed modular exponentiation accelerator for large integers
`(math coprocessor) 18, input and output buffers 28,30 with
`a one-wire interface 32 for sending and receiving data, 32
`Kbytes of ROM memory 22 with preprogrammed firmware,
`8 Kbytes of NVRAM (non-volatile RAM) 24 for storage of
`critical data, and control circuitry 16 that enables the micro
`controller 12 to be powered up to interpret and act on the
`data placed in an input circcuitry 26. The module 10 draws
`the one-wire
`line. The micro
`its operating power from
`controller 12, clock 14, memory 20, buffers 28,30, one-wire
`front-end 32, modular exponentiation accelerator 18, and
`control circuitry 16 are preferably integrated on a single
`silicon chip and packaged in a stainless steel microcan using
`packaging techniques which make it virtually impossible to
`probe the data in the NVRAM 24 without destroying the
`data. Initially, most of the NVRAM 24 is available for use
`to support applications such as those described below. One
`of ordinary Skill will understand that there are many com-
`parable variations of the module design. For example,
`volatile memory can be used, or an interface other than a
`one-wire could be used. The silicon chip can be packaged in
`credit cards, rings etc.
`The module 10 is preferably intended to be used first by
`a Service Provider who loads the module 10 with data to
`enable it to perform useful functions, and Second by an End
`User who issues commands to the module 10 to perform
`operations on behalf of the Service Provider for the benefit
`of the End User. For this reason, the module 10 offers
`functions to support the Service Provider in setting up the
`module for an intended application. It also offers functions
`to allow the End User to invoke the services offered by the
`Service Provider.
`Each Service Provider can reserve a block of NVRAM
`memory to support its Services by creating a transaction
`group 40 (refer to FIGS. 11 and 12), A transaction group 40
`is simply a set of objects 42 that are definied by the Service
`include both data objects
`Provider. These objects 42
`(encryption keys, transaction counts, money amounts, date!
`imne stamps, etc.) and transaction scripts 44 which specify
`how to combine the data objects in useful ways. Each
`Service Provider creates his own transaction group 40,
`which is independent of every other transaction group 40.
`Hence, multiple Service Providers can offer different ser-
`
`6,105,013
`
`vices in the same module 10. The number of independent
`Service Providers that can be supported depends on the
`number and complexity of the objects 42 defined in each
`transaction group 40. Examples of some of the objects 42
`5that can be defined within a transaction group 40 are the
`following:
`
`10
`
`RSA Modulus
`RSA Exponent
`Transaction Script
`Transactionr Counter
`Money Register
`Destructor
`
`Clock Offset
`Random SALT
`Conifiguration Dama
`Input Dan
`Output Data
`
`15
`
`Within each transaction group 40 the module 10 will
`initially accept certain commands which have an irreversible
`irreversible commands are
`effect. Once any of these
`executed in a transaction group 40, they remain in effect
`20 until the end of the module's useful life or until the trans-
`action group 40, to which it applies, is deleted from the
`module 10. In addition, there are certain commands which
`have an irreversible effect until the end of the module's life
`or until a master erase, command is issued to erase, the entire
`25 contents of the module 10. These commands will be dis-
`cussed further below. These commands are essential to give
`the Service Provider the necessary control over the opera-
`tions that can be performed by the End User. Examples of
`some of the irreversible commands are:
`
`30
`
`35
`
`Privatize Object
`Lock Transaction Group
`
`Lock Object
`Lock Micro-In-A-Can
`
`Since much of the module's utility centers on its ability to
`keep a secret, the Privatize command is a very important
`irreversible command.
`Once the module 10, as a whole, is locked, the remaining
`40 NVRAM memory 24 is allocated for a circular buffer for
`holding an audit trail of previous transactions. Each of the
`transactions are identified by the number of the transaction
`group, the number of the transaction Script 40 within the
`specified group, and the date/time stamp.
`45 The fundamental concept implemented by the firmware is
`that the Service Provider can store transaction scripts 44 in
`a transaction group 40 to perform only those operations
`among objects that he wishes the End User to be able to
`50 perfoarm. The Service Provider can also store and Privatize
`RSA key or keys (encryption keys) that allow the module 10
`to "sign" transactions on behalf of the Service Provider,
`thereby guaranteeing their authenticity. By privatizing and/
`or locking one or more objects 42 in the transaction group
`5540, the Service Provider maintains control over what the
`module 10 is allowed to do on his behalf. The End User
`cannot add new transaction Scripts 44 and is therefore
`limited to the operations on objects 42 that can be performed
`with the transaction Scripts 44 programmed by the Service
`60 Provider.
`11. USAGE MODELS OF THE MODULE
`This section presents a series of practical applications of
`the module 10, ranging from the simplest to
`the most
`65 complex. Each of these applications is described in enough
`detal to make it clear why the module 10 is the central
`enabling technology for that application.
`
`COMPASS EXH. 1002 - Page 19 of 341
`
`

`
`6,105,013
`
`5
`A. Background of Secure E-Mail
`In this section we provide an example of how a module 19
`could be used to allow anyone to receive his or her own
`e-mail securely at any location.
`1. Standard E-Mail
`In a standard e-mail system, a user's computer is con-
`nected to a provider of Internet services, and the user's
`computer provides an e-mail password when polling the
`provider's computer for new mail, The mail resides on the
`provider's computer in plain text form, where it can be read
`by anyone working there. In addition, while traveling from
`its source, the mail passes through many computers and was
`also exposed at these locations. If the user receives his mail
`from his provider over a local area network, anyone else on
`the same network can capture and read the mail. Finally,
`with many e-mail systems that do not require the user to
`enter the password, anyone sitting at the user's computer can
`retrieve and read his mail, since his computer automatically
`provides the password when it polls the provider's com-
`puter.
`It is frequently also possible to copy the password from a
`configuration file in the user's computer and use it to read his
`mail from a different computer. As a result of this broad
`distribution of the e-mail in plain text form and the weakness
`of password protection, standard e-mail is regarded as very
`insecure.
`To counter this problemn, the security system known as
`P.G.P. (Pretty Good Privacy) was devised. To use PGP., a
`user generates a complete RSA key set containing both a
`public and private component. He makes his public key
`widely available by putting it in the signature block of all his
`e-mail messages and arranging to have it posted in publicly
`accessible directories of PGP. public keys. He stores his
`in a
`private key on his own personal computer, perhaps
`password-protected form. When someone wishes to send
`private e-mail to this user, he generates a random IDEA
`encryption key and encrypts the entire message with the
`IDEA encryption algorithm. He then encrypts the IDEA key
`itself using the public key provided by the intended recipi-
`ent. He c-mails both the message encrypted with IDEA and
`the IDEA key encrypted with the user's public key to the
`user. No one that sees this transmission can read it except the
`intended recipient because the message is encrypted with
`IDEA anid the IDEA key is encrypted with the intended
`recipient's public key. The recipient's computer contains the
`corresponding private key, and hence can decrypt the IDEA
`key and use the decrypted IDEA key to decrypt the message.
`This provides security from those who might try to read the
`user's mail remotely, but it is less effective when the user's
`computer is accessible to others because the computer, itself,
`contains the private key. Even if the private key is password
`protected, it is often easy to guess the user's password or
`eavesdrop on him when he enters it, so the user's computer
`provides little security. In addition, the user can receive
`secure e-mail only at his own computer because his private
`key is stored in that computer and is not available elsewhere.
`Therefore, the weakness of PGP. is that it is tied strongly to
`the user's computer where the private key resides.
`2. Module Protected E-Mail
`With the exemplary module 10 being used to protect
`e-mail, a user co

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