All Downloads are FREE. Search and download functionalities are using the official Maven repository.

.iem.BouncyCastle.3.1.3.source-code.PaddedBufferedBlockCipher.crysl Maven / Gradle / Ivy

The newest version!
SPEC org.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher

OBJECTS
	org.bouncycastle.crypto.CipherParameters params;
	org.bouncycastle.crypto.paddings.BlockCipherPadding padding;
	org.bouncycastle.crypto.engines.RijndaelEngine cipher;
	
	byte plainTextByte;
	byte[] plainText;
	int plainTextOffset;
	int plainTextLen;
	
	byte[] cipherText;
	int cipherTextOffset;
	
	boolean isEncryption;
	
EVENTS
	c1: PaddedBufferedBlockCipher(cipher);
	c2: PaddedBufferedBlockCipher(cipher, padding);
	Con := c1 | c2;

	i1: init(isEncryption, params);
	Init := i1;

	p1: processByte(plainTextByte, cipherText, cipherTextOffset);
	p2: processBytes(plainText, plainTextOffset, plainTextLen, cipherText, cipherTextOffset);
	Process := p1 | p2;
	
	df1: doFinal(cipherText, cipherTextOffset);
	DoFinal:= df1;
	
ORDER
	Con, (Init, Process, DoFinal)+
	
CONSTRAINTS
	length[plainText] >= plainTextOffset + plainTextLen;
	length[cipherText] >= cipherTextOffset;
	plainTextOffset >= 0;
	plainTextLen > 0;
	cipherTextOffset >= 0;
	
REQUIRES
	generatedRijndaelEngine[cipher];
	generatedParametersWithIV[params];
	generatedPKCS7Padding[padding];
	
ENSURES
	encrypted[cipherText];




© 2015 - 2024 Weber Informatics LLC | Privacy Policy