|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
|
|
package javax.crypto; |
|
|
|
import java.security.*; |
|
import java.security.spec.*; |
|
|
|
/** |
|
* This class provides a delegate for the identity cipher - one that does not |
|
* transform the plain text. |
|
* |
|
* @author Li Gong |
|
* @see NullCipher |
|
* |
|
* @since 1.4 |
|
*/ |
|
|
|
final class NullCipherSpi extends CipherSpi { |
|
|
|
|
|
|
|
*/ |
|
protected NullCipherSpi() {} |
|
|
|
public void engineSetMode(String mode) {} |
|
|
|
public void engineSetPadding(String padding) {} |
|
|
|
protected int engineGetBlockSize() { |
|
return 1; |
|
} |
|
|
|
protected int engineGetOutputSize(int inputLen) { |
|
return inputLen; |
|
} |
|
|
|
protected byte[] engineGetIV() { |
|
byte[] x = new byte[8]; |
|
return x; |
|
} |
|
|
|
protected AlgorithmParameters engineGetParameters() { |
|
return null; |
|
} |
|
|
|
protected void engineInit(int mode, Key key, SecureRandom random) {} |
|
|
|
protected void engineInit(int mode, Key key, |
|
AlgorithmParameterSpec params, |
|
SecureRandom random) {} |
|
|
|
protected void engineInit(int mode, Key key, |
|
AlgorithmParameters params, |
|
SecureRandom random) {} |
|
|
|
protected byte[] engineUpdate(byte[] input, int inputOffset, |
|
int inputLen) { |
|
if (input == null) return null; |
|
byte[] x = new byte[inputLen]; |
|
System.arraycopy(input, inputOffset, x, 0, inputLen); |
|
return x; |
|
} |
|
|
|
protected int engineUpdate(byte[] input, int inputOffset, |
|
int inputLen, byte[] output, |
|
int outputOffset) { |
|
if (input == null) return 0; |
|
System.arraycopy(input, inputOffset, output, outputOffset, inputLen); |
|
return inputLen; |
|
} |
|
|
|
protected byte[] engineDoFinal(byte[] input, int inputOffset, |
|
int inputLen) |
|
{ |
|
return engineUpdate(input, inputOffset, inputLen); |
|
} |
|
|
|
protected int engineDoFinal(byte[] input, int inputOffset, |
|
int inputLen, byte[] output, |
|
int outputOffset) |
|
{ |
|
return engineUpdate(input, inputOffset, inputLen, |
|
output, outputOffset); |
|
} |
|
|
|
protected int engineGetKeySize(Key key) |
|
{ |
|
return 0; |
|
} |
|
} |