2014-04-04 4 views

답변

1

암호화 (해독)하기 전에 n 바이트의 데이터를 평문 (또는 암호문)의 시작 부분에 추가하기 만하면됩니다.

n이있는 한이 바이트의 내용은 중요하지 않습니다. 그런 다음 암호화 된 (암호 해독 된) 데이터의 첫 번째 바이트를 버립니다. 암호화 및 암호 해독에 다른 패드 바이트를 사용하면 아무런 차이가 없습니다.

또는

즉 :

$define('DROP_N_PADDING_LENGTH',512); // (or whatever) 
$message = "Hello, world!"; 

// encrypt: 
$ciphertext = $rc4->encrypt(str_repeat(" ",DROP_N_PADDING_LENGTH) . $message); 
$ciphertext = substr($ciphertext,DROP_N_PADDING_LENGTH); 

// decrypt: 
$plaintext = $rc4->decrypt(str_repeat(" ",DROP_N_PADDING_LENGTH) . $ciphertext); 
$plaintext = substr($plaintext,DROP_N_PADDING_LENGTH);