US20010054142A1 - Secure database system - Google Patents

Secure database system Download PDF

Info

Publication number
US20010054142A1
US20010054142A1 US09/079,117 US7911798A US2001054142A1 US 20010054142 A1 US20010054142 A1 US 20010054142A1 US 7911798 A US7911798 A US 7911798A US 2001054142 A1 US2001054142 A1 US 2001054142A1
Authority
US
United States
Prior art keywords
database
record
information
personal
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US09/079,117
Other versions
US6360324B2 (en
Inventor
Gilles Willem Van Blarkom
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Services Ltd
Original Assignee
Fujitsu Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Services Ltd filed Critical Fujitsu Services Ltd
Assigned to INTERNATIONAL COMPUTERS LIMITED reassignment INTERNATIONAL COMPUTERS LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: VAN BLARKOM, GILLES WILLEM
Publication of US20010054142A1 publication Critical patent/US20010054142A1/en
Application granted granted Critical
Publication of US6360324B2 publication Critical patent/US6360324B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Definitions

  • This invention relates to secure databases.
  • the object of the present invention is to provide a way of overcoming this problem.
  • a computer system comprises:
  • a server having a database including at least one personal information table and at least one further table containing information relating to persons whose details are stored in the personal information table;
  • each client including an encryption process for converting a personal identifier value, which identifies a record relating to a particular person in said personal information table, into a pseudo-identifier value, which identifies a record relating to the same person in said further table.
  • FIG. 1 is a block diagram showing a computer system incorporating a secure database.
  • FIG. 2 shows a skeleton model of the database.
  • this shows a distributed computer system comprising a server 10 and a number of clients 11 , interconnected by a network 12 .
  • the server is a central hospital computer, and the clients are personal computers (PCs), located on individual users' desks.
  • the server 10 runs a database application 13 , which may be any database system; for example, it may be an Oracle database.
  • Each client 11 runs a client application 14 , which enables an authorised user to communicate with the database, and to access data from it.
  • the database 13 holds a number of tables. Each of these tables has a primary key (indicated by “pk”), which uniquely identifies each record in the table. This primary key is a numeric figure, starting with 1 (one) for the first record written in the table and incremented by 1 (one) for each subsequent record inserted into that table. Some of the tables also include foreign keys (indicated by “fk”), which identify connections between the tables.
  • the first group contains personal data about patients and users, and the data defining the periods of care. Only the data in this group is required in order to establish if a user is allowed to access the records for a particular patient.
  • This group comprises the following tables:
  • the information includes such things as name, login name, and doctor's specialism.
  • the second group of tables holds medical data. It consists of a large number of tables, each of which holds one and only one group of facts. Some examples of tables in this second group are as follows:
  • Each of the tables in this second group has a primary key which is in no way related to the primary keys of the patient or user. Therefore, even if a hacker manages to obtain access to one of these tables, it is not possible for the hacker to relate the medical data to a particular patient or user.
  • PIDs pseudo-identifiers
  • the PIDs are stored in extra columns of the tables.
  • the PID values are calculated from the patients' and users' primary keys, using a cryptographic algorithm.
  • the cryptographic algorithm is available only on the clients; the algorithm is not recorded in the database, and so cannot be discovered by a hacker who gains access to the server.
  • the algorithm uses a master encryption key, which is different for each hospital.
  • the PID values are calculated using a different encryption protocol for each PID in each table. This is achieved by assigning a unique identifier number nr_PID to each PID in each table, and using this number as an input parameter for the cryptographic algorithm.
  • the encryption algorithm for a particular PID uses the following three parameters:
  • unique identifier numbers nr_PID may be assigned to the PIDs as follows: Table PID nr PID CarePeriod User 34 Registration Patient 47 Registration User 23 Appointment User 127 Medication User 18 PatientNote User 5
  • Free-text columns in the database such as in the PatientNote table, present a particular problem, since a user is free to put any text in these columns, and may therefore include the patient's name. This would be of great assistance to a hacker. This problem is overcome by storing such free text in encrypted form, using an encryption algorithm resident on the client.
  • the client application first prompts the user to enter his or her login name and password, and sends a login message to the database application.
  • the database application receives this message, it authenticates the user.
  • Techniques for authentication of users are well known, and so will not be described in any further detail.
  • the database application searches the User table, to find the record that matches the user's login name. From this record, the database application obtains the user's primary key.
  • the client application then encrypts the user's primary key, using the appropriate nr_PID (34 for example) as a parameter, to generate a user PID value for accessing the CarePeriod table.
  • the PID is sent to the database application.
  • the database application searches the CarePeriod table, to find all rows containing this PID. This identifies all the patients currently in the care of this particular user.
  • the database application uses the patient keys from these rows to access the corresponding rows of the Patient table.
  • the patients' personal details are read from the Patient table, and are returned to the client application, where they are displayed to the user.
  • This section describes the operation of the system when a user wishes to obtain details of a particular patient's medication. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above.
  • the client application encrypts the patient's primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table.
  • the patient PID is sent to the database application.
  • the database application searches the Registration table to find the row that contains this patient PID value. It then uses the Registration key from this row to access the corresponding row in the Medication table. The medication record of the patient is then read from this row, and is returned to the client application, for displaying to the user.
  • This section describes the operation of the system when a user wishes to obtain details of a patient's appointments with a particular doctor. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above.
  • the user primary key for the doctor is first read from a look-up table into the client application.
  • the client application then encrypts the patient primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table.
  • the client application also encrypts the user primary key, using the appropriate nr_PID (23 for example) as a parameter, so as to generate a user PID value for accessing the Registration table.
  • the calculated PID values are sent to the database application.
  • the database application searches the Registration table, to find a row containing both of these PID values. It then uses the Registration primary key from this row to access the corresponding row in the Appointments table. Details of the appointment are then read from this row, and returned to the client application, for displaying to the user.
  • This section describes the operation of the system when a user wishes to view a free-text note relating to a particular patient. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above.
  • the client application first encrypts the patient primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table.
  • the PID is sent to the database application.
  • the database application searches the Registration table, to find the row that contains this patient PID value. It then uses the Registration primary key from this row to access the corresponding row in the PatientNote table. This row contains the (encrypted) free-form text notes relating to the patient, and is returned to the client application. The client application then decrypts the notes, and displays them to the user.
  • the user can also update the text, or create new text, using a conventional word processor.
  • the client application encrypts this text, and sends it to the database application, for writing into the PatientNote table.
  • all traffic over the network 12 is encrypted, to protect it against eavesdropping. It should be noted that this encryption is additional to the encryption processes described above. Encryption techniques for networks are well known, and so will not be described in any further detail in this specification.
  • the login procedure may be enhanced with some sort of software for user authentication. This process will involve an extra database server. It is envisaged that the authentication process will, on a positive authentication, return the encryption key or keys to be used by the client application to calculate the required PIDs.

Abstract

A secure database system comprises a server having a database including at least one personal information table and at least one further table containing information relating to the persons whose details are stored in the personal information table. The keys of the tables in the database are unrelated, so that it is impossible to determine solely from information in the server which record in the further table corresponds to which record in the personal information table. Thus, even if a hacker obtains access to the database, the hacker will not be able to relate information in the different tables. Each legitimate client uses an encryption process to convert a personal identifier value, which identifies the record relating to a particular person in the personal information table, into a pseudo-identifier value, which identifies a record relating to the same person in the further table.

Description

    BACKGROUND OF THE INVENTION
  • This invention relates to secure databases. [0001]
  • Many countries have legislation for controlling the way in which personal data may be stored and used on computer systems. For example, the Dutch Personal Data Registration Act (“Wet Persoonsregistraties”) demands (among other things) that the database must be secured against hackers who have succeeded in getting unauthorised access to the database despite all security applied to it. However, it has been found that conventional database systems do not satisfy this requirement. For example, in conventional hospital information systems, if a hacker gains access to a medical history record, the hacker can obtain the patient's key from this record and use this key to access any other records containing information about the same patient, such as the patient's name and address. [0002]
  • The object of the present invention is to provide a way of overcoming this problem. [0003]
  • SUMMARY OF THE INVENTION
  • According to the invention a computer system comprises: [0004]
  • (a) a server having a database including at least one personal information table and at least one further table containing information relating to persons whose details are stored in the personal information table; and [0005]
  • (b) a plurality of clients, for accessing said database; [0006]
  • (c) said tables in said database having keys that are unrelated to each other, whereby it is impossible to determine solely from information in the server which record in said further table corresponds to which record in said personal information table; and [0007]
  • (d) each client including an encryption process for converting a personal identifier value, which identifies a record relating to a particular person in said personal information table, into a pseudo-identifier value, which identifies a record relating to the same person in said further table. [0008]
  • It can be seen that, even if a hacker obtains access to the database, the hacker will not be able to relate information in the different tables. In a hospital information system for example, if a hacker obtains access to a medical history record, the hacker cannot relate this record to a particular patient.[0009]
  • BRIEF DESCRIPTION OF THE DRAWING
  • FIG. 1 is a block diagram showing a computer system incorporating a secure database. [0010]
  • FIG. 2 shows a skeleton model of the database.[0011]
  • DESCRIPTION OF AN EMBODIMENT OF THE INVENTION
  • One embodiment of the invention will now be described by way of example with reference to the accompanying drawings. This consists of a hospital records system which stores information about patients and their treatments, and which can only be accessed by authorised users, such as doctors, nurses and administrators. However, it will be appreciated that the invention can also be used in other applications where there is a need to protect personal data. For example, the invention could also be used in an insurance company database for storing personal data about customers and details about their claims. [0012]
  • Overall view of the system [0013]
  • Referring to FIG. 1, this shows a distributed computer system comprising a [0014] server 10 and a number of clients 11, interconnected by a network 12. The server is a central hospital computer, and the clients are personal computers (PCs), located on individual users' desks. The server 10 runs a database application 13, which may be any database system; for example, it may be an Oracle database. Each client 11 runs a client application 14, which enables an authorised user to communicate with the database, and to access data from it.
  • Referring to FIG. 2, the [0015] database 13 holds a number of tables. Each of these tables has a primary key (indicated by “pk”), which uniquely identifies each record in the table. This primary key is a numeric figure, starting with 1 (one) for the first record written in the table and incremented by 1 (one) for each subsequent record inserted into that table. Some of the tables also include foreign keys (indicated by “fk”), which identify connections between the tables.
  • There are two groups of tables. The first group contains personal data about patients and users, and the data defining the periods of care. Only the data in this group is required in order to establish if a user is allowed to access the records for a particular patient. This group comprises the following tables: [0016]
  • Patient Personal, non-medical data about individual patients, such as the patient's name, address and telephone number. [0017]
  • User Information about authorised users of the system. [0018]
  • The information includes such things as name, login name, and doctor's specialism. [0019]
  • CarePeriod Information about which users are currently responsible for the care of individual patients. [0020]
  • The second group of tables holds medical data. It consists of a large number of tables, each of which holds one and only one group of facts. Some examples of tables in this second group are as follows: [0021]
  • Registration Information about registration of individual patients. There is one row in this table for each patient currently under active care. [0022]
  • Appointment Information about appointments that have been arranged for individual patients. [0023]
  • Medication Information about medication that has been prescribed for individual patients. [0024]
  • PatientNote Free-text medical notes on individual patients. [0025]
  • Each of the tables in this second group has a primary key which is in no way related to the primary keys of the patient or user. Therefore, even if a hacker manages to obtain access to one of these tables, it is not possible for the hacker to relate the medical data to a particular patient or user. [0026]
  • To enable authorised users to relate the information in this second group of tables to the patients or users, the system uses so-called pseudo-identifiers (PIDs). The PIDs are stored in extra columns of the tables. The PID values are calculated from the patients' and users' primary keys, using a cryptographic algorithm. The cryptographic algorithm is available only on the clients; the algorithm is not recorded in the database, and so cannot be discovered by a hacker who gains access to the server. The algorithm uses a master encryption key, which is different for each hospital. [0027]
  • The PID values are calculated using a different encryption protocol for each PID in each table. This is achieved by assigning a unique identifier number nr_PID to each PID in each table, and using this number as an input parameter for the cryptographic algorithm. In other words, the encryption algorithm for a particular PID uses the following three parameters: [0028]
  • the primary key being encrypted, [0029]
  • the hospital's master encryption key, [0030]
  • the unique identifier number nr_PID for the PID. [0031]
  • Thus, it is guaranteed that records relating to the same patient have different PID values in different tables, and records with the same PID in different tables do not relate to the same patient. [0032]
  • For example, in the database of FIG. 2, unique identifier numbers nr_PID may be assigned to the PIDs as follows: [0033]
    Table PID nr PID
    CarePeriod User 34
    Registration Patient 47
    Registration User 23
    Appointment User 127
    Medication User 18
    PatientNote User 5
  • Free-text columns in the database, such as in the PatientNote table, present a particular problem, since a user is free to put any text in these columns, and may therefore include the patient's name. This would be of great assistance to a hacker. This problem is overcome by storing such free text in encrypted form, using an encryption algorithm resident on the client. [0034]
  • Login [0035]
  • This section describes the operation of the system when a user logs in. [0036]
  • The client application first prompts the user to enter his or her login name and password, and sends a login message to the database application. When the database application receives this message, it authenticates the user. Techniques for authentication of users are well known, and so will not be described in any further detail. [0037]
  • Assuming that the user has been correctly authenticated, the database application then searches the User table, to find the record that matches the user's login name. From this record, the database application obtains the user's primary key. [0038]
  • The client application then encrypts the user's primary key, using the appropriate nr_PID (34 for example) as a parameter, to generate a user PID value for accessing the CarePeriod table. The PID is sent to the database application. [0039]
  • The database application then searches the CarePeriod table, to find all rows containing this PID. This identifies all the patients currently in the care of this particular user. The database application then uses the patient keys from these rows to access the corresponding rows of the Patient table. The patients' personal details are read from the Patient table, and are returned to the client application, where they are displayed to the user. [0040]
  • Medication table [0041]
  • This section describes the operation of the system when a user wishes to obtain details of a particular patient's medication. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above. [0042]
  • The client application encrypts the patient's primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table. The patient PID is sent to the database application. [0043]
  • The database application searches the Registration table to find the row that contains this patient PID value. It then uses the Registration key from this row to access the corresponding row in the Medication table. The medication record of the patient is then read from this row, and is returned to the client application, for displaying to the user. [0044]
  • Appointment table [0045]
  • This section describes the operation of the system when a user wishes to obtain details of a patient's appointments with a particular doctor. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above. [0046]
  • The user primary key for the doctor is first read from a look-up table into the client application. [0047]
  • The client application then encrypts the patient primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table. The client application also encrypts the user primary key, using the appropriate nr_PID (23 for example) as a parameter, so as to generate a user PID value for accessing the Registration table. The calculated PID values are sent to the database application. [0048]
  • The database application then searches the Registration table, to find a row containing both of these PID values. It then uses the Registration primary key from this row to access the corresponding row in the Appointments table. Details of the appointment are then read from this row, and returned to the client application, for displaying to the user. [0049]
  • PatientNote table [0050]
  • This section describes the operation of the system when a user wishes to view a free-text note relating to a particular patient. It is assumed that the user has logged in to the system and has obtained the patient's primary key as described above. [0051]
  • The client application first encrypts the patient primary key, using the appropriate nr_PID (47 for example) as a parameter, so as to generate a patient PID value for accessing the Registration table. The PID is sent to the database application. [0052]
  • The database application then searches the Registration table, to find the row that contains this patient PID value. It then uses the Registration primary key from this row to access the corresponding row in the PatientNote table. This row contains the (encrypted) free-form text notes relating to the patient, and is returned to the client application. The client application then decrypts the notes, and displays them to the user. [0053]
  • The user can also update the text, or create new text, using a conventional word processor. The client application encrypts this text, and sends it to the database application, for writing into the PatientNote table. [0054]
  • Network encryption [0055]
  • Preferably, all traffic over the [0056] network 12 is encrypted, to protect it against eavesdropping. It should be noted that this encryption is additional to the encryption processes described above. Encryption techniques for networks are well known, and so will not be described in any further detail in this specification.
  • Some possible modifications [0057]
  • It will be appreciated that many modifications may be made to the system described above without departing from the scope of the present invention. For example, instead of using the same encryption algorithm for all the tables, a different encryption algorithm may be used for each table. [0058]
  • The login procedure may be enhanced with some sort of software for user authentication. This process will involve an extra database server. It is envisaged that the authentication process will, on a positive authentication, return the encryption key or keys to be used by the client application to calculate the required PIDs. [0059]

Claims (10)

1. A computer system comprising:
(a) a server having a database including at least one personal information table and at least one further table containing information relating to persons whose details are stored in the personal information table; and
(b) a plurality of clients, for accessing said database;
(c) said tables in said database having keys that are unrelated to each other, whereby it is impossible to determine solely from information in the server which record in said further table corresponds to which record in said personal information table; and
(d) each client including an encryption process for converting a personal identifier value, which identifies a record relating to a particular person in said personal information table, into a pseudo-identifier value, which identifies a record relating to the same person in said further table.
2. A computer system according to
claim 1
wherein said encryption process uses a different encryption protocol for each said pseudo-identifier value.
3. A computer system according to
claim 2
wherein the encryption process uses the following parameters:
the personal identifier value being encrypted,
an encryption key, and
a unique identifier number for the pseudo-identifier.
4. A computer system according to
claim 1
wherein the database includes at least one free text table containing free text information, and wherein said client includes means for encrypting text before writing it into said free text table and for decrypting text when read from said free text table.
5. A computer system according to
claim 1
including means for encrypting information while in transit between said client and said server.
6. A method of securely storing data in a database, comprising:
(a) storing in a server a database including at least one personal information table and at least one further table containing information relating to persons whose details are stored in the personal information table;
(b) providing said tables with keys that are unrelated to each other, whereby it is impossible to determine solely from information in the server which record in said further table corresponds to which record in said personal information table;
(c) operating a plurality of clients to access said database; and
(d) performing, in each said client, an encryption process which converts a personal identifier value, identifying a record relating to a particular person in said personal information table, into a pseudo-identifier value, which identifies a record relating to the same person in said further table.
7. A method according to
claim 6
wherein a different encryption protocol is used for each said pseudo-identifier value.
8. A method according to
claim 7
wherein said encryption process uses the following parameters:
the personal identifier value being encrypted,
an encryption key, and
a unique identifier number for the pseudo-identifier.
9. A method according to
claim 6
wherein said database includes at least one free text table containing free text information, and wherein each said client encrypts text before writing it into said free text table and decrypts text when read from said free text table.
10. A method according to
claim 6
wherein information is encrypted while in transit between said client and said server.
US09/079,117 1997-06-14 1998-05-14 Secure database system Expired - Lifetime US6360324B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB9712459.8A GB9712459D0 (en) 1997-06-14 1997-06-14 Secure database system
GB9712459.8 1997-06-14
GB9712459 1997-06-14

Publications (2)

Publication Number Publication Date
US20010054142A1 true US20010054142A1 (en) 2001-12-20
US6360324B2 US6360324B2 (en) 2002-03-19

Family

ID=10814200

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/079,117 Expired - Lifetime US6360324B2 (en) 1997-06-14 1998-05-14 Secure database system

Country Status (4)

Country Link
US (1) US6360324B2 (en)
EP (1) EP0884670B1 (en)
DE (1) DE69804539T2 (en)
GB (1) GB9712459D0 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055824A1 (en) * 2001-09-19 2003-03-20 Andrea Califano Distributed personalized genetic safe
US20090070434A1 (en) * 1999-07-15 2009-03-12 Himmelstein Richard B System and method for efficiently accessing internet resources
US20090300140A1 (en) * 1999-07-15 2009-12-03 Himmelstein Richard B System and Method for Efficiently Accessing Internet Resources
US20100251354A1 (en) * 2009-03-24 2010-09-30 Kyocera Mita Corporation Image forming apparatus and image forming system
US20130246813A1 (en) * 2011-11-11 2013-09-19 Nec Corporation Database encryption system, method, and program
US20140372320A1 (en) * 2013-06-17 2014-12-18 Sivanne Goldfarb Systems and methods for emv chip and pin payments
US10284535B2 (en) * 2016-12-13 2019-05-07 Chronicle Llc Secure database
US20190392059A1 (en) * 2018-06-22 2019-12-26 Rubrik Inc. Data discovery in relational databases

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU3477500A (en) * 1999-02-02 2000-09-04 Smithkline Beecham Corporation Apparatus and method for depersonalizing information
US6654724B1 (en) * 1999-02-12 2003-11-25 Adheris, Inc. System for processing pharmaceutical data while maintaining patient confidentially
GB9920644D0 (en) * 1999-09-02 1999-11-03 Medical Data Service Gmbh Novel method
AU7596500A (en) 1999-09-20 2001-04-24 Quintiles Transnational Corporation System and method for analyzing de-identified health care data
US7093137B1 (en) * 1999-09-30 2006-08-15 Casio Computer Co., Ltd. Database management apparatus and encrypting/decrypting system
JP2003511760A (en) * 1999-10-01 2003-03-25 グラクソ グループ リミテッド Patient data monitoring system
US6449621B1 (en) 1999-11-03 2002-09-10 Ford Global Technologies, Inc. Privacy data escrow system and method
US6397224B1 (en) * 1999-12-10 2002-05-28 Gordon W. Romney Anonymously linking a plurality of data records
GB2366051B (en) * 2000-05-02 2005-01-05 Ibm Method, system and program product for private data access or use based on related public data
US6874085B1 (en) * 2000-05-15 2005-03-29 Imedica Corp. Medical records data security system
GB2376108A (en) * 2000-09-04 2002-12-04 Enigma Health Uk Ltd Improvements relating to information management systems
US20030021417A1 (en) 2000-10-20 2003-01-30 Ognjen Vasic Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US7362868B2 (en) * 2000-10-20 2008-04-22 Eruces, Inc. Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
DE10105206B4 (en) * 2001-01-30 2011-12-15 UNISERV GmbH für Unternehmensberatung, Softwareentwicklung und Datenverarbeitung Data processing system and method for managing data bases of a user organized in at least one database
US6795554B2 (en) * 2001-04-05 2004-09-21 Inner Vision Imaging, Llc Method of transmitting medical information over a network
US20030033168A1 (en) * 2001-04-13 2003-02-13 Andrea Califano Methods and systems for managing informed consent processes
US20030039362A1 (en) * 2001-08-24 2003-02-27 Andrea Califano Methods for indexing and storing genetic data
FI20020808A (en) * 2002-04-29 2003-10-30 Mediweb Oy Saving sensitive data
GB0216831D0 (en) 2002-07-19 2002-08-28 Glaxo Group Ltd Medicament dispenser
US7958144B2 (en) 2002-08-30 2011-06-07 Boss Logic, Llc System and method for secure reciprocal exchange of data
GB0222896D0 (en) * 2002-10-03 2002-11-13 Avoca Systems Ltd Method of and apparatus for transferring data
FI116170B (en) * 2003-04-11 2005-09-30 Jouko Kronholm Method of conveying return information from a feedback system, as well as data transmission system
JP2008501175A (en) * 2004-05-28 2008-01-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Method and apparatus for querying protected structured data
US7681042B2 (en) 2004-06-17 2010-03-16 Eruces, Inc. System and method for dis-identifying sensitive information and associated records
US7797342B2 (en) * 2004-09-03 2010-09-14 Sybase, Inc. Database system providing encrypted column support for applications
US7743069B2 (en) * 2004-09-03 2010-06-22 Sybase, Inc. Database system providing SQL extensions for automated encryption and decryption of column data
KR100639993B1 (en) 2004-12-07 2006-10-31 한국전자통신연구원 Method and system for updating of user identifier
WO2006062289A1 (en) * 2004-12-07 2006-06-15 Electronics And Telecommunications Research Institute System and method for updating user identifiers (ids)
FR2881248A1 (en) * 2005-01-26 2006-07-28 France Telecom Personal medical data management system for insured patient, has computing subsystem with units to generate common key from identification data of person, and another subsystem with database associating sensitive personal data to key
SE0500541L (en) * 2005-03-08 2006-09-09 Inator Kb Authorization system and method
WO2006111205A1 (en) * 2005-04-22 2006-10-26 Daon Holdings Limited A system and method for protecting the privacy and security of stored biometric data
US7522751B2 (en) 2005-04-22 2009-04-21 Daon Holdings Limited System and method for protecting the privacy and security of stored biometric data
US8135948B2 (en) * 2006-01-27 2012-03-13 Imperva, Inc. Method and system for transparently encrypting sensitive information
US7761384B2 (en) * 2006-03-16 2010-07-20 Sushil Madhogarhia Strategy-driven methodology for reducing identity theft
US8380631B2 (en) 2006-07-19 2013-02-19 Mvisum, Inc. Communication of emergency medical data over a vulnerable system
US8396804B1 (en) 2006-07-19 2013-03-12 Mvisum, Inc. System for remote review of clinical data
US7974924B2 (en) * 2006-07-19 2011-07-05 Mvisum, Inc. Medical data encryption for communication over a vulnerable system
US9355273B2 (en) 2006-12-18 2016-05-31 Bank Of America, N.A., As Collateral Agent System and method for the protection and de-identification of health care data
US9158933B2 (en) * 2007-08-17 2015-10-13 Sybase, Inc. Protection of encryption keys in a database
JP4640410B2 (en) * 2007-12-25 2011-03-02 カシオ計算機株式会社 Database management apparatus and recording medium
US7522723B1 (en) * 2008-05-29 2009-04-21 Cheman Shaik Password self encryption method and system and encryption by keys generated from personal secret information
EP2166484A1 (en) * 2008-09-19 2010-03-24 SCP Asclépios Method of accessing personal information, such as a personalised medical record, using a local generation agent
US9367684B2 (en) 2011-12-15 2016-06-14 Realsource, Inc. Data security seeding system
US8213589B1 (en) 2011-12-15 2012-07-03 Protect My Database, Inc. Data security seeding system
CN108319862B (en) * 2017-01-16 2022-05-17 阿里云计算有限公司 Data file processing method and device
US10842897B2 (en) 2017-01-20 2020-11-24 Éclair Medical Systems, Inc. Disinfecting articles with ozone
US20200356559A1 (en) 2019-05-08 2020-11-12 Datameer, Inc. Query Combination In A Hybrid Multi-Cloud Database Environment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191611A (en) * 1989-04-03 1993-03-02 Lang Gerald S Method and apparatus for protecting material on storage media and for transferring material on storage media to various recipients
US5163097A (en) * 1991-08-07 1992-11-10 Dynamicserve, Ltd. Method and apparatus for providing secure access to a limited access system
SE9303984L (en) * 1993-11-30 1994-11-21 Anonymity Prot In Sweden Ab Device and method for storing data information
US6029160A (en) * 1995-05-24 2000-02-22 International Business Machines Corporation Method and means for linking a database system with a system for filing data
US5956400A (en) * 1996-07-19 1999-09-21 Digicash Incorporated Partitioned information storage systems with controlled retrieval
CA2261262C (en) * 1996-07-22 2007-08-21 Cyva Research Corporation Personal information security and exchange tool
US5924094A (en) * 1996-11-01 1999-07-13 Current Network Technologies Corporation Independent distributed database system

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9607041B2 (en) * 1999-07-15 2017-03-28 Gula Consulting Limited Liability Company System and method for efficiently accessing internet resources
US20090070434A1 (en) * 1999-07-15 2009-03-12 Himmelstein Richard B System and method for efficiently accessing internet resources
US20090300140A1 (en) * 1999-07-15 2009-12-03 Himmelstein Richard B System and Method for Efficiently Accessing Internet Resources
US8645552B2 (en) 1999-07-15 2014-02-04 Axp Research Limited Liability Company System and method for efficiently accessing internet resources
US10158640B2 (en) 1999-07-15 2018-12-18 Gula Consulting Limited Liability Company System and method for efficiently accessing internet resources
US20030055824A1 (en) * 2001-09-19 2003-03-20 Andrea Califano Distributed personalized genetic safe
US20100251354A1 (en) * 2009-03-24 2010-09-30 Kyocera Mita Corporation Image forming apparatus and image forming system
US8799995B2 (en) * 2009-03-24 2014-08-05 Kyocera Document Solutions Inc. Image forming method
US20130246813A1 (en) * 2011-11-11 2013-09-19 Nec Corporation Database encryption system, method, and program
US20150006908A1 (en) * 2011-11-11 2015-01-01 Nec Corporation Database encryption system, method, and program
US9349023B2 (en) * 2011-11-11 2016-05-24 Nec Corporation Database encryption system, method, and program
US8812877B2 (en) * 2011-11-11 2014-08-19 Nec Corporation Database encryption system, method, and program
US20140372320A1 (en) * 2013-06-17 2014-12-18 Sivanne Goldfarb Systems and methods for emv chip and pin payments
US10535066B2 (en) * 2013-06-17 2020-01-14 Paypal, Inc. Systems and methods for securing pins during EMV chip and pin payments
US10284535B2 (en) * 2016-12-13 2019-05-07 Chronicle Llc Secure database
US20190392059A1 (en) * 2018-06-22 2019-12-26 Rubrik Inc. Data discovery in relational databases
US11314713B2 (en) * 2018-06-22 2022-04-26 Rubrik, Inc. Data discovery in relational databases
US11762833B2 (en) 2018-06-22 2023-09-19 Rubrik, Inc. Data discovery of personal data in relational databases

Also Published As

Publication number Publication date
DE69804539D1 (en) 2002-05-08
GB9712459D0 (en) 1997-08-20
EP0884670B1 (en) 2002-04-03
US6360324B2 (en) 2002-03-19
EP0884670A1 (en) 1998-12-16
DE69804539T2 (en) 2002-09-26

Similar Documents

Publication Publication Date Title
US6360324B2 (en) Secure database system
US6131090A (en) Method and system for providing controlled access to information stored on a portable recording medium
US6336121B1 (en) Method and apparatus for securing and accessing data elements within a database
US20030039362A1 (en) Methods for indexing and storing genetic data
US6789195B1 (en) Secure data processing method
US7392536B2 (en) System and method for unified sign-on
CN1175358C (en) Secure database manugement system for confidential records
US7362868B2 (en) Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
TWI388183B (en) System and method for dis-identifying sensitive information and associated records
EP2731043B1 (en) Computer system for storing and retrieval of encrypted data items, client computer, computer program product and computer-implemented method
US5734718A (en) NIS+ password update protocol
US20200259637A1 (en) Management and distribution of keys in distributed environments
CA2345688A1 (en) Automatic recovery of forgotten passwords
WO1997042732A1 (en) A method for providing a secure non-reusable one-time password
JP2005505863A (en) Data processing system for patient data
CN105005719A (en) Secure data parser method and system
US8352999B1 (en) Method for managing data in a shared computing environment
US20070118733A1 (en) Secure synchronization and sharing of secrets
US20070180259A1 (en) Secure Personal Medical Process
WO2012092172A1 (en) Tokenization of multiple-field records
US11405200B1 (en) Multilevel split keys for wallet recovery
JP2003527035A (en) Automatic identification protection system with remote third party monitoring
US20020147917A1 (en) Distribution of secured information
JPH10111897A (en) Clinical consultation information sharing method
JP2002111659A (en) File encryption system, file encryption program and storage medium having recorded data

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL COMPUTERS LIMITED, ENGLAND

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:VAN BLARKOM, GILLES WILLEM;REEL/FRAME:009345/0986

Effective date: 19980626

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12