This invention relates generally to the filed of data synchronization. More particularly, the invention relates to a system and method for secure synchronization between server and a device.
A variety of wireless data processing devices have been introduced over the past several years. These include wireless personal digital assistants (“PDAs”) such as the Palm® VIIx handheld, cellular phones equipped with data processing capabilities (e.g., those which include wireless application protocol (“WAP”) support), and, more recently, wireless messaging devices such as the Blackberry™ wireless pager developed by Research In Motion (“RIM”).™
Presently, a synchronization client on a wireless device watches for changes in a personal information manager (“PIM”) database and uses a network connection to keep the records on a synchronization server and the records in the PIM database synchronized with each other. During this synchronization the PIM database is accessible, and the data is not protected.
A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which:
According to one embodiment a system for protecting personal information manager (“PIM”) data on a device is disclosed. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the present invention.
Reference in the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
PIM application 110 is coupled to PIM database 120. PIM application 110 is a program implementation of a PIM. PIM database is a database that includes PIM information. In one embodiment, the PIM information is kept in separate records.
Crypto container 140 includes a copy of the PIM database (“copyDB”) 145. Crypto container 140 maintains the data inside copyDB 145 in an encrypted format. Crypto container 140 provides an application program interface (“API”) for reading and writing of the data in an unencrypted form. In one embodiment, access to the data in copyDB 145 is only available through the API.
In one embodiment, crypto container 140 may be in an unlocked or a locked state. When crypto container 140 is in the unlocked state cipher keys are initialized and external applications (e.g. PIM application 110) have access to the data in copyDB 145 via the API. In the locked state, the cipher keys are erased and external applications do not have access to the data in copyDB 145.
In one embodiment, SureWave™ Mobile Defense developed by JP Mobile, Inc™ provides for the implementation of crypto container 140. However, other implementations may be used. The data in copyDB 145 may be stored in a database format, or in another embodiment, the data may be stored in a file or file system via a system driver.
Replicator 130 is coupled to PIM databse 120 and crypto container 140. Replicator 130 synchronizes PIM database 120 with copyDB 145.
Synchronizer 150 is coupled to crypto container 140 and synchronization server 160. In one embodiment, synchronizer 150 is implemented using SureWave™ Manager developed by JP Mobile, Inc™. However, other implementations may be used. Synchronizer 150 synchronizes copyDB 145 and synchronization server 160 via a network connection. In one embodiment, the network connection is wired. However, the network connection may be wireless.
In one embodiment, device 100 may operate in one of the three following states: low security, medium security, and high security. The following table illustrates the possible transitions between states for device 100.
The security state of device 100 may change for various reasons. Some of the reasons may include: failed attempts to enter a password for device 100 have exceeded a predetermined amount, an attempted remote command via short message service (“SMS”) or electronic mail (“e-mail”) may have occurred, or a network intrusion may have been detected. However, other reasons may cause an increase in the security state of device 100.
In one embodiment, the low security state, the medium security state, and the high security state of device 100 correspond to an unlocked device mode, a locked/sync device mode, and a lock/emergency device mode, respectively.
In the unlocked device mode, copyDB 145 is unlocked. Synchronizer 150 is authorized to synchronize data between synchronization server 160 and copyDB 145. Replicator 130 is also authorized to synchronize the data in PIM database 120 and copyDB 145. The PIM data in PIM database 120 is available for use by PIM application 110, and the graphical user interface (“GUI”) of device 100 is unblocked.
In the locked/sync mode, PIM database 120 is cleared, and no unencrypted data is available. The PIM data in PIM database 120 is unavailable to PIM application 110. Replicator 130 is stopped, and copyDB 145 is unlocked. Synchronizer 150 is still authorized to synchronize data between synchronization server 160 and copyDB 145.
In the locked/emergency mode, PIM database 120 is cleared and no unencrypted data is available. The PIM data in PIM database 120 is unavailable to PIM application 110. Replicator 130 is stopped, copyDB 145 is locked, and cipher keys are cleared. Synchronizer 150 is also stopped, and the network connection is closed.
If device 100 is in the unlocked device mode then the PIM data is unlocked for use by application 110, process block 220. At process block 225, replicator 130 synchronizes the data in PIM database 120 and copyDB 145. At process block 230, synchronizer 150 synchronizes data between synchronization server 160 and crypto container 140.
If device 100 is not in the unlocked device mode then the PIM data in PIM database 120 is locked and thus unavailable to PIM application 110, process block 235. At process block 240, replicator 130 is stopped. At decision block 245, it is determined whether device 100 is in the locked/sync mode.
If device 100 is in the locked/sync mode then synchronizer 150 synchronizes data between synchronization server 160 and crypto container 140, process block 230.
If device 100 is not in the locked/sync mode then device 100 is in the locked/emergency mode synchronizer 150 is stopped, process block 250.
The system described above provides for an efficient mechanism to protect PIM data on a device connected to a server.
Computer system 300 further comprises a random access memory (RAM) or other dynamic storage device 325 (referred to herein as main memory), coupled to bus 320 for storing information and instructions to be executed by processor 310. Main memory 325 also may be used for storing temporary variables or other intermediate information during execution of instructions by processor 310. Computer system 300 also may include a read only memory (ROM) and/or other static storage device 326 coupled to bus 320 for storing static information and instructions used by processor 310.
A data storage device 325 such as a magnetic disk or optical disc and its corresponding drive may also be coupled to computer system 300 for storing information and instructions. Computer system 300 can also be coupled to a second I/O bus 350 via an I/O interface 330. A plurality of I/O devices may be coupled to I/O bus 350, including a display device 324; an input device (e.g., an alphanumeric input device 523 and/or a cursor control device 322).
The communication device 321 is for accessing other computers (servers or clients) via a network. The communication device 321 may comprise a modem, a network interface card, or other well-known interface device, such as those used for coupling to Ethernet, token ring, or other types of networks.
Embodiments of the invention may include various steps as set forth above. The steps may be embodied in machine-executable instructions. The instructions can be used to cause a general-purpose or special-purpose processor to perform certain steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
Elements of the present invention may also be provided as a machine-readable medium for storing the machine-executable instructions. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, propagation media or other type of media/machine-readable medium suitable for storing electronic instructions. For example, the present invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
Throughout the foregoing description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without some of these specific details. Accordingly, the scope and spirit of the invention should be judged in terms of the claims which follow.
This is a continuation application of U.S. application Ser. No. 13/183,138 entitled “System and Method of Data Security in Synchronizing Data with a Wireless Device” and filed Jul. 14, 2011, which is a continuation application of U.S. application Ser. No. 11/261,529 entitled “System and Method of Data Security in Synchronizing Data with a Wireless Device” and filed Oct. 28, 2005, the entire contents of each of which are incorporated herein by reference. U.S. application Ser. No. 11/261,529 is a non-provisional application based on a provisional application Ser. No. 60/622,813 filed on Oct. 28, 2004 and claims priority thereof.
Number | Name | Date | Kind |
---|---|---|---|
4714995 | Materna | Dec 1987 | A |
4837811 | Butler et al. | Jun 1989 | A |
4882752 | Lindman | Nov 1989 | A |
5113041 | Blonder et al. | May 1992 | A |
5128739 | Shirato | Jul 1992 | A |
5150407 | Chan | Sep 1992 | A |
5220501 | Lawlor | Jun 1993 | A |
5237614 | Weiss | Aug 1993 | A |
5265159 | Kung | Nov 1993 | A |
5432999 | Capps et al. | Jul 1995 | A |
5572696 | Sonobe | Nov 1996 | A |
5613012 | Hoffman | Mar 1997 | A |
5631947 | Wittstein et al. | May 1997 | A |
5647002 | Brunson et al. | Jul 1997 | A |
5649099 | Theimer et al. | Jul 1997 | A |
5652884 | Palevich | Jul 1997 | A |
5664207 | Crumpler | Sep 1997 | A |
5666530 | Clark et al. | Sep 1997 | A |
5675362 | Clough et al. | Oct 1997 | A |
5684984 | Jones | Nov 1997 | A |
5687322 | Deaton et al. | Nov 1997 | A |
5694546 | Reisman | Dec 1997 | A |
5696825 | Johnson et al. | Dec 1997 | A |
5713019 | Keaten | Jan 1998 | A |
5717925 | Harper | Feb 1998 | A |
5727202 | Kucala et al. | Mar 1998 | A |
5745884 | Carnegie et al. | Apr 1998 | A |
5748084 | Isikoff | May 1998 | A |
5771354 | Crawford et al. | Jun 1998 | A |
5787441 | Beckhardt et al. | Jul 1998 | A |
5790790 | Smith et al. | Aug 1998 | A |
5832483 | Barker et al. | Nov 1998 | A |
5857201 | Wright et al. | Jan 1999 | A |
5857206 | Tsutsumitake | Jan 1999 | A |
5862325 | Reed et al. | Jan 1999 | A |
5862346 | Kley et al. | Jan 1999 | A |
5870477 | Sasaki et al. | Feb 1999 | A |
5870759 | Bauer | Feb 1999 | A |
5896497 | Halstead | Apr 1999 | A |
5903881 | Schrader | May 1999 | A |
5928329 | Clark et al. | Jul 1999 | A |
5940843 | Zucknovich et al. | Aug 1999 | A |
5958007 | Lee et al. | Sep 1999 | A |
5960176 | Kuroki | Sep 1999 | A |
5987609 | Hasebe | Nov 1999 | A |
5991410 | Albert et al. | Nov 1999 | A |
5999947 | Zollinger et al. | Dec 1999 | A |
6006274 | Hawkins et al. | Dec 1999 | A |
6034621 | Kaufman | Mar 2000 | A |
6049671 | Slivka et al. | Apr 2000 | A |
6085191 | Fisher et al. | Jul 2000 | A |
6085192 | Mendez et al. | Jul 2000 | A |
6108787 | Anderson et al. | Aug 2000 | A |
6125388 | Reisman et al. | Sep 2000 | A |
6128739 | Fleming | Oct 2000 | A |
6151606 | Mendez | Nov 2000 | A |
6160873 | Truong | Dec 2000 | A |
6167253 | Farris | Dec 2000 | A |
6236971 | Stefik | May 2001 | B1 |
6240091 | Ginzboorg et al. | May 2001 | B1 |
6286102 | Cromer | Sep 2001 | B1 |
6317793 | Toyosawa et al. | Nov 2001 | B1 |
6330568 | Boothby et al. | Dec 2001 | B1 |
6389542 | Flyntz | May 2002 | B1 |
6401112 | Boyer et al. | Jun 2002 | B1 |
6489671 | Aoki et al. | Dec 2002 | B2 |
6496875 | Cheng et al. | Dec 2002 | B2 |
6725379 | Dailey | Apr 2004 | B1 |
6778651 | Jost | Aug 2004 | B1 |
6813487 | Trommelen et al. | Nov 2004 | B1 |
6832320 | Broyles, III et al. | Dec 2004 | B1 |
6847825 | Duvall et al. | Jan 2005 | B1 |
6950946 | Droz | Sep 2005 | B1 |
7027808 | Wesby | Apr 2006 | B2 |
7047426 | Andrews et al. | May 2006 | B1 |
7054594 | Bloch et al. | May 2006 | B2 |
7113912 | Stefik | Sep 2006 | B2 |
7216110 | Ogg | May 2007 | B1 |
7260380 | Dietl et al. | Aug 2007 | B2 |
7480907 | Marolia et al. | Jan 2009 | B1 |
7496957 | Howard et al. | Feb 2009 | B2 |
7624393 | Egan et al. | Nov 2009 | B2 |
7624444 | Gupta | Nov 2009 | B2 |
7698702 | Wetherly et al. | Apr 2010 | B2 |
7702322 | Maurya et al. | Apr 2010 | B1 |
7844964 | Marolia et al. | Nov 2010 | B2 |
7908339 | Keith, Jr. | Mar 2011 | B2 |
7921182 | Hamasaki, Jr. et al. | Apr 2011 | B2 |
7970386 | Bhat et al. | Jun 2011 | B2 |
7987449 | Marolia et al. | Jul 2011 | B1 |
8012219 | Mendez et al. | Sep 2011 | B2 |
8250565 | Marolia et al. | Aug 2012 | B2 |
8335915 | Plotkin et al. | Dec 2012 | B2 |
8635661 | Shahbazi | Jan 2014 | B2 |
8696765 | Mendez | Apr 2014 | B2 |
20010037407 | Dragulev | Nov 2001 | A1 |
20020002685 | Shim | Jan 2002 | A1 |
20020066034 | Schlossberg et al. | May 2002 | A1 |
20020077999 | Fergus | Jun 2002 | A1 |
20020098840 | Hanson et al. | Jul 2002 | A1 |
20020128972 | Stefik | Sep 2002 | A1 |
20020133465 | Stefik | Sep 2002 | A1 |
20020162011 | Tanaka | Oct 2002 | A1 |
20030023561 | Stefik | Jan 2003 | A1 |
20030097596 | Muratov | May 2003 | A1 |
20030149662 | Shore | Aug 2003 | A1 |
20030162555 | Loveland | Aug 2003 | A1 |
20040025053 | Hayward | Feb 2004 | A1 |
20040068721 | O'Neill et al. | Apr 2004 | A1 |
20040098715 | Aghera et al. | May 2004 | A1 |
20050003804 | Huomo et al. | Jan 2005 | A1 |
20070093243 | Kapadekar et al. | Apr 2007 | A1 |
20070130255 | Wolovitz | Jun 2007 | A1 |
20140181918 | Mendez | Jun 2014 | A1 |
Number | Date | Country |
---|---|---|
2149337 | May 1995 | CA |
0813133 | Dec 1997 | EP |
0899647 | Mar 1999 | EP |
0917077 | May 1999 | EP |
2346716 | Aug 2000 | GB |
H05151091 | Jun 1993 | JP |
H06309214 | Nov 1994 | JP |
H06332858 | Dec 1994 | JP |
H0877052 | Mar 1996 | JP |
H08137732 | May 1996 | JP |
8314805 | Nov 1996 | JP |
H0973423 | Mar 1997 | JP |
H0981560 | Mar 1997 | JP |
9218815 | Aug 1997 | JP |
1115715 | Jan 1999 | JP |
2002216099 | Aug 2002 | JP |
2003005905 | Jan 2003 | JP |
9412938 | Jun 1994 | WO |
9704389 | Feb 1997 | WO |
9735265 | Sep 1997 | WO |
0045243 | Aug 2000 | WO |
0212985 | Feb 2002 | WO |
Entry |
---|
Apple Newton, 1995. |
AT&T PocketNet Phone, 1996 Oct. 25, 2005. |
Casio Cassiopeia E-115 Pocket PC User's Guide, 2000. |
Combining Location and Data Management in an Environment for Total Mobility, Feb. 1, 1996. |
Computer Associates Unicenter TNG Asset Management Option 3.1, Jan. 2001. |
DARPA Open Object-Oriented Database Preliminary Module Specification, Change Management Module, Nov. 25, 1991. |
How Not to Save Cached Internet Files with Roaming User Profiles, Dec. 5, 2003. |
How to Install Microsoft Mobile Information Server 2002 Server Active Sync, Dec. 17, 2002. |
IBM Tivoli Configuration Manager 4.2, Aug. 2002. |
IBM Tivoli Monitoring Workbench, Feb. 2002. |
Nokia 9000 Communicator, 1995. |
Roam: A Scalable Replication System for Mobile and Distributed Computing, Jan. 1998. |
Selective Replication: Fine Grain Control of Replicated Filed, Jan. 1995. |
Sony Magic Link, 1994. |
Users Guide: Hewlett Packard iPAQ hx2000 Series Pocket PC, 2004. |
Windows History: Internet Explorer History, Jun. 30, 2003. |
XcelleNet RemoteWare, 1996. |
Microsoft Windows NT 4.0; Microsoft TechNet: Guide to MS Windows NT 4.0 Profiles and Policies. |
M. Lambert, “PCMAIL: A Distributed Mail System of Personal Computers”, Network Working Group, Jun. 1988, pp. 1-38. |
3Com: Handbook for the Palm VTM Organizer—PDA Defense, 1998. |
Infinite Technologies: Infinite Interchange User's Guide; Infinite InterChange. |
Melnick, Dinman, Muratov et al: PDA Security Incorporating Handhelds into the Enterprise—PDA Defense, Apr. 2003. |
Microsoft Press: Microsoft Windows NT Server Networking Guide (p. 3-10 and 65-78). |
Microsoft Press: Windows NT Resource Guide (p. 279-287). |
Microsoft Press: Windows NT Resource Guide (p. 39-48). |
Microsoft: Chapter 3—Managing User Work Environments (server help), Jul. 25, 2013 and Oct. 11, 2013. |
Micrsoft Systems Management Server 2003 with Device Management Feature Pack. |
PDA Defense User Guide, 2000. |
PDABomb Enterprise License—PDA Defense, Jul. 26, 2013 and Feb. 2001. |
PDABombTM for Palm OS®—PDA Defense. |
zTrace Technologies: zControlTM (zControl Datasheet). |
zTrace Technologies: zSecurity Suite—Features and Benefits; zTrace zSecurity Suite, Jun. 13, 2002. |
zTrace Technologies: zSecurity Suite (zTrace Feature Matrix), Jun. 13, 2002. |
PDA Defense 3.1 by Asynchrony Solutions, Inc. |
Fulchignoni, Paola; Marrota, Giovanni; Wiley, Anthony J. “Applying Security to SMDS: A Practical Example.” Proceedings, INFOCOM '93. vol. 3. Pub. Date: 1993. Relevant pp. 1414-1421. http://ieeexplore.ieee.org/stamp/ stamp.jsp ?tp=&arnumber =253407. |
Number | Date | Country | |
---|---|---|---|
20130232112 A1 | Sep 2013 | US |
Number | Date | Country | |
---|---|---|---|
60622813 | Oct 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13183138 | Jul 2011 | US |
Child | 13847621 | US | |
Parent | 11261529 | Oct 2005 | US |
Child | 13183138 | US |