Analysis on Common Network Attacks & Vulnerability Scanners
Specter - AAL
1. Specter
Abstract Arithmetics Library (AAL)
String Mathematics
Introduction
Specter is an innovation in computer science and computer engineering.
Specter is the code name of Abstract Arithmetics Library (AAL). AAL's target is not the high-end
computers or mainframes and clusters. AAL is supposed to enable any low-end cheap computer to do
operations with big numbers and to be used in research and development in the fields of big numbers
computational theory, cryptography and astronomical engineering. AAL aims to be a unified and
portable library that can be embedded anywhere.
How it works
AAL exploits the inner limits of a specific low-end CPU architecture and provides a software
mechanism to overcome several problems for big numbers computations. To do so, AAL introduces a
new domain in computational theory, the “String Mathematics” domain.
String Mathematics is a virtual domain that AAL uses to overcome the hardware limitations. The
hardware limitations I am talking about is first of all the bit architecture of a low-end computer and
secondly, the capacity in RAM and hard disk space.
AAL is actually a small emulator that emulates the manual human processing computations by hand in
the decimal system into a computer program. In other words, AAL is the analog of a human
mathematician that does simple calculations by hand in a piece of paper!
The idea behind the concept is that a character by character calculation in the decimal system has no
limits and yet does not need big utilization of the hardware or any specific hardware at all.
Technical information
AAL is free and open source and is coded in ANSI C. AAL takes advantage of the way that C maps
data types such as char and int in RAM and does all the processing based on the minimum available
computational quantity which is 8bits = 1Byte (char).
Though in order to do calculations with decimal numbers from 0 – 9 you would only need a nibble
(half-byte), we want to use the 8bits char type in order to keep the privilege that C give us of having a
char that acts as an int. There are also no well-known or massive production computers or micro-
controllers that utilize less than 8bits so for our purposes the 4 MSB are not the case. Please note that
I am always talking for a system that has a little-endian ordering.
Comparison with other libs
So, for huge numbers AAL does the job and computes the results that a common 8bit ALU in the
binary domain would not have the capacity to do. On the other hand one would say that in theory if we
could split any huge number in segments and do the operations separately then we would have no
limits with the current architecture. The problem is that in practice this is much more complicated than
it seems and it’s the technique that other libraries such as GMP, use to compute big numbers. Here we
should note that opposed to AAL, GMP and other libs are bit dependent and optimized for high-end
computers. Finally they differ in the fact that they have upper limits restricted by hardware parts such
as CPU bit architecture, CPU registers, CPU cache, RAM cache, RAM timing, hard disk space and
2. they reside on a compiler to be “portable”. Thus, they are not truly optimized for any computer and
neither portable.
There are 3 main disadvantages of the philosophy described above and I explain them below in detail:
1. Segmentation of calculations does not always work without huge overhead in RAM and
in CPU utilization. The best known way is the usage of Fourier transformations and
large data tables in RAM. This means many computer cycles and huge impact in
performance. This is unacceptable for a low-end computer or a micro-controller.
2. Assembly code is considered a must for this philosophy, due to huge data and
operations on them. But assembly is a hardware specific language and thus restricts
portability and unification.
3. Hardware dependent solution is not an option for openness and advancement.
Sources
Specter (AAL) is still on the development phase at BETA stage.
Please download Specter from the following link...
http://sourceforge.net/projects/specter-aal/
George A. Delaportas (G0D)
-------------------------------------
Informatics & Computer Engineer
MSc in Networking and Data Communications
PhD in Computer Forensics