Patent US6901516B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6901516B1 Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for ciphering data

Assignee: Nokia Canada Inc
•
Filing: 1999-02-04
•
Granted: 2005-05-31
•
Expires: 2019-02-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for ciphering data for transmission by a communication device is provided. The system includes a memory device having a memory buffer a first access port connected to the memory buffer and a second access port connected to the memory buffer. The system also has a data processing processor connected to the first access port via a first bus and a ciphering processor connected to the second access port via a second bus. The first access port and the second access port each provide mutually independent access to the memory buffer. The second bus is not connected to the first bus. The data processing processor is adapted to receive the data and provide the data to the memory buffer over the first bus. The ciphering processor is adapted to retrieve the data from the memory buffer over the second bus, generate ciphered data from the data, generate integrity check information for the ciphered data using the data and provide the ciphered data to the memory buffer over the second bus.

Inventors

  • 👤 Brett Howard
  • 👤 Peter Selwyn
  • 👤 Shawn Lennox
  • 👤 Clayton Cameron
  • 👤 Michel Lamarche
  • 👤 Lorne Flindall
  • 👤 Andrew Robison
  • 👤 Wajdi Feghali

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 15:15
CPC Classifications
H; H04; H04L; H04L41/00; H04L41/12; H04L41/08; H04L41/0894; H04L41/0895; H04L63/00; H04L63/02; H04L63/0272; H04L63/04; H04L63/0428; H04L63/0435; H04L63/08; H04L63/0823; H04L63/12; H04L63/123; H04L63/20; H04L41/40; H04L63/083; H04L63/10; H04L63/102; Y; Y10; Y10S; Y10S370/00; Y10S370/908; Y10S370/911

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 310 words
A system for ciphering a packet in a data stream received by a communication device, said system comprising: a first communication port for receiving said data stream; a second communication port for transmitting a ciphered data stream associated with said data stream; a memory device having a memory buffer; a first access port connected to said memory buffer; and a second access port connected to said memory buffer; a data processing processor connected to said first communication port, said second communication port and said first access port via a first bus; and a ciphering processor connected to said second access port via a second bus, wherein said first access port and said second access port each provide access to said memory buffer; said data processing processor is adapted to receive said data stream from said first communication port through said first bus, to identify a start and an end of said packet, to store a file associated with said packet in said memory buffer through said first bus and to retrieve said ciphered data from said memory buffer through said first bus for transmission through said second communications port; said data processor further comprises a security module to determine a security context relating to at least one source of said data stream and a destination for said ciphered data stream, to store said security in said memory buffer for access by said ciphering processor and to retrieve a given security context from said memory buffer for use in generating said ciphered data stream; and said ciphering processor is adapted to retrieve said file from said memory buffer over said second bus to generate said ciphered data stream from said file, to generate integrity check information for said ciphered data stream using contents of said file and to provide said ciphered data stream to said memory buffer through said second bus.
Claim 2
Independent Claim 310 words
A system for ciphering a packet in a data stream received by a communication device, said system comprising: a first communication port for receiving said data stream; a second communication port for transmitting a ciphered data stream associated with said data stream; a memory device having a memory buffer; a first access port connected to said memory buffer; and a second access port connected to said memory buffer; a data processing processor connected to said first communication port, said second communication port and said first access port via a first bus; and a ciphering processor connected to said second access port via a second bus, wherein said first access port and said second access port each provide access to said memory buffer; said data processing processor is adapted to receive said data stream from said first communication port through said first bus, to identify a start and an end of said packet, to store a file associated with said packet in said memory buffer through said first bus and to retrieve said ciphered data from said memory buffer through said first bus for transmission through said second communications port; said data processor further comprises a security module to determine a security context relating to at least one source of said data stream and a destination for said ciphered data stream, to store said security in said memory buffer for access by said ciphering processor and to retrieve a given security context from said memory buffer for use in generating said ciphered data stream; and said ciphering processor is adapted to retrieve said file from said memory buffer over said second bus to generate said ciphered data stream from said file, to generate integrity check information for said ciphered data stream using contents of said file and to provide said ciphered data stream to said memory buffer through said second bus.
Claim 3
Dependent Claim 40 words
The system for ciphering a packet in a data stream as claimed in claim 1 , wherein said ciphering processor includes an encryption module for generating said ciphered data stream and a hashing module for generating said integrity check information.
Claim 4
Dependent Claim 39 words
The system for ciphering a packet in a data stream as claimed in claim 1 , wherein said ciphering processor includes an encryption module for generating said ciphered data stream and a module for generating said integrity check information.
Claim 5
Dependent Claim 33 words
The system for ciphering a packet in a data stream as claimed in claim 2 , wherein said encryption module includes a DES encryption module for performing one of DES and triple-DES encryption.
Claim 6
Dependent Claim 36 words
The system for ciphering a packet in a data stream as claimed in claim 2 , wherein said hashing module includes a HMAC hashing module for encoding said integrity check information within said ciphered data stream.
Claim 7
Dependent Claim 26 words
The system for ciphering a packet in a data stream as claimed in claim 1 , wherein said memory buffer comprises dual port random access memory.
Claim 8
Dependent Claim 65 words
The system for ciphering a packet in a data stream as claimed in claim 2 , wherein said data processing processor comprises a security address module, said security address module stores in address associated with said security context in said memory buffer, said address based on said at least one of said source of said data stream and said destination for said ciphered data stream.
Claim 9
Dependent Claim 39 words
The system for ciphering a packet in a data stream as claimed in claim 7 , wherein said security module provides an indication to said data processing processor when a security context is not present in said memory buffer.
Claim 10
Dependent Claim 27 words
The system for ciphering a packet in a data stream as claimed in claim 1 , wherein said data processing processor operates asynchronously to said ciphering processor.
Claim 11
Dependent Claim 50 words
The system for ciphering a packet in a data stream as claimed in claim 9 , wherein said data processing processor is clocked by a first clock source, said ciphering processor is clocked by a second clock source and said first clock source is asynchronous to said second clock source.
Claim 12
Dependent Claim 59 words
The system for ciphering a packet in a data stream as claimed in claim 10 , wherein said data stream received at said first communications port comprises fragments of a packet, said data processing processor stores said fragments in said memory buffer to assemble said packet and said ciphering processor generates said ciphered data stream from said assembled packet.
Claim 13
Dependent Claim 72 words
The system for ciphering a packet in a data stream as claimed in claim 11 , wherein said system is disposed at a gateway between a private network and a public network in a secure virtual private network, said first communications port is connected to one of said private network and said public network and said second communications port is connected to another one of said private network and said public network.
Claim 14
Independent Claim 266 words
A method for ciphering a packet in a data stream received by a communication device having a first communication port for receiving said data stream, a second communication port for transmitting a ciphered data stream associated with said data stream, a memory device including a memory buffer and a first and a second access ports connected to said memory buffer, said communication device further having a data processing processor connected to said first communication port, said second communication port and said access port via a first bus and a ciphering processor connected to said second access port via a second bus, said method comprising: receiving said data stream from said first communication port for processing by said data processing processor; identifying a start and an end of said packet by said data processing processor; storing a file associated with said packet in said memory buffer by said data processing processor through said first bus; retrieving said file from said memory buffer by said ciphering processor over said second bus; generating said ciphered data stream from said file by said ciphering processor; generating integrity check information for said ciphered data stream using contents of said file by said ciphering processor; providing said ciphered data stream to said second communication port; retrieving a security context from memory for use in generating said ciphered data stream; determining a security context relating to at least one of a source of said data stream and a destination for said ciphered data stream; and storing said security context in said memory buffer, said security context stored being accessible by said ciphering processor.
Claim 15
Independent Claim 266 words
A method for ciphering a packet in a data stream received by a communication device having a first communication port for receiving said data stream, a second communication port for transmitting a ciphered data stream associated with said data stream, a memory device including a memory buffer and a first and a second access ports connected to said memory buffer, said communication device further having a data processing processor connected to said first communication port, said second communication port and said access port via a first bus and a ciphering processor connected to said second access port via a second bus, said method comprising: receiving said data stream from said first communication port for processing by said data processing processor; identifying a start and an end of said packet by said data processing processor; storing a file associated with said packet in said memory buffer by said data processing processor through said first bus; retrieving said file from said memory buffer by said ciphering processor over said second bus; generating said ciphered data stream from said file by said ciphering processor; generating integrity check information for said ciphered data stream using contents of said file by said ciphering processor; providing said ciphered data stream to said second communication port; retrieving a security context from memory for use in generating said ciphered data stream; determining a security context relating to at least one of a source of said data stream and a destination for said ciphered data stream; and storing said security context in said memory buffer, said security context stored being accessible by said ciphering processor.
Claim 16
Dependent Claim 46 words
The method for ciphering a packet in a data stream as claimed in claim 13 , wherein said ciphered data stream is generated by an encryption module in said ciphering processor and said integrity check information is generated by a hashing module in said ciphering processor.
Claim 17
Dependent Claim 39 words
The method for ciphering a packet in a data stream as claimed in claim 14 , wherein said ciphering processor includes an encryption module for generating said ciphered data stream and a module for generating said integrity check information.
Claim 18
Dependent Claim 33 words
The method for ciphering a packet in a data stream as claimed in claim 15 , wherein said encryption module further performs one of DES and triple-DES encryption utilizing a DES encryption module.
Claim 19
Dependent Claim 36 words
The method for ciphering a packet in a data stream as claimed in claim 16 , wherein said hashing module further encodes said integrity check information within said ciphered data stream utilizing a HMAC hashing module.
Claim 20
Dependent Claim 26 words
The method for ciphering a packet in a data stream as claimed in claim 17 , wherein said memory buffer comprises dual port random access memory.
Claim 21
Dependent Claim 57 words
The method for ciphering a packet in a data stream as claimed in claim 18 , wherein said data processing processor further stores an address associated with said security context in said memory buffer, said address based on said at least one of said source of said data stream and said destination for said ciphered data stream.
Claim 22
Dependent Claim 39 words
The method for ciphering a packet in a data stream as claimed in claim 19 , wherein said security module provides an indication to said data processing processor when a security context is not present in said memory buffer.
Claim 23
Dependent Claim 50 words
The method for ciphering a packet in a data stream as claimed in claim 20 , wherein said data processing processor is clocked by a first clock source, said ciphering processor is clocked by a second clock source and said first clock source is asynchronous to said second clock source.
Claim 24
Independent Claim 203 words
A system for ciphering a packet in a data stream received by a communication device, said system comprising: a first communication port for receiving said data stream; a second communication port for transmitting a ciphered data stream associated with said data stream; a memory device having a memory buffer; a first access port connected to said memory buffer; and a second access port connected to said memory buffer; a data processing processor connected to said first communication port, said second communication port and said first access port via a first bus, said data processor comprising a security module to determine a security context relating to at least one source of said data stream and a destination for said ciphered data stream, to store said security context in said memory buffer for access by said ciphering processor and to retrieve a given security context from said memory buffer for use in generating said ciphered data stream; and a ciphering processor connected to said second access port via a second bus, wherein said first access port and said second access port each provide access to said memory buffer; and said ciphering processor provides said ciphered data stream to said memory buffer through said second bus.
Claim 25
Independent Claim 203 words
A system for ciphering a packet in a data stream received by a communication device, said system comprising: a first communication port for receiving said data stream; a second communication port for transmitting a ciphered data stream associated with said data stream; a memory device having a memory buffer; a first access port connected to said memory buffer; and a second access port connected to said memory buffer; a data processing processor connected to said first communication port, said second communication port and said first access port via a first bus, said data processor comprising a security module to determine a security context relating to at least one source of said data stream and a destination for said ciphered data stream, to store said security context in said memory buffer for access by said ciphering processor and to retrieve a given security context from said memory buffer for use in generating said ciphered data stream; and a ciphering processor connected to said second access port via a second bus, wherein said first access port and said second access port each provide access to said memory buffer; and said ciphering processor provides said ciphered data stream to said memory buffer through said second bus.

References Cited (Backward Citations)

US5799201A Cited
US6093213A Cited
US6134591A Cited
US6067595A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2008-05-30 2008-11-29 2009-05-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2012-05-30 2012-11-29 2013-05-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2016-05-30 2016-11-29 2017-05-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag