throbber
(12)
`
`United States Patent
`Ellis
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,484,257 B1
`Nov. 19, 2002
`
`US006484257B1
`
`(54) SYSTEM AND METHOD FOR MAINTAINING
`N NUMBER OF SIMULTANEOUS
`CRYPTOGRAPHIC SESSIONS USINGA
`DISTRIBUTED COMPUTING
`ENVIRONMENT
`
`(76) Inventor: Alonzo Ellis, 335 Elan Village La., San
`Jose, CA (US) 95134
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U‘SC' 154(k)) by 0 days‘
`
`(21) APPL N05 09/259,885
`(22) Filed:
`Feb 27’ 1999
`
`(51) Int. Cl.7 .......................... .. H04K 1/ 10; H04L 9/08;
`H04L 9/12; H04L 5/20
`(52) US. Cl. ....................... .. 713/153; 713/201; 380/33;
`380/34; 380/279
`(58) Field of Search ............................... .. 713/ 153, 201;
`380/33, 34, 37, 38, 279; 370/325, 326,
`343, 480; 375/240; 455 /59, 61
`
`(56)
`
`References Cited
`
`Us‘ PATENT DOCUMENTS
`
`6,195,751 B1 * 2/2001 Caronni et al. ........... .. 713/163
`* Cited by examiner
`
`Primary Examiner—Justin T. Darrow
`(74) Attorney, Agent, or Firm—Michael Hetherington;
`Woodside Intellectual Property LaW Group
`
`(57)
`
`ABSTRACT
`
`sefslcgtrll dlsmbuted arihit-ecmlre hprlclwldes E1 sojtwgi?
`Arll
`0 6 major compu a-lonaAc a -enge-S ace -W1
`so u
`PIOVI' mg secure communication.
`registration entity is
`identi?ed as the session arbitrator through Which N devices
`on a netWork dynamically participate in establishing, main
`taining and destroying cryptographic sessions. Session keys
`are generated by one or more devices registered With the
`registration server. Multiparty key agreement is used to pass
`session keys to all parties involved in the encrypted session.
`All sessions appear to be local to the arbitration server,
`hoWever individual session are maintained by several
`devices operating as a collective. Encrypted stream parti
`tiOning and Computational resource allocation to decrypt the
`individual partitions in such Way as to ensure system sta
`bility With increasing session demands is introduced in the
`architecture. This provides a cryptographic system architec
`ture With encryption/decryption processing poWer limited
`only by the number of participants in the collective and
`netWork bandWidth or latency.
`
`5,966,442 A * 10/1999 Sachdev .................... .. 380/10
`6,134,225 A * 10/2000 Pham et a1. .............. .. 370/316
`
`10 Claims, 15 Drawing Sheets
`
`Bandwidth Slicing Block Diagram
`Client/Server
`Point to Multi-Point to Point Model
`8 agent model shown (can be extended to N agents)
`ISTARTILAN/MOBILE/EXTRANETI WAN/INTERNET l GATEWAY ‘INTRANET/CORPORATE NETWORKI END >
`
`Client
`sends/
`ernege'vtgzl Packets
`crypted ~1'2'3'4‘
`eparggets
`5.6.1.8
`
`m
`
`Packets
`1,2,3,4
`
`Packets
`5‘6’7’8
`(
`720
`
`1
`
`Packetsl
`
`1
`
`Packets
`1,2
`
`Packets
`3'4
`
`Packets
`5,6
`
`P
`ackets
`7,8
`k
`730
`
`2
`
`3
`
`4
`
`5
`6
`
`7
`
`8
`
`Packets 2
`
`Packets 3
`
`Packets4
`Packets5
`
`Packets6
`
`Packets?
`
`packetsg
`
`740
`
`2
`
`3
`
`4
`
`5
`6
`
`7
`
`8
`
`Packets
`,2,3,4
`
`Packets
`1,2
`
`Packets
`3,4
`
`Pacléets
`5‘
`
`S
`regeligs
`/$ends
`Packets
`11213147 decrypted
`5.6.1.8 m pted
`pac ets
`L70
`
`Paézk7egs
`5’ '
`’ L
`760 Q
`Agent
`*Packets 9-N
`follow round
`robin algorithm
`
`Packets
`7,8 \
`750
`
`IBM / Softlayer v. ZitoVault
`Ex. 1001 / Page 1 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 1 0f 15
`
`US 6,484,257 B1
`
`Test 1 Configuration
`
`125
`
`130
`
`Destination C|ient2
`
`Destination C|ient1
`
`N0 AGENTS/2 HOSTS
`
`Bot?eNeCk '
`
`>
`
`@>
`
`GATEWAY SERVER
`(Decrypts Traf?c then
`forwards to client)
`
`Main Server
`
`110
`
`Client2
`
`115
`
`C|ient1
`
`2 CLIENTS
`
`Fig. 1
`(PriorArt)
`
`Ex. 1001 / Page 2 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 2 0f 15
`
`US 6,484,257 B1
`
`CryptoScaie Test
`
`225 Q
`
`230 Q
`
`Q Agent
`
`2 AGENTS! 2CL|ENTS
`
`Destination Ciient2
`
`Destination Clienti
`
`220
`
`No BottleNeck
`
`Main Server
`
`210
`
`C|ient2
`
`215
`
`Ciienti
`
`2 CLIENTS
`
`Fig. 2
`
`Ex. 1001 / Page 3 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 3 of 15
`
`US 6,484,257 B1
`
`Agenti interface and environment
`
`Incoming packet (input)
`
`Outgoing packet
`or
`discarded packet (decision)
`
`Outgoing control request (send)
`
`4__________________
`
`Incoming control response ( receive)
`
`A
`I
`l
`I
`l
`|
`l
`l
`I
`|
`l
`I
`l
`l
`l
`I
`l
`I
`I
`
`Fig. 3
`
`Ex. 1001 / Page 4 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 4 of 15
`
`US 6,484,257 B1
`
`.
`4022 "'3'" Serve’
`Initialize
`405‘\
`
`Entit IEventDia ram
`y
`g
`Agen?s)
`Initialize
`
`‘
`
`Authenticate
`
`410 "
`Control/Setup information
`415 \
`
`Client(s)
`
`j initializationAcknowledgment
`420
`Ready
`A
`
`-- -
`Initialize
`
`‘
`Authenticate
`Agent Notification of new Client _/425
`
`A
`
`Time
`
`Accept or deny client based
`on avai'able resources
`
`435-
`
`_
`Control/Setup !nformat|on
`Agents Assignment ’
`
`AL
`
`Initialization Acknowledgment
`“5-x
`I Ready
`A
`
`Control Message/Begin
`
`450
`
`=\
`Tunnels encrypted packets
`to Main Server
`455'\ Fonivards packets to Agents
`
`f\
`
`2
`
`465
`
`Processes packets
`460—\
`Tunnels encrypted packets
`to Main Server
`Forwards packets to Agents'
`
`‘\
`
`Processes packets
`470 —\
`f\
`Control/Comp etion Message Sent/Connection Closed
`475\_€>2r1tr9l/9J9§9.9Lisntspmsqtqn,
`480 j Ack/ Connection Closed
`
`i
`
`V
`
`v
`
`V
`
`4
`
`Ex. 1001 / Page 5 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 5 0f 15
`
`US 6,484,257 B1
`
`Ex. 1001 / Page 6 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 6 0f 15
`
`US 6,484,257 B1
`
`mm .5
`
`3mm /\
`
`mg.
`
`ESE;
`
`96%? 2 e 858 t @258;
`
`cozméwwu E5 6: E Em? 2&5 .:
`
`
`
`f 222 \L
`
`EH55?
`S35v8
`
`Q96
`
`Ex. 1001 / Page 7 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 7 0f 15
`
`US 6,484,257 B1
`
`CRYPTOSCALE
`
`MasterAgent
`
`agegtl'igntgble
`630
`
`tlNctient traffittz on each
`agen
`
`1.5 MBPS DES
`
`ll
`
`NAT
`g1!
`
`Round
`Robin
`
`Backbone Router 1GBPS DES % lPSec Tunnel
`agent ip table
`I
`|
`Mode
`620
`
`mm
`: unnrm :
`
`Gateway Server
`Master ip table
`640
`
`100 MBPS DES
`
`I
`Agent 2
`{
`
`Agent 3
`
`II]
`
`0 O 0 O O 0 0 IE
`
`Intelligént Hub
`agent ip table
`610
`
`Agent N
`
`- Frg. 6
`
`Ex. 1001 / Page 8 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 8 of 15
`
`US 6,484,257 B1
`
`
`
`swaysEm9._o__m,%_;Emm_
`
`_ozmw\Em__o
`
`
`
`3.5%29umucmca8cmovEsocm_%oEEmmam_%o_>_
`E_on_2E_om._.._:_>_9.E_on_
`
`
`
`
`
`v_m_o>>._.m_zm:<~_on_mo2Ez<Ez_><2m:<oEz«m:z_\z<>>Ez$Em_m_.__mo_>_\zfi._.m_<._.w
`
`
`
`
`
`
`
`NE
`
`
`
`E£:om_m:52
`
`9.9_omn_FF£$_omn_F2$_omn_
`
`m§_omn_NN£$_omn_
`Ea.33
`
`$282wav"mmmav“mm8>_82
`EammHxn_mmgv_Qmacawm29.08Eo__o
`m.§omn_mmEoxommmfloxomamm_$_omn__wx.om8323
`
`
`.vvm9_omn_v_m_wVm.w._omm,_u_Bmaaoco
`
`9.9_omn_oom..9_omn_IMQmo29_omn.ow2,
`
`
` z-m293%02wm/E?J3w293$20%QRx29_omn_NNmmxomm/.J3.3Ze_om.n_w.$.m
`E59>>o__o._oiJ.om»
`
`
`Ex. 1001 / Page 9 of 24
`
`Ex. 1001 / Page 9 of 24
`
`
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 9 0f 15
`
`US 6,484,257 B1
`
`DISTRIBUTED ENCRYPTION ENVIRONMENT MAIN PROCESS
`
`No—>
`
`812
`
`810
`
`Yes
`
`AGENT
`AUTHENTICATION
`AND REGISTRATION
`PROCESS
`
`Q4
`
`_
`
`PREDEFINED PROCESS
`FOR STARTINGAGENT
`SERVICES SEE FIG. 9
`—
`
`SERVER 816
`CIICEJXSTANSU
`DECIDES T0
`
`828
`/
`‘,
`sTEgIégTII?IzETs N ADMINISTRATOR
`AGENT
`ALERTED
`
`0*
`
`Y
`
`8S—>
`
`TO CONTACT
`OTHER AGENTS
`
`/ 96 LTYP s30
`3” ‘é‘EASESL'?S
`N0- IvIETHODS <
`SERVESFINAITS
`SERVER T“
`INVOKED
`CONNECTION
`NOTIFIED
`I
`Yes
`820
`I
`/
`CLIENT
`CONNECTS ‘
`
`—
`
`Yes
`
`N°
`
`Yes
`
`No
`
`NO
`
`822
`/
`CLIENTTHREAD
`CREATED ON
`SERvER
`
`NO
`
`Yes
`
`_
`
`PREDEFINED
`FOPRFICN’SEEISNG
`AGENT
`MEglHxgglaéND
`CONNECTIONS
`BETWEEN
`AGENTS
`__§EE FIG- 10
`
`£32
`
`SUCCESSFUL
`CLIENT
`REDIRECTION?
`I
`Y% 834
`I /
`CONNECTION
`PASSEDAND
`SERvER
`THREAD FREED
`
`840
`Yes 824
`/
`‘I /
`SECURITY
`CLIENT
`AUTHENTIC- _No+ vIOLATION
`ATION
`LOGGEDAND H
`PROCESS
`CONNECTION
`N0
`|
`CLOSED
`Y T
`@~842
`SECURE
`PREDEFINED PROCESS
`COMIEQEQI?QT'ON
`FORAUTHENTICATING
`AND REGISTERING
`CLIENTS FIG.9
`
`Yes
`
`838
`
`SECURE
`COMIIIBIIEIEJgIISQTION
`
`Fig 8
`
`Ex. 1001 / Page 10 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 10 0f 15
`
`US 6,484,257 B1
`
`AUTHENTICATIONAND REGISTRATION PREDEFINED PROCESS
`
`1110
`
`No
`
`905
`MULTIPARTY J
`KEY
`AGREEMENT
`|
`Yes
`1
`SECURE
`MESSAGING
`BEGINS
`1
`Yes
`l
`525 NO
`CLIENT/AGENT
`SUPPLIESAUTH _J
`CREDENTIALS
`I
`Yes
`l
`SERVER
`REGISTERS
`CLIENT/AGENT
`
`910
`J
`
`NO
`
`920
`
`v
`915
`SECURITY J
`VIOLATION
`= LOGGEDAND —»
`CONNECTION
`CLOSED
`“
`
`No
`
`930
`J
`
`|
`Yes
`
`Fig. 9
`
`Ex. 1001 / Page 11 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 11 0f 15
`
`US 6,484,257 B1
`
`CLIENT PROCESS
`
`824
`
`CLIENT
`STARTS
`
`— No——>
`
`1010
`
`I
`N0
`
`Yes
`1015
`‘I
`CLIENT /
`CONNECTS
`T0 SERVER
`
`e14
`/
`
`Y'es
`‘
`CLIENT
`AUTHENTICATION
`PROCESS
`
`N0
`
`PREDEFINED PROCESS
`FORAUTHENTICATING
`AND REGISTERING
`CLIENTS SEE FIG. 9
`
`1025
`LOGS /
`FAILUREAND
`NOTIFIES
`SERVER
`
`Ygs
`1030
`‘
`CLIENT PASSES /
`INFOTO
`SERvER
`
`YIG‘S
`
`N0
`
`,
`
`1035
`/
`
`LOGS
`FAILURE
`AND RETRIES
`
`1040
`/
`
`No
`
`1050
`
`1055
`
`‘
`CLIENT
`REQUESTS
`UPDATES FROM
`SERVER
`I
`Y$S
`REE'EEIQ‘IES
`N ---Ye3-——> REDIRECTIO
`
`REQUEST FROM
`SERVER?
`No
`SECURE
`COMMUNICATION
`BEGINS WITH
`SERVER
`
`1045
`
`L
`
`LOGS
`FAILURE
`AND RETRIES
`
`1055
`/
`
`SUCCESSFULLY
`
`
`
`TO _ No" AGENTS?
`
`lYes
`SECURE
`COMMUNICATION
`BEGINS WITH
`A ENT
`
`1070
`
`1060
`FAILLSFEESAND
`SERVER
`
`Fig. 10
`
`No
`
`Ex. 1001 / Page 12 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 12 0f 15
`
`US 6,484,257 B1
`
`INVOKING AGENT METHODS CONNECTIONS PREDEFINED PROCESS
`s30
`
`1105
`
`CLIENT
`STARTS
`
`N° —’
`
`1125
`1110
`YQS
`PREDEFINED
`LoGS FAILURE "“
`PROCESS
`AND RETRIES
`PASS ‘éB'EQECmN ”’
`TO DETERMINE IF
`EXISTING CLIENTS
`\
`SHOULD BE
`1115
`W
`PASSED TO
`NEW AGENT
`SEE FIG. 12
`
`N0 __+
`
`AGENT
`NOTIFIES
`SERVER
`
`1120
`
`AGENT
`
`1130
`Ygs
`AGENT WAITS FOR
`CONNECTION
`T
`114
`SERVER CONNECTS ~ 0
`T0 THIS AGENT
`
`AGENT SLEEPS 1135
`
`_,
`
`Yes
`
`1170
`
`SECURITY i165
`vIoLATIoN
`LOGGED
`SERVER »
`NOTIFIED AND
`CoNNECTIoN
`CLOSED
`
`Now
`
`>
`
`I
`N0
`
`N°
`
`NO
`
`N _
`O
`PREDEFINED PROCESS
`F‘ZIFIE’S‘QEHGEIQ‘TECAT'IE‘G
`\\ CLIENTS SEE FIG. 9
`*MKA- MULTIPARTY KEY
`AGREEMENT
`
`P1155
`
`1145
`Y‘?
`SERvER THREAD ~
`CREATED ON
`AGENT
`Yés
`——+
`Yes
`SERVER BEGINS MKA*
`1150
`WITH THIS AGENT
`INSTEAD OF LOCAL
`AGENT
`Y-
`*
`‘A cL'ENT’é‘ég'éEE'éTs'cAT'oN
`YéS
`'
`SERvER REDIRECTS
`CLIENT TO AGENT
`yés
`v
`CLIENT THREAD
`CREATED ON AGENT
`I
`
`1160
`
`SECURE
`COMMUNICATIONS
`BEGIN
`M
`
`1175
`
`H 1 1
`g I
`
`Ex. 1001 / Page 13 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 13 0f 15
`
`US 6,484,257 B1
`
`PREDEFINED PROCESS FOR PASSING CONNECTIONS
`1110
`1205
`
`AGENT
`
`I
`
`V
`
`AGENT
`CHECKS CPU LOAD AND
`DECIDES IF IT CAN ACCEPT
`NEW CLIENT
`
`1215
`Yes
`l /
`AGENT NOTIFIES
`No
`SERVER
`
`L068 FAILURE
`AND RETRIES
`
`1220
`
`I
`Y?
`1225
`/
`SERVERANDAGENT
`EXCHANGE CONNECTION ——-Noj
`A IN INFO
`P SS G
`Yés
`l
`
`1230
`/"’/
`
`1240
`
`->
`
`SECURWY
`VIOLATION
`LOGGED
`SERVER
`NOTIFIEDAND
`CONNECTION
`CLOSED
`
`1235 No
`/__/
`SERVER SENDS CLIENT
`REDIRECTION
`INFO
`I
`Yes
`I
`CLIENT REDIRECTS
`SUCCESSFULLY?
`
`1245
`/,/
`
`No
`
`Yes
`
`AGENT THREAD "/
`FREED
`
`Fig. 12
`
`Ex. 1001 / Page 14 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 14 0f 15
`
`US 6,484,257 B1
`
`A Composition Restrictions
`at
`5 Agenti
`
`1310
`
`_‘ '
`
`\ @ Agents int n fun '
`don't rely
`ach
`
`Agentk
`
`‘ '
`
`_
`
`OutputAgent1
`
`OutputAgentk
`InputAgentk
`
`1330
`
`\
`
`System Behavior Cannot Be
`Measured/Characterized
`
`Internal Trace
`@
`
`9
`h
`
`re
`ent
`
`Outputsfromo
`neverinputsfor
`OutputAgentk
`KA OutputAgentk
`:l —>
`
`‘k'
`
`Agentk
`
`lnputTrace
`
`@ & Q9
`
`l
`
`/\ OutputTrace
`
`Ex. 1001 / Page 15 of 24
`
`

`
`U.S. Patent
`
`Nov. 19, 2002
`
`Sheet 15 0f 15
`
`US 6,484,257 B1
`
`COMPOSITION
`
`A A TO TA
`AHTOgéTA @493)
`
`A
`A‘EITOEEQTA
`
`HQ @
`
`@ ATO “‘
`
`.
`
`‘*7
`
`ATO TA
`ATO TA
`
`\'
`AAAIAA
`1 ‘EA “"
`
`A,
`
`uTo ‘
`
`Fig. 14
`
`Ex. 1001 / Page 16 of 24
`
`

