1<?php 2 3/** 4 * Base Class for all stream ciphers 5 * 6 * PHP version 5 7 * 8 * @category Crypt 9 * @package StreamCipher 10 * @author Jim Wigginton <terrafrost@php.net> 11 * @author Hans-Juergen Petrich <petrich@tronic-media.com> 12 * @copyright 2007 Jim Wigginton 13 * @license http://www.opensource.org/licenses/mit-license.html MIT License 14 * @link http://phpseclib.sourceforge.net 15 */ 16 17namespace phpseclib3\Crypt\Common; 18 19/** 20 * Base Class for all stream cipher classes 21 * 22 * @package StreamCipher 23 * @author Jim Wigginton <terrafrost@php.net> 24 */ 25abstract class StreamCipher extends SymmetricKey 26{ 27 /** 28 * Block Length of the cipher 29 * 30 * Stream ciphers do not have a block size 31 * 32 * @see \phpseclib3\Crypt\Common\SymmetricKey::block_size 33 * @var int 34 * @access private 35 */ 36 protected $block_size = 0; 37 38 /** 39 * Default Constructor. 40 * 41 * @see \phpseclib3\Crypt\Common\SymmetricKey::__construct() 42 * @return \phpseclib3\Crypt\Common\StreamCipher 43 */ 44 public function __construct() 45 { 46 parent::__construct('stream'); 47 } 48 49 /** 50 * Stream ciphers not use an IV 51 * 52 * @access public 53 * @return bool 54 */ 55 public function usesIV() 56 { 57 return false; 58 } 59} 60