|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.io.OutputStream
AMETAS.cipher.CipherOutputStream
Ausgabestrom mit kryptographischer Funktionalität. Bietet kryptografische Methoden in einer Stromklasse. Alle Methoden der Superklasse sind überschrieben. Dieser Datenstrom kann einfach in eine Stromkette zwischengeschaltet werden und auch außerhalb AMETAS Einsatz finden.
Beispiel:
symCipher = SymmetricCipher.getInstance("AMETASSC");
symCipher.setKey(sMantra);
oos = new ObjectOutputStream(new CipherOutputStream(cryptedOutputStream, symCipher));
Cipher,
SymmetricCipher,
AsymmetricCipher,
AMETASSC,
RSA| Field Summary | |
static int |
DECRYPTION_MODE
Entschlüsselungsmodus. |
static int |
ENCRYPT_AT_ONCE
Modus, der bewirkt, dass die Bytemenge beim Schreiben auf Blockgröße aufgefüllt wird. |
static int |
ENCRYPTION_MODE
Verschlüsselungsmodus. |
protected byte[] |
m_abyBuffer
Dient zur Speicherung von ver- oder entschlüsselten Daten. |
boolean |
m_bDebug
Wenn true, werden Detailmeldungen ausgegeben. |
protected Cipher |
m_CipherAlg
Instanz eines symmetrischen Verschlüsselungsalgorithmus. |
protected int |
m_nBufferPointer
Zeiger auf die Stelle im Puffer m_abyBuffer. |
protected int |
m_nMode
Modus. |
protected int |
m_nWriteMode
Anzahl der Bytes, die gepuffert werden, bis sie als Block verschlüsselt werden. |
static int |
NEUTRAL_MODE
Neutraler Modus. |
| Constructor Summary | |
CipherOutputStream(java.io.OutputStream osOut,
Cipher cipher)
Konstruktor. |
|
CipherOutputStream(java.io.OutputStream osOut,
Cipher cipher,
int nMode)
Konstruktor. |
|
| Method Summary | |
void |
close()
Schließt den Strom. |
void |
flush()
Leert den Strom. |
void |
setWriteMode(int nWriteMode)
Setzen des Schreibmodus. |
void |
write(byte[] b)
Schreibt ein Bytefeld in den Strom. |
void |
write(byte[] b,
int off,
int len)
Schreibt ein Bytefeld in den Strom. |
void |
write(int b)
Schreibt ein Byte in den Strom. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected Cipher m_CipherAlg
public static final int ENCRYPTION_MODE
public static final int DECRYPTION_MODE
public static final int NEUTRAL_MODE
public static final int ENCRYPT_AT_ONCE
protected int m_nWriteMode
ENCRYPT_AT_ONCE.
protected int m_nMode
protected byte[] m_abyBuffer
protected int m_nBufferPointer
m_abyBuffer.
public boolean m_bDebug
| Constructor Detail |
public CipherOutputStream(java.io.OutputStream osOut,
Cipher cipher)
throws java.io.IOException
ENCRYPTION_MODE initialisiert.
osOut - Eigentlicher OutputStream, mit dem gearbeitet wird.cipher - Symmetrischer Verschlüsselungsalgorithmus.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
public CipherOutputStream(java.io.OutputStream osOut,
Cipher cipher,
int nMode)
throws java.io.IOException
osOut - Eigentlicher OutputStream, mit dem gearbeitet wird.cipher - Symmetrischer Verschlüsselungsalgorithmus.nMode - Modus, der folgende Werte annehmen darf:
ENCRYPTION_MODE,
DECRYPTION_MODE,
NEUTRAL_MODE.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.| Method Detail |
public void setWriteMode(int nWriteMode)
ENCRYPT_AT_ONCE
übergeben, so wird sofort verschlüsselt, andernfalls werden die verschlüsselten
Bytes in dem Strom geschrieben, falls flush aufgerufen wird oder
die Anzahl nWriteMode an zu verschlüsselden Bytes erreicht ist.
nWriteMode - ENCRYPT_AT_ONCE oder Anzahl der Bytes,
die gepuffert werden sollen, bis die Ausgabe geschieht.
public void write(int b)
throws java.io.IOException
DECRYPTION_MODE:
Erst wenn m_nBlocksizeCipher viele Bytes gepuffert sind,
kann der Block entschlüsselt werden.
ENCRYPTION_MODE:
Je nach Schreibmodus wird das Byte sofort auf Blockgröße aufgefüllt
(ENCRYPT_AT_ONCE) und verschlüsselt
in den zugrundelegenden Stream geschrieben oder
es wird in einen Puffer geschrieben, der bei Erreichen der Größe verschlüsselt wird.
NEUTRAL_MODE:
das Byte wird in den zugrunde liegenden Stream geschrieben.
b - Byte, das geschrieben werden soll.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
public void write(byte[] b)
throws java.io.IOException
DECRYPTION_MODE:
Erst wenn m_nBlocksizeCipher viele Bytes gepuffert sind,
kann der Block entschlüsselt werden. Überzählige Bytes aus dem Feld werden gepuffert.
ENCRYPTION_MODE:
Je nach Schreibmodus wird das Byte sofort auf Blockgröße aufgefüllt
(ENCRYPT_AT_ONCE) und verschlüsselt
in den zugrundelegenden Stream geschrieben oder
es wird in einen Puffer geschrieben, der bei Erreichen der Größe verschlüsselt wird.
NEUTRAL_MODE:
das Bytefeld wird in den zugrunde liegenden Stream geschrieben.
b - Bytefeld, das geschrieben werden soll.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
public void write(byte[] b,
int off,
int len)
throws java.io.IOException
DECRYPTION_MODE:
Erst wenn m_nBlocksizeCipher viele Bytes gepuffert sind,
kann der Block entschlüsselt werden. Überzählige Bytes aus dem Feld werden gepuffert.
ENCRYPTION_MODE:
Je nach Schreibmodus wird das Byte sofort auf Blockgröße aufgefüllt
(ENCRYPT_AT_ONCE) und verschlüsselt
in den zugrundelegenden Stream geschrieben oder
es wird in einen Puffer geschrieben, der bei Erreichen der Größe verschlüsselt wird.
NEUTRAL_MODE:
das Bytefeld wird in den zugrunde liegenden Stream geschrieben.
b - ByteArray, das geschrieben werden soll.off - Position, ab wo die Bytes geschrieben werden.len - Anzahl zu schreibender Bytes.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
public void flush()
throws java.io.IOException
DECRYPTION_MODE: Aufruf dieser Methode auf dem
zugrunde liegenden Strom.
ENCRYPTION_MODE: Je nach Schreibmodus wird nur
die flush-Methode auf dem zugrunde liegenden Strom aufgerufen
(ENCRYPT_AT_ONCE) oder
die restlichen Bytes aus dem Puffer werden verschlüsselt und geschrieben und dann
die flush-Methode auf dem zugrunde liegenden Strom aufgerufen.
NEUTRAL_MODE:
Aufruf dieser Methode auf dem zugrunde liegenden Stream.
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
public void close()
throws java.io.IOException
java.io.IOException - wenn es zu Schreibproblemen im unterliegenden Strom kam oder
Ver-/Entschlüsselungsprobleme vorliegen.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||