`
`US 6,484,257 B1
`
`1
`SYSTEM AND METHOD FOR MAINTAINING
`N NUMBER OF SIMULTANEOUS
`CRYPTOGRAPHIC SESSIONS USING A
`DISTRIBUTED COMPUTING
`ENVIRONMENT
`
`FIELD OF THE INVENTION
`
`The ?eld of the present invention relates generally to the
`encryption and decryption of data conducted over a distrib
`uted computer netWork. In particular, the ?eld of the inven
`tion relates to a softWare architecture for conducting a
`plurality of cryptographic sessions managed over a distrib
`uted computing environment.
`An N session distributed architecture is described Which
`solves the problems encountered With providing a secure
`netWork. The present softWare solution boosts performance
`to previously unattainably high levels and provides a prac
`tical security solution capable of servicing N simultaneous
`cryptographic session using a distributed computing envi
`ronment Without additional encryption decryption hardWare
`at Wire-speed levels. An aspect of the invention provides a
`solution, Which overcomes the netWork bandWidth latency
`barriers to secure encryption. Another aspect of the inven
`tion provides a scalability solution to the problem of pro
`cessor saturation due to encryption decryption loads.
`
`BACKGROUND
`
`There is a groWing need to provide for secure commerce
`on computer networks, Which does not require costly non
`scalable computational resources. Corporations noW have
`critical needs for ensuring the security of data that traverses
`their netWorks. Information Systems (IS) managers have
`attempted to cope With those needs by installing and man
`aging expensive hardWare to provide protection of data. In
`the case Where data must be transferred betWeen sites, IS
`managers can dictate their security needs to the telephone
`companies Who manage the transfer of data betWeen mul
`tiple sites. HoWever, there are several problems limiting the
`transfer of data networking. Such concerns are as folloWs:
`NetWork Availability (also knoWn as uptime);
`NetWork bandWidth (the amount of data that the overall
`netWork can handle over a particular time slice);
`Quality of Service: ensuring that pre-determined service
`levels, such as bandWidth congestion alloWances and
`netWork latency, are consistently met for all hosts
`connected to the netWork;
`Security: ensuring that sensitive data are protected as it
`traverses the netWork and those unauthoriZed parties do
`not compromise that data or the netWork itself.
`Monitoring/Auditing (the capability to verify that the
`above needs are being met and the ability to instantly detect
`and react to any deviation from preset expectations).
`When considering a neW technology that Will impact a
`netWork, an IS manager must address the foregoing issues.
`After these requirements are met, factors of cost and scal
`ability must be considered. IS managers are constantly
`looking for Ways to meet the above requirements While
`reducing the cost of supporting their netWork. Managing the
`cost of expanding a netWork to address increased bandWidth
`requirements of users is a major problem for IS managers
`today.
`Point-to-Point Encryption
`Point-to-point link level encryption has a disadvantage in
`that it is not scaleable. For example, there is a dramatic and
`
`2
`non-linear cost difference in installing and maintaining a 128
`k Frame Relay link versus a 1.544M Frame Relay link. The
`cost problem is not limited to bandWidth, but rather is also
`greatly affected by the addition of neW groups of hosts as
`additional connection points. Related equipment also must
`be installed and maintained. Point-to-point encryption also
`has cost disadvantages. Point-to-point link level encryption
`is usually all or none meaning that all data both public and
`private are encrypted over this link. This additional overhead
`is acceptable in some cases but undesirable in others.
`Since link level encryption requires static routes to be
`created it does not integrate easily into the Internet
`paradigm, Which requires packets to be dynamically routed
`from point to point. A netWork layer (or higher) encryption
`solution is required in order to ?t easily into the frameWork
`of routable IP packets. Currently there exists a transport
`level security mechanism for application programs using
`SSLv3 (secure sockets layer). SSL Was developed in 1995
`When a universally recogniZed security mechanism at the IP
`layer did not exist. This has been the most commonly used
`protocol for providing secure applications.
`The three protocol capabilities of SSL include
`authentication, encryption and key exchange. In IPSec these
`are provided as separate protocols (AH, ESP and IKE).
`In SSL most of the communications protocol data is
`passed in plaintext, only the application header and actual
`data sent to the application is cryptographically protected.
`The encryption and integrity protection for the data and not
`the communications as in IPSec, Which protects both, are
`handled by the record protocol. The negotiation of neW
`crypto algorithms and keys is handled by the handshake
`protocol. Finally, any errors that have occurred are handled
`by the alert protocol. SSL maintains its security state based
`on the session associated With a particular set of host
`addresses and ports.
`SSL sessions are established in four steps. In Step 1 the
`sender sends a hello message to the receiver containing
`random data. In Step 2 the receiver sends the sender his/her
`public key embedded in a signed certi?cate. In step 3 the
`sender encrypts a shared secret key and a change cipher spec
`sWitch (to determine the proper cipher to use) With the
`receiver’s public key and sends it to the receiver. In step 4
`the receiver sends a reply using the shared secret key (after
`decrypting the info in step 3 With his private key) and a
`“?nished” message. Both sides noW can begin communica
`tions. Using the record protocol, all data that passes betWeen
`the tWo parties are encrypted and hashed and the recipient
`checks this hash upon decryption to make sure that the data
`have not been modi?ed in transit.
`The neWest version of SSL (3.0) supports RSA key
`exchange, Dif?e-Hellman anonymous or signed (the most
`common implementation is SKIP) and ForteZZa using SKIP
`JACK. TLS (Transport Level Security) and PCT (Private
`Communication Technology) by Microsoft are both varia
`tions on SSL that are vying for standards approval by the
`IETF. A major disadvantage of all versions of SSL is that
`SSL is ineffective against many of the neWer communica
`tions level (beloW transport level) attacks, Which are tech
`nically called SYN Flooding, Buffer Overruns and Traf?c
`Analysis.
`IPSec
`IPSec is a conventional protocol for securing IP traffic as
`it traverses the Internet, an Extranet or any IP based local,
`metropolitan or Wide area netWork. IPSec can be incorpo
`rated With Ipv4 to provide security for host to host, host to
`subnet and subnet to subnet communications, Which are not
`available With SSL.
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`Ex. 1001 / Page 17 of 24
`
`

