我正在做一個圖像加密項目。我們在圖像上使用河豚加密。根據Paul Kocher的代碼http://www.schneier.com/blowfish-download.html。主要功能是如下Blowfish Algo For a Image
void main(void) {
unsigned long L = 1, R = 2;
BLOWFISH_CTX ctx;
Blowfish_Init (&ctx, (unsigned char*)"TESTKEY", 7);
Blowfish_Encrypt(&ctx, &L, &R);
printf("%08lX %08lX\n", L, R);
if (L == 0xDF333FD2L && R == 0x30A71BB4L)
printf("Test encryption OK.\n");
else
printf("Test encryption failed.\n");
Blowfish_Decrypt(&ctx, &L, &R);
if (L == 1 && R == 2)
printf("Test decryption OK.\n");
else
printf("Test decryption failed.\n");
}
這裏作者使用L = 1且L = 2來加密,其中作爲我將使用圖像像素到encypt和輸出將爲十六進制值。現在的問題是如何將輸出的十六進制值轉換爲有效的圖像格式,如.jpg或.tiff,以便將其顯示爲Blowfish加密圖像。
或者,如果我可以在不加密每個像素的情況下對整個圖像進行加密,那麼還是建議我使用其他方法?
需要對此提出建議。感謝提前
你加密圖像的像素,或者圖像的文件內容的總體思路?如果是後者,則無法將其保存並讀取爲正常圖像,因爲加密將會使格式變爲灰色。 – CharlesB 2011-12-20 15:02:46
@charlesB你可以建議我如何使用算法加密文件內容。沒有這樣的算法可用於文件數據,但所有算法都使用數字來進行加密。如果你有任何想法,請告訴我 – anupsahu 2011-12-20 15:13:07
你沒有回答這個問題。像素數據和文件數據是不同的東西,你想要編碼什麼數據? – CharlesB 2011-12-20 15:32:13