cvs: pear /Crypt .cvsignore Crypt_NumberID.php Crypt_Rc4.php README package.xml /Crypt_Rc4 Crypt_Rc4.php package.xml

From: Date: Thu, 25 Apr 2002 20:42:07 +0000
Subject: cvs: pear /Crypt .cvsignore Crypt_NumberID.php Crypt_Rc4.php README package.xml /Crypt_Rc4 Crypt_Rc4.php package.xml
Groups: php.pear.cvs 
Request: Send a blank email to pear-cvs+get-3565@lists.php.net to get a copy of this message
zyprexia Thu Apr 25 16:42:07 2002 EDT Added files: /pear/Crypt_Rc4 Crypt_Rc4.php package.xml Removed files: /pear/Crypt .cvsignore Crypt_NumberID.php Crypt_Rc4.php README package.xml Log: - Renamed package Crypt to Crypt_Rc4 - Dropped Crypt_NumberID - Updated package.xml Index: pear/Crypt_Rc4/Crypt_Rc4.php +++ pear/Crypt_Rc4/Crypt_Rc4.php <?php /* vim: set expandtab tabstop=4 shiftwidth=4: */ // +----------------------------------------------------------------------+ // | PHP Version 4 | // +----------------------------------------------------------------------+ // | Copyright (c) 1997-2002 The PHP Group | // +----------------------------------------------------------------------+ // | This source file is subject to version 2.0 of the PHP license, | // | that is bundled with this package in the file LICENSE, and is | // | available at through the world-wide-web at | // | http://www.php.net/license/2_02.txt. | // | If you did not receive a copy of the PHP license and are unable to | // | obtain it through the world-wide-web, please send a note to | // | license@php.net so we can mail you a copy immediately. | // +----------------------------------------------------------------------+ // | Authors: Dave Mertens <dmertens@zyprexia.com> | // +----------------------------------------------------------------------+ // // $Id: Crypt_Rc4.php,v 1.1 2002/04/25 20:42:07 zyprexia Exp $ /** * RC4 stream cipher routines implementation * * in PHP4 based on code written by Damien Miller <djm@mindrot.org> * * Usage: * $key = "pear"; * $message = "PEAR rulez!"; * * $rc4 = new RC4; * $rc4->key($key); * echo "Original message: $message <br>\n"; * $rc4->crypt($message); * echo "Encrypted message: $message <br>\n"; * $rc4->decrypt($message); * echo "Decrypted message: $message <br>\n"; * * @version $Revision: 1.1 $ * @access public * @package Crypt * @author Dave Mertens <dmertens@zyprexia.com> */ class Crypt_RC4 { /** * Real programmers... * @var array */ var $s= array(); /** * Real programmers... * @var array */ var $i= 0; /** * Real programmers... * @var array */ var $j= 0; /** * Assign encryption key to class * * @param string key - Key which will be used for encryption * @return void * @access public */ function key(&$key) { $len= strlen($key); for ($this->i = 0; $this->i < 256; $this->i++) { $this->s[$this->i] = $this->i; } $this->j = 0; for ($this->i = 0; $this->i < 256; $this->i++) { $this->j = ($this->j + $this->s[$this->i] + ord($key[$this->i % $len])) % 256; $t = $this->s[$this->i]; $this->s[$this->i] = $this->s[$this->j]; $this->s[$this->j] = $t; } $this->i = $this->j = 0; } /** * Encrypt function * * @param string paramstr - string that will encrypted * @return void * @access public */ function crypt(&$paramstr) { $len= strlen($paramstr); for ($c= 0; $c < $len; $c++) { $this->i = ($this->i + 1) % 256; $this->j = ($this->j + $this->s[$this->i]) % 256; $t = $this->s[$this->i]; $this->s[$this->i] = $this->s[$this->j]; $this->s[$this->j] = $t; $t = ($this->s[$this->i] + $this->s[$this->j]) % 256; $paramstr[$c] = chr(ord($paramstr[$c]) ^ $this->s[$t]); } } /** * Decrypt function * * @param string paramstr - string that will decrypted * @return void * @access public */ function decrypt(&$paramstr) { $len= strlen($paramstr); for ($c= 0; $c < $len; $c++) { $this->i = ($this->i + 1) % 256; $this->j = ($this->j + $this->s[$this->i]) % 256; $t = $this->s[$this->i]; $this->s[$this->i] = $this->s[$this->j]; $this->s[$this->j] = $t; $t = ($this->s[$this->i] + $this->s[$this->j]) % 256; $paramstr[$c] = chr(ord($paramstr[$c]) ^ $this->s[$t]); } } } //end of RC4 class ?> Index: pear/Crypt_Rc4/package.xml +++ pear/Crypt_Rc4/package.xml <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE package SYSTEM "../package.dtd"> <!-- do not use the "Type" attribute here, that one is only for generated package.xml files --> <package version="1.0"> <name>Crypt</name> <description>RC4 encryption class</description> <summary>Encryption class for rc4 encryption</summary> <maintainers> <maintainer> <user>zyprexia</user> <name>Dave Mertens</name> <email>dmertens@zyprexia.com</email> </maintainer> </maintainers> <release> <version>0.1</version> <license>PHP</license> <state>stable</state> <date>2002-04-25</date> <notes> This is the first release of the RC4 encryption class. </notes> <filelist> <dir name="/" baseinstalldir="Crypt"> <file role="php">Crypt_Rc4.php</file> </dir> </filelist> </release> </package>

« previous php.pear.cvs (#3565) next »