`
`US 6,484,257 B1
`
`3
`The objective for securing large corporate networks is to
`allow the proper insiders or outsiders to access corporate
`data transparently While keeping unintended parties from
`accessing the same data or denying service to those Who
`should be accessing the data. In the past, FireWalls have been
`used as a means for ?ltering incoming and outgoing traf?c.
`FireWalls have been combined With access servers to authen
`ticate parties before they are alloWed access to any resource
`inside or outside the ?reWall.
`FireWalls have evolved to include neW protocols that
`alloW them to safely transfer data betWeen themselves and
`another party over the Internet. This function is knoWn as
`creating a virtual private netWork (a private netWork over the
`public Internet).
`The IPSec protocol uses tWo underlying protocols to send
`data securely. IPSec adds tWo additional packet headers to a
`packet to handle each of the tWo protocols. The headers both
`contain a numerical value knoWn as the SPI (security
`parameters index) to identify the crypto keys and procedures
`to use With it. The ?rst header, AH (authentication header),
`provides integrity checking and keying information to keep
`attackers from computing alternate checksums that check
`correctly. The second header, ESP, encrypts the contents of
`the remainder of the packet.
`IPSec supports a number of algorithms for authentication
`and encryption. Examples are KeyedMD5 and SHA-l (for
`AH), DES, Triple DES, and RC4 (for ESP). In addition to
`this, IPSec automatically handles the creation of security
`associations betWeen hosts through key management.
`Manual keys can be used Which alloW hosts to be con
`?gured manually With the proper shared secret keys. More
`common is the use of Simple Key Interchange Protocol
`(SKIP) Which negotiates and exchanges session keys
`betWeen IPSec hosts. ISKAMP (Internet Security Associa
`tion and Key Management Protocol) is a general purpose
`protocol intended to manage security associations and man
`age key exchanges using Oakley or IKE. Tunneling is also
`used. In tunnel mode the ?nal destination IP header is
`encrypted and a gateWay IP header is added to alloW router
`to route the packet to the gateWay server. In transport mode
`the IP header is not encrypted.
`IPSec is meant to protect traf?c betWeen hosts. HoWever,
`With the Wide range of applications currently in use (email,
`broWsers, ?le transfer, remote terminal access, multimedia,
`database and so on) it becomes cumbersome to implement.
`IPSec provides an advantage over SSL because it can
`protect against the neWer protocol attacks such as SYN
`?ooding and buffer overruns. In the SYN ?ooding attack
`mentioned above IPSec Would block illegitimate SYN mes
`sages because they require a valid AH With a valid crypto
`graphic checksum. Attackers cannot generate numerous
`requests from random hosts because they cannot generate a
`valid AH for every such host. In the buffer overrun attack,
`the destination host Will discard any IP packets Which are not
`properly formatted for IPSec. That is, packets must come
`from a valid host and be properly formatted for TCP before
`TCP processes them, thereby protecting the host from this
`type of attack.
`Although SSL and IPSec can be combined to gain added
`protection and ?exibility, these systems fail to address the
`problems of increased cost of implementation and scalabil
`ity. Another major problem not addressed by SSL and IPSec
`is managing the cost of expanding a netWork to address
`increased bandWidth requirements of users.
`The introduction of constantly changing standards and
`encryption/decryption schemes has greatly increased the
`burden on computer resources to provide secure communi
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`cation. The computational demands are currently being
`addressed With the addition of special encryption/decryption
`ASICs (Application Speci?c Integrated Circuits) or hard
`Ware. HoWever, as hosts are called, a doubling of hardWare
`must be added to meet demands from both source and sink
`ends.
`A conventional attempt to address the above de?ciencies
`includes the use of hardWare to handle encryption and
`decryption of data traffic. HoWever, this is expensive and
`sloW in that it increases the computational burden on the
`CPU When encrypting and decrypting data. The hardWare
`approach also has a disadvantage in that it is not scaleable.
`Alternative softWare architectures have been tried and
`discarded. The conventional softWare point to point client
`server model cannot scale adequately. Increased demand for
`secure sessions can lead to system failure as processing
`resources become unavailable on either side. Employing a
`central server model has been tried and found inadequate.
`The central gateWay server in a distributed system environ
`ment becomes saturated With increased demand for decryp
`tion services. Tests Were done to compare the performance
`of a conventional centraliZed server architecture model, as in
`FIG. 1, against an invention architecture topology in FIG. 2.
`These con?guration performance tests and results are dis
`cussed infra
`Conventional distributed architecture is unable to manage
`the increase in secure session demand due to instability
`arising from uneven processor computational loads, propa
`gation delays and computer or netWork latency, all of Which
`cause loss in synchronicity With collective processors. For
`these reasons current solutions are inadequate to overcome
`the barriers mentioned above.
`Therefore, What is needed is a neW method for encryption/
`decryption Which is in?nitely scaleable in the number of
`simultaneous sessions capable of being processed by a
`server.
`What is also needed is an encryption/decryption system
`Which is in?nitely scaleable in terms of bandWidth betWeen
`clients and servers.
`What is also needed is an easily implemented softWare
`solution Which provides end-to-end encryption/decryption
`in a distributed netWork While increasing processing poWer
`Which eliminating latency as bandWidth increases.
`
`SUMMARY
`In accordance With the foregoing and other objectives, an
`aspect of the invention provides a distributed softWare
`solution for encryption/decryption Which is in?nitely scale
`able in the number of simultaneous sessions capable of
`being processed by a server and in terms of bandWidth
`betWeen clients and servers. Another aspect of the invention
`provides end-to-end encryption in a distributed netWork and
`combines the processing poWer of all computers connected
`to the system to enable bandWidth to be in?nitely scaleable
`and to reduce latency substantially to Zero.
`Another aspect of the invention provides a softWare
`architecture for encryption/decryption by partitioning the
`client traffic into units Which can be processed across a
`distributed netWork of hosts Without introducing netWork
`instabilities. A further aspect of the invention increases
`packets per second throughput and overcomes latency.
`Another aspect of the invention implements a mathematical
`method ensuring a stable partitioning and processing of
`encrypted traf?c to meet the increase in secure session
`demand.
`In accordance With another aspect of the invention, the
`softWare architecture has three primary components:
`
`Ex. 1001 / Page 18 of 24
`
`

`
`US 6,484,257 B1
`
`5
`Manager, Client and Agent. The manager software resides
`on a gateWay server and manages all aspects of controlling
`the system. Client, server, and agents are created on the
`manager. The manager controls client access levels. Certi?
`cate information is imported and stored by the manager or
`optionally generated by the manager. The manager does
`performance monitoring. The manger performs auditing.
`Network address translation is handled by the manager for
`tunneled traf?c from the client
`The client softWare resides on the desktop of internal
`hosts, the desktop/laptop of remote users and the desktops of
`remote of?ces. The Client softWare provides a simple GUI
`interface for clients to con?gure dial-up information and use
`either a dial-up connection or a netWork connection to the
`local VPN server.
`The agent softWare handles the negotiation of security
`keys, security associations and establishes the IPSec link
`betWeen itself and the server. Agent softWare can run as a
`stand alone process or exist as part of the client softWare.
`The agent softWare is responsible for encrypting and
`decrypting communication traffic as it arrives from the
`clients via the server. All of the agents operate as distributed
`system to share the load of the encryption and decryption
`over all of the agent CPUs.
`
`10
`
`15
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`These and other aspects and advantages of the invention
`may be appreciated from the folloWing detailed description
`together With the draWings in Which:
`FIG. 1 shoWs a test con?guration for performance mea
`surements for a conventional netWork architecture;
`FIG. 2 shoWs a CryptoScale test con?guration for perfor
`mance measurements in accordance With an aspect of the
`invention;
`FIG. 3 shoWs an agent interface and environment in
`accordance With an aspect of the invention;
`FIG. 4 shoWs an abbreviated entity/event diagram in
`accordance With an aspect of the invention;
`FIG. 5A shoWs a tunneling packet NetWork Layer Model
`decomposition in accordance With an aspect of the inven
`tion;
`FIG. 5B shoWs a ?nal destination packet NetWork Layer
`Model decomposition in accordance With an aspect of the
`invention;
`FIG. 6 shoWs a distributed netWork topology for the
`invention architecture in accordance With an aspect of the
`invention;
`FIG. 7 shoWs discrete packet transport across a netWork
`in accordance With an aspect of the invention;
`FIG. 8 shoWs a ?oWchart of the invention main process in
`accordance With an aspect of the invention;
`FIG. 9 shoWs a ?oWchart of the authentication and
`registration process in accordance With an aspect of the
`invention;
`FIG. 10 shoWs a ?oWchart of the client process in
`accordance With an aspect of the invention;
`FIG. 11 shoWs a ?oWchart of invoking agent methods
`connections process in accordance With an aspect of the
`invention;
`FIG. 12 shoWs a ?oWchart for passing session connec
`tions in accordance With an aspect of the invention;
`FIG. 13 shoWs the automata composition restrictions in
`accordance With an aspect of the invention;
`FIG. 14 shoWs the overall relationship betWeen automata
`and the automaton in accordance With an aspect of the
`invention.
`
`25
`
`35
`
`45
`
`55
`
`65
`
`6
`DETAILED DESCRIPTION
`In accordance With an aspect of invention, the manager or
`main server, agent and client are all designed to operate
`transparently Within any distributed netWork Which uses an
`internet protocol (IP). Examples of such distributed net
`Works may employ Ethernet, Token Ring, Synchronous
`Optical NetWork (SONET), ATM, Gigabit Ethernet
`netWorks, or the like. They Will not disrupt netWork traf?c
`?oWing on the host machines or on the Wire. The invention
`uses client server and agent technology to establish end to
`end or “?nal mile” security links to the ?nal destination
`inside the business netWork.
`Manager InitialiZation
`Referring to FIG. 4, the manager Will load the policy ?le
`(or read it from the database) upon initialiZation. The IKE
`engine Will start on the server and receive setting informa
`tion from the server daemon based on What it has loaded
`from the policy ?le. Encryption/decryption settings Will be
`set, integrity checking settings Will be set, re-keying settings
`Will be set and access time information Will be set on the
`manager. At this point, the server (and IKE engine) Will
`establish a connection With the agents listed in the policy ?le
`and (after establishing a secure session) upload VPN rules
`(security associations, netWork address translation tables,
`etc) to the agent.
`Agent InitialiZation
`Referring to the event diagram in FIG. 4, upon initialiZa
`tion the agent performs an authenticated DH key exchange
`in order to establish a session key With the Manager. To
`prevent “man in the middle” attacks the agent’s and server’s
`certi?cates are attached to the messages exchanged (along
`With signatures and message digests to verify the certi?cates
`and to make sure the message is not modi?ed in transit) for
`session key negotiation. After a session key is established
`the manager sends the SA and vpn policy information to the
`agent and the IKE engines on the manager and agent
`exchanging keying information.
`Client InitialiZation/Authentication
`Upon initialiZation the client contacts the gateWay server
`and authenticates using RADIUS, TACACS+, a pre-shared
`passWord or X509 certi?cate. Once the client is
`authenticated, it negotiates the session key With the gateWay
`server. After the session key is established, the client doWn
`loads the VPN policy information from the server (security
`associations, netWork address translation tables, etc). With
`the VPN policy information established, the client’s IPSec
`engine begins communication With the gateWay server and
`ultimately With the ?nal destination.
`CryptoScale
`Cryptoscale is the invention architecture comprised of
`manager or main server, agents and clients to boost perfor
`mance to exceptional levels Without the use of additional
`hardWare. This technology alloWs softWare-based VPN
`solutions to perform at Wire-speed levels. The architecture is
`based on an asynchronous distributed model but provides
`critical key synchroniZation Within some components of the
`architecture. The system consists of separate components,
`agents that exist as atomic objects With Zero Wait states, that
`process data in an arbitrary order and at arbitrary relative
`speeds. Speci?c timing considerations are ignored With the
`exception of re-keying time constraints and IP time-to-live.
`The entire system is modeled as a ?nite state machine.
`Transitions in state are caused by an encryption/decryption
`computation (a DES CBC block for example) on an agent.
`There is a synchroni

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