Detecting tampering
About this topic
This topic describes the tamper detection feature that is available in VWorks Plus.
About tamper detection
Tamper detection verifies the data integrity of records of interest. The feature detects corrupted records and records that have been modified outside of the VWorks software.
Examples of tampering include:
Deleting any file from a record of interest archive (.roiZip) in Secure Storaget.
Note: All records of interest are stored in an .roiZip archive that includes the audit trail file and a checksum file.
Modifying parameter values in any file outside of the VWorks software.
Changing the structure of an .xml file, such as removing any closing or opening XML tag.
If the software detects tampering, an error message advises you that the file cannot be loaded and to contact the VWorks administrator to try to recover the file. In this case, the VWorks administrator can restore a backup copy or use the Content Browser to recover a previous version of the record. For details, see Configuration and administration guides.
When does tamper detection occur 
The VWorks software performs tamper detection for the following actions:
 
Action
Description
Starting the VWorks software and logging in
Checks the VWorks Options.xml file for tampering as well as any files referenced in VWorks Options, for example ErrorLibrary.elb or MacroLibrary.mlb files. For details, see Tamper detection responses when opening a record of interest.
Using the Tamper Detection command
Checks the records of interest stored in the Secure Storaget Repository to verify the data integrity. For details, see Running the Tamper Detection command.
Note: Depending on the number of records to be checked, this operation can take a long time.
Opening a record of interest
Checks the record for data integrity before opening the file. For details, see Tamper detection responses when opening a record of interest.
Performing a protocol run
Checks the protocol when the protocol is compiled.
During a run, tamper detection occurs at the point in the run when a task parameter value is set by a script or variable and the task actually executes.
Importing a VWorks protocol archive (.vzp file)
Checks the .vzp archive contents if the .vzp was created in VWorks version 14 or later.
Importing or restoring experiments in the Experiments Editor
Checks an experiment file that was archived or exported before allowing you to restore or import the file.
Importing an Inventory database file (.sql)
Checks the file that was exported before allowing you to import the file.
Using VWorks Backup and Restore (.vbk file)
Checks the selected files during:
Backup. An error message lists any corrupted records and provides the option to continue the backup for clean records only.
Restore. A Restore operation cannot proceed if the backup (.vbk file) is corrupted or has been tampered.
Generating an audit trail report
Checks the selected record of interest, and generates the audit trail report if the record has not been corrupted or tampered.
Tamper detection responses when opening a record of interest 
When you open a record of interest, the software checks the given record for data integrity before loading it. If a record is corrupted or has been tampered, the response can vary depending on the file, as the following table shows. To resolve the problem, an administrator can use the Content Browser to restore a previous, clean version of a record.
 
Type of record
VWorks response if record is corrupted or has been tampered
A single record of interest, for example, a device file or labware entry
A message states that the file has been corrupted or modified outside of the VWorks software and cannot be loaded.
A record of interest that references or contains other records
The software response depends on the record type, for example:
Runset that includes a corrupted protocol. A message lists the corrupted record and states that the runset cannot be loaded.
Protocol that references a corrupted record. A message lists the corrupted record and states that the record cannot be loaded.
Form that references a corrupted record. The form loads successfully, but the corrupted record (for example, protocol, device file, or runset) cannot be loaded.
Labware class that contains a corrupted labware entry. The labware class loads successfully, but the corrupted labware entry cannot be loaded.
VWorks Options.xml file (Options dialog box)
The software response depends on the issue:
If the VWorksOptions.xml file is corrupted or tampered, an error message states that the VWorks software must close. In this case, an administrator can use the Content Browser to restore a clean backup copy of the file or a previous version of the file.
If a file referenced by VWorks Options, such as the error library or macro library, is corrupted or missing an error message states that the file cannot be loaded.
Administrator. You may select a different error library file or right-click the file path, and click Clear field contents in the shortcut menu.
Non-administrators. The VWorks software closes, and you must contact the administrator for assistance.
If the VWorks Options.xml file is missing, a error message opens and advises that the software will load the default values for VWorks Options.
An administrator can click Tools > Options, and then verify the settings in the Options dialog box.
For details on setting the global options,
Error library or macro library
A message states that the file has been corrupted or modified outside of the VWorks software and cannot be loaded.
 
*The software cannot perform tamper detection on the contents of a .vbk or .vzp archive that was generated by earlier versions of the VWorks software.
 
Running the Tamper Detection command 
The Tamper Detection command runs a check of all the records that are present in the Secure Storaget Repository under the file path:
/VWorks Projects/VWorks
 
*Depending on the number of records to be checked, this operation can take a long time.
 
To run tamper detection:
In the VWorks window, click Tools >Tamper Detection.
If tampering is detected, an error message displays a list of the problem records.
An administrator can restore clean versions of the corrupted records if a clean backup archive exists.
If no tampering is detected, a message states that all the records are clean.
About restoring records  
An administrator can restore records in the following ways:
Rollback the version of a selected record to a previous clean version in the Content Browser.
Restore records from a clean backup copy.
Related information
 
For information about...
See...
Compliance features
Audit trails
Record states
Content Browser and restoring records