Exemple #1
0
Blowfish::Blowfish(const QByteArray& passphrase)
    : mySBox0(256)
    , mySBox1(256)
    , mySBox2(256)
    , mySBox3(256)
    , myPArray(18)
{
    initialize();
    keySchedule(passphrase);
}
void bunny24_encrypt(bit block[block_length] , bit key[key_length]){
	
	//blockInversion(block);
	//blockInversion(key);

	bit keys[16][key_length];
	
	keySchedule(key , keys);

	int i;

	arraySum(block , keys[0] , block , block_length); // first XOR

	for(i = 1; i <= 3; i++)					// 15 rounds
		round(block , keys[i]);
	
	//blockInversion(block);
	//blockInversion(key);
	
}
void bunny24_decrypt(bit block[block_length] , bit key[key_length]){
	
	//blockInversion(block);
	//blockInversion(key);

	bit keys[16][key_length];
	
	keySchedule(key , keys);

	int i;

	for(i = 3; i > 0; i--)					// 15 rounds
		inverse_round(block , keys[i]);
	
	arraySum(block , keys[0] , block , block_length); // first XOR
	
	//blockInversion(block);
	//blockInversion(key);
	
}