=-=-=-=-=-=-=-=-=
PSCP README
=-=-=-=-=-=-=-=-=
PSCP is a user friendly GUI application for protecting SCP-ECG files
by means of cryptography and accesing protected .pscp files.
Protected SCP-ECG files can be stored and exchanged through non-secure
channels with maximum guarantees of security and confidentiality.
Getting up and running with PSCP is quick and easy. Everything you need
to know is detailed below. Being written in Java, PSCP will run on
any machine that has a suitable Java runtime environment installed. Note
that a prerequisite is that you must have Java SE 6 or later on your
machine. The latest version of the Java SE is available from
http://java.sun.com/.
PSCP can be downloaded from http://pscp.sourceforge.net/
1 Installing
------------
The default binary distribution of PSCP contains everything you'll
need to run PSCP with Java SE 6 or later (except Java SE itself,
see above). The easiest way to install it is to unzip the PSCP
binary distribution to a directory somewhere on your filesystem.
The binary distribution contains the PSCP jar file (classes.jar)
as well as Bouncy Castle provider jar (lib/bcprov.jar) for Java SE 6.
If you wish to run PSCP with a later Java version, or update the
bundled Bouncy Castle provider for some other reason, simply download
an update for your version of Java from http://www.bouncycastle.org/
and place it into same directory /lib within the PSCP folder with
the name bcprov.jar, overwriting the existing one already there
(if any).
Depending on your PSCP usage patterns, the Bouncy Castle provider
may require the JCE unlimited strength jurisdiction policy files
installed to function properly, which is included in the package.
See "IMPORTANT NOTES" at http://www.bouncycastle.org/documentation.html.
Failures related to lack of these policy files usually manifest
themselves as errors, typically: java.lang.SecurityException:
Unsupported keysize or algorithm parameters at javax.crypto.Cipher.
init(DashoA6275), or similar.
The default way of running PSCP is using PSCP.bat (Windows) or
PSCP.sh (Linux), which execute the "java -jar" method. The Class-Path
defined in classes.jar's MANIFEST.MF will be used to locate all classes.
2 Usage
----------
The program offers three use possibilities:
- Protect a regular SCP-ECG file (sections above 11 will be removed).
- Protect an already protected SCP-ECG file (under storage profile).
- Unprotect a protected SCP-ECG file.
The user protecting a file chooses the access profile for the receiver
according to his related activity: teaching/research, examination,
diagnosis or storage;
and also two other important parameters:
- the ciphering algorithm: AES (recommended), Twofish, RC6, Blowfish
or 3DES; and
- the hash function: SHA1, SHA2 224, SHA2 256, SHA2 384, SHA2 512
(recommended), MD5, RIPEMD 160 or RIPEMD 256.
After protecting a SCP-ECG file, a Protected SCP-ECG (.pscp) file is created,
whose confidential parts can only be retrieved by the intended receiver.
The data obtained after deciphering a pscp file is fully equal to the
original (except for the teaching profile, since the confidential sections
were removed).
The authenticity and integrity of the files are checked by means of digital
signatures and the granted accesses to a SCP-ECG are listed in the Secure
Access Record.
The digital certificates and the corresponding keys files (recommended to
be password protected) must be provided by the users as a PEM file to
improve storage efficiency.
The steps of the process, results, warning and error messages are displayed
in the different fields of the GUI to help the user during the process.
Detailed information about the profiles, the program and security policies
for the storage and access to SCP-ECG files in Protection_SCP-ECG.pdf
3 File examples
---------------
In the folder /examples there are several demo SCP-ECG files (mainly
extracted from http://www.openecg.net/), digital certificates and keys
files (generated with XCA) used to test the program performance.
4 Copyright and License
-----------------------
Copyright (C) 2011 Oscar J. Rubio Martin
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
5 Contact
---------
For contact information, mailing lists and issue tracking facilities,
see PSCP's SourceForge.net project page at
https://sourceforge.net/projects/pscp