1--TEST-- 2Stream cipher cbc decryption filter for writing 3--FILE-- 4<?php 5$algorithm = 'aes-256-cbc'; 6$key = str_repeat('x', 32); 7$iv = str_repeat('i', 16); 8$ciphertext = pack("H*", '8f8853a1685607133cb9ee0fc7a5b8a57103935cbc39ea680def0db0767e954e'); 9 10$context = stream_context_create(array( 11 'crypto' => array( 12 'filters' => array( 13 array( 14 'type' => 'cipher', 15 'action' => 'decrypt', 16 'algorithm' => $algorithm, 17 'key' => $key, 18 'iv' => $iv, 19 ) 20 ) 21 ), 22)); 23 24$filename = (dirname( __FILE__) . "/stream_filters_cipher_cbc_dec_write.tmp"); 25file_put_contents("crypto.file://" . $filename, $ciphertext, 0, $context); 26 27echo file_get_contents($filename); 28?> 29--CLEAN-- 30<?php 31$filename = (dirname( __FILE__) . "/stream_filters_cipher_cbc_dec_write.tmp"); 32if (file_exists($filename)) 33 unlink($filename); 34?> 35--EXPECT-- 36aaaaaaaaaaaaaaaa