WO2012060892A2 - System and method for protecting specified data combinations - Google Patents
System and method for protecting specified data combinations Download PDFInfo
- Publication number
- WO2012060892A2 WO2012060892A2 PCT/US2011/024902 US2011024902W WO2012060892A2 WO 2012060892 A2 WO2012060892 A2 WO 2012060892A2 US 2011024902 W US2011024902 W US 2011024902W WO 2012060892 A2 WO2012060892 A2 WO 2012060892A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tuple
- token
- tokens
- data
- registration list
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/22—Arrangements for preventing the taking of data from a data transmission channel without authorisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Definitions
- This invention relates in general to the field of data management and, more particularly, to a system and a method for protecting specified combinations of data.
- Computer networks have become indispensable tools for modern business. Enterprises can use networks for communications and, further, can store data in various forms and at various locations. Critical information frequently propagates over a network of a business enterprise. Certain federal and state regulations provide restrictions covering the dissemination of particular types of information by various organizations or businesses. Thus, in addition to the potential loss of proprietary information and the resulting negative impact to business, an enterprise may also face legal liability for the inadvertent or intentional leakage of certain data. Modern enterprises often employ numerous tools to control the dissemination of such information and many of these tools attempt to keep outsiders, intruders, and unauthorized personnel from accessing or receiving confidential, valuable, or otherwise sensitive information. Commonly, these tools can include firewalls, intrusion detection systems, and packet sniffer devices.
- FIGURE 1 is a simplified block diagram of an exemplary implementation of a system for protecting specified data combinations in a network environment in accordance with one embodiment of the present disclosure
- FIGURE 2 is a simplified block diagram of a computer, which may be utilized in embodiments of the data combination protection system in accordance with the present disclosure
- FIGURE 3 is a block diagram of a registration system in the data combination protection system in accordance with one embodiment of the present disclosure
- FIGURE 4 is a block diagram of various data file structures in the data combination protection system in accordance with one embodiment of the present disclosure
- FIGURE 5 is a simplified block diagram with example data input and output in accordance with one aspect of the registration system of the present disclosure
- FIGURES 6A, 6B, and 7 are simplified flowcharts illustrating a series of example steps associated with the registration system; [0012] FIGURE 8 illustrates file contents in an example scenario associated with the registration system processing in accordance with one embodiment of the present disclosure;
- FIGURE 9 is a block diagram of a detection system in the data combination protection system in accordance with one embodiment of the present disclosure.
- FIGURE 10 is a simplified block diagram with example data input and output in accordance with one aspect of the detection system of the present disclosure
- FIGURES 11-12 are simplified flowcharts illustrating a series of example steps associated with the detection system.
- FIGURE 13 illustrates file contents in an example scenario associated with the detection system processing in accordance with one embodiment of the present disclosure.
- a method in one example embodiment includes extracting a plurality of data elements from a record of a data file, tokenizing the plurality of data elements into a plurality of tokens, and storing the plurality of tokens in a first tuple of a registration list.
- the method further includes selecting one of the plurality of tokens as a token key for the first tuple, where the token key occurs less frequently in the registration list than each of the other tokens in the first tuple.
- at least one data element is an expression element having a character pattern matching a predefined expression pattern, where the predefined expression pattern represents at least two words and a separator between the words.
- at least one data element is a word defined by a character pattern of one or more consecutive essential characters.
- Other more specific embodiments include determining an end of the record by recognizing a predefined delimiter.
- a method in another example em bodiment includes extracting a plurality of data elements from an object, tokenizing the plurality of data elements into a plurality of object tokens, and identifying a first tuple in the registration list. The method further includes determining if each one of a plurality of associated tokens in the first tuple corresponds to at least one of the object tokens. Additionally, the method includes validating an event if an amount of correspondence between the plurality of associated tokens in the first tuple and the plurality of object tokens meets a predetermined threshold. In more specific em bodiments, the predetermined threshold is met when each of the associated tokens in the first tuple corresponds to at least one of the plurality of object tokens.
- FIG U RE 1 is a simplified block diagram illustrating an example implementation of a data com bination protection system 10 for registering and detecting specified com binations of data in an exemplary network 100.
- Data com bination protection system 10 may include multiple network elements such as a network appliance 12 having a registration system 22 and a plurality of network appliances 14, 16, and 18 having detection systems 24, 26, and 28, respectively. These network appliances 12, 14, 16, and 18 can be managed by or otherwise coupled to another network element such as network appliance 30 with a data protection manager 32.
- a network security platform 140 may provide an existing infrastructure of network security for network 100 and may be suitably integrated with data com bination protection system 10.
- the network environment illustrated in FIGU RE 1 may be generally configured or arranged to represent any communication architecture capable of exchanging packets. Such configurations may include separate divisions of a given business entity such as that which is shown for purposes of illustration in FIGU RE 1 (e.g., a Marketing segment 152, a Sales segment 154, a Production segment 156).
- a Marketing segment 152 e.g., a Marketing segment 152, a Sales segment 154, a Production segment 156
- other common network elements such as an email gateway 162, a web gateway 164, a switch 172, a firewall 174, and at least one client device 130 may also be provided in network 100.
- Network 100 may also be configured to exchange packets with other networks, such as Internet 180, through firewall 174.
- Data com bination protection system 10 can help organizations protect against the inadvertent and intentional disclosures of confidential data from a network environment.
- Em bodiments of data com bination protection system 10 can be used to register specified com binations of data elements and to detect registered data com binations within objects of the network environment. For example, data elements that are sufficiently distinctive when com bined to identify an individual, and which can potentially expose confidential or sensitive information about the individual, can be registered as a com bination and detected in objects in the network by data com bination protection system 10.
- System 10 can create a registration list with each specified com bination or set of data elements represented in a separate tuple or record of the registration list.
- the registering operations to create these tuples in the registration list can be performed on any data file having one or more sets of data elements with each set of data elements delimited from other sets of data elements by a predefined delimiter.
- the registration list can be indexed with keys, where each key corresponds to one of the data elements represented in a tuple.
- Data combination protection system 10 can perform detecting operations to find one or more registered com binations of data elements in an object (e.g., word processing document, spreadsheet, database, electronic mail document, plaintext file, any human language text file, etc.) in the network environment.
- the object could be captured in the network and formatted for transmission (e.g., HTM L, FTP, SMTP, Webmail, etc.), or stored in a database, file system, or other storage repository.
- an event is flagged or validated and the object may be prevented from being transmitted and/or may be reported for a network operator or other authorized person to monitor and take any appropriate remedial actions.
- an event may be validated if a particular threshold amount of a registered combination of data elements is found in an object.
- a challenge in many security environments is the a bility to control confidential electronic data.
- many organizations collect and store data that can be used to identify individuals who may be associated with the organization or may simply be mem bers of the general pu blic or various segments thereof.
- This sensitive data may include, for example, name, social security number, credit card number, address, telephone num ber, date of birth, citizenship, account num ber, employer, marital status, and the like.
- a sensitive data element alone in an object, or even a small num ber of sensitive data elements in an object may not be sufficiently distinctive to identify a particular person or to reveal confidential information.
- H I PAA Health Insurance Porta bility and Accountability Act
- PH I protected health information
- G LBA Gramm-Leach-Bliley Act of 1999
- PCI Payment Card Industry
- PCI Data Security Standard also regulates the use and disclosure of data elements on payment cards.
- Such regulations may proscribe unauthorized dissemination of electronic data containing predetermined com binations of data elements (e.g., name, social security num ber, and date of birth) that could potentially identify particular individuals and their personal information.
- Another monitoring problem occurs because certain data is not always presented in a standard format. For example, numerous formats can be used for a date of birth (e.g., 'June 25, 1964', '06-25-1964', '1964. May.25', etc.) or a telephone number (e.g., '(000) 000-0000', ⁇ - ⁇ - ⁇ ', ⁇ . ⁇ . ⁇ ', etc.).
- data elements may be stored in a network in one format, and then disclosed in an object in a different format. Regulations and resulting penalties for an unauthorized data disclosure, however, may apply to a disclosure of confidential information regardless of the format used in the disclosure.
- detecting sensitive data elements in objects requires recognizing varying formats of particular data.
- Electronic data can be provided in numerous configurations (e.g., spreadsheets with predefined columns and rows, email messages, word processing documents, data bases, transmitted objects formatted using a defined protocol, etc.). Consequently, in a system in which specified com binations of data elements are being monitored, such elements may not necessarily be located in close proximity to other associated data elements of the same specified com bination.
- the data elements in a particular specified com bination could be separated by words, formatting characters, lines, or any separator or delimiter within an object. Sophisticated techniques are needed to evaluate and validate objects containing specified combinations of data elements, regardless of where such data elements appear within the object.
- registration system 22 is provided in network 100 to create a registration list of specified com binations or sets of data elements to be monitored.
- the registration system can recognize and register data elements presented in various character formats or patterns and provided in various electronic file formats having a predefined delimiter between each set of data elements.
- Multiple detection systems 24, 26, and 28 may also be provided to evaluate captured and/or stored objects in the network environment to determine which objects contain one or more of the registered sets of data elements.
- the detection systems may be configured to recognize data elements within an object and to determine whether each data element of a registered com bination of data elements is contained somewhere within the confines of the object.
- the registration list may be indexed and searched by the detection system in a manner that optimizes computer resources and that minimizes any network performance issues.
- references to various features e.g., elements, structures, modules, components, steps, etc.
- references to various features are intended to mean that any such features may be included in one or more em bodiments of the present disclosure, but may or may not necessarily be included in the same em bodiments.
- data com bination protection system 10 may be implemented in exemplary network 100, which may be configured as a local area network (LAN) and implemented using various wired configurations (e.g., Ethernet) and/or wireless technologies (e.g., I EEE 802. llx).
- network 100 may be opera bly coupled to Internet 180 by an Internet Service Provider (ISP) or through an Internet Server with dedicated bandwidth.
- ISP Internet Service Provider
- Network 100 could also be connected to other logically distinct networks configured as LANs or any other suita ble network type.
- network 100 could be replaced with any other type of network where appropriate and according to particular needs.
- Such networks include a wireless LAN (WLAN), a metropolitan area network (MAN), a wide area network (WAN), a virtual private network (VPN), or any other appropriate architecture or system that facilitates communications in a network environment.
- the connection to Internet 180 and other logically distinct networks may include any appropriate medium such as, for example, digital subscriber lines (DSL), telephone lines, Tl lines, T3 lines, wireless, satellite, fiber optics, cable, Ethernet, etc. or any com bination thereof.
- DSL digital subscriber lines
- Tl lines telephone lines
- T3 lines wireless, satellite, fiber optics, cable, Ethernet, etc. or any com bination thereof.
- N umerous networking components such as gateways, routers, switches (e.g., 172), and the like may be used to facilitate electronic communication within network 100 and between network 100, Internet 180, and any other logically distinct networks linked to network 100.
- Network 100 may be configured to permit transmission control protocol/internet protocol (TCP/I P) communications for the transmission or reception of electronic packets.
- Network 100 may also operate in conjunction with a user datagram protocol/I P ( U DP/I P) or any other suitable protocol where appropriate and based on particular needs.
- email gateway 162 may allow client computers such as client device 130, which is operably connected to network 100, to send and receive email messages using Simple Mail Transfer Protocol (SMTP) or any other suita ble protocol.
- SMTP Simple Mail Transfer Protocol
- Client device 130 represents one or more endpoints or customers wishing to affect or otherwise manage electronic communications in network 100.
- the term 'client device' may be inclusive of devices used to initiate an electronic communication, such as a computer, a personal digital assistant ( PDA), a laptop or electronic notebook, a cellular telephone, or any other device, component, element, or object capa ble of initiating voice, audio, or data exchanges within network 100.
- PDA personal digital assistant
- the endpoints may also be inclusive of a suita ble interface to a human user, such as a microphone, a display, or a keyboard or other terminal equipment.
- the endpoints may also be any device that seeks to initiate an electronic communication on behalf of another entity or element, such as a program, a data base, or any other component, device, element, or object capa ble of initiating a voice or a data exchange within network 100.
- Network appliances having registration and detection systems can provide a data com bination protection system 10 in network 100 that ena bles protection against inadvertent or intentional information leaking, in which particular com binations of leaked data can potentially expose confidential information.
- These network appliances may be a ble to access communication pathways associated with the network configuration, such that one or more appliances have access to e-mail traffic, other network traffic, or data that is simply residing somewhere in the business infrastructure (e.g., on a server, a repository, etc.).
- network appliance 12 with registration system 22 can be deployed in network 100 for access to data bases and repositories 112 containing sensitive data elements.
- Registration system 22 can register specific com binations of data from data bases and repositories 112, or from other files or objects in a suitable format.
- the registered com binations of data can be used by detection systems 24, 26, and 28 of network appliances 14, 16, and 18 to detect leaks of any complete registered data com bination, or a predetermined portion thereof, in network traffic or to detect the presence of such data com binations, or predetermined portions thereof, residing in an unauthorized segment of the business infrastructure.
- Network appliances 14, 16, and 18 with detection systems 24, 26, and 18 can be deployed at network egress points (e.g., email gateway 162, web gateway 164, switch 172, etc.) to protect internal-to-external and internal-to-internal network traffic.
- network egress points e.g., email gateway 162, web gateway 164, switch 172, etc.
- a network appliance detects a risk event, it can alert an administrator, which can leverage existing infrastructure to block or quarantine sensitive information from leaving the network.
- the network appliances can operate non-disruptively, requiring no changes to applications, servers, workstations, or the network itself.
- the network appliances can monitor and analyze all applications, protocols, and content types and trigger enforcement actions in real time.
- Data protection manager 32 in network appliance 30 illustrated in FIG U RE 1 may be designed to simplify administration of data com bination protection system 10 as it can offer a centralized interface to manage registration system 22 and all detection systems 24, 26, and 28 across multiple network appliances.
- Data protection manager 32 may be configured to centrally maintain data generated from registration system 22 and detection systems 24, 26, and 28 and to coordinate data flow between the distributed registration and detection systems, which can reside in various network appliances as shown in FIGU RE 1.
- one embodiment includes a registration list and an index to the registration list created by registration system 22, which can be distributed by data protection manager 32 to each of the distributed detection systems 24, 26, and 28.
- Data protection manager 32 may also be configured to allow an authorized security professional (e.g., IT administrator, network operator, etc.) to determine what data input is provided to registration system 22 including which databases or other repositories registration system 22 crawls for data input, to designate enforcement or monitoring states associated with individual detection systems, and to designate who can access the corresponding findings.
- Enforcement actions can include alerting an appropriate administrator, directing an enforcement device to block or quarantine the suspect traffic, and/or reporting on the traffic.
- Monitoring actions can include alerting an appropriate administrator and/or reporting on the suspect traffic, without blocking or quarantining actions.
- Data protection manager 32 may also provide a centralized query mechanism, which allows organizations to quickly search through capture data bases contained on multiple distributed network appliances simultaneously. By allowing the administrator a unified view over all historical data captured throughout points in the network where network appliances are deployed, organizations can quickly perform forensic analysis, conduct investigations, and leverage captured data to update security posture to safeguard sensitive information or to handle emerging threats. In addition, the data protection manager may provide unified reports and diagnostic information.
- One or more ta bles and lists may be included in these network appliances. In some em bodiments, these ta bles and lists may be provided externally to these elements, or consolidated in any suitable fashion.
- the tables and lists are memory elements for storing information to be referenced by their corresponding network appliances. As used herein in this document, the term 'table' and 'list' is inclusive of any suita ble data base or storage medium (provided in any appropriate format) that is capa ble of maintaining information pertinent to the operations detailed herein in this Specification. For example, the tables and lists may store information in an electronic register, diagram, record, index, or queue.
- the tables and lists may keep such information in any suitable random access memory (RAM), read only memory (ROM ), erasable programma ble ROM (EPROM), electronically erasa ble PROM (EEPROM), application specific integrated circuit (ASIC), software, hardware, or in any other suita ble component, device, element, or object where appropriate and based on particular needs.
- RAM random access memory
- ROM read only memory
- EPROM erasable programma ble ROM
- EEPROM electronically erasa ble PROM
- ASIC application specific integrated circuit
- a capture system 29 may also be a part of (or coupled to) one or more network appliances, such as network appliance 18, and may be opera bly connected to a corresponding capture data base 118.
- capture system 29 may be the capture system as shown and described in co-pending U.S. Patent Application Serial No. 12/358,399, filed January 23, 2009, entitled "SYSTEM AN D M ETHOD FOR I NTELLIGENT STATE MANAGEM E NT,” by William Deninger et al., which was previously incorporated by reference herein in its entirety.
- Capture system 29 may be configured to intercept data leaving a network, such as network 100, or being communicated internally to a network such as network 100.
- Capture system 29 can reconstruct objects (e.g., files or other documents) leaving the network or being communicated internally, and store the reconstructed objects in a searcha ble manner in, for example, capture data base 118.
- capture system 29 may also be implemented in conjunction with the other various detection systems 24 and 26 of network 100 for capturing data from the corresponding egress points (e.g., email gateway 162 and web gateway 164). Capture system 29 may also be implemented in conjunction with detection systems in other associated but logically and/or geographically distinct networks. These capture systems may be included within a network appliance with a detection system as shown in FIG U RE 1, or provided as a separate component. In other em bodiments, any other suita ble form of intercepting network traffic may be used to provide detection systems 24, 26, and 28 with internal and outbound network traffic of network 100 to be analyzed.
- switch 172 is connected to network appliance 18 and to Internet 180 through firewall 174.
- Switch 172 which may be implemented as a router or other network device capable of interconnecting network components, can transmit an outgoing data stream to Internet 180 and a copy of that stream to capture system 29.
- Switch 172 may also send incoming data to capture system 29 and to network 100.
- capture system 29, registration system 22, detection systems 24, 26, and 28, and data protection manager 30 may be included as part of other network devices such as switches, routers, gateways, bridges, load balancers, servers, or any other suita ble device, component, or element opera ble to exchange information in a network environment.
- Data combination protection system 10 is also scala ble as distributed networks can include additional detection systems for protecting data leakage across distributed network segments (e.g., having separate access points, being geographically dispersed, etc.) of a network infrastructure.
- Data protection manager 32 may continue to coordinate data flow between registration system 22 and detection systems 24, 26, and 28 in addition to detection systems provided in distributed segments of network 100.
- FIGU RE 2 is a simplified block diagram of a general or special purpose computer 200, such as network appliances 12, 14, 16, 18, and 30 or other computing devices, connected to network 100.
- Computer 200 may include various components such as a processor 220, a main memory 230, a secondary storage 240, a network interface 250, a user interface 260, and a remova ble memory interface 270.
- a bus 210 such as a system bus, may provide electronic communication between processor 210 and the other components, memory, and interfaces of computer 200.
- Processor 220 which may also be referred to as a central processing unit (CPU), can include any general or special-purpose processor capable of executing machine readable instructions and performing operations on data as instructed by the machine reada ble instructions.
- Main memory 230 may be directly accessible to processor 220 for accessing machine instructions and can be in the form of random access memory (RAM ) or any type of dynamic storage (e.g., dynamic random access memory (DRAM)).
- Secondary storage 240 can be any non-volatile memory such as a hard disk, which is capa ble of storing electronic data including executa ble software files. Externally stored electronic data may be provided to computer 200 through removable memory interface 270.
- Remova ble memory interface 270 represents a connection to any type of external memory such as compact discs (CDs), digital video discs (DVDs), flash drives, external hard drives, or any other external media.
- Network interface 250 can be any network interface controller (N IC) that provides a suita ble network connection between computer 200 and any network elements (e.g., email gateway 162, web gateway 164, switch 172, databases and repositories 118 and 112, other network appliances, etc.) and networks to which computer 200 connects for sending and receiving electronic data.
- network interface 250 could be an Ethernet adapter, a token ring adapter, or a wireless adapter.
- a user interface 260 may be provided to allow a user to interact with the computer 200 via any suitable means, including a graphical user interface display.
- any appropriate input mechanism may also be included such as a keyboard, mouse, voice recognition, touch pad, input screen, etc.
- M M U memory management units
- SSP symmetric multiprocessing
- ROM read only memory
- E PROM erasable programmable ROM
- EEPROM electronically erasable PROM
- PCI peripheral component interconnect
- SCSI small computer system interface
- I DE integrated drive electronics
- each computer including network appliances 12, 14, 16, 18, and 30, may include more or less components where appropriate and based on particular requirements.
- the term 'computer' is meant to encompass any personal computers, network appliances, routers, switches, gateways, processors, servers, load balancers, firewalls, or any other suita ble device, component, element, or object operable to affect or process electronic information in a network environment.
- Registration system 300 can include a registration list module 310 and an index table module 320.
- Input to registration list module 310 can include a delimited data file 330 and a regular expressions ta ble 350 and output of registration list module 310 can include a registration list 360.
- delimited data file 330 may represent a plurality of delimited data files generated for various databases and/or files in a network and provided as input to registration list module 310. These delimited data files include specified com binations or sets of data elements to be registered by registration system 300.
- Registration list module 310 may perform the functions of extraction 312, tokenization 314, and tuple storage 316.
- delimited data file 330 includes a plurality of records delimited by a predefined delimiter such as, for example, a carriage return.
- Each record may include one or more data elements, which are extracted by extraction function 312.
- the set of data elements within a record can be a specified combination of related data elements (e.g., a name, a phone number, a social security num ber, an account num ber, etc.) that requires safeguarding.
- Each of the data elements of a record are tokenized by tokenization function 314 into a token (e.g., a numerical representation), which can then be stored in a tuple or record of registration list 360 by tuple storage function 316.
- a tuple in registration list 360 may include numerical representations or tokens of each data element in one particular combination of related data elements that is sought to be protected.
- the data elements extracted and tokenized from delimited data file 330 can include words and/or expression elements, which can have multiple possible formats (e.g., phone number, date of birth, account num ber, etc.).
- a data element can be compared to regular expressions table 350 to determine whether the particular character pattern of the data element matches a predefined expression pattern (i.e., a regular expression), as described in U.S. Patent Application Serial No. 12/358,399, filed January 23, 2009, entitled "SYSTEM AN D M ETHOD FOR I NTELLIG ENT STATE MANAG EM ENT," which has been previously incorporated herein by reference in its entirety.
- data com bination protection system 10 could be configured to use a regular expression table as shown and described in U.S. Patent Application Serial No. 12/358,399, it will be apparent that regular expressions table 350 used by data com bination protection system 10 may be configured in numerous other ways, as long as the table 350 includes the predefined expression patterns.
- regular expressions ta ble 350 includes numerous expression patterns, including a plurality of expression patterns for the same concept.
- a telephone number concept could include the following regular expression patterns: '( ⁇ ) ⁇ - ⁇ ', 'nnn-nnn-nnn', and 'nnn.nnn.nnn' with 'n' representing num bers 0-9.
- different states use different sequences of characters and separators for driver's license numbers.
- a driver's license concept could include a regular expression pattern for each unique sequence of characters and separators representing possible num bers of a driver's license in different states.
- 'dnnn-nnnn-nnnn-nnn', and 'dnnn-nnnnnn' could be expression patterns for license num bers in Wisconsin and Illinois, with 'n' representing numbers 0-9 and 'd' representing letters A-Z.
- Expression patterns in regular expression ta ble 350 may be user- configura ble through an interface that allows a user to define expression patterns for a particular concept.
- some expression patterns may be automatically generated or may be preconfigured in data com bination protection system 10.
- a list of common or popular regular expression patterns can be preconfigured in regular expressions table 350 that may be tailored specifically to the industry into which the data combination protection system 10 is sold.
- Index ta ble module 320 may perform the functions of token count operation 322, token key selection 324, and index storage 326 to create index ta ble 370.
- Token count operation function 322 processes registration list 360 to count all of the occurrences of each token in registration list 360.
- a temporary prime count ta ble 340 may be created to store the count sums.
- Token key selection function 324 can then process each tuple and, using prime count table 340, select the least frequently occurring one of the tokens from each tuple as a token key.
- Each unique token key may then be stored in an index of index table 370.
- index table 370 can contain a plurality of indexes, each having a unique token key and each being associated with one or more tuples of registration list 360.
- FIG U RE 4 provides a more detailed illustration of exemplary file structures of delimited data file 330 with an example record 1, registration list 360 with an example tuple 362, and index table 370 with an example index 372.
- Delimited data file 330 is shown with a detailed first record 332 illustrating a possible configuration of record 1 with an example com bination of data elements types (i.e., words and expression elements).
- First record 332 corresponds to tuple 362 of registration list 360, where each word and expression element from first record 332 corresponds to one token in tuple 362.
- Tuple 362 is indexed in registration list 360 by index 372 of index ta ble 370, which includes a registration list offset that is a pointer (i.e., offset 4) to the beginning (i.e., token 1) of tuple 362.
- index 372 of index ta ble 370 which includes a registration list offset that is a pointer (i.e., offset 4) to the beginning (i.e., token 1) of tuple 362.
- delimited data file 330 may be configured as a file with a plurality of records (e.g., record 1, record 2, record 3, etc.) having a predefined delimiter between each record.
- a delimiter can be any formatting character or other character used to designate the end of one record and the beginning of a next record. Some common delimiters include carriage returns, line feeds, semi-colons, and periods. However, any character could be designated as a delimiter if the data file is appropriately configured with the particular delimiter. In one example em bodiment, if a carriage return is defined as the delimiter for delimited data file 330, then each record would end with a carriage return.
- each record may be comprised of a plurality of data elements (i.e., words or expression elements).
- the data elements within each record of delimited data file 330 are separated by at least one separator (e.g., comma, space, dash, etc.).
- a word may be comprised of a string of characters having one or more consecutive essential characters without any separators.
- An expression element may be comprised of a string of characters having at least two words and one or more separators between the words.
- essential characters can include a fundamental unit in a written language including numerical digits, letters of a written language, and/or sym bols representing speech segments of a written language (e.g., sylla bograms, etc.).
- Speech segments of a language can include words, sylla bles of words, distinct sounds, phrases, and the like.
- Separators can include any character that is not an essential character and that is not recognized as a predefined delimiter indicating an end of a record in the data file.
- Examples of separators include punctuation marks, word dividers and other symbols indicating the structure and organization of a written language (e.g., dashes, forward slashes, backward slashes, left parentheticals, right parentheticals, left brackets, right brackets, periods, spaces, an at sym bol, an ampersand symbol, a star sym bol, a pound sym bol, a dollar sign sym bol, a percent sign symbol, a quote, a carriage return, a line feed, etc.).
- separators can include characters that are equivalent to the predefined delimiter for the data file.
- the equivalent character within a record must be differentiated from the predefined delimiter that indicates an end of the record.
- the equivalent character within the record would be processed either as a separator between data elements or as a separator included within an expression element.
- delimited data file 330 is a comma separated varia ble (CSV) list, which can be a text format generated for a database or other file having a tabular data format.
- a CSV list can include multiple data elements in each record with the data elements being separated by commas.
- Each record in the CSV list includes a character designated as a predefined delimiter to indicate an end of the record, such as a carriage return or line feed.
- These predefined delimiters conform to Request for Comments (RFC) 4180, in which carriage returns and line feeds within a record are encapsulated in quotes or appropriately escaped in order to differentiate them from a predefined delimiter indicating an end of record.
- quotes may also be used as separators between data elements or within an expression element if appropriately escaped (i.e., an empty set of quotes to indicate a literal quote).
- each CSV record includes the same num ber of data elements.
- Em bodiments of registration system 300 can accommodate varying num bers of data elements in each record, because each record is delineated by a predefined delimiter that is recognized by system 300.
- registration system 300 can also accommodate other formats of delimited data file 330 as long as each record (containing a desired combination of data elements) is delineated by a predefined delimiter, which is designated for the data file 330 and recognized by registration system 300.
- a free form textual document in which a variety of separators (e.g., spaces, dashes, etc.) separate data elements, may be provided as a delimited data file if a predefined delimiter (e.g., line feed, carriage return, period, etc.) is used to separate successive pairs of records and is designated as the delimiter for the data file such that it is recognized by registration system 300.
- a predefined delimiter e.g., line feed, carriage return, period, etc.
- first record 332 of FIGU RE 4 ten data elements are shown, including 2 words, 2 expression elements, and 6 words in succession.
- a separator is provided between each of the successive data elements and a delimiter is provided at the end of first record 332.
- the data element may be tokenized into one token (e.g., token 1 through token 10) and stored in tuple 362 of registration list 360.
- An end tag may also be provided to denote the end of a tuple in registration list 360.
- Registration list module 310 can process each record of delimited data file 330 and create a separate tuple in registration list 360 corresponding to each record.
- index ta ble module 320 may process registration list 360 to create index table 370.
- index table module 320 generates index 372 to provide an index for locating tuple 362 in registration list 360.
- Prime count ta ble 340 which stores the sums of occurrences for each token in registration list 360, can be generated.
- a token key for tuple 362 can then be computed by searching prime count table 340 to find a token from tuple 362 that appears with the least frequency in the entire registration list 360, relative to the other tokens in tuple 362.
- token 2 is shown as the token occurring with the least frequency (i.e., the lowest sum of occurrences), compared to the sums of occurrences of token 1 and tokens 3-10.
- token 2 may be selected as the token key and used to create index 372.
- index ta ble 370 can be generated using a known technique of forcing hash numbers (e.g., token keys) into a narrow boundary with modulus, in which the boundary is defined by a prime num ber. This can be advantageous for particularly large amounts of data, where a smaller area of memory may be allocated to accommodate the data and the data is generally distributed uniformly within the allocated memory. Thus, extremely large amounts of data can be more efficiently processed.
- the size of index ta ble 370 could be generated by, for example, data protection manager 32 of system 10, based on resources selected by an authorized user during resource provisioning of system 10.
- each index can be placed in a space within index table 370 corresponding to a value (e.g., a remainder) calculated by performing a modulo operation on the token key with the prime number size of the index ta ble. If statistical collisions occur (i.e., different token keys have the same result from a modulo operation), then the different token keys can be link-listed in the same space of index table 370.
- a registration list offset which points to a beginning of tuple 362 (e.g., offset 4 pointing to token 1) may be added to index 372 and associated with the token key.
- a document identifier (document I D" or "docI D”), which can identify delimited data file 330 may also be added to index 372 and associated with the token key.
- the document I D field in an index identifies which delimited data file is associated with the tuple to which the accompanying registration list offset points.
- the offsets and document I Ds corresponding to a particular token key are associated with that particular token key in the index.
- the ⁇ N EXT> field of index 372 represents additional registration list offsets and document I Ds that may be associated with the same token key in index 372.
- a second tuple having a second offset in registration list 360 may also contain token 2. If token 2 is the token in the second tuple that occurs with the least frequency in the registration list 360 relative to the other tokens in the second tuple, then token 2 of the second tuple could be selected as the token key for the second tuple.
- the same index 372 could be used to designate the second tuple by adding a second registration list offset and an appropriate document ID after the ⁇ N EXT> pointer.
- FIGU RE 5 is a simplified block diagram illustrating example data input and a resulting prime count ta ble 540, which may be generated by token count operation 322 of index ta ble module 320.
- Data element 501 (word 1), data element 502 (word 1), data element 503 (expression element 1), and data element 504 (expression element 2) represent example data elements of a delimited data file, such as delimited data file 330, which are stored as tokens in one or more tuples of a registration list such as registration list 360.
- Token count operation function 322 may count the tokens generated for each of the data elements 501, 502, 503, and 504 and may produce prime count ta ble 540.
- prime count table 540 may include 'n' entries 542 with corresponding token sums 544.
- 'n' is equal to a prime num ber and a modulo operation is performed on each token to determine which entry corresponds to the token sum to be incremented.
- entry 2 corresponds to tokens representing data element 501 (word 1) and data element 502 (word 1) and, therefore, has a token sum of 2.
- entries 4 and 7 correspond to tokens representing data element 503 (expression element 1) and data element 504 (expression element 2), respectively, and each has a token sum of 1.
- FIGURES 6A, 6B, and 7 simplified flowcharts illustrate operational processing of registration system 300.
- FIGURES 6A and 6B are simplified flowcharts illustrating example operational steps for registration list module 310 of registration system 300.
- FIGURE 7 is a simplified flowchart illustrating example operational steps for index table module 320 of registration system 300.
- FIGURE 6A shows the overall flow 600 of registration list module 310, including the processing of one or more delimited data files, the processing of each record of each delimited data file, and the processing of each data element in each record of the one or more delimited data files.
- Flow may begin in step 602 of FIGURE 6A, where a first delimited data file is obtained.
- registration system 300 can be configured to crawl one or more desired databases or other data files and convert the databases or other data files to one or more delimited data files.
- a database or other data file could be converted to a comma separated variable list (CSV), which could be provided as the delimited data file.
- CSV comma separated variable list
- a first record is fetched in step 604.
- a start of a first data element is identified in the fetched record.
- applicable extraction, tokenization, and storage operations are performed on the current data element, which will be described in more detail herein with reference to FIGURE 6B.
- Flow may then move to decision box 614 to determine whether there are more records in delimited data file. If more records exist in the delimited data file, then a next record is fetched in step 616 and flow loops back to step 606 to identify a start of a first data element in the new record.
- decision box 618 determines whether there are more delimited data files to be processed. If it is determined that one or more delimited data files exist that have not been processed, then a next delimited data file is obtained in step 620 and flow loops back to step 604 and a first record is fetched from the new delimited data file. However, if it is determined in decision box 618 that all delimited data files have been processed, then the flow ends.
- FIGURE 6B shows the overall flow of step 608 in FIGURE 6A, illustrating example operational steps to extract, tokenize, and store a data element from a record of a delimited data file.
- Flow may begin in step 652 where regular expression table 350 is searched to find a longest match to a character pattern of a string of characters beginning at the start of the data element.
- expression patterns from regular expression table 350 are compared in order of size from longest to shortest to determine if there is a match.
- decision box 654 a query is made as to whether a match from the regular expression table 350 was found.
- step 660 If it is determined that none of the regular expression patterns match a character pattern of any string of characters beginning at the start of the data element (i.e., the data element does not match any regular expression patterns in regular expression table 350), then the data element represents a word and flow moves to step 660 to find an end of the data element (i.e., the word). The end of word is the last consecutive essential character beginning at the start of the data element. After the word is extracted in step 662, flow passes to decision box 664, where the word may be evaluated to determine whether it is a 'stop word'.
- 'Stop words' can include any words determined by an administrator or otherwise specified as a stop word, such as simple grammar construction words (e.g., like, and, but, or, is, the, an, a, as, etc.). If the word is determined to be a stop word, then it is ignored and the flow ends without tokenizing or storing the word. However, if the word is determined not to be a stop word, then flow moves to step 668 where the word may be stemmed.
- a stemming process such as, for example, a known porter stemming algorithm, may be applied to the word in which any suffixes and/or affixes can be extracted off of a stem of the word.
- step 670 After stemming has been performed if necessary, flow may pass to step 670 where the word (or stemmed word) is tokenized.
- tokenization includes converting the word (or stemmed word) into a 32-bit numerical representation or token.
- step 672 the token is stored in a tuple of registration list 360, where the tuple corresponds to the record from which the data element was extracted.
- the numerical representation for the token is generated using a Federal Information Processing Standards (FI PS) approved hash function.
- FI PS Federal Information Processing Standards
- the hash function has a lesser degree of numerical intensity, and is, therefore, a less secure hash, then less computer resources are used to calculate the hash.
- registration list 360 may be stored in multiple places throughout a network and searched repeatedly by a plurality of detection systems as shown in FIG U RE 1, a greater numerical intensity may be desira ble for the hash function.
- each tuple includes at least two tokens.
- the data element represents an expression element and has the same length as the matching expression pattern.
- the expression element can be extracted at step 656 and normalized in step 658.
- normalizing the expression element may include eliminating any separators from the expression element. For example, a phone number could be normalized to 'nnnnnnnnn' with 'n' representing any number 0 through 9.
- normalization may include modifying separators and/or particular essential characters of the expression element to achieve a predefined standard form for the expression element. For example, all dates could be standardized to the form ⁇ - ⁇ -DD' with ⁇ ' representing the year, 'MM' representing the month, and 'DD' representing the day.
- step 670 the expression element is tokenized and, in step 672, the resulting token is stored in a tuple of registration list 360. After the token has been stored in registration list 360, flow returns to step 610 of FIGURE 6A.
- FIGURE 7 shows the overall flow 700 of index table module 320, which generates index table 370 with token keys and associated offsets to the corresponding tuples stored in registration list 360.
- each of the tuples can be indexed by a token key.
- a token key can be a token that, compared to other tokens in the same tuple, has the lowest frequency occurrence in all tuples of the entire registration list 360.
- a token key could be selected having the lowest frequency of all tuples created from multiple delimited data files.
- a token key can be determined using a prime count ta ble, such as prime count ta ble 340 shown in FIGU RE 3, and further illustrated in an example prime count table 540 in FIGU RE 5.
- prime count table 340 can be generated for the tokens stored in registration list 360 using the known technique, as previously described herein, of forcing hash numbers (e.g., tokens) into a narrow boundary with modulus, in which the boundary is defined by a prime num ber.
- hash numbers e.g., tokens
- Using a prime count table can alleviate computer resources needed to process data elements potentially num bering in the billions.
- the 32-bit numerical representation (2 32 ) could represent greater than 4 billion possible tokens.
- the size of a prime count table may be generated by, for example, data protection manager 32 of system 10, based on resources selected by an authorized user during resource provisioning of system 10.
- the size of the prime count table could be defined by the next closest prime num ber (e.g., 100,000,007).
- the next closest prime num ber e.g. 100,000,007.
- registration list 360 may be sequentially processed from the first token in the first tuple to the last token in the last tuple. For each token, a modulo operation can be performed using the prime number and the numerical value of the particular token. The remainder value of the modulo operation is located in prime count table 340 and incremented by 1. Some statistical collisions may occur in which tokens generated for two different data elements result in the same remainder. In this case the same entry in prime count table 340 can be incremented, thus artificially increasing the number count of the entry, which corresponds to more than one token. However, an artificial increase of a word count does not significantly diminish the viability of determining the token in each tuple having the lowest frequency in the registration list.
- step 704 After prime count table 340 is generated in step 702, flow passes to step 704 where a first tuple is identified in registration list 360. Steps 706 through 722 then perform looping to determine a token key for each tuple and to generate index table 370. Accordingly, the loop begins in step 706 where prime count table 340 is searched to determine which one of the tokens in the current tuple has the lowest count or frequency. In step 708, the token of the current tuple having the lowest frequency according to prime count table 340 is selected as a token key for the current tuple.
- step 710 After selecting the token key for the current tuple, flow may pass to step 710 where all indexes in index table 370 can be searched for a matching token key. With reference to decision box 712, if no index is found with a token key matching the selected token key for the current tuple, then flow passes to step 716, where a new index is created in index table 370 using the selected token key. Flow then passes to step 718 where a document identifier and offset are added to the new index.
- the document ID may be obtained from header information of the corresponding tuple in registration list 360.
- the offset may be a pointer or index to the corresponding tuple in registration list 360. For example, the offset can be an index num ber of the first token appearing in the corresponding tuple.
- step 714 the current tuple information can be added to the existing index.
- a pointer e.g., ⁇ N EXT> pointer
- a document I D and offset corresponding to the current tuple can be added.
- Alternative embodiments could be implemented to reduce the processing required to generate the lowest frequency token keys for an index table. Although such embodiments could reduce the backend registration processing, additional processing may be required by the detection system.
- a different token key selection criteria i.e., other than the lowest frequency selection criteria
- tokens from tuples could be selected as token keys based upon a predetermined column or position of a data element in a record. Although the index ta ble may be more quickly generated as result, more tuples may be evaluated during the detection processing, particularly if at least some of the token keys correspond to more commonly occurring data elements.
- the token key selection criteria may be user-configura ble, such that an authorized user can determine the selection criteria to be used by registration system 300 when selecting the token keys.
- FIG U RE 8 illustrates a scenario in which a record 802 with example data elements is processed by registration system 300.
- Record 802 is an example single record of a delimited data file, such as delimited data file 330, which may have a plurality of records.
- Record 802 includes data elements separated by spaces and ending with a carriage return, which is the predefined delimiter.
- Each of the data elements is evaluated to determine if it is a word or an expression element.
- the data elements represented as words i.e., Carol, Deninger, 123, Apple, Lane, Boise, ID, and 99999
- the data elements which are determined to match a regular expression pattern are extracted and normalized. In this example case, normalizing the expression element includes removing any nonessential characters.
- the normalized expression element is then tokenized.
- ta ble represents the type of data, the example data element contents of record 802 corresponding to each type of data, and the tokens generated for each data element:
- a tuple 812 of registration list 810 is created by registering record 802. Tokens 804 generated from record 802 may be stored in sequential order in tuple 812 of registration list 810.
- Tokens 804 generated from record 802 may be stored in sequential order in tuple 812 of registration list 810.
- header information (not shown) including a document identifier identifying the delimited data file or associated data storage (e.g., Customer records database in Sales) associated with record 802.
- an end of each tuple in registration list 810 can be defined by a termination entry such as a zero, as shown at the end of tuple 812.
- offsets 814 are provided with registration list 810, with each offset pointing to a separate token entry in registration list 810.
- Index ta ble 820 may be generated for registration list 810, with index 822 corresponding to tuple 812.
- Index 822 includes a token key (55), which is shown as the second occurring token in tuple 812. Token key (55) may be selected if it is the token of tuple 812 having the lowest frequency occurrence in the entire registration list 810, as previously described herein.
- offset (1001) is provided with token key (55) and points to the first occurring token (23) in tuple 812. Thus offset (1001) indicates the beginning of tuple 812.
- Index 822 may also include a docI D or document identifier indicating the delimited data file or data storage associated with record 802.
- Detection system 900 can include an evaluate module 910 and a validate module 920.
- Input to evaluate module 910 can include an input object 930, regular expressions table 350, and index table 370.
- Output of evaluate module 910 can include a bit hash ta ble 940 and a pending key list 950, both of which may be temporary.
- Evaluate module 910 may perform the functions of extraction 912, tokenization 914, bit set operation 916, and pending key list creation 918.
- evaluate module 910 processes a file, such as input object 930, to extract and tokenize each data element of the file in su bstantially the same manner that registration system 300 extracted and tokenized data elements of delimited data file 330.
- extracted and tokenized data elements from the file can be compared to the extracted and tokenized data elements from the delimited data file 330.
- Input object 930 can include any type of data file or document to be analyzed to determine if any registered com bination of data elements, or a predetermined threshold amount thereof, is present in the file or document.
- input object 930 can be provided by capture system 29, as shown in FIG U RE 1, when packets are intercepted by capture system 29 in network 100 and the objects are reconstructed from the intercepted packets, as previously described herein and described in U.S. Patent Application Serial No. 12/358,399, which has been previously incorporated herein by reference in its entirety.
- Example input objects include, but are not limited to, Microsoft Office documents (such as Word, Excel, PowerPoint, etc.), porta ble document format (PDF) files, text files, email messages, email attachments, any human language text document (e.g., Englishtext, Frenchtext, Germantext, Spanishtext, Japanesetext, Chinesetext, Koreantext, Russiantext, etc.), and the like.
- a storage repository such as, for example, a database, may also be processed by detection system 900 to evaluate the contents for the presence of any registered data com binations.
- a common file such as a CSV list, can be generated for a data base or other file and provided to detection system 900 as input object 930.
- Input object 930 can include words and/or expression elements separated by any num ber of separators and/or delimiters.
- the contents of input object 930 can be sequentially processed.
- a character pattern of each data element of input object 930 can be compared to regular expressions ta ble 350 to determine whether the data element matches a predefined expression pattern as previously described herein and as described in U.S. Patent Application Serial No. 12/358,399, filed January 23, 2009, entitled "SYSTEM AND METHOD FOR INTELLIGENT STATE MANAGEMENT," which has been previously incorporated herein by reference in its entirety.
- the entire expression element can be extracted and normalized, such that tokenization function 914 can be performed on the normalized expression element. If the data element does not match a predefined expression pattern, then the data element is a word, which may be extracted and tokenized by tokenization function 914.
- Bit set operation 916 and pending key list creation 918 may also be performed by evaluate module 910.
- Bit set operation 916 sets bits corresponding to each tokenized data element in bit hash table 940, thereby providing an efficient way of indicating each tokenized data element of input document 930.
- Pending key list creation 918 compares each tokenized data element of input object 930 to index table 370 to identify a corresponding token key in an index. In one embodiment, a corresponding token key is identified when the token key is equivalent to the tokenized data element (i.e., having the same numerical representation). If a corresponding token key is identified, then the tokenized data element or object token is saved to pending key list 950 for further analysis by validate module 920.
- Validate module 920 of detection system 900 may perform the functions of registration list and bit hash table comparison 922 and event list update 924.
- Registration list and bit hash table comparison 922 can process pending keys (i.e., tokens) from pending key list 950 to find corresponding indexes in index table 370.
- a pending key corresponds to a token key in an index when the pending key is equivalent to the token key (i.e., having the same numerical representation).
- the indexes can then be used to locate corresponding tuples in registration list 360.
- the tokens in the identified tuples can be compared to bit hash table 940 to determine how many tokens in an identified tuple are present in input object 930.
- Event list update 924 can update an event list 960, indicating the particular registered data com bination that is found in input object 930, the document identifier associated with the particular registered data com bination, and any other desired information (e.g., date and time stamp, source and/or destination addresses of network traffic, port numbers, etc.).
- FIG U RE 10 is a simplified block diagram illustrating example data input and a resulting bit vector or bit hash table 1040, which may be generated by bit set operation 916 of evaluate module 910.
- Data element 1001 (word 1), data element 1002 (word 1), data element 1003 (expression element 1), and data element 1004 (expression element 2) represent example data elements of an input object, such as input object 930. Setting a bit position is done by changing a bit from “0" to "1” or from "1" to "0", depending on which value is the default.
- all bits in bit hash ta ble 1040 are initialized to "0" and a bit associated with a particular bit position in bit hash table 1040 can be set to a "1" if a data element corresponding to the same bit position is found in the input object.
- bit set operation 916 can determine which data elements correspond to which bit positions of bit hash table 1040 by using a known prime num ber hashing technique.
- Bit hash table 1040 may include m bits, where m is equal to a prime num ber.
- the result of the modulo operation can indicate the bit position corresponding to the data element represented by the token.
- the bit corresponding to the particular bit position can then be set to indicate the presence of the data element in the input object.
- bit position 2 may correspond to data element 1001 (word 1) and data element 1002 (word 1)
- bit position 5 may correspond to data element 1003 (expression element 2)
- bit position 10 may correspond to data element 1004 (expression element 1). Accordingly, each of the bits corresponding to bit positions 2, 5, and 10 may be set to a 1.
- FIGURE 11 is a simplified flowchart illustrating example operational steps for evaluate module 910 of detection system 900
- FIGURE 12 is a simplified flowchart illustrating example operational steps for validate module 920 of detection system 900.
- evaluation processing flow 1100 may include extraction and tokenization functions for input object 930 similar to the extraction and tokenization functions applied to delimited data files by registration list processing flow 600 of FIGU RES 6A and 6B.
- Evaluation processing flow 1100 may begin in step 1102 where a start of a first data element in input object 930 is identified.
- regular expression table 350 is searched to find a longest match to a character pattern of a string of characters beginning at the start of the data element.
- expression patterns from regular expression table 350 are compared in order of size from longest to shortest to determine if there is a match.
- decision box 1106 a query is made as to whether a match from the regular expression table 350 was found. If it is determined that none of the regular expression patterns match a character pattern of any string of characters beginning at the start of the data element (i.e., the data element does not match any regular expression patterns in regular expression table 350), then the data element represents a word and flow moves to step 1112 to find an end of the data element (i.e., the word), which can be extracted in step 1114. The end of the word is the last consecutive essential character beginning at the start of the data element. After the word has been extracted in step 1114, flow moves to decision box 1116, where the word may be evaluated to determine whether it is a 'stop word', as previously described herein.
- step 1128 determines whether the current word is the last data element in input object 930. If the current word is the last data element, then processing ends. However, if the word is not the last data element in input object 930, then flow moves to step 1130 to find the start of the next data element. Flow then loops back to step 1104 to perform the extraction, tokenization, and storage of the new data element.
- step 1118 if the current word is determined not to be a stop word, then flow moves to step 1118 where the word may be stemmed.
- a stemming process such as, for example, a porter stemming algorithm, may be applied to the word in which any suffixes and/or affixes can be extracted off a stem of the word.
- flow may pass to step 1120 where the word (or stemmed word) is tokenized.
- tokenization includes converting the word (or stemmed word) into a 32-bit numerical representation or token, which is accomplished using the same technique used by registration list module 310 (e.g., Federal Information Processing Standards (FI PS) approved hash function).
- FI PS Federal Information Processing Standards
- a bit may be set in bit hash ta ble 940 in step 1122.
- the set bit corresponds to a bit position in bit hash ta ble 940 determined by performing a modulo operation on the token using the prime num ber size of the bit hash table, as previously described herein.
- the bit is set to indicate that the word, represented by the token, was found in input object 930.
- step 1104 Flow then loops back to step 1104 to perform the extraction, tokenization, and storage of the new data element.
- decision box 1128 if the data element is the last data element in input object 930, then the entire input object 930 has been processed and flow 1100 ends.
- the data element represents an expression element and has the same length as the matching expression pattern.
- the expression element can be extracted in step 1108 and normalized in step 1110.
- the particular type of normalizing employed by evaluate module 910 is the same type of normalizing employed in registration list module 310.
- normalizing the expression element may include eliminating any separators from the expression element or modifying separators and/or particular essential characters of the expression element to achieve a predefined standard form for the expression element.
- step 1120 the normalized expression element is tokenized.
- step 1122 a bit may be set in bit hash table 940 corresponding to the value of a remainder resulting from a modulo operation on the token using the prime number size of the bit hash table, as previously described herein.
- decision box 1124 determines whether the token corresponds to a token key in one of the indexes of index table 370. If the token corresponds to a token key in one of the indexes, then flow passes to step 1126 and the token is saved to pending key list 950.
- FIGU RE 12 illustrates example operational steps in a validation processing flow 1200 of validate module 920 of detection system 900.
- validation processing flow 1200 uses bit hash table 940, pending key list 950, registration list 360, and index table 370 to determine whether a registered combination of data elements, or a predetermined threshold amount thereof, are contained in input object 930.
- Flow may begin in step 1202 where a first pending key is retrieved from pending key list 950. Flow then moves to step 1204 where index table 370 is searched for an index with a token key corresponding to the pending key. Once an index is found, flow moves to step 1206 to find a first tuple identified in the index.
- the first tuple can be identified by using a first offset linked to the token key in the index. The offset may point to a location in the registration list of a token at the beginning of the corresponding tuple.
- step 1208 Once the first token of the corresponding tuple has been identified in registration list 360 in step 1208, operational steps 1210 through 1222 process the tuple until either an event is validated (i.e., all data elements or a threshold amount of data elements of a registered data combination are present in input object) or not validated (i.e., all data elements or a threshold amount of data elements of a registered data combination were not found in input object).
- decision box 1210 a query is made as to whether a bit corresponding to the token is set in bit hash table 940.
- a modulo operation may be performed on the token using the prime num ber size of bit hash ta ble 940 to determine which bit position to check in bit hash ta ble 940. If the bit in the appropriate bit position is set, then flow may pass to step 1212 where a data element count can be incremented. The data element count indicates a total number of tokens, from the tuple being processed, that are found in bit hash ta ble 940. After the data element count has been incremented, or if the bit was not set in bit hash ta ble 940, then flow passes to decision box 1214 to determine whether the current token is the last token in the tuple. If the current token is not the last token in the tuple, then flow passes to step 1216 to identify the next token in the tuple. Flow then loops back to decision box 1210 to determine whether a bit corresponding to the new token is set.
- decision box 1214 it is determined that the last token in the tuple has been evaluated. Flow may then pass to decision box 1218 where a query is made as to whether the data element count is greater than or equal to a predetermined threshold amount.
- a predetermined threshold amount In one em bodiment, an event may be validated when all data elements from a single record of a delimited data file are found in an input document. Thus, in this em bodiment, the predetermined threshold amount would equal the number of data elements in the record (i.e., the number of tokens in the corresponding tuple).
- data protection manager 32 shown in FIGU RE 1 may be configured to allow an authorized user to set the predetermined threshold amount as desired.
- step 1220 If the data element count meets or exceeds the predetermined threshold amount in step 1218, then an event is validated and the flow passes to step 1220 where task and file information are retrieved.
- file information may be retrieved from the document ID (docID) corresponding to the particular offset in the index used to locate the current tuple.
- other information related to input object 930 e.g., transmission information such as source and destination addresses, source and address ports, date and time, email addresses of an associated email message, file path of document, data base, or other storage repository, etc.
- transmission information such as source and destination addresses, source and address ports, date and time, email addresses of an associated email message, file path of document, data base, or other storage repository, etc.
- the particular data elements of the registered com bination of data elements found in input object 930 may be stored and/or displayed for an authorized user to review.
- step 1222 the event may be recorded in event list 960 and/or appropriate notifications (e.g., email notification, Syslog notification, status messages, etc.) may be provided to an authorized user including some or all of the retrieved information.
- the validation of an event can also trigger actions to prevent the transmission of an object that triggered the event validation or to lock down a database or other storage repository that triggered the event validation.
- Such enforcement actions can be implemented via capture system 29 or other existing infrastructure designed to stop the flow of data transmissions.
- decision box 1218 if the data element count does not meet the predetermined threshold, then no event is validated and steps 1220 and 1222 are bypassed. After all of the tokens of the current tuple have been processed and either an event has been validated or no event has been validated, then flow passes to decision box 1224 where a determination is made as to whether the tuple being processed is the last tuple identified in the index. If the current tuple is not the last tuple in the index, then the su bsequent ⁇ N EXT> pointer in the index indicates the next tuple to be processed by designating an offset for the next tuple in registration list 360.
- step 1226 if the index has a ⁇ N EXT> pointer that is not null, then flow passes to step 1226 and the next tuple is identified by the offset linked to the ⁇ N EXT> pointer. Flow then loops back to step 1208 to begin processing tokens of the next tuple to determine whether to validate an event for the next tuple.
- decision box 1228 determines whether the pending key is the last pending key in pending key list 950. If the current pending key is not the last one in pending key list 950, then the next pending key is retrieved from pending key list 950 in step 1230 and flow loops back to step 1204, where index table 370 is searched for a token key that corresponds to the new pending key. Flow then continues processing to determine whether to validate an event for each tuple indicated by the particular index of index table 370.
- FIGU RE 13 illustrates a scenario in which an example input document 1302 is processed by detection system 300.
- a representative sample of data elements is shown in input document 1302, with ellipses indicating additional data elements not shown.
- a registration list 1310 and an index table 1320 are shown already created from registration system 300.
- Tokenized words 1304 show the object tokens generated for each of the data elements shown in input document 1302.
- bit hash table 1350 During evaluation processing of detection system 300, a bit is set for each of the object tokens shown in bit hash table 1350.
- index ta ble 1320 is searched for a token key in an index corresponding to the object token.
- object token (55) is found in an index having a token key (55) and, therefore, object token (55) is stored in a pending key list 1340.
- bit hash ta ble 1350 and pending key list 1340 are generated.
- each of the pending keys in pending key list 1340 is processed to determine if a corresponding tuple of tokens, or a predetermined threshold amount of tokens in the corresponding tuple, are represented in bit hash table 1350.
- index table 1320 is searched for an index with a token key corresponding to pending key (55).
- Index 1322, having token key (55) is found and validation processing is performed as indicated at box 1306.
- the offset 1001 of index 1322 is used to identify tuple 1312.
- Each of the tokens in tuple 1312 is analyzed to determine if a corresponding bit is set in bit hash table 1350. In this case, all of the tokens of tuple 1312 are represented by a bit set in bit hash ta ble 1350. Therefore, the predetermined threshold is met, an event is validated, and an event list may be updated as indicated in box 1308. Thus, in this example, detection system 300 determines that input document 1302 contains a threshold amount of a registered combination of data elements (i.e., data elements represented by tuple 1312) and, consequently, validates an event.
- a threshold amount of a registered combination of data elements i.e., data elements represented by tuple 1312
- a parser instead of sequentially processing each data element of a record in delimited data file 330, or sequentially processing each data element of input object 930, a parser may be used as described in U.S. Patent Application Serial No. 12/358,399, which was previously incorporated herein by reference.
- a parser can parse extracted data to identify all of the expression elements within the particular record or object.
- Expression elements can be identified by parsing expression patterns from regular expressions ta ble 350 over the record or object. In one em bodiment, expression patterns are parsed over the record or object in descending order from longest to shortest. Once all of the expression elements are identified, then each word could be extracted from the remaining data in the record or object.
- Software for achieving the registration and detection operations outlined herein can be provided at various locations (e.g., the corporate IT headquarters, network appliances distributed to egress points of a network, etc.). In other em bodiments, this software could be received or downloaded from a web server (e.g., in the context of purchasing individual end-user licenses for separate networks, devices, servers, etc.) in order to provide this system for protecting specified com binations of data. In one example implementation, this software is resident in one or more computers sought to be protected from a security attack (or protected from unwanted or unauthorized manipulations of data).
- the software of the system for protecting specified data combinations in a computer network environment could involve a proprietary element (e.g., as part of a network security solution with McAfee ® Network Data Loss Prevention (N DLP) software, McAfee ® ePolicy Orchestrator (ePO) software, etc.), which could be provided in (or be proximate to) these identified elements, or be provided in any other device, server, network appliance, console, firewall, switch, information technology ( IT) device, distributed server, etc., or be provided as a complementary solution (e.g., in conjunction with a firewall), or provisioned somewhere in the network.
- a proprietary element e.g., as part of a network security solution with McAfee ® Network Data Loss Prevention (N DLP) software, McAfee ® ePolicy Orchestrator (ePO) software, etc.
- N DLP Network Data Loss Prevention
- ePO McAfee ® ePolicy Orchestrator
- the registration and detection activities outlined herein may be implemented in software. This could be inclusive of software provided in network appliances 12, 14, 16, 18, and 30 (e.g., registration system 22, detection systems 24, 26, and 28, and capture system 29). These elements and/or modules can cooperate with each other in order to perform registration and detection activities as discussed herein. In other em bodiments, these features may be provided external to these elements, included in other devices to achieve these intended functionalities, or consolidated in any appropriate manner. For example, some of the processors associated with the various elements may be removed, or otherwise consolidated such that a single processor and a single memory location are responsible for certain activities. In a general sense, the arrangement depicted in FIGU RE 1 may be more logical in its representation, whereas a physical architecture may include various permutations, com binations, and/or hybrids of these elements.
- all of these elements include software (or reciprocating software) that can coordinate, manage, or otherwise cooperate in order to achieve the registration and detection operations, as outlined herein.
- One or all of these elements may include any suita ble algorithms, hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof.
- such a configuration may be inclusive of logic encoded in one or more tangible media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.), which may be inclusive of non-transitory media.
- ASIC application specific integrated circuit
- DSP digital signal processor
- one or more memory elements can store data used for the operations described herein. This includes the memory element being able to store software, logic, code, or processor instructions that are executed to carry out the activities described in this Specification.
- a processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification.
- the processor (as shown in FIG U RE 2) could transform an element or an article (e.g., data) from one state or thing to another state or thing.
- the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programma ble gate array (FPGA), an erasa ble programma ble read only memory (EPROM), an electrically erasa ble programma ble read only memory (EEPROM )), an ASIC that includes digital logic, software, code, electronic instructions, flash memory, optical disks, CD-ROMs, DVD ROMs, magnetic or optical cards, other type of machine- readable medium suita ble for storing electronic instructions, or any suita ble com bination thereof.
- FPGA field programma ble gate array
- EPROM erasa ble programma ble read only memory
- EEPROM electrically erasa ble programma ble read only memory
- ASIC that includes digital logic, software, code, electronic instructions, flash memory
- the registration and detection systems 22, 24, 26, and 28 have been described above as systems implemented in stand-alone devices, such as network appliances 12, 14, 16, and 18.
- the registration and detection systems 22, 24, 26, and 28 can be implemented in an appliance constructed using commonly availa ble computing equipment and storage systems capable of supporting the software requirements.
- the registration and detection systems could alternatively be implemented on any computer capable of intercepting and accessing data from a network.
- registration system 22 could be implemented on a server of network 100 shown in FIGURE 1.
- detection systems 14, 16, and 18 could be implemented on their respective gateways and routers/switches.
- any of the memory items discussed herein should be construed as being encompassed within the broad term 'memory element.
- any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term 'processor.
- Each of the computers may also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment.
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201180058414.4A CN103430504B (en) | 2010-11-04 | 2011-02-15 | For protecting the system and method specifying data combination |
EP11704904A EP2499806A2 (en) | 2010-11-04 | 2011-02-15 | System and method for protecting specified data combinations |
KR1020137014404A KR101538305B1 (en) | 2010-11-04 | 2011-02-15 | System and method for protecting specified data combinations |
JP2013537659A JP5727027B2 (en) | 2010-11-04 | 2011-02-15 | System and method for protecting specific combinations of data |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/939,340 US8806615B2 (en) | 2010-11-04 | 2010-11-04 | System and method for protecting specified data combinations |
US12/939,340 | 2010-11-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012060892A2 true WO2012060892A2 (en) | 2012-05-10 |
Family
ID=44278699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2011/024902 WO2012060892A2 (en) | 2010-11-04 | 2011-02-15 | System and method for protecting specified data combinations |
Country Status (6)
Country | Link |
---|---|
US (5) | US8806615B2 (en) |
EP (1) | EP2499806A2 (en) |
JP (1) | JP5727027B2 (en) |
KR (1) | KR101538305B1 (en) |
CN (1) | CN103430504B (en) |
WO (1) | WO2012060892A2 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103346933A (en) * | 2013-07-22 | 2013-10-09 | 盛科网络(苏州)有限公司 | Device for dynamically monitoring packet forwarding |
US8850591B2 (en) | 2009-01-13 | 2014-09-30 | Mcafee, Inc. | System and method for concept building |
US8918359B2 (en) | 2009-03-25 | 2014-12-23 | Mcafee, Inc. | System and method for data mining and security policy management |
US9092471B2 (en) | 2003-12-10 | 2015-07-28 | Mcafee, Inc. | Rule parser |
US9094338B2 (en) | 2006-05-22 | 2015-07-28 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US9195937B2 (en) | 2009-02-25 | 2015-11-24 | Mcafee, Inc. | System and method for intelligent state management |
US9253154B2 (en) | 2008-08-12 | 2016-02-02 | Mcafee, Inc. | Configuration management for a capture/registration system |
US9374225B2 (en) | 2003-12-10 | 2016-06-21 | Mcafee, Inc. | Document de-registration |
US9430564B2 (en) | 2011-12-27 | 2016-08-30 | Mcafee, Inc. | System and method for providing data protection workflows in a network environment |
US9794254B2 (en) | 2010-11-04 | 2017-10-17 | Mcafee, Inc. | System and method for protecting specified data combinations |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7984175B2 (en) | 2003-12-10 | 2011-07-19 | Mcafee, Inc. | Method and apparatus for data capture and analysis system |
US7899828B2 (en) | 2003-12-10 | 2011-03-01 | Mcafee, Inc. | Tag data structure for maintaining relational data over captured objects |
US7930540B2 (en) | 2004-01-22 | 2011-04-19 | Mcafee, Inc. | Cryptographic policy enforcement |
US7962591B2 (en) * | 2004-06-23 | 2011-06-14 | Mcafee, Inc. | Object classification in a capture system |
US8560534B2 (en) | 2004-08-23 | 2013-10-15 | Mcafee, Inc. | Database for a capture system |
US7949849B2 (en) | 2004-08-24 | 2011-05-24 | Mcafee, Inc. | File system for a capture system |
US7907608B2 (en) | 2005-08-12 | 2011-03-15 | Mcafee, Inc. | High speed packet capture |
US7818326B2 (en) | 2005-08-31 | 2010-10-19 | Mcafee, Inc. | System and method for word indexing in a capture system and querying thereof |
US7730011B1 (en) | 2005-10-19 | 2010-06-01 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US8504537B2 (en) | 2006-03-24 | 2013-08-06 | Mcafee, Inc. | Signature distribution in a document registration system |
US7689614B2 (en) | 2006-05-22 | 2010-03-30 | Mcafee, Inc. | Query generation for a capture system |
US8205242B2 (en) | 2008-07-10 | 2012-06-19 | Mcafee, Inc. | System and method for data mining and security policy management |
US8706709B2 (en) | 2009-01-15 | 2014-04-22 | Mcafee, Inc. | System and method for intelligent term grouping |
US8667121B2 (en) | 2009-03-25 | 2014-03-04 | Mcafee, Inc. | System and method for managing data and policies |
WO2012125006A2 (en) | 2011-03-16 | 2012-09-20 | 한국전자통신연구원 | Apparatus and method for providing streaming content using representations |
JP5677899B2 (en) * | 2011-06-16 | 2015-02-25 | 株式会社三菱東京Ufj銀行 | Information processing apparatus and information processing method |
WO2012177681A2 (en) * | 2011-06-20 | 2012-12-27 | Aces & Eights Corporation | Systems and methods for digital forensic triage |
US9509704B2 (en) * | 2011-08-02 | 2016-11-29 | Oncircle, Inc. | Rights-based system |
US8880989B2 (en) | 2012-01-30 | 2014-11-04 | Microsoft Corporation | Educating users and enforcing data dissemination policies |
US9087039B2 (en) | 2012-02-07 | 2015-07-21 | Microsoft Technology Licensing, Llc | Language independent probabilistic content matching |
US20130212024A1 (en) | 2012-02-10 | 2013-08-15 | Protegrity Corporation | Tokenization in distributed payment environments |
US20140059088A1 (en) * | 2012-08-21 | 2014-02-27 | Protegrity Corporation | Tokenization of Date Information |
EP2912579B1 (en) | 2012-10-23 | 2020-08-19 | IP Reservoir, LLC | Method and apparatus for accelerated format translation of data in a delimited data format |
EP2912816A4 (en) * | 2012-10-23 | 2016-06-29 | Nokia Technologies Oy | Method and apparatus for managing access rights |
US10133802B2 (en) | 2012-10-23 | 2018-11-20 | Ip Reservoir, Llc | Method and apparatus for accelerated record layout detection |
US9633093B2 (en) * | 2012-10-23 | 2017-04-25 | Ip Reservoir, Llc | Method and apparatus for accelerated format translation of data in a delimited data format |
GB2541577A (en) | 2014-04-23 | 2017-02-22 | Ip Reservoir Llc | Method and apparatus for accelerated data translation |
WO2015175426A1 (en) * | 2014-05-12 | 2015-11-19 | Google Inc. | Managing nic-encrypted flows for migrating guests or tasks |
US9922037B2 (en) | 2015-01-30 | 2018-03-20 | Splunk Inc. | Index time, delimiter based extractions and previewing for use in indexing |
DE102015202121B4 (en) | 2015-02-06 | 2017-09-14 | Infineon Technologies Ag | SiC based super-barrier semiconductor devices and methods of making them |
US10942943B2 (en) | 2015-10-29 | 2021-03-09 | Ip Reservoir, Llc | Dynamic field data translation to support high performance stream data processing |
US10412102B1 (en) * | 2015-12-17 | 2019-09-10 | Skyhigh Networks, Llc | Cloud based data loss prevention system using graphical processing units for index filtering |
US10735438B2 (en) * | 2016-01-06 | 2020-08-04 | New York University | System, method and computer-accessible medium for network intrusion detection |
US11016955B2 (en) * | 2016-04-15 | 2021-05-25 | Hitachi Vantara Llc | Deduplication index enabling scalability |
JP6781373B2 (en) * | 2016-10-05 | 2020-11-04 | 富士通株式会社 | Search program, search method, and search device |
US10706038B2 (en) * | 2017-07-27 | 2020-07-07 | Cisco Technology, Inc. | System and method for state object data store |
US10713224B2 (en) * | 2017-11-15 | 2020-07-14 | Bank Of America Corporation | Implementing a continuity plan generated using solution data modeling based on predicted future event simulation testing |
US10749791B2 (en) | 2017-11-15 | 2020-08-18 | Bank Of America Corporation | System for rerouting electronic data transmissions based on generated solution data models |
US10496460B2 (en) | 2017-11-15 | 2019-12-03 | Bank Of America Corporation | System for technology anomaly detection, triage and response using solution data modeling |
JP6762678B2 (en) * | 2018-03-27 | 2020-09-30 | 日本電信電話株式会社 | Illegal content search device, illegal content search method and program |
US10977283B2 (en) | 2018-05-08 | 2021-04-13 | Bank Of America Corporation | System for mitigating intentional and unintentional exposure using solution data modelling |
US10970406B2 (en) | 2018-05-08 | 2021-04-06 | Bank Of America Corporation | System for mitigating exposure associated with identified unmanaged devices in a network using solution data modelling |
US11023835B2 (en) | 2018-05-08 | 2021-06-01 | Bank Of America Corporation | System for decommissioning information technology assets using solution data modelling |
US10936984B2 (en) | 2018-05-08 | 2021-03-02 | Bank Of America Corporation | System for mitigating exposure associated with identified impacts of technological system changes based on solution data modelling |
US11327940B2 (en) * | 2019-12-18 | 2022-05-10 | International Business Machines Corporation | Interlinked tuples in coordination namespace |
US11201737B1 (en) * | 2020-05-19 | 2021-12-14 | Acronis International Gmbh | Systems and methods for generating tokens using secure multiparty computation engines |
US11863682B2 (en) * | 2021-12-07 | 2024-01-02 | AXS Group LLC | Systems and methods for encrypted multifactor authentication using imaging devices and image enhancement |
US20230342481A1 (en) * | 2022-04-22 | 2023-10-26 | The Toronto-Dominion Back | On-demand real-time tokenization systems and methods |
Family Cites Families (416)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3855669A (en) | 1973-10-05 | 1974-12-24 | Usm Corp | Adjustable strap with quick release |
US4286255A (en) | 1979-02-22 | 1981-08-25 | Burroughs Corporation | Signature verification method and apparatus |
US4710957A (en) | 1986-04-30 | 1987-12-01 | Motorola, Inc. | Data detection by statistical analysis |
US5497489A (en) | 1987-05-05 | 1996-03-05 | Menne; David M. | Data storage and retrieval systems having labelling for data |
US5249289A (en) | 1989-09-28 | 1993-09-28 | International Business Machines Corporation | System and method for rebuilding edited digital audio files |
US5479654A (en) | 1990-04-26 | 1995-12-26 | Squibb Data Systems, Inc. | Apparatus and method for reconstructing a file from a difference signature and an original file |
ATE260486T1 (en) * | 1992-07-31 | 2004-03-15 | Ibm | FINDING CHARACTERS IN A DATABASE OF CHARACTERS |
US5465299A (en) | 1992-12-03 | 1995-11-07 | Hitachi, Ltd. | Electronic document processing system and method of forming digital signature |
JP3132738B2 (en) | 1992-12-10 | 2001-02-05 | ゼロックス コーポレーション | Text search method |
US5557747A (en) | 1993-06-22 | 1996-09-17 | Rogers; Lawrence D. | Network policy implementation system for performing network control operations in response to changes in network state |
US20020013898A1 (en) | 1997-06-04 | 2002-01-31 | Sudia Frank W. | Method and apparatus for roaming use of cryptographic values |
US5600831A (en) | 1994-02-28 | 1997-02-04 | Lucent Technologies Inc. | Apparatus and methods for retrieving information by modifying query plan based on description of information sources |
US5715443A (en) | 1994-07-25 | 1998-02-03 | Apple Computer, Inc. | Method and apparatus for searching for information in a data processing system and for providing scheduled search reports in a summary format |
US5623652A (en) | 1994-07-25 | 1997-04-22 | Apple Computer, Inc. | Method and apparatus for searching for information in a network and for controlling the display of searchable information on display devices in the network |
BR9509131A (en) | 1994-10-28 | 1997-09-02 | Surety Technologies Inc | Registration process of first digital document for authentication process for authentication of digital document process for naming of first digital document digital representation of document certificate authentication and clock-stamp process for first digital document for authentication |
DE69638018D1 (en) | 1995-02-13 | 2009-10-15 | Intertrust Tech Corp | Systems and procedures for managing secure transactions and protecting electronic rights |
US5794052A (en) | 1995-02-27 | 1998-08-11 | Ast Research, Inc. | Method of software installation and setup |
US5813009A (en) | 1995-07-28 | 1998-09-22 | Univirtual Corp. | Computer based records management system method |
US7337315B2 (en) | 1995-10-02 | 2008-02-26 | Corestreet, Ltd. | Efficient certificate revocation |
US6493761B1 (en) | 1995-12-20 | 2002-12-10 | Nb Networks | Systems and methods for data processing using a protocol parsing engine |
US5787232A (en) | 1996-01-10 | 1998-07-28 | Siemens Corporate Research, Inc. | Efficient data-driven theory revision system |
US20050182765A1 (en) | 1996-02-09 | 2005-08-18 | Technology Innovations, Llc | Techniques for controlling distribution of information from a secure domain |
US6457017B2 (en) | 1996-05-17 | 2002-09-24 | Softscape, Inc. | Computing system for information management |
US6122379A (en) | 1996-05-30 | 2000-09-19 | Deloitte & Touche Inc. | Method and apparatus for performing simultaneous data compression and encryption |
US5778157A (en) | 1996-06-17 | 1998-07-07 | Yy Software Corporation | System and method for expert system analysis using quiescent and parallel reasoning and set structured knowledge representation |
GB2318478B (en) | 1996-10-21 | 2001-01-17 | Northern Telecom Ltd | Network model for alarm correlation |
GB2318479B (en) | 1996-10-21 | 2001-04-04 | Northern Telecom Ltd | Problem model for alarm correlation |
JP4291892B2 (en) | 1996-12-06 | 2009-07-08 | 株式会社セガ | Image processing apparatus and method |
US6292810B1 (en) | 1997-03-03 | 2001-09-18 | Richard Steele Richards | Polymorphic enhanced modeling |
US6278992B1 (en) | 1997-03-19 | 2001-08-21 | John Andrew Curtis | Search engine using indexing method for storing and retrieving data |
US5937422A (en) | 1997-04-15 | 1999-08-10 | The United States Of America As Represented By The National Security Agency | Automatically generating a topic description for text and searching and sorting text by topic using the same |
US6131162A (en) | 1997-06-05 | 2000-10-10 | Hitachi Ltd. | Digital data authentication method |
US6073142A (en) | 1997-06-23 | 2000-06-06 | Park City Group | Automated post office based rule analysis of e-mail messages and other data objects for controlled distribution in network environments |
US6233575B1 (en) | 1997-06-24 | 2001-05-15 | International Business Machines Corporation | Multilevel taxonomy based on features derived from training documents classification using fisher values as discrimination values |
US5873081A (en) | 1997-06-27 | 1999-02-16 | Microsoft Corporation | Document filtering via directed acyclic graphs |
US6094531A (en) | 1997-08-25 | 2000-07-25 | Hewlett-Packard Company | Method and apparatus for automatically installing operating systems machines |
US5991414A (en) | 1997-09-12 | 1999-11-23 | International Business Machines Corporation | Method and apparatus for the secure distributed storage and retrieval of information |
WO1999017223A1 (en) | 1997-09-30 | 1999-04-08 | Ihc Health Services, Inc. | Aprobabilistic system for natural language processing |
WO1999018505A1 (en) | 1997-10-06 | 1999-04-15 | Powerquest Corporation | System and method for transferring one-to-many disk image among computers in a network |
US5924096A (en) | 1997-10-15 | 1999-07-13 | Novell, Inc. | Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand |
US6026411A (en) | 1997-11-06 | 2000-02-15 | International Business Machines Corporation | Method, apparatus, and computer program product for generating an image index and for internet searching and querying by image colors |
US6243091B1 (en) | 1997-11-21 | 2001-06-05 | International Business Machines Corporation | Global history view |
US5943670A (en) | 1997-11-21 | 1999-08-24 | International Business Machines Corporation | System and method for categorizing objects in combined categories |
US6078953A (en) | 1997-12-29 | 2000-06-20 | Ukiah Software, Inc. | System and method for monitoring quality of service over network |
US6260044B1 (en) | 1998-02-04 | 2001-07-10 | Nugenesis Technologies Corporation | Information storage and retrieval system for storing and retrieving the visual form of information from an application in a database |
US5987610A (en) | 1998-02-12 | 1999-11-16 | Ameritech Corporation | Computer virus screening methods and systems |
US7171662B1 (en) | 1998-03-18 | 2007-01-30 | Microsoft Corporation | System and method for software licensing |
US6175867B1 (en) | 1998-03-23 | 2001-01-16 | Mci World Com, Inc. | System and method for managing networks addressed via common network addresses |
US6411952B1 (en) * | 1998-06-24 | 2002-06-25 | Compaq Information Technologies Group, Lp | Method for learning character patterns to interactively control the scope of a web crawler |
US6336186B1 (en) | 1998-07-02 | 2002-01-01 | Networks Associates Technology, Inc. | Cryptographic system and methodology for creating and managing crypto policy on certificate servers |
US6141738A (en) | 1998-07-08 | 2000-10-31 | Nortel Networks Corporation | Address translation method and system having a forwarding table data structure |
US7133400B1 (en) | 1998-08-07 | 2006-11-07 | Intel Corporation | System and method for filtering data |
US6343376B1 (en) | 1998-10-22 | 2002-01-29 | Computer Computer Corporation | System and method for program verification and optimization |
US6167445A (en) | 1998-10-26 | 2000-12-26 | Cisco Technology, Inc. | Method and apparatus for defining and implementing high-level quality of service policies in computer networks |
US6978297B1 (en) | 1998-11-12 | 2005-12-20 | Ricoh, Co., Ltd. | System and method of managing queues by maintaining metadata files having attributes corresponding to capture of electronic document and using the metadata files to selectively lock the electronic document |
EP1141811A2 (en) * | 1998-12-08 | 2001-10-10 | Mediadna, Inc. | A system and method of obfuscating data |
WO2000046701A1 (en) | 1999-02-08 | 2000-08-10 | Huntsman Ici Chemicals Llc | Method for retrieving semantically distant analogies |
US6584458B1 (en) | 1999-02-19 | 2003-06-24 | Novell, Inc. | Method and apparatuses for creating a full text index accommodating child words |
US6408301B1 (en) | 1999-02-23 | 2002-06-18 | Eastman Kodak Company | Interactive image storage, indexing and retrieval system |
US6516320B1 (en) | 1999-03-08 | 2003-02-04 | Pliant Technologies, Inc. | Tiered hashing for data access |
US6539024B1 (en) | 1999-03-26 | 2003-03-25 | Alcatel Canada Inc. | Method and apparatus for data buffer management in a communications switch |
US6408294B1 (en) | 1999-03-31 | 2002-06-18 | Verizon Laboratories Inc. | Common term optimization |
US6571275B1 (en) | 1999-04-27 | 2003-05-27 | International Business Machines Corporation | Method and apparatus for filtering messages in a data processing system |
US6629097B1 (en) | 1999-04-28 | 2003-09-30 | Douglas K. Keith | Displaying implicit associations among items in loosely-structured data sets |
US6678827B1 (en) | 1999-05-06 | 2004-01-13 | Watchguard Technologies, Inc. | Managing multiple network security devices from a manager device |
US6515681B1 (en) | 1999-05-11 | 2003-02-04 | Prophet Financial Systems, Inc. | User interface for interacting with online message board |
US6785815B1 (en) | 1999-06-08 | 2004-08-31 | Intertrust Technologies Corp. | Methods and systems for encoding and protecting data using digital signature and watermarking techniques |
US7293067B1 (en) | 1999-07-16 | 2007-11-06 | Canon Kabushiki Kaisha | System for searching device on network |
JP2001043158A (en) | 1999-07-28 | 2001-02-16 | Toshiba Tec Corp | Management data processor and computer-readable recording medium recorded with management data processing program |
US20020128903A1 (en) | 1999-08-23 | 2002-09-12 | Kent Kernahan | Encrypted coupons |
US6771595B1 (en) | 1999-08-31 | 2004-08-03 | Intel Corporation | Apparatus and method for dynamic resource allocation in a network environment |
US6389419B1 (en) | 1999-10-06 | 2002-05-14 | Cisco Technology, Inc. | Storing and retrieving connection information using bidirectional hashing of connection identifiers |
US6976053B1 (en) | 1999-10-14 | 2005-12-13 | Arcessa, Inc. | Method for using agents to create a computer index corresponding to the contents of networked computers |
US20030065571A1 (en) | 1999-10-14 | 2003-04-03 | Rabindranath Dutta | System, method, and program for determining the jurisdiction of a product delivery location by using the ip address of the client while selling items via electronic commerce over the internet |
US6978367B1 (en) | 1999-10-21 | 2005-12-20 | International Business Machines Corporation | Selective data encryption using style sheet processing for decryption by a client proxy |
US6460050B1 (en) | 1999-12-22 | 2002-10-01 | Mark Raymond Pace | Distributed content identification system |
WO2001047205A2 (en) * | 1999-12-22 | 2001-06-28 | Tashilon Ltd. | Enhanced computer network encryption using downloaded software objects |
US6556983B1 (en) | 2000-01-12 | 2003-04-29 | Microsoft Corporation | Methods and apparatus for finding semantic information, such as usage logs, similar to a query using a pattern lattice data space |
US7010683B2 (en) | 2000-01-14 | 2006-03-07 | Howlett-Packard Development Company, L.P. | Public key validation service |
JP3471694B2 (en) | 2000-01-31 | 2003-12-02 | 日本電気株式会社 | Traffic collection method in network management system |
JP2001222424A (en) | 2000-02-08 | 2001-08-17 | Fujitsu Ltd | Software license managing device and method, and program recording medium for managing software license |
US6502091B1 (en) | 2000-02-23 | 2002-12-31 | Hewlett-Packard Company | Apparatus and method for discovering context groups and document categories by mining usage logs |
US20020032677A1 (en) | 2000-03-01 | 2002-03-14 | Jeff Morgenthaler | Methods for creating, editing, and updating searchable graphical database and databases of graphical images and information and displaying graphical images from a searchable graphical database or databases in a sequential or slide show format |
US7007020B1 (en) | 2000-03-10 | 2006-02-28 | Hewlett-Packard Development Company, L.P. | Distributed OLAP-based association rule generation method and system |
DE60114999T2 (en) | 2000-03-14 | 2006-09-07 | Speed-Trap.Com Ltd., Newbury | MONITORING AND INTERACTION WITH NETWORK SERVICES |
US20010046230A1 (en) | 2000-03-14 | 2001-11-29 | Rojas Michael J. | Method and programmable device for telecommunications applications |
US6757646B2 (en) | 2000-03-22 | 2004-06-29 | Insightful Corporation | Extended functionality for an inverse inference engine based web search |
US6820082B1 (en) | 2000-04-03 | 2004-11-16 | Allegis Corporation | Rule based database security system and method |
US7139765B1 (en) * | 2000-04-03 | 2006-11-21 | Alan Balkany | Hierarchical method for storing data with improved compression |
US6578022B1 (en) | 2000-04-18 | 2003-06-10 | Icplanet Corporation | Interactive intelligent searching with executable suggestions |
WO2001082138A2 (en) | 2000-04-24 | 2001-11-01 | Spectrum Controls, Inc. | Method, system, and apparatus for providing data regarding the operation and monitoring of a control system |
US6772214B1 (en) | 2000-04-27 | 2004-08-03 | Novell, Inc. | System and method for filtering of web-based content stored on a proxy cache server |
US7072967B1 (en) | 2000-05-09 | 2006-07-04 | Sun Microsystems, Inc. | Efficient construction of message endpoints |
US6427120B1 (en) | 2000-08-14 | 2002-07-30 | Sirf Technology, Inc. | Information transfer in a multi-mode global positioning system used with wireless networks |
US20020052896A1 (en) | 2000-05-23 | 2002-05-02 | Streit Jason Mitchell | Secure signature and date placement system |
US7299489B1 (en) | 2000-05-25 | 2007-11-20 | Lucent Technologies Inc. | Method and apparatus for host probing |
US6748431B1 (en) | 2000-05-26 | 2004-06-08 | Microsoft Corporation | Systems and methods for monitoring network exchanges between a client and a server |
US6691209B1 (en) | 2000-05-26 | 2004-02-10 | Emc Corporation | Topological data categorization and formatting for a mass storage system |
US6961858B2 (en) | 2000-06-16 | 2005-11-01 | Entriq, Inc. | Method and system to secure content for distribution via a network |
AU2001269870A1 (en) | 2000-06-16 | 2002-01-02 | Securify, Inc. | System and method for security policy |
US6901519B1 (en) | 2000-06-22 | 2005-05-31 | Infobahn, Inc. | E-mail virus protection system and method |
EP1350176A2 (en) | 2000-07-06 | 2003-10-08 | Homeportal, Inc. | Method and system for controlling and coordinating devices and appliances, such as from a central portal and via a wide/area communications network |
US7185192B1 (en) | 2000-07-07 | 2007-02-27 | Emc Corporation | Methods and apparatus for controlling access to a resource |
US6675159B1 (en) | 2000-07-27 | 2004-01-06 | Science Applic Int Corp | Concept-based search and retrieval system |
US7181769B1 (en) | 2000-08-25 | 2007-02-20 | Ncircle Network Security, Inc. | Network security system having a device profiler communicatively coupled to a traffic monitor |
US7243120B2 (en) | 2000-08-25 | 2007-07-10 | Integrated Business Systems And Services, Inc. | Transaction-based enterprise application integration (EAI) and development system |
GB2368233B (en) | 2000-08-31 | 2002-10-16 | F Secure Oyj | Maintaining virus detection software |
US7165175B1 (en) * | 2000-09-06 | 2007-01-16 | Widevine Technologies, Inc. | Apparatus, system and method for selectively encrypting different portions of data sent over a network |
NO313399B1 (en) | 2000-09-14 | 2002-09-23 | Fast Search & Transfer Asa | Procedure for searching and analyzing information in computer networks |
US6754647B1 (en) | 2000-09-26 | 2004-06-22 | Verity, Inc. | Method and apparatus for hierarchically decomposed bot scripts |
US7093288B1 (en) | 2000-10-24 | 2006-08-15 | Microsoft Corporation | Using packet filters and network virtualization to restrict network communications |
US6970939B2 (en) | 2000-10-26 | 2005-11-29 | Intel Corporation | Method and apparatus for large payload distribution in a network |
US7016532B2 (en) | 2000-11-06 | 2006-03-21 | Evryx Technologies | Image capture and identification system and process |
US7669051B2 (en) | 2000-11-13 | 2010-02-23 | DigitalDoors, Inc. | Data security system and method with multiple independent levels of security |
US7296088B1 (en) | 2000-11-17 | 2007-11-13 | Microsoft Corporation | System and method for determining the geographic location of internet hosts |
US7062705B1 (en) | 2000-11-20 | 2006-06-13 | Cisco Technology, Inc. | Techniques for forming electronic documents comprising multiple information types |
US7103607B1 (en) | 2000-11-20 | 2006-09-05 | Cisco Technology, Inc. | Business vocabulary data retrieval using alternative forms |
US7139973B1 (en) | 2000-11-20 | 2006-11-21 | Cisco Technology, Inc. | Dynamic information object cache approach useful in a vocabulary retrieval system |
US6665662B1 (en) | 2000-11-20 | 2003-12-16 | Cisco Technology, Inc. | Query translation system for retrieving business vocabulary terms |
US7925967B2 (en) | 2000-11-21 | 2011-04-12 | Aol Inc. | Metadata quality improvement |
JP2002169808A (en) | 2000-11-30 | 2002-06-14 | Hitachi Ltd | Secure multi-database system |
US7113943B2 (en) * | 2000-12-06 | 2006-09-26 | Content Analyst Company, Llc | Method for document comparison and selection |
US7210037B2 (en) | 2000-12-15 | 2007-04-24 | Oracle International Corp. | Method and apparatus for delegating digital signatures to a signature server |
US7296070B2 (en) | 2000-12-22 | 2007-11-13 | Tier-3 Pty. Ltd. | Integrated monitoring system |
US20020091579A1 (en) | 2001-01-09 | 2002-07-11 | Partnercommunity, Inc. | Method and system for managing and correlating orders in a multilateral environment |
US20020126673A1 (en) | 2001-01-12 | 2002-09-12 | Nirav Dagli | Shared memory |
US7168093B2 (en) | 2001-01-25 | 2007-01-23 | Solutionary, Inc. | Method and apparatus for verifying the integrity and security of computer networks and implementation of counter measures |
US7440953B2 (en) | 2001-01-25 | 2008-10-21 | Content Directions, Inc. | Apparatus, method and system for directory quality assurance |
US20020103876A1 (en) | 2001-01-29 | 2002-08-01 | Masayuki Chatani | System and computer-based method for providing transformed information in response to a client search request |
US6937257B1 (en) | 2001-01-31 | 2005-08-30 | Pharsight Corporation | Unit tracking and notification in a graphical drug model editor |
US6853998B2 (en) | 2001-02-07 | 2005-02-08 | International Business Machines Corporation | Customer self service subsystem for classifying user contexts |
US20020116721A1 (en) | 2001-02-16 | 2002-08-22 | Gemini Networks, Inc. | Method and system of expanding a customer base of a data services provider |
US7272724B2 (en) | 2001-02-20 | 2007-09-18 | Mcafee, Inc. | User alerts in an anti computer virus system |
US7681032B2 (en) | 2001-03-12 | 2010-03-16 | Portauthority Technologies Inc. | System and method for monitoring unauthorized transport of digital content |
US7062572B1 (en) | 2001-03-19 | 2006-06-13 | Microsoft Corporation | Method and system to determine the geographic location of a network user |
US7024609B2 (en) | 2001-04-20 | 2006-04-04 | Kencast, Inc. | System for protecting the transmission of live data streams, and upon reception, for reconstructing the live data streams and recording them into files |
US20030093678A1 (en) | 2001-04-23 | 2003-05-15 | Bowe John J. | Server-side digital signature system |
US7085267B2 (en) | 2001-04-27 | 2006-08-01 | International Business Machines Corporation | Methods, systems and computer program products for translating internet protocol (IP) addresses located in a payload of a packet |
US7194483B1 (en) | 2001-05-07 | 2007-03-20 | Intelligenxia, Inc. | Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information |
US6662176B2 (en) | 2001-05-07 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Database indexing and rolling storage method for time-stamped normalized event data |
US20040015579A1 (en) | 2001-06-14 | 2004-01-22 | Geoffrey Cooper | Method and apparatus for enterprise management |
US20040230572A1 (en) | 2001-06-22 | 2004-11-18 | Nosa Omoigui | System and method for semantic knowledge retrieval, management, capture, sharing, discovery, delivery and presentation |
US8200818B2 (en) | 2001-07-06 | 2012-06-12 | Check Point Software Technologies, Inc. | System providing internet access management with router-based policy enforcement |
US7047297B2 (en) | 2001-07-17 | 2006-05-16 | Mcafee, Inc. | Hierarchically organizing network data collected from full time recording machines and efficiently filtering the same |
US7277957B2 (en) | 2001-07-17 | 2007-10-02 | Mcafee, Inc. | Method of reconstructing network communications |
WO2003013569A2 (en) | 2001-07-27 | 2003-02-20 | The Board Of Regents, The University Of Texas System | Use of thrombin-derived peptides for the therapy of chronic dermal ulcers |
JP2003046500A (en) | 2001-08-03 | 2003-02-14 | Nec Corp | Personal information management system, personal information management method, and information processing server |
US20030028774A1 (en) | 2001-08-06 | 2003-02-06 | Meka Anil Kumar | Ensuring the integrity of an electronic document |
US20050022114A1 (en) | 2001-08-13 | 2005-01-27 | Xerox Corporation | Meta-document management system with personality identifiers |
US7130587B2 (en) | 2001-08-22 | 2006-10-31 | National Institute of Information and Communications Technology Incorporated, Administrative Agency | Communication quality estimation method, communication quality estimation apparatus, and communication system |
US7403938B2 (en) * | 2001-09-24 | 2008-07-22 | Iac Search & Media, Inc. | Natural language query processing |
US7765313B2 (en) | 2001-10-09 | 2010-07-27 | Alcatel Lucent | Hierarchical protocol classification engine |
US20030105739A1 (en) | 2001-10-12 | 2003-06-05 | Hassane Essafi | Method and a system for identifying and verifying the content of multimedia documents |
JP2003132160A (en) | 2001-10-23 | 2003-05-09 | Nec Corp | Personal information management system and device, and personal information management program |
CA2410172A1 (en) * | 2001-10-29 | 2003-04-29 | Jose Alejandro Rueda | Content routing architecture for enhanced internet services |
US20030084326A1 (en) | 2001-10-31 | 2003-05-01 | Richard Paul Tarquini | Method, node and computer readable medium for identifying data in a network exploit |
US20040205457A1 (en) | 2001-10-31 | 2004-10-14 | International Business Machines Corporation | Automatically summarising topics in a collection of electronic documents |
US20030084318A1 (en) | 2001-10-31 | 2003-05-01 | Schertz Richard L. | System and method of graphically correlating data for an intrusion protection system |
US7133365B2 (en) | 2001-11-02 | 2006-11-07 | Internap Network Services Corporation | System and method to provide routing control of information over networks |
KR100434335B1 (en) | 2001-11-27 | 2004-06-04 | 학교법인 한국정보통신학원 | Control Packet and Data Burst Generation Method in Optical Burst Switching Networks |
US7496604B2 (en) | 2001-12-03 | 2009-02-24 | Aol Llc | Reducing duplication of files on a network |
US7020654B1 (en) | 2001-12-05 | 2006-03-28 | Sun Microsystems, Inc. | Methods and apparatus for indexing content |
US7320070B2 (en) | 2002-01-08 | 2008-01-15 | Verizon Services Corp. | Methods and apparatus for protecting against IP address assignments based on a false MAC address |
US7299277B1 (en) | 2002-01-10 | 2007-11-20 | Network General Technology | Media module apparatus and method for use in a network monitoring environment |
ATE466345T1 (en) | 2002-01-16 | 2010-05-15 | Elucidon Group Ltd | RETRIEVAL OF INFORMATION DATA WHERE DATA IS ORGANIZED INTO TERMS, DOCUMENTS AND DOCUMENT CORPORAS |
US7240330B2 (en) * | 2002-02-01 | 2007-07-03 | John Fairweather | Use of ontologies for auto-generating and handling applications, their persistent storage, and user interfaces |
US7424744B1 (en) | 2002-03-05 | 2008-09-09 | Mcafee, Inc. | Signature based network intrusion detection system and method |
US7493659B1 (en) | 2002-03-05 | 2009-02-17 | Mcafee, Inc. | Network intrusion detection and analysis system and method |
US20030185220A1 (en) | 2002-03-27 | 2003-10-02 | Moshe Valenci | Dynamically loading parsing capabilities |
US7551629B2 (en) | 2002-03-28 | 2009-06-23 | Precache, Inc. | Method and apparatus for propagating content filters for a publish-subscribe network |
US7290048B1 (en) | 2002-03-29 | 2007-10-30 | Hyperformix, Inc. | Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications |
US7296232B1 (en) | 2002-04-01 | 2007-11-13 | Microsoft Corporation | Calendar control for selection of time periods to filter data |
US20030196081A1 (en) | 2002-04-11 | 2003-10-16 | Raymond Savarda | Methods, systems, and computer program products for processing a packet-object using multiple pipelined processing modules |
US7246236B2 (en) | 2002-04-18 | 2007-07-17 | Nokia Corporation | Method and apparatus for providing peer authentication for a transport layer session |
US20030204741A1 (en) | 2002-04-26 | 2003-10-30 | Isadore Schoen | Secure PKI proxy and method for instant messaging clients |
US7254632B2 (en) | 2002-04-26 | 2007-08-07 | P-Cube Ltd. | Apparatus and method for pattern matching in text based protocol |
DE60302148T2 (en) | 2002-04-26 | 2006-05-04 | Research In Motion Ltd., Waterloo | SYSTEM AND METHOD FOR CHOOSING THE MESSAGE SETTINGS |
US20060242313A1 (en) | 2002-05-06 | 2006-10-26 | Lewiz Communications | Network content processor including packet engine |
US7574488B2 (en) | 2002-05-31 | 2009-08-11 | Hitachi, Ltd. | Method and apparatus for peer-to-peer file sharing |
KR100460322B1 (en) | 2002-05-31 | 2004-12-08 | (주) 시큐컴 | System and Method for preventing spam mails |
US7577154B1 (en) | 2002-06-03 | 2009-08-18 | Equinix, Inc. | System and method for traffic accounting and route customization of network services |
US8051131B2 (en) | 2002-06-12 | 2011-11-01 | Hewlett-Packard Development Company, L.P. | E-mail addressing and document management |
JP2005530250A (en) | 2002-06-12 | 2005-10-06 | ジェナ ジョーダル, | Data storage, retrieval, operation, and display tools that realize a multi-level perspective |
US20030231632A1 (en) | 2002-06-13 | 2003-12-18 | International Business Machines Corporation | Method and system for packet-level routing |
US20060041760A1 (en) | 2002-06-26 | 2006-02-23 | Zezhen Huang | Trusted computer activity monitoring and recording system and method |
US6961721B2 (en) * | 2002-06-28 | 2005-11-01 | Microsoft Corporation | Detecting duplicate records in database |
US7020661B1 (en) | 2002-07-10 | 2006-03-28 | Oracle International Corporation | Techniques for pruning a data object during operations that join multiple data objects |
ATE386983T1 (en) | 2002-07-11 | 2008-03-15 | Ibm | METHOD AND SYSTEM FOR EXPANDING THE API OF A FILE SYSTEM |
US7254562B2 (en) | 2002-07-11 | 2007-08-07 | Hewlett-Packard Development Company, L.P. | Rule-based packet selection, storage, and access method and system |
US7082443B1 (en) | 2002-07-23 | 2006-07-25 | Navteq North America, Llc | Method and system for updating geographic databases |
US8612404B2 (en) | 2002-07-30 | 2013-12-17 | Stored Iq, Inc. | Harvesting file system metsdata |
JP4309629B2 (en) | 2002-09-13 | 2009-08-05 | 株式会社日立製作所 | Network system |
GB0221464D0 (en) | 2002-09-16 | 2002-10-23 | Cambridge Internetworking Ltd | Network interface and protocol |
US8225371B2 (en) | 2002-09-18 | 2012-07-17 | Symantec Corporation | Method and apparatus for creating an information security policy based on a pre-configured template |
US8041719B2 (en) * | 2003-05-06 | 2011-10-18 | Symantec Corporation | Personal computing device-based mechanism to detect preselected data |
US7886359B2 (en) | 2002-09-18 | 2011-02-08 | Symantec Corporation | Method and apparatus to report policy violations in messages |
US20040059920A1 (en) | 2002-09-19 | 2004-03-25 | International Business Machines Corporation | Security health checking tool |
US7158983B2 (en) | 2002-09-23 | 2007-01-02 | Battelle Memorial Institute | Text analysis technique |
US7383513B2 (en) | 2002-09-25 | 2008-06-03 | Oracle International Corporation | Graphical condition builder for facilitating database queries |
US7188173B2 (en) | 2002-09-30 | 2007-03-06 | Intel Corporation | Method and apparatus to enable efficient processing and transmission of network communications |
JP2004126840A (en) | 2002-10-01 | 2004-04-22 | Hitachi Ltd | Document retrieval method, program, and system |
US6857011B2 (en) | 2002-10-31 | 2005-02-15 | Paragon Development Systems, Inc. | Method of remote imaging |
US7085755B2 (en) | 2002-11-07 | 2006-08-01 | Thomson Global Resources Ag | Electronic document repository management and access system |
US20040139120A1 (en) | 2002-11-08 | 2004-07-15 | Matt Clark | Feature-based solutions provisioning of data services |
US7272607B2 (en) | 2002-11-27 | 2007-09-18 | Zyvex Labs, Llc | System and method for processing a hierarchical data tree |
US7660998B2 (en) | 2002-12-02 | 2010-02-09 | Silverbrook Research Pty Ltd | Relatively unique ID in integrated circuit |
US7376969B1 (en) | 2002-12-02 | 2008-05-20 | Arcsight, Inc. | Real time monitoring and analysis of events from multiple network security devices |
US7426209B2 (en) | 2002-12-13 | 2008-09-16 | Telefonaktiebolaget L M Ericsson (Publ) | System for content based message processing |
US20040117414A1 (en) | 2002-12-17 | 2004-06-17 | Capital One Financial Corporation | Method and system for automatically updating operating systems |
US7366174B2 (en) | 2002-12-17 | 2008-04-29 | Lucent Technologies Inc. | Adaptive classification of network traffic |
US20040122936A1 (en) | 2002-12-20 | 2004-06-24 | Ge Mortgage Holdings, Llc | Methods and apparatus for collecting, managing and presenting enterprise performance information |
TWI221989B (en) * | 2002-12-24 | 2004-10-11 | Ind Tech Res Inst | Example-based concept-oriented data extraction method |
US6804627B1 (en) | 2002-12-31 | 2004-10-12 | Emc Corporation | System and method for gathering and analyzing database performance statistics |
US7953694B2 (en) | 2003-01-13 | 2011-05-31 | International Business Machines Corporation | Method, system, and program for specifying multidimensional calculations for a relational OLAP engine |
US7219131B2 (en) | 2003-01-16 | 2007-05-15 | Ironport Systems, Inc. | Electronic message delivery using an alternate source approach |
US7117453B2 (en) | 2003-01-21 | 2006-10-03 | Microsoft Corporation | Media frame object visualization system |
JP2004235739A (en) | 2003-01-28 | 2004-08-19 | Sony Corp | Information processor, information processing method and computer program |
US8286237B2 (en) | 2003-02-25 | 2012-10-09 | Ibm International Group B.V. | Method and apparatus to detect unauthorized information disclosure via content anomaly detection |
GB0304807D0 (en) | 2003-03-03 | 2003-04-09 | Cambridge Internetworking Ltd | Data protocol |
KR20060006770A (en) | 2003-03-04 | 2006-01-19 | 인터내셔널 비지네스 머신즈 코포레이션 | Long-term secure digital signatures |
US8868553B2 (en) | 2003-03-11 | 2014-10-21 | Bank Of America Corporation | System and method to acquire information from a database |
US7885963B2 (en) | 2003-03-24 | 2011-02-08 | Microsoft Corporation | Free text and attribute searching of electronic program guide (EPG) data |
US7499925B2 (en) | 2003-03-27 | 2009-03-03 | Microsoft Corporation | File system for displaying items of different types and from different physical locations |
US7564969B2 (en) | 2003-04-01 | 2009-07-21 | Sytex, Inc. | Methodology, system and computer readable medium for detecting file encryption |
US7293238B1 (en) | 2003-04-04 | 2007-11-06 | Raytheon Company | Graphical user interface for an enterprise intrusion detection system |
CN1795440A (en) | 2003-04-07 | 2006-06-28 | 艾特拉克斯公司 | Network security system based on physical location |
US7895191B2 (en) | 2003-04-09 | 2011-02-22 | International Business Machines Corporation | Improving performance of database queries |
US7373500B2 (en) | 2003-04-15 | 2008-05-13 | Sun Microsystems, Inc. | Secure network processing |
US20040215612A1 (en) | 2003-04-28 | 2004-10-28 | Moshe Brody | Semi-boolean arrangement, method, and system for specifying and selecting data objects to be retrieved from a collection |
US7152065B2 (en) | 2003-05-01 | 2006-12-19 | Telcordia Technologies, Inc. | Information retrieval and text mining using distributed latent semantic indexing |
US8640234B2 (en) | 2003-05-07 | 2014-01-28 | Trustwave Holdings, Inc. | Method and apparatus for predictive and actual intrusion detection on a network |
US7831667B2 (en) | 2003-05-15 | 2010-11-09 | Symantec Corporation | Method and apparatus for filtering email spam using email noise reduction |
US7735144B2 (en) | 2003-05-16 | 2010-06-08 | Adobe Systems Incorporated | Document modification detection and prevention |
CA2536541A1 (en) | 2003-05-19 | 2004-12-02 | Business Objects, S.A. | Apparatus and method for accessing diverse native data sources through a metadata interface |
US7627669B2 (en) | 2003-05-21 | 2009-12-01 | Ixia | Automated capturing and characterization of network traffic using feedback |
US9678967B2 (en) | 2003-05-22 | 2017-06-13 | Callahan Cellular L.L.C. | Information source agent systems and methods for distributed data storage and management using content signatures |
DE102004026083A1 (en) | 2003-05-25 | 2005-01-20 | Wittkötter, Erland, Dr. | Server based linking of information e.g. for finding information on internet, has functional unit having content signature unit, to form document section and or file content which are embedded in electronic document. |
US7613687B2 (en) | 2003-05-30 | 2009-11-03 | Truelocal Inc. | Systems and methods for enhancing web-based searching |
US8250107B2 (en) | 2003-06-03 | 2012-08-21 | Hewlett-Packard Development Company, L.P. | Techniques for graph data structure management |
US7685254B2 (en) | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US8095500B2 (en) | 2003-06-13 | 2012-01-10 | Brilliant Digital Entertainment, Inc. | Methods and systems for searching content in distributed computing networks |
US7296011B2 (en) | 2003-06-20 | 2007-11-13 | Microsoft Corporation | Efficient fuzzy match for evaluating data records |
US8458805B2 (en) * | 2003-06-23 | 2013-06-04 | Architecture Technology Corporation | Digital forensic analysis using empirical privilege profiling (EPP) for filtering collected data |
EP1494134A1 (en) | 2003-06-27 | 2005-01-05 | Alcatel | A method, a computer software product, and a telecommunication device for accessing or presenting a document |
US7565425B2 (en) | 2003-07-02 | 2009-07-21 | Amazon Technologies, Inc. | Server architecture and methods for persistently storing and serving event data |
US7697527B2 (en) | 2003-07-30 | 2010-04-13 | Nortel Networks Limited | Method and apparatus for direct frame switching using frame contained destination information |
JP2005063030A (en) * | 2003-08-08 | 2005-03-10 | Ricoh Co Ltd | Method for expressing concept, method and device for creating expression of concept, program for implementing this method, and recording medium for recording this program |
US20050038788A1 (en) | 2003-08-14 | 2005-02-17 | International Business Machines Corporation | Annotation security to prevent the divulgence of sensitive information |
US7206866B2 (en) | 2003-08-20 | 2007-04-17 | Microsoft Corporation | Continuous media priority aware storage scheduler |
US7308705B2 (en) | 2003-08-29 | 2007-12-11 | Finisar Corporation | Multi-port network tap |
US7409406B2 (en) | 2003-09-08 | 2008-08-05 | International Business Machines Corporation | Uniform search system and method for selectively sharing distributed access-controlled documents |
US7467202B2 (en) | 2003-09-10 | 2008-12-16 | Fidelis Security Systems | High-performance network content analysis platform |
ATE382166T1 (en) | 2003-10-11 | 2008-01-15 | Spans Logic Inc | MEMORY AND POWER EFFICIENT MECHANISM FOR FAST TABLE LOOKUP |
US7499912B2 (en) | 2003-10-23 | 2009-03-03 | Hywire Ltd. | Search method using coded keys |
US7954151B1 (en) | 2003-10-28 | 2011-05-31 | Emc Corporation | Partial document content matching using sectional analysis |
JP4455266B2 (en) | 2003-10-30 | 2010-04-21 | キヤノン株式会社 | Image forming apparatus |
US8627489B2 (en) | 2003-10-31 | 2014-01-07 | Adobe Systems Incorporated | Distributed document version control |
US7373385B2 (en) | 2003-11-03 | 2008-05-13 | Cloudmark, Inc. | Method and apparatus to block spam based on spam reports from a community of users |
US7870161B2 (en) | 2003-11-07 | 2011-01-11 | Qiang Wang | Fast signature scan |
US7752210B2 (en) | 2003-11-13 | 2010-07-06 | Yahoo! Inc. | Method of determining geographical location from IP address information |
US20050108630A1 (en) * | 2003-11-19 | 2005-05-19 | Wasson Mark D. | Extraction of facts from text |
CA2547344A1 (en) | 2003-11-27 | 2005-07-14 | Advestigo | System for intercepting multimedia documents |
US9401838B2 (en) | 2003-12-03 | 2016-07-26 | Emc Corporation | Network event capture and retention system |
US20050131876A1 (en) | 2003-12-10 | 2005-06-16 | Ahuja Ratinder Paul S. | Graphical user interface for capture system |
US7984175B2 (en) | 2003-12-10 | 2011-07-19 | Mcafee, Inc. | Method and apparatus for data capture and analysis system |
US8656039B2 (en) | 2003-12-10 | 2014-02-18 | Mcafee, Inc. | Rule parser |
US7899828B2 (en) | 2003-12-10 | 2011-03-01 | Mcafee, Inc. | Tag data structure for maintaining relational data over captured objects |
US7814327B2 (en) | 2003-12-10 | 2010-10-12 | Mcafee, Inc. | Document registration |
US8548170B2 (en) | 2003-12-10 | 2013-10-01 | Mcafee, Inc. | Document de-registration |
US7774604B2 (en) | 2003-12-10 | 2010-08-10 | Mcafee, Inc. | Verifying captured objects before presentation |
US7774721B2 (en) | 2003-12-15 | 2010-08-10 | Microsoft Corporation | Intelligent backward resource navigation |
US20060106793A1 (en) | 2003-12-29 | 2006-05-18 | Ping Liang | Internet and computer information retrieval and mining with intelligent conceptual filtering, visualization and automation |
US7424469B2 (en) | 2004-01-07 | 2008-09-09 | Microsoft Corporation | System and method for blending the results of a classifier and a search engine |
US20050165750A1 (en) * | 2004-01-20 | 2005-07-28 | Microsoft Corporation | Infrequent word index for document indexes |
US7930540B2 (en) | 2004-01-22 | 2011-04-19 | Mcafee, Inc. | Cryptographic policy enforcement |
US7707039B2 (en) | 2004-02-15 | 2010-04-27 | Exbiblio B.V. | Automatic modification of web pages |
ATE477693T1 (en) | 2004-01-27 | 2010-08-15 | Actix Ltd | TRAFFIC MONITORING SYSTEM FOR A MOBILE NETWORK FOR TRAFFIC ANALYSIS USING A HIERARCHICAL APPROACH |
US7558221B2 (en) | 2004-02-13 | 2009-07-07 | Seiko Epson Corporation | Method and system for recording videoconference data |
US7243110B2 (en) * | 2004-02-20 | 2007-07-10 | Sand Technology Inc. | Searchable archive |
US7406477B2 (en) | 2004-03-12 | 2008-07-29 | Sybase, Inc. | Database system with methodology for automated determination and selection of optimal indexes |
JP4509611B2 (en) | 2004-03-18 | 2010-07-21 | 東芝ソリューション株式会社 | Electronic signature assurance system, program and apparatus |
US7426181B1 (en) | 2004-03-26 | 2008-09-16 | Packeteer, Inc. | Slow-start adaptive mechanisms to improve efficiency of bandwidth allocation |
US8713418B2 (en) | 2004-04-12 | 2014-04-29 | Google Inc. | Adding value to a rendered document |
US7739080B1 (en) | 2004-04-19 | 2010-06-15 | Versata Development Group, Inc. | Consolidation of product data models |
US7509677B2 (en) | 2004-05-04 | 2009-03-24 | Arcsight, Inc. | Pattern discovery in a network security system |
US7434058B2 (en) | 2004-06-07 | 2008-10-07 | Reconnex Corporation | Generating signatures over a document |
US7760730B2 (en) | 2004-06-15 | 2010-07-20 | Oracle America, Inc. | Rule set verification |
US7505463B2 (en) | 2004-06-15 | 2009-03-17 | Sun Microsystems, Inc. | Rule set conflict resolution |
US20060075228A1 (en) | 2004-06-22 | 2006-04-06 | Black Alistair D | Method and apparatus for recognition and real time protection from view of sensitive terms in documents |
US7962591B2 (en) | 2004-06-23 | 2011-06-14 | Mcafee, Inc. | Object classification in a capture system |
US7596571B2 (en) | 2004-06-30 | 2009-09-29 | Technorati, Inc. | Ecosystem method of aggregation and search and related techniques |
US7594277B2 (en) | 2004-06-30 | 2009-09-22 | Microsoft Corporation | Method and system for detecting when an outgoing communication contains certain content |
US20060021045A1 (en) | 2004-07-22 | 2006-01-26 | Cook Chad L | Input translation for network security analysis |
US20060021050A1 (en) | 2004-07-22 | 2006-01-26 | Cook Chad L | Evaluation of network security based on security syndromes |
EP1771998B1 (en) | 2004-07-23 | 2015-04-15 | Citrix Systems, Inc. | Systems and methods for optimizing communications between network nodes |
US8407239B2 (en) * | 2004-08-13 | 2013-03-26 | Google Inc. | Multi-stage query processing system and method for use with tokenspace repository |
US7836076B2 (en) | 2004-08-20 | 2010-11-16 | Hewlett-Packard Development Company, L.P. | Distributing content indices |
US8560534B2 (en) | 2004-08-23 | 2013-10-15 | Mcafee, Inc. | Database for a capture system |
US7483916B2 (en) | 2004-08-23 | 2009-01-27 | Mcafee, Inc. | Database for a capture system |
US7949849B2 (en) | 2004-08-24 | 2011-05-24 | Mcafee, Inc. | File system for a capture system |
US20060080130A1 (en) | 2004-10-08 | 2006-04-13 | Samit Choksi | Method that uses enterprise application integration to provide real-time proactive post-sales and pre-sales service over SIP/SIMPLE/XMPP networks |
JP4479459B2 (en) | 2004-10-19 | 2010-06-09 | 横河電機株式会社 | Packet analysis system |
US7844582B1 (en) | 2004-10-28 | 2010-11-30 | Stored IQ | System and method for involving users in object management |
US8683031B2 (en) | 2004-10-29 | 2014-03-25 | Trustwave Holdings, Inc. | Methods and systems for scanning and monitoring content on a network |
US20060242694A1 (en) | 2004-11-08 | 2006-10-26 | Jeffrey Gold | Mitigation and mitigation management of attacks in networked systems |
US7664083B1 (en) | 2004-11-18 | 2010-02-16 | Verizon Laboratories Inc. | Monitoring portal systems and methods |
US7707201B2 (en) | 2004-12-06 | 2010-04-27 | Yahoo! Inc. | Systems and methods for managing and using multiple concept networks for assisted search processing |
US7855974B2 (en) | 2004-12-23 | 2010-12-21 | Solera Networks, Inc. | Method and apparatus for network packet capture distributed storage system |
GB0502259D0 (en) | 2005-02-03 | 2005-03-09 | British Telecomm | Document searching tool and method |
US20060242126A1 (en) | 2005-03-25 | 2006-10-26 | Andrew Fitzhugh | System and method for a context-sensitive extensible plug-in architecture |
US7567567B2 (en) | 2005-04-05 | 2009-07-28 | Sun Microsystems, Inc. | Network system including packet classification for partitioned resources |
US20070050467A1 (en) | 2005-04-06 | 2007-03-01 | Chris Borrett | Digital asset management system, including customizable metadata model for asset cataloging and permissioning of digital assets, such as for use with digital images and songs |
WO2006113722A2 (en) | 2005-04-18 | 2006-10-26 | The Regents Of The University Of California | High-performance context-free parser for polymorphic malware detection |
US7548544B2 (en) | 2005-05-05 | 2009-06-16 | Ironport Systems, Inc. | Method of determining network addresses of senders of electronic mail messages |
US8051487B2 (en) | 2005-05-09 | 2011-11-01 | Trend Micro Incorporated | Cascading security architecture |
US8140664B2 (en) | 2005-05-09 | 2012-03-20 | Trend Micro Incorporated | Graphical user interface based sensitive information and internal information vulnerability management system |
US7987201B2 (en) * | 2005-05-19 | 2011-07-26 | Ntt Docomo, Inc. | Method and apparatus for communication efficient private information retrieval and oblivious transfer |
US7921072B2 (en) | 2005-05-31 | 2011-04-05 | Alcatel-Lucent Usa Inc. | Methods and apparatus for mapping source schemas to a target schema using schema embedding |
US10445359B2 (en) | 2005-06-07 | 2019-10-15 | Getty Images, Inc. | Method and system for classifying media content |
US7624436B2 (en) | 2005-06-30 | 2009-11-24 | Intel Corporation | Multi-pattern packet content inspection mechanisms employing tagged values |
US7926099B1 (en) | 2005-07-15 | 2011-04-12 | Novell, Inc. | Computer-implemented method and system for security event transport using a message bus |
US7581059B2 (en) | 2005-07-27 | 2009-08-25 | Netlogic Microsystems, Inc. | Controlling a searchable range within a network search engine |
US7962616B2 (en) | 2005-08-11 | 2011-06-14 | Micro Focus (Us), Inc. | Real-time activity monitoring and reporting |
US7907608B2 (en) | 2005-08-12 | 2011-03-15 | Mcafee, Inc. | High speed packet capture |
US7774346B2 (en) | 2005-08-26 | 2010-08-10 | Oracle International Corporation | Indexes that are based on bitmap values and that use summary bitmap values |
US20070050846A1 (en) | 2005-08-30 | 2007-03-01 | Fortinet, Inc. | Logging method, system, and device with analytical capabilities for the network traffic |
US7818326B2 (en) | 2005-08-31 | 2010-10-19 | Mcafee, Inc. | System and method for word indexing in a capture system and querying thereof |
JP2007081482A (en) | 2005-09-09 | 2007-03-29 | Canon Inc | Terminal authentication method, apparatus and program thereof |
US7610285B1 (en) | 2005-09-21 | 2009-10-27 | Stored IQ | System and method for classifying objects |
US7512610B1 (en) * | 2005-09-30 | 2009-03-31 | Miosoft Corporation | Processing data records |
US20070081471A1 (en) | 2005-10-06 | 2007-04-12 | Alcatel Usa Sourcing, L.P. | Apparatus and method for analyzing packet data streams |
US7730011B1 (en) | 2005-10-19 | 2010-06-01 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US9055093B2 (en) | 2005-10-21 | 2015-06-09 | Kevin R. Borders | Method, system and computer program product for detecting at least one of security threats and undesirable computer files |
US8301771B2 (en) | 2005-10-26 | 2012-10-30 | Armstrong, Quinton Co. LLC | Methods, systems, and computer program products for transmission control of sensitive application-layer data |
US9697231B2 (en) | 2005-11-09 | 2017-07-04 | Cxense Asa | Methods and apparatus for providing virtual media channels based on media search |
US20070106685A1 (en) | 2005-11-09 | 2007-05-10 | Podzinger Corp. | Method and apparatus for updating speech recognition databases and reindexing audio and video content using the same |
US20070106646A1 (en) | 2005-11-09 | 2007-05-10 | Bbnt Solutions Llc | User-directed navigation of multimedia search results |
US7801910B2 (en) | 2005-11-09 | 2010-09-21 | Ramp Holdings, Inc. | Method and apparatus for timed tagging of media content |
US7760769B1 (en) | 2005-11-15 | 2010-07-20 | Network Appliance, Inc. | Serial stream filtering |
US20070124384A1 (en) | 2005-11-18 | 2007-05-31 | Microsoft Corporation | Voicemail and fax filtering |
US7657104B2 (en) | 2005-11-21 | 2010-02-02 | Mcafee, Inc. | Identifying image type in a capture system |
US20070143559A1 (en) | 2005-12-20 | 2007-06-21 | Yuichi Yagawa | Apparatus, system and method incorporating virtualization for data storage |
US7830537B2 (en) | 2005-12-21 | 2010-11-09 | International Business Machines Corporation | System and method for controlling copying of documents |
US7502765B2 (en) * | 2005-12-21 | 2009-03-10 | International Business Machines Corporation | Method for organizing semi-structured data into a taxonomy, based on tag-separated clustering |
US7870031B2 (en) * | 2005-12-22 | 2011-01-11 | Ebay Inc. | Suggested item category systems and methods |
EP1811421A1 (en) * | 2005-12-29 | 2007-07-25 | AXSionics AG | Security token and method for authentication of a user with the security token |
US8397284B2 (en) | 2006-01-17 | 2013-03-12 | University Of Maryland | Detection of distributed denial of service attacks in autonomous system domains |
US20070185868A1 (en) * | 2006-02-08 | 2007-08-09 | Roth Mary A | Method and apparatus for semantic search of schema repositories |
US8266152B2 (en) * | 2006-03-03 | 2012-09-11 | Perfect Search Corporation | Hashed indexing |
JPWO2007100045A1 (en) | 2006-03-03 | 2009-07-23 | 日本電気株式会社 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM |
US20070226504A1 (en) | 2006-03-24 | 2007-09-27 | Reconnex Corporation | Signature match processing in a document registration system |
US8504537B2 (en) | 2006-03-24 | 2013-08-06 | Mcafee, Inc. | Signature distribution in a document registration system |
US8010689B2 (en) * | 2006-05-22 | 2011-08-30 | Mcafee, Inc. | Locational tagging in a capture system |
US7958227B2 (en) | 2006-05-22 | 2011-06-07 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US7689614B2 (en) | 2006-05-22 | 2010-03-30 | Mcafee, Inc. | Query generation for a capture system |
US20080010256A1 (en) * | 2006-06-05 | 2008-01-10 | Mark Logic Corporation | Element query method and system |
US20080027971A1 (en) | 2006-07-28 | 2008-01-31 | Craig Statchuk | Method and system for populating an index corpus to a search engine |
US7783589B2 (en) * | 2006-08-04 | 2010-08-24 | Apple Inc. | Inverted index processing |
US8392174B2 (en) * | 2006-08-07 | 2013-03-05 | International Characters, Inc. | Method and apparatus for lexical analysis using parallel bit streams |
US20130246338A1 (en) | 2006-09-15 | 2013-09-19 | Ashok Doddapaneni | System and method for indexing a capture system |
US9135322B2 (en) | 2006-09-18 | 2015-09-15 | Emc Corporation | Environment classification |
US8612570B1 (en) | 2006-09-18 | 2013-12-17 | Emc Corporation | Data classification and management using tap network architecture |
US8631012B2 (en) | 2006-09-29 | 2014-01-14 | A9.Com, Inc. | Method and system for identifying and displaying images in response to search queries |
US7774198B2 (en) | 2006-10-06 | 2010-08-10 | Xerox Corporation | Navigation system for text |
US7796592B2 (en) | 2006-11-13 | 2010-09-14 | At&T Mobility Ii Llc | Optimizing static dictionary usage for signal, hypertext transfer protocol and bytecode compression in a wireless network |
US20080115125A1 (en) | 2006-11-13 | 2008-05-15 | Cingular Wireless Ii, Llc | Optimizing static dictionary usage for signal compression and for hypertext transfer protocol compression in a wireless network |
US8181248B2 (en) | 2006-11-23 | 2012-05-15 | Electronics And Telecommunications Research Institute | System and method of detecting anomaly malicious code by using process behavior prediction technique |
US7496568B2 (en) * | 2006-11-30 | 2009-02-24 | International Business Machines Corporation | Efficient multifaceted search in information retrieval systems |
US8645397B1 (en) * | 2006-11-30 | 2014-02-04 | At&T Intellectual Property Ii, L.P. | Method and apparatus for propagating updates in databases |
US7831606B2 (en) | 2006-12-08 | 2010-11-09 | Pandya Ashish A | Signature search architecture for programmable intelligent search memory |
US20080159627A1 (en) | 2006-12-27 | 2008-07-03 | Yahoo! Inc. | Part-based pornography detection |
US8205244B2 (en) | 2007-02-27 | 2012-06-19 | Airdefense, Inc. | Systems and methods for generating, managing, and displaying alarms for wireless network monitoring |
US20080235163A1 (en) | 2007-03-22 | 2008-09-25 | Srinivasan Balasubramanian | System and method for online duplicate detection and elimination in a web crawler |
US20080270351A1 (en) | 2007-04-24 | 2008-10-30 | Interse A/S | System and Method of Generating and External Catalog for Use in Searching for Information Objects in Heterogeneous Data Stores |
US8850587B2 (en) | 2007-05-04 | 2014-09-30 | Wipro Limited | Network security scanner for enterprise protection |
US8793802B2 (en) | 2007-05-22 | 2014-07-29 | Mcafee, Inc. | System, method, and computer program product for preventing data leakage utilizing a map of data |
US7979524B2 (en) | 2007-05-23 | 2011-07-12 | International Business Machines Corporation | System and method for disclosing relations between entities in support of information technology system visualization and management |
US8046372B1 (en) * | 2007-05-25 | 2011-10-25 | Amazon Technologies, Inc. | Duplicate entry detection system and method |
US7849065B2 (en) | 2007-07-20 | 2010-12-07 | Microsoft Corporation | Heterogeneous content indexing and searching |
US7801852B2 (en) | 2007-07-31 | 2010-09-21 | Oracle International Corporation | Checkpoint-free in log mining for distributed information sharing |
US7966343B2 (en) * | 2008-04-07 | 2011-06-21 | Teradata Us, Inc. | Accessing data in a column store database based on hardware compatible data structures |
US8862625B2 (en) * | 2008-04-07 | 2014-10-14 | Teradata Us, Inc. | Accessing data in a column store database based on hardware compatible indexing and replicated reordered columns |
US20090070327A1 (en) * | 2007-09-06 | 2009-03-12 | Alexander Stephan Loeser | Method for automatically generating regular expressions for relaxed matching of text patterns |
US7440952B1 (en) | 2007-12-18 | 2008-10-21 | International Business Machines Corporation | Systems, methods, and computer products for information sharing using personalized index caching |
US7996523B2 (en) | 2008-01-17 | 2011-08-09 | Fluke Corporation | Free string match encoding and preview |
JP5224851B2 (en) * | 2008-02-27 | 2013-07-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Search engine, search system, search method and program |
US9690786B2 (en) | 2008-03-17 | 2017-06-27 | Tivo Solutions Inc. | Systems and methods for dynamically creating hyperlinks associated with relevant multimedia content |
US8065739B1 (en) | 2008-03-28 | 2011-11-22 | Symantec Corporation | Detecting policy violations in information content containing data in a character-based language |
US7996373B1 (en) | 2008-03-28 | 2011-08-09 | Symantec Corporation | Method and apparatus for detecting policy violations in a data repository having an arbitrary data schema |
US7853597B2 (en) * | 2008-04-28 | 2010-12-14 | Microsoft Corporation | Product line extraction |
US8613039B2 (en) | 2008-06-03 | 2013-12-17 | International Business Machines Corporation | Automated correction and reporting for dynamic web applications |
US20090326925A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Projecting syntactic information using a bottom-up pattern matching algorithm |
US8341734B1 (en) | 2008-06-27 | 2012-12-25 | Symantec Corporation | Method and system to audit physical copy data leakage |
JP5346506B2 (en) | 2008-06-30 | 2013-11-20 | 株式会社日立ソリューションズ | File management device |
US8205242B2 (en) | 2008-07-10 | 2012-06-19 | Mcafee, Inc. | System and method for data mining and security policy management |
US8645350B2 (en) | 2008-07-11 | 2014-02-04 | Adobe Systems Incorporated | Dictionary compilations |
US7979671B2 (en) * | 2008-07-28 | 2011-07-12 | CacheIQ, Inc. | Dual hash indexing system and methodology |
US8286255B2 (en) | 2008-08-07 | 2012-10-09 | Sophos Plc | Computer file control through file tagging |
US9253154B2 (en) * | 2008-08-12 | 2016-02-02 | Mcafee, Inc. | Configuration management for a capture/registration system |
US8521757B1 (en) | 2008-09-26 | 2013-08-27 | Symantec Corporation | Method and apparatus for template-based processing of electronic documents |
EP2172853B1 (en) * | 2008-10-01 | 2011-11-30 | Software AG | Database index and database for indexing text documents |
JP4701292B2 (en) * | 2009-01-05 | 2011-06-15 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Computer system, method and computer program for creating term dictionary from specific expressions or technical terms contained in text data |
US8850591B2 (en) | 2009-01-13 | 2014-09-30 | Mcafee, Inc. | System and method for concept building |
US8706709B2 (en) | 2009-01-15 | 2014-04-22 | Mcafee, Inc. | System and method for intelligent term grouping |
US8473442B1 (en) | 2009-02-25 | 2013-06-25 | Mcafee, Inc. | System and method for intelligent state management |
US8667121B2 (en) | 2009-03-25 | 2014-03-04 | Mcafee, Inc. | System and method for managing data and policies |
US8447722B1 (en) | 2009-03-25 | 2013-05-21 | Mcafee, Inc. | System and method for data mining and security policy management |
EP2438540A1 (en) * | 2009-06-01 | 2012-04-11 | AOL Inc. | Providing suggested web search queries based on click data of stored search queries |
US8180785B2 (en) * | 2009-06-30 | 2012-05-15 | International Business Machines Corporation | Method and system for searching numerical terms |
US8306807B2 (en) * | 2009-08-17 | 2012-11-06 | N T repid Corporation | Structured data translation apparatus, system and method |
US8286253B1 (en) | 2009-11-23 | 2012-10-09 | Trend Micro Incorporated | Data leakage prevention for resource limited device |
US8688683B2 (en) | 2009-11-30 | 2014-04-01 | Business Objects Software Ltd. | Query plan reformulation |
CN102782692A (en) * | 2009-12-31 | 2012-11-14 | 沃蒂夫有限公司 | System, apparatus and method for encryption and decryption of data transmitted over a network |
US8806615B2 (en) | 2010-11-04 | 2014-08-12 | Mcafee, Inc. | System and method for protecting specified data combinations |
US20130246334A1 (en) | 2011-12-27 | 2013-09-19 | Mcafee, Inc. | System and method for providing data protection workflows in a network environment |
CN104641377B (en) | 2012-10-19 | 2018-02-23 | 迈克菲股份有限公司 | Data loss prevention for mobile computing device |
-
2010
- 2010-11-04 US US12/939,340 patent/US8806615B2/en active Active
-
2011
- 2011-02-15 WO PCT/US2011/024902 patent/WO2012060892A2/en active Application Filing
- 2011-02-15 KR KR1020137014404A patent/KR101538305B1/en active IP Right Grant
- 2011-02-15 EP EP11704904A patent/EP2499806A2/en not_active Withdrawn
- 2011-02-15 JP JP2013537659A patent/JP5727027B2/en active Active
- 2011-02-15 CN CN201180058414.4A patent/CN103430504B/en active Active
-
2014
- 2014-08-11 US US14/457,038 patent/US9794254B2/en active Active
-
2017
- 2017-09-11 US US15/700,826 patent/US10313337B2/en active Active
-
2019
- 2019-03-27 US US16/365,812 patent/US10666646B2/en active Active
-
2020
- 2020-04-07 US US16/841,982 patent/US11316848B2/en active Active
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9092471B2 (en) | 2003-12-10 | 2015-07-28 | Mcafee, Inc. | Rule parser |
US9374225B2 (en) | 2003-12-10 | 2016-06-21 | Mcafee, Inc. | Document de-registration |
US9094338B2 (en) | 2006-05-22 | 2015-07-28 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US10367786B2 (en) | 2008-08-12 | 2019-07-30 | Mcafee, Llc | Configuration management for a capture/registration system |
US9253154B2 (en) | 2008-08-12 | 2016-02-02 | Mcafee, Inc. | Configuration management for a capture/registration system |
US8850591B2 (en) | 2009-01-13 | 2014-09-30 | Mcafee, Inc. | System and method for concept building |
US9602548B2 (en) | 2009-02-25 | 2017-03-21 | Mcafee, Inc. | System and method for intelligent state management |
US9195937B2 (en) | 2009-02-25 | 2015-11-24 | Mcafee, Inc. | System and method for intelligent state management |
US9313232B2 (en) | 2009-03-25 | 2016-04-12 | Mcafee, Inc. | System and method for data mining and security policy management |
US8918359B2 (en) | 2009-03-25 | 2014-12-23 | Mcafee, Inc. | System and method for data mining and security policy management |
US10313337B2 (en) | 2010-11-04 | 2019-06-04 | Mcafee, Llc | System and method for protecting specified data combinations |
US9794254B2 (en) | 2010-11-04 | 2017-10-17 | Mcafee, Inc. | System and method for protecting specified data combinations |
US10666646B2 (en) | 2010-11-04 | 2020-05-26 | Mcafee, Llc | System and method for protecting specified data combinations |
US11316848B2 (en) | 2010-11-04 | 2022-04-26 | Mcafee, Llc | System and method for protecting specified data combinations |
US9430564B2 (en) | 2011-12-27 | 2016-08-30 | Mcafee, Inc. | System and method for providing data protection workflows in a network environment |
CN103346933A (en) * | 2013-07-22 | 2013-10-09 | 盛科网络(苏州)有限公司 | Device for dynamically monitoring packet forwarding |
Also Published As
Publication number | Publication date |
---|---|
US8806615B2 (en) | 2014-08-12 |
US11316848B2 (en) | 2022-04-26 |
US9794254B2 (en) | 2017-10-17 |
US20170374064A1 (en) | 2017-12-28 |
US10313337B2 (en) | 2019-06-04 |
CN103430504B (en) | 2016-12-21 |
KR101538305B1 (en) | 2015-07-21 |
US20150067810A1 (en) | 2015-03-05 |
US20190230076A1 (en) | 2019-07-25 |
JP2013541792A (en) | 2013-11-14 |
US20120114119A1 (en) | 2012-05-10 |
US20200236106A1 (en) | 2020-07-23 |
EP2499806A2 (en) | 2012-09-19 |
CN103430504A (en) | 2013-12-04 |
KR20140041391A (en) | 2014-04-04 |
US10666646B2 (en) | 2020-05-26 |
JP5727027B2 (en) | 2015-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11316848B2 (en) | System and method for protecting specified data combinations | |
US10367786B2 (en) | Configuration management for a capture/registration system | |
US8850591B2 (en) | System and method for concept building | |
US8706709B2 (en) | System and method for intelligent term grouping | |
US9654510B1 (en) | Match signature recognition for detecting false positive incidents and improving post-incident remediation | |
US8180886B2 (en) | Method and apparatus for detection of information transmission abnormalities | |
US8011003B2 (en) | Method and apparatus for handling messages containing pre-selected data | |
US7434058B2 (en) | Generating signatures over a document | |
US8751506B2 (en) | Personal computing device-based mechanism to detect preselected data | |
US8473442B1 (en) | System and method for intelligent state management | |
US7583187B1 (en) | System, method and computer program product for automatically summarizing security events | |
CN1965306B (en) | High-performance network content analysis platform | |
EP1853976B1 (en) | Method and apparatus for handling messages containing pre-selected data | |
US20090300770A1 (en) | Mechanism to search information content for preselected data | |
EP3206133B1 (en) | Information security apparatus and methods for credential dump authenticity verification | |
EP1540542A2 (en) | Detection of preselected data | |
KR102295488B1 (en) | System and method for exponentiation of security element to analyze danger | |
US11190589B1 (en) | System and method for efficient fingerprinting in cloud multitenant data loss prevention | |
Sadighian et al. | Early Malware Characterization based on Online Social Networks | |
WO2010098722A1 (en) | Data loss prevention system | |
Mohammed et al. | Polymorphic Worms Detection Using Longest Common Substring |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2011704904 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11704904 Country of ref document: EP Kind code of ref document: A2 |
|
ENP | Entry into the national phase |
Ref document number: 2013537659 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20137014404 Country of ref document: KR Kind code of ref document: A |