filter
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1357
Sax Filter 1.4
Sax Filter is a modular set of filters that can be used to process XML documents via Javas SAX support. more>>
Sax Filter is a modular set of filters that can be used to process XML documents via Javas SAX support.
Currently, the filters only process content (the ContentHandler interface).
<<lessCurrently, the filters only process content (the ContentHandler interface).
Download (0.048MB)
Added: 2006-12-24 License: GPL (GNU General Public License) Price:
1035 downloads
Web Filter 0.96
webfilt is not a spam filter, but provides a generic web-based interface for Bayesian-style UNIX filters that need occasional tr more>>
webfilt is not a spam filter, but provides a generic web-based interface for Bayesian-style UNIX filters that need occasional training and corrections. It has been tested with SpamProbe and SpamBayes, but should work with other command-line filters too.
The webfilt system works with existing UNIX accounts, and consists of three distinct components that operate independently:
Users procmail recipes and cron jobs. The storelast.sh shell script is invoked by a users .procmailrc and simply saves a size-limited copy of each incoming e-mail message. The destination directory is determined by spam-state, done by procmail processing. A cron job periodically cleans old message copies.
webfiltd, daemon. The daemon component is invoked by inetd, and responds to a number of commands that allow a connecting client to authenticate, read files, and execute remote commands. This is all done with the authenticated users permissions. This daemon accepts just localhost connections.
webfilt.cgi, web interface The CGI program creates the web interface. Running with low privileges, it communicates with the webfiltd daemon over a socket to guarantee privilege isolation. The user logs in using their web browser and can then view recent emails and run commands on certain files (to train the filter).
<<lessThe webfilt system works with existing UNIX accounts, and consists of three distinct components that operate independently:
Users procmail recipes and cron jobs. The storelast.sh shell script is invoked by a users .procmailrc and simply saves a size-limited copy of each incoming e-mail message. The destination directory is determined by spam-state, done by procmail processing. A cron job periodically cleans old message copies.
webfiltd, daemon. The daemon component is invoked by inetd, and responds to a number of commands that allow a connecting client to authenticate, read files, and execute remote commands. This is all done with the authenticated users permissions. This daemon accepts just localhost connections.
webfilt.cgi, web interface The CGI program creates the web interface. Running with low privileges, it communicates with the webfiltd daemon over a socket to guarantee privilege isolation. The user logs in using their web browser and can then view recent emails and run commands on certain files (to train the filter).
Download (0.023MB)
Added: 2006-07-11 License: GPL (GNU General Public License) Price:
1200 downloads
Filter::cpp 1.33
Filter::cpp is a cpp source filter. more>>
Filter::cpp is a cpp source filter.
SYNOPSIS
use Filter::cpp ;
This source filter pipes the current source file through the C pre-processor (cpp) if it is available.
As with all source filters its scope is limited to the current source file only. Every file you want to be processed by the filter must have a
use Filter::cpp ;
near the top.
Here is an example script which uses the filter:
use Filter::cpp ;
#define FRED 1
$a = 2 + FRED ;
print "a = $an" ;
#ifdef FRED
print "Hello FREDn" ;
#else
print "Where is FREDn" ;
#endif
And here is what it will output:
a = 3
Hello FRED
This example below, provided by Michael G Schwern, shows a clever way to get Perl to use a C pre-processor macro when the Filter::cpp module is available, or to use a Perl sub when it is not.
# use Filter::cpp if we can.
BEGIN { eval use Filter::cpp }
sub PRINT {
my($string) = shift;
#define PRINT($string)
(print $string."n")
}
PRINT("Mu");
Look at Michaels Tie::VecArray module for a practical use.
<<lessSYNOPSIS
use Filter::cpp ;
This source filter pipes the current source file through the C pre-processor (cpp) if it is available.
As with all source filters its scope is limited to the current source file only. Every file you want to be processed by the filter must have a
use Filter::cpp ;
near the top.
Here is an example script which uses the filter:
use Filter::cpp ;
#define FRED 1
$a = 2 + FRED ;
print "a = $an" ;
#ifdef FRED
print "Hello FREDn" ;
#else
print "Where is FREDn" ;
#endif
And here is what it will output:
a = 3
Hello FRED
This example below, provided by Michael G Schwern, shows a clever way to get Perl to use a C pre-processor macro when the Filter::cpp module is available, or to use a Perl sub when it is not.
# use Filter::cpp if we can.
BEGIN { eval use Filter::cpp }
sub PRINT {
my($string) = shift;
#define PRINT($string)
(print $string."n")
}
PRINT("Mu");
Look at Michaels Tie::VecArray module for a practical use.
Download (0.040MB)
Added: 2007-05-29 License: Perl Artistic License Price:
882 downloads
units-filter 2.7
Units-filter is a basic standalone filter written in C, flex, and bison. more>>
Units-filter is a basic standalone filter written in C, flex, and bison.
It inputs strings like "1.5e3 nN.m.s^-1" (which could be the time growth ratio of a torque) and outputs the value in standard SI units, followed by the physical dimension of this value.
units-filter can be embedded in educational test systems, in order to analyze a students answer to a problem of physics or chemistry.
Enhancements:
- The support for quantities with a particular number of significative digits was added.
- For example, the entry "1.02m#5" or "1.0200m" are equivalent and signify a distance measurement precise at the sub-millimeter scale.
- Both would yield the output "1.0200e+00 m".
<<lessIt inputs strings like "1.5e3 nN.m.s^-1" (which could be the time growth ratio of a torque) and outputs the value in standard SI units, followed by the physical dimension of this value.
units-filter can be embedded in educational test systems, in order to analyze a students answer to a problem of physics or chemistry.
Enhancements:
- The support for quantities with a particular number of significative digits was added.
- For example, the entry "1.02m#5" or "1.0200m" are equivalent and signify a distance measurement precise at the sub-millimeter scale.
- Both would yield the output "1.0200e+00 m".
Download (0.016MB)
Added: 2007-06-30 License: GPL (GNU General Public License) Price:
846 downloads
squid-filter 0.9
squid-filter project was designed to build filtering capabilities comparable to those of Muffin into Squid. more>>
squid-filter project was designed to build filtering capabilities comparable to those of Muffin into Squid. It consists of
a patch to Squid, containing a module loader and filtering hooks, and a set of filter modules.
Currently available filters:
- Redirection of URIs.
- Rejection of certain (configurable) MIME content types.
- Suppression of cookies.
- Removal of Javascript and ActiveX.
- Breaking of GIF animation loops.
- Detection of 1x1 images.
Main features:
- Modular, easily extensible by writing new filters.
- Flexible configuration. Filters are independent from each other.
- Each filter can take a list of URIs which should not be filtered (allow list). URIs are specified as full regular expressions.
- Client can choose to bypass filters case-by-case.
- Filtering keeps Content-Length where possible.
Purpose
A filtering proxy allows users to remove unwanted stuff from Web pages as they browse them. What "unwanted stuff" is obviously depends on the individual user, but things which are commonly regarded as annoyances include
banner ads, user behaviour tracking via cookies,
animated pictures, JavaScript, VBScript, ActiveX (dangerous as well as annoying).
Some of those things can be avoided by filtering URIs, which Squid can already do via an external redirect program. Others require a content filter.
Usually, a filtering proxy runs standalone and does nothing but filtering. Users have to configure this proxy in their browsers, and if they use a caching proxy too, chain them after the filter. In situations where the user runs Squid anyway (mostly because of caching for different browsers or a small LAN), it is convenient to build this capability into Squid.
<<lessa patch to Squid, containing a module loader and filtering hooks, and a set of filter modules.
Currently available filters:
- Redirection of URIs.
- Rejection of certain (configurable) MIME content types.
- Suppression of cookies.
- Removal of Javascript and ActiveX.
- Breaking of GIF animation loops.
- Detection of 1x1 images.
Main features:
- Modular, easily extensible by writing new filters.
- Flexible configuration. Filters are independent from each other.
- Each filter can take a list of URIs which should not be filtered (allow list). URIs are specified as full regular expressions.
- Client can choose to bypass filters case-by-case.
- Filtering keeps Content-Length where possible.
Purpose
A filtering proxy allows users to remove unwanted stuff from Web pages as they browse them. What "unwanted stuff" is obviously depends on the individual user, but things which are commonly regarded as annoyances include
banner ads, user behaviour tracking via cookies,
animated pictures, JavaScript, VBScript, ActiveX (dangerous as well as annoying).
Some of those things can be avoided by filtering URIs, which Squid can already do via an external redirect program. Others require a content filter.
Usually, a filtering proxy runs standalone and does nothing but filtering. Users have to configure this proxy in their browsers, and if they use a caching proxy too, chain them after the filter. In situations where the user runs Squid anyway (mostly because of caching for different browsers or a small LAN), it is convenient to build this capability into Squid.
Download (0.046MB)
Added: 2007-01-25 License: Public Domain Price:
1008 downloads
ip-filter-cgi 0.1
ip-filter-cgi is a set of perl script to modify rules of IP Filter (IP Filter is a TCP/IP packet filter cf: http://coombs.anu.ed more>>
ip-filter-cgi is a set of perl script to modify rules of IP Filter (IP Filter is a TCP/IP packet filter cf: http://coombs.anu.edu.au/~avalon/ip-filter.html). If you make any improvement, correction send it back to. The scripts is not complete and is provided for testing purpose.
adulau@metatix.com .
Main features:
- Perl 5.0 (+CGI.pm)
- a HTTP server (Apache)
<<lessadulau@metatix.com .
Main features:
- Perl 5.0 (+CGI.pm)
- a HTTP server (Apache)
Download (0.047MB)
Added: 2006-06-22 License: GPL (GNU General Public License) Price:
1221 downloads
Hook::Filter 0.02
Hook::Filter is a runtime filtering layer on top of subroutine calls. more>>
Hook::Filter is a runtime filtering layer on top of subroutine calls.
SYNOPSIS
Imagine you have a big program using a logging library that exports 3 functions called mydebug, myinfo and mywarn. Those functions generate far too much log, so you want to skip calling them except in some specific circumstances.
In your main program, write:
use Hook::Filter hook => ["mydebug","myinfo","mywarn"];
In all modules making use of the logging library, write:
use Hook::Filter;
Then create a file called ./hook_filter.rules. This file contains boolean expressions that specify when calls to the filtered subroutines should be allowed:
# allow calls to mydebug only inside package My::Filthy:Attempt
is_sub(mydebug) && from_pkg(My::Filthy::Attempt)
# allow all calls to myinfo except from inside packages under the namespace My::Test::
is_sub(myinfo) && !from_pkg(/^My::Test/)
# allow calls to mywarn from function do_stuff in package main
# whose third argument is a message that does not match the string invalid login name
is_sub(mywarn) && from_sub(do_stuff) && from_pkg(main) && !has_arg(3,/invalid login name/)
# all other calls to myinfo, mydebug or mywarn will be skipped
SYNOPSIS, Log::Dispatch
Your program uses Log::Dispatch. You want to enable Hook::Filter on top of the methods log and log_to from Log::Dispatch everywhere at once. And you want to use the filter rules located in /etc/myconf/filter_rules.conf. Easy: in main, write:
use Hook::Filter rules => /etc/myconf/filter_rules.conf, hook => [Log::Dispatch::log,Log::Dispatch::log_to];
<<lessSYNOPSIS
Imagine you have a big program using a logging library that exports 3 functions called mydebug, myinfo and mywarn. Those functions generate far too much log, so you want to skip calling them except in some specific circumstances.
In your main program, write:
use Hook::Filter hook => ["mydebug","myinfo","mywarn"];
In all modules making use of the logging library, write:
use Hook::Filter;
Then create a file called ./hook_filter.rules. This file contains boolean expressions that specify when calls to the filtered subroutines should be allowed:
# allow calls to mydebug only inside package My::Filthy:Attempt
is_sub(mydebug) && from_pkg(My::Filthy::Attempt)
# allow all calls to myinfo except from inside packages under the namespace My::Test::
is_sub(myinfo) && !from_pkg(/^My::Test/)
# allow calls to mywarn from function do_stuff in package main
# whose third argument is a message that does not match the string invalid login name
is_sub(mywarn) && from_sub(do_stuff) && from_pkg(main) && !has_arg(3,/invalid login name/)
# all other calls to myinfo, mydebug or mywarn will be skipped
SYNOPSIS, Log::Dispatch
Your program uses Log::Dispatch. You want to enable Hook::Filter on top of the methods log and log_to from Log::Dispatch everywhere at once. And you want to use the filter rules located in /etc/myconf/filter_rules.conf. Easy: in main, write:
use Hook::Filter rules => /etc/myconf/filter_rules.conf, hook => [Log::Dispatch::log,Log::Dispatch::log_to];
Download (0.015MB)
Added: 2006-10-20 License: Perl Artistic License Price:
1099 downloads
IM-Filter 0.9 RC1
IM-Filter is a daemon for GNU/Linux firewall hosts written in C which is able to analyze and filter the ICQ protocol. more>>
IM-Filter is a daemon for GNU/Linux firewall hosts written in C which is able to analyze and filter the ICQ protocol. The daemon runs in userspace and fetches packets of the ICQ protocol by using the libnetfilter_queue mechanism.
IM-Filters main purpose is to run at a gateway, so all ICQ-related traffic of users in the LAN runs over IM-Filter. Nevertheless the daemon could also be used directly on end users computers. The following diagram shows, how the daemon is integrated in a GNU/Linux system.
One of the design goals of IM-Filter was modularity. So plugins for other protocols like MSN or IRC could be written easily. The source code already contains skeleton code for an IRC module.
Together with the source code, adequate iptables scripts are provided so that only packets which belong to ICQ traffic get in the netfilter queue of IM-Filter.
Main features:
Logging of messages sent via ICQ
IM-Filter is able to identify and log messages which have been sent via the ICQ protocol. These messages contain a timestamp, an IP-address, the appropriate UIN and - of course - the message itself. A logged message could look like this:
[2007-07-27 11:24:21] IP "10.0.0.1" sent following message to #123456789: "hello, this is a test"
Blacklists for messages and UINs
IM-Filter handles two different blacklists: for messages and for UINs. The message blacklist holds strings which must not occur in text messages. When such a string is detected in a message, it gets censored in the logfiles.
The UIN blacklist contains UINs of users which are not allowed to connect to the ICQ network. Those blacklists can be re-read by the daemon during runtime by sending signals.
Detection and blocking of file transfers
Since file transfers are not always welcome, they can be blocked by invoking the daemon with a specific command line argument. Then, users in the LAN can not send files to other users anymore. Beside blocking, the daemon logs file transfers. Such a log entry can look like this:
[2007-07-06 17:01:26] FILTRANSFER detected (outgoing): receiver uin: #123456789 || filename: test.txt || size: 143360B
List with currently logged in users
To be able to know which users are currently logged in, IM-Filter manages a text file which holds all necessary information. By default, the file is placed in /var/log/imfilter.users and contains IP-address and UIN of the users which are currently logged in. The file could look like this:
UIN=123456789, IP=10.0.0.1
UIN=234567890, IP=10.0.0.22
UIN=345678901, IP=10.0.0.4
<<lessIM-Filters main purpose is to run at a gateway, so all ICQ-related traffic of users in the LAN runs over IM-Filter. Nevertheless the daemon could also be used directly on end users computers. The following diagram shows, how the daemon is integrated in a GNU/Linux system.
One of the design goals of IM-Filter was modularity. So plugins for other protocols like MSN or IRC could be written easily. The source code already contains skeleton code for an IRC module.
Together with the source code, adequate iptables scripts are provided so that only packets which belong to ICQ traffic get in the netfilter queue of IM-Filter.
Main features:
Logging of messages sent via ICQ
IM-Filter is able to identify and log messages which have been sent via the ICQ protocol. These messages contain a timestamp, an IP-address, the appropriate UIN and - of course - the message itself. A logged message could look like this:
[2007-07-27 11:24:21] IP "10.0.0.1" sent following message to #123456789: "hello, this is a test"
Blacklists for messages and UINs
IM-Filter handles two different blacklists: for messages and for UINs. The message blacklist holds strings which must not occur in text messages. When such a string is detected in a message, it gets censored in the logfiles.
The UIN blacklist contains UINs of users which are not allowed to connect to the ICQ network. Those blacklists can be re-read by the daemon during runtime by sending signals.
Detection and blocking of file transfers
Since file transfers are not always welcome, they can be blocked by invoking the daemon with a specific command line argument. Then, users in the LAN can not send files to other users anymore. Beside blocking, the daemon logs file transfers. Such a log entry can look like this:
[2007-07-06 17:01:26] FILTRANSFER detected (outgoing): receiver uin: #123456789 || filename: test.txt || size: 143360B
List with currently logged in users
To be able to know which users are currently logged in, IM-Filter manages a text file which holds all necessary information. By default, the file is placed in /var/log/imfilter.users and contains IP-address and UIN of the users which are currently logged in. The file could look like this:
UIN=123456789, IP=10.0.0.1
UIN=234567890, IP=10.0.0.22
UIN=345678901, IP=10.0.0.4
Download (MB)
Added: 2007-08-02 License: GPL (GNU General Public License) Price:
818 downloads
Bloom::Filter 0.03
Bloom::Filter is a sample Perl Bloom filter implementation. more>>
Bloom::Filter is a sample Perl Bloom filter implementation.
A Bloom filter is a probabilistic algorithm for doing existence tests in less memory than a full list of keys would require. The tradeoff to using Bloom filters is a certain configurable risk of false positives. This module implements a simple Bloom filter with configurable capacity and false positive rate. Bloom filters were first described in a 1970 paper by Burton Bloom, see http://portal.acm.org/citation.cfm?id=362692&dl=ACM&coll=portal.
SYNOPSIS
use Bloom::Filter
my $bf = Bloom::Filter->new( capacity => 10, error_rate => .001 );
$bf->add( @keys );
while ( ) {
chomp;
print "Found $_n" if $bf->check( $_ );
}
<<lessA Bloom filter is a probabilistic algorithm for doing existence tests in less memory than a full list of keys would require. The tradeoff to using Bloom filters is a certain configurable risk of false positives. This module implements a simple Bloom filter with configurable capacity and false positive rate. Bloom filters were first described in a 1970 paper by Burton Bloom, see http://portal.acm.org/citation.cfm?id=362692&dl=ACM&coll=portal.
SYNOPSIS
use Bloom::Filter
my $bf = Bloom::Filter->new( capacity => 10, error_rate => .001 );
$bf->add( @keys );
while ( ) {
chomp;
print "Found $_n" if $bf->check( $_ );
}
Download (0.004MB)
Added: 2006-10-10 License: Perl Artistic License Price:
1117 downloads
Compact Filter 0.3
Compact Filter is a network packet filter for Linux. more>>
Compact Filter is a network packet filter for Linux. It features an easy-to-use compact filter representation and high performance.
The main features are: easy to use interface, compact filter representation (memory efficient), and very high performance.
A difference between CF and other firewalls, such as Netfilter, is its representation of the ruleset. In CF the user writes a filter which is then compiled and optimized in user-space. The optimized filter is then loaded into the kernel (using netlink). Consequently the in kernel packet filtering code only needs funtionality for setting up a filter and filtering packets, while the more complex code of optimizing the filter remains in user-space.
Because of the continuous increase of the bandwidth and the security threats, firewalls have to evolve towards more efficient filtering schemes. The truth is that the existing scheme does not scale so well with the combined growth of bandwidth and rulesets.
Our aim is to try another approach to perform packet filtering where we minimize the complexity of the filtering process. This result in, both, a reduction of the required CPU power to filter packets and a simpler (and smaller) kernel code. Of course, we are pushing all the smart and complex part out to the user-space, but, developing in user-space is much simpler and safer.
Enhancements:
- changed -d option to delete all filters
- added -D option to delete a specific filter
- changed default policy to permit rather than deny
- added -l option on flex to support --yylineno on older versions of flex
- new and improved install guide
<<lessThe main features are: easy to use interface, compact filter representation (memory efficient), and very high performance.
A difference between CF and other firewalls, such as Netfilter, is its representation of the ruleset. In CF the user writes a filter which is then compiled and optimized in user-space. The optimized filter is then loaded into the kernel (using netlink). Consequently the in kernel packet filtering code only needs funtionality for setting up a filter and filtering packets, while the more complex code of optimizing the filter remains in user-space.
Because of the continuous increase of the bandwidth and the security threats, firewalls have to evolve towards more efficient filtering schemes. The truth is that the existing scheme does not scale so well with the combined growth of bandwidth and rulesets.
Our aim is to try another approach to perform packet filtering where we minimize the complexity of the filtering process. This result in, both, a reduction of the required CPU power to filter packets and a simpler (and smaller) kernel code. Of course, we are pushing all the smart and complex part out to the user-space, but, developing in user-space is much simpler and safer.
Enhancements:
- changed -d option to delete all filters
- added -D option to delete a specific filter
- changed default policy to permit rather than deny
- added -l option on flex to support --yylineno on older versions of flex
- new and improved install guide
Download (0.092MB)
Added: 2006-06-30 License: GPL (GNU General Public License) Price:
1211 downloads
Filter::Macro 0.11
Filter::Macro is a Perl module to make macro modules that are expanded inline. more>>
Filter::Macro is a Perl module to make macro modules that are expanded inline.
SYNOPSIS
In MyHandyModules.pm:
package MyHandyModules;
use Filter::Macro;
# lines below will be expanded into callers code
use strict;
use warnings;
use Switch;
use IO::All;
use Quantum::Superpositions;
In your program or module:
use MyHandyModules; # lines above are expanded here
If many of your programs begin with the same lines, it may make sense to abstract them away into a module, and use that module instead.
Sadly, it does not work that way, because by default, all lexical pragmas, source filters and subroutine imports invoked in MyHandyModules.pm takes effect in that module, not the calling programs.
One way to solve this problem is to use Filter::Include:
use Filter::Include;
include MyHandyModules;
However, it would be really nice if MyHandyModules.pm could define the macro-like semantic itself, instead of placing the burden on the caller.
This module lets you do precisely that. All you need to do is to put one line in MyHandyModules.pm, after the package MyHandyModules; line:
use Filter::Macro;
With this, a program or module that says use Filter::Macro will expand lines below use Filter::Macro into their own code, instead of the default semantic of evaluating them in the MyHandyModules package.
Line numbers in error and warning messages are unaffected by this module; they still point to the correct file name and line numbers.
<<lessSYNOPSIS
In MyHandyModules.pm:
package MyHandyModules;
use Filter::Macro;
# lines below will be expanded into callers code
use strict;
use warnings;
use Switch;
use IO::All;
use Quantum::Superpositions;
In your program or module:
use MyHandyModules; # lines above are expanded here
If many of your programs begin with the same lines, it may make sense to abstract them away into a module, and use that module instead.
Sadly, it does not work that way, because by default, all lexical pragmas, source filters and subroutine imports invoked in MyHandyModules.pm takes effect in that module, not the calling programs.
One way to solve this problem is to use Filter::Include:
use Filter::Include;
include MyHandyModules;
However, it would be really nice if MyHandyModules.pm could define the macro-like semantic itself, instead of placing the burden on the caller.
This module lets you do precisely that. All you need to do is to put one line in MyHandyModules.pm, after the package MyHandyModules; line:
use Filter::Macro;
With this, a program or module that says use Filter::Macro will expand lines below use Filter::Macro into their own code, instead of the default semantic of evaluating them in the MyHandyModules package.
Line numbers in error and warning messages are unaffected by this module; they still point to the correct file name and line numbers.
Download (0.013MB)
Added: 2007-02-20 License: MIT/X Consortium License Price:
976 downloads
IOLib-Filters 4.0
IOLib-Filters is a filter package for IOLib. more>>
IOLib-Filters is a filter package for IOLib. IOLib-Filters is mainly an example of how to write filters for IOLib.
IOLib is a portable universal data IO library. Implementations exist in C, C++ and Objective C and for many different platforms (including Linux, Win32, MacOS X and .NET).
IOLib provides a unified interface for accessing different types of data streams. It currently supports file IO, BSD sockets, memory buffers and SOCKS4/5 connections and can be extended with drivers easily.
It has support for different binary formats (Intel, Motorola, PDP) and it supports filters. You can write your own filters (e.g. for encryption or compression) and use them with IOLib.
<<lessIOLib is a portable universal data IO library. Implementations exist in C, C++ and Objective C and for many different platforms (including Linux, Win32, MacOS X and .NET).
IOLib provides a unified interface for accessing different types of data streams. It currently supports file IO, BSD sockets, memory buffers and SOCKS4/5 connections and can be extended with drivers easily.
It has support for different binary formats (Intel, Motorola, PDP) and it supports filters. You can write your own filters (e.g. for encryption or compression) and use them with IOLib.
Download (0.052MB)
Added: 2006-09-01 License: LGPL (GNU Lesser General Public License) Price:
1150 downloads
Filter::Crypto 1.18
Filter::Crypto is a Perl module that can create runnable Perl files encrypted with OpenSSL libcrypto. more>>
Filter::Crypto is a Perl module that can create runnable Perl files encrypted with OpenSSL libcrypto.
SYNOPSIS
# Encrypt a Perl script using the crypt_file script; run it as usual:
$ crypt_file --in-place hello.pl
$ hello.pl
# Create a PAR archive containing an encrypted Perl script; run it as usual:
# (This example assumes that you also have PAR installed)
$ pp -f Crypto -M Filter::Crypto::Decrypt -o hello hello.pl
$ hello
# Display the Filter-Crypto distribution version number:
use Filter::Crypto;
print "This is Filter-Crypto $Filter::Crypto::VERSIONn";
The Filter-Crypto distribution provides the means to convert your Perl files into an encrypted, yet still runnable, format to hide the source code from casual prying eyes.
This is achieved using a Perl source code filter. The encrypted files, produced using the Filter::Crypto::CryptFile module, automatically have one (unencrypted) line added to the start of them that loads the Filter::Crypto::Decrypt module. The latter is a Perl source code filter that decrypts the remaining (encrypted) part of the Perl file on the fly when it is run. See perlfilter if you want to know more about how Perl source code filters work.
Encrypted files can also be produced more conveniently using the crypt_file script, or (if you also have the PAR module available) using the PAR::Filter::Crypto module. The latter can be utilized by the standard PAR tools to produce PAR archives in which your Perl files are encrypted.
The actual encryption and decryption is performed using one of the symmetric cipher algorithms provided by the OpenSSL libcrypto library. The EVP library high-level interface functions to the various cipher algorithms themselves are used so that your choice of algorithm (and also what password or key to use) is made simply by answering some questions when building this distribution. See the INSTALL file for more details.
This module itself only contains this documentation and the version number of the Filter-Crypto distribution as a whole.
<<lessSYNOPSIS
# Encrypt a Perl script using the crypt_file script; run it as usual:
$ crypt_file --in-place hello.pl
$ hello.pl
# Create a PAR archive containing an encrypted Perl script; run it as usual:
# (This example assumes that you also have PAR installed)
$ pp -f Crypto -M Filter::Crypto::Decrypt -o hello hello.pl
$ hello
# Display the Filter-Crypto distribution version number:
use Filter::Crypto;
print "This is Filter-Crypto $Filter::Crypto::VERSIONn";
The Filter-Crypto distribution provides the means to convert your Perl files into an encrypted, yet still runnable, format to hide the source code from casual prying eyes.
This is achieved using a Perl source code filter. The encrypted files, produced using the Filter::Crypto::CryptFile module, automatically have one (unencrypted) line added to the start of them that loads the Filter::Crypto::Decrypt module. The latter is a Perl source code filter that decrypts the remaining (encrypted) part of the Perl file on the fly when it is run. See perlfilter if you want to know more about how Perl source code filters work.
Encrypted files can also be produced more conveniently using the crypt_file script, or (if you also have the PAR module available) using the PAR::Filter::Crypto module. The latter can be utilized by the standard PAR tools to produce PAR archives in which your Perl files are encrypted.
The actual encryption and decryption is performed using one of the symmetric cipher algorithms provided by the OpenSSL libcrypto library. The EVP library high-level interface functions to the various cipher algorithms themselves are used so that your choice of algorithm (and also what password or key to use) is made simply by answering some questions when building this distribution. See the INSTALL file for more details.
This module itself only contains this documentation and the version number of the Filter-Crypto distribution as a whole.
Download (0.13MB)
Added: 2006-10-03 License: Perl Artistic License Price:
1119 downloads
Filter::decrypt 1.33
Filter::decrypt Perl module contains a template for a decrypt source filter. more>>
Filter::decrypt Perl module contains a template for a decrypt source filter.
SYNOPSIS
use Filter::decrypt ;
This is a sample decrypting source filter.
Although this is a fully functional source filter and it does implement a very simple decrypt algorithm, it is not intended to be used as it is supplied. Consider it to be a template which you can combine with a proper decryption algorithm to develop your own decryption filter.
WARNING
It is important to note that a decryption filter can never provide complete security against attack. At some point the parser within Perl needs to be able to scan the original decrypted source. That means that at some stage fragments of the source will exist in a memory buffer.
Also, with the introduction of the Perl Compiler backend modules, and the B::Deparse module in particular, using a Source Filter to hide source code is becoming an increasingly futile exercise.
The best you can hope to achieve by decrypting your Perl source using a source filter is to make it unavailable to the casual user.
Given that proviso, there are a number of things you can do to make life more difficult for the prospective cracker.
Strip the Perl binary to remove all symbols.
Build the decrypt extension using static linking. If the extension is provided as a dynamic module, there is nothing to stop someone from linking it at run time with a modified Perl binary.
Do not build Perl with -DDEBUGGING. If you do then your source can be retrieved with the -Dp command line option.
The sample filter contains logic to detect the DEBUGGING option.
Do not build Perl with C debugging support enabled.
Do not implement the decryption filter as a sub-process (like the cpp source filter). It is possible to peek into the pipe that connects to the sub-process.
Check that the Perl Compiler isnt being used.
There is code in the BOOT: section of decrypt.xs that shows how to detect the presence of the Compiler. Make sure you include it in your module.
Assuming you havent taken any steps to spot when the compiler is in use and you have an encrypted Perl script called "myscript.pl", you can get access the source code inside it using the perl Compiler backend, like this
perl -MO=Deparse myscript.pl
Note that even if you have included the BOOT: test, it is still possible to use the Deparse module to get the source code for individual subroutines.
Do not use the decrypt filter as-is. The algorithm used in this filter has been purposefully left simple.
If you feel that the source filtering mechanism is not secure enough you could try using the unexec/undump method. See the Perl FAQ for further details.
<<lessSYNOPSIS
use Filter::decrypt ;
This is a sample decrypting source filter.
Although this is a fully functional source filter and it does implement a very simple decrypt algorithm, it is not intended to be used as it is supplied. Consider it to be a template which you can combine with a proper decryption algorithm to develop your own decryption filter.
WARNING
It is important to note that a decryption filter can never provide complete security against attack. At some point the parser within Perl needs to be able to scan the original decrypted source. That means that at some stage fragments of the source will exist in a memory buffer.
Also, with the introduction of the Perl Compiler backend modules, and the B::Deparse module in particular, using a Source Filter to hide source code is becoming an increasingly futile exercise.
The best you can hope to achieve by decrypting your Perl source using a source filter is to make it unavailable to the casual user.
Given that proviso, there are a number of things you can do to make life more difficult for the prospective cracker.
Strip the Perl binary to remove all symbols.
Build the decrypt extension using static linking. If the extension is provided as a dynamic module, there is nothing to stop someone from linking it at run time with a modified Perl binary.
Do not build Perl with -DDEBUGGING. If you do then your source can be retrieved with the -Dp command line option.
The sample filter contains logic to detect the DEBUGGING option.
Do not build Perl with C debugging support enabled.
Do not implement the decryption filter as a sub-process (like the cpp source filter). It is possible to peek into the pipe that connects to the sub-process.
Check that the Perl Compiler isnt being used.
There is code in the BOOT: section of decrypt.xs that shows how to detect the presence of the Compiler. Make sure you include it in your module.
Assuming you havent taken any steps to spot when the compiler is in use and you have an encrypted Perl script called "myscript.pl", you can get access the source code inside it using the perl Compiler backend, like this
perl -MO=Deparse myscript.pl
Note that even if you have included the BOOT: test, it is still possible to use the Deparse module to get the source code for individual subroutines.
Do not use the decrypt filter as-is. The algorithm used in this filter has been purposefully left simple.
If you feel that the source filtering mechanism is not secure enough you could try using the unexec/undump method. See the Perl FAQ for further details.
Download (0.040MB)
Added: 2007-06-01 License: Perl Artistic License Price:
531 downloads
SEO Filter Lite 1.0.0
SEO Filter is a Search Engine Optimization Software for forums. It catches the content from a forum or cms software and makes it more seo friendly by converting dynamic links into static and removing more>> SEO Filter is a Search Engine Optimization Software for forums.
It catches the content from a forum or cms software and makes it more seo friendly by converting dynamic links into static and removing session ids from links and much more.
<<less
Download (90KB)
Added: 2009-04-11 License: Freeware Price: Free
195 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above filter search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed