| |
| History of SILC |
| |
 |
| |
SILC, designed by Pekka Riikonen, was released to the public in the summer of
2000, but both the idea and the original protocol date from 1996. The first
lines of code were written in early 1997, and SILC has been rewritten three
times since that very first version. The original implementation of SILC
included a client, a preliminary server, and implementations of both the
RSA and 3DES encryption algorithms. The server was quite unusable, but the client
looked every similar to the one found in the first public release. That
release's random number generator was inspired by the RNG that SSH used; the
current one is based on that original implementation but has been rewritten
twice since then.
SILC's development was temporarily suspended for a few months in 1997, when
Pekka's time was consumed with work and school. It resumed in 1998 when Juha
Räsänen and Pekka added an implementation of the ElGamal encryption
algorithm. Development stopped again because of time constraints, but in 1998
SILC was rewritten in C++, which seemed like a good idea. Pekka had to stop
development yet again in the winter of 1999 as work on his thesis took up his
available time.
Later in 1999 it was decided that SILC would be rewritten from scratch, using C
instead of C++. Core parts of the protocol were reworked, the protocol was
fully documented, and the specifications were submitted to the IETF. The
result of this effort was the original public release in the summer of 2000.
Since then the protocol has matured and several new versions of the protocol
specifications has been iterated through the IETF. The SILC Client, SILC
Server and SILC Toolkit software distributions has also matured significantly
and reached a level where thousands of users successfully use the software
every day.
The SILC Project consists of several volunteers who maintain the SILC Network,
its routers and servers. Volunteers who provide the silcnet.org internet
access and administrates the silcnet.org sites. Volunteers who use their
expertise and free time to develop the protocol and the software, and to
provide support for SILC users.
|