Elexis: Das führende OpenSource-Arztpraxisprogamm
im deutschsprachigen Raum
Java doc für Elexis version 2.1.7.dev vom 01.09.2013

ch.rgw.crypt
Interface Cryptologist

All Known Implementing Classes:
GnuPG, JCECrypter

public interface Cryptologist

A Cryptologist knows how to create keys and certificates, and encrypt, decrypt, sign and verify byte arrays.


Nested Class Summary
static class Cryptologist.VERIFY_RESULT
           
 
Method Summary
 boolean addCertificate(byte[] certEncoded)
           
 boolean addCertificate(java.security.cert.X509Certificate cert)
           
 Result<byte[]> decrypt(byte[] encrypted)
          decrypt a byte array
 void decrypt(java.io.InputStream source, java.io.OutputStream dest)
           
 byte[] encrypt(byte[] source, java.lang.String receiverKeyName)
          encrypt a byte array
 void encrypt(java.io.InputStream source, java.io.OutputStream dest, java.lang.String receiverKeyName)
           
 java.security.cert.X509Certificate generateCertificate(java.security.PublicKey pk, java.lang.String alias, TimeTool validFrom, TimeTool validUntil)
           
 java.security.KeyPair generateKeys(java.lang.String alias, char[] pwd, TimeTool validFrom, TimeTool validUntil)
           
 java.security.cert.X509Certificate getCertificate(java.lang.String alias)
           
 byte[] getCertificateEncoded(java.lang.String alias)
           
 java.lang.String getUser()
           
 boolean hasCertificateOf(java.lang.String alias)
           
 boolean hasKeyOf(java.lang.String alias)
           
 boolean isFunctional()
           
 boolean removeCertificate(java.lang.String alias)
           
 byte[] sign(byte[] source)
          Sign a byte array (create and sign a MAC)
 Cryptologist.VERIFY_RESULT verify(byte[] data, byte[] signature, java.lang.String signerKeyName)
          Verify a MAC
 

Method Detail

encrypt

byte[] encrypt(byte[] source,
               java.lang.String receiverKeyName)
encrypt a byte array

Parameters:
source - the plain bytes
receiverKeyName - name of the receiver's public key
Returns:
the encrypted bytes or null if encryption failed

encrypt

void encrypt(java.io.InputStream source,
             java.io.OutputStream dest,
             java.lang.String receiverKeyName)
             throws CryptologistException
Throws:
CryptologistException

sign

byte[] sign(byte[] source)
Sign a byte array (create and sign a MAC)

Parameters:
source - the bytes to sign
Returns:
the signature

decrypt

Result<byte[]> decrypt(byte[] encrypted)
decrypt a byte array

Parameters:
encrypted - the encrypted bytes
Returns:
the plain array or null of decryption failed

decrypt

void decrypt(java.io.InputStream source,
             java.io.OutputStream dest)
             throws CryptologistException
Throws:
CryptologistException

verify

Cryptologist.VERIFY_RESULT verify(byte[] data,
                                  byte[] signature,
                                  java.lang.String signerKeyName)
Verify a MAC

Parameters:
data - the signed data
signature - the signed digest
signerKeyName - name of the signer's public key
Returns:

hasCertificateOf

boolean hasCertificateOf(java.lang.String alias)

hasKeyOf

boolean hasKeyOf(java.lang.String alias)

addCertificate

boolean addCertificate(java.security.cert.X509Certificate cert)

addCertificate

boolean addCertificate(byte[] certEncoded)

removeCertificate

boolean removeCertificate(java.lang.String alias)

generateKeys

java.security.KeyPair generateKeys(java.lang.String alias,
                                   char[] pwd,
                                   TimeTool validFrom,
                                   TimeTool validUntil)

getCertificate

java.security.cert.X509Certificate getCertificate(java.lang.String alias)

generateCertificate

java.security.cert.X509Certificate generateCertificate(java.security.PublicKey pk,
                                                       java.lang.String alias,
                                                       TimeTool validFrom,
                                                       TimeTool validUntil)

getUser

java.lang.String getUser()

isFunctional

boolean isFunctional()

getCertificateEncoded

byte[] getCertificateEncoded(java.lang.String alias)
                             throws CryptologistException
Throws:
CryptologistException

Elexis: Das führende OpenSource-Arztpraxisprogamm
im deutschsprachigen Raum
Java doc für Elexis version 2.1.7.dev vom 01.09.2013