From 45a0b6ddb40b0aa784efc5689995dc5b33488d82 Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Sat, 2 Jun 2001 14:09:08 +0000 Subject: [PATCH] updates --- public_html/about.php | 21 +++--- public_html/contribute.php | 11 ++-- public_html/copying.php | 132 ++++++++++++++++++------------------- public_html/cvs.php | 110 +++++++++++++++---------------- public_html/docs.php | 58 ++++++++-------- public_html/download.php | 43 ++++++------ public_html/faq.php | 49 +++++++------- public_html/features.php | 61 ++++++++--------- public_html/history.php | 13 ++-- public_html/index.php | 63 +++++++++--------- public_html/lists.php | 11 ++-- public_html/news.php | 29 ++++---- public_html/todo.php | 23 +++++-- 13 files changed, 325 insertions(+), 299 deletions(-) diff --git a/public_html/about.php b/public_html/about.php index 427408bd..423935a7 100644 --- a/public_html/about.php +++ b/public_html/about.php @@ -1,6 +1,6 @@ About SILC -

+

SILC (Secure Internet Live Conferencing) is a protocol which provides secure conferencing services in the Internet over insecure channel. SILC is IRC like software although internally they are very different. Biggest @@ -9,13 +9,13 @@ services and that SILC has almost same commands as IRC. Other than that they are nothing alike. Biggest differences are that SILC is secure what IRC is not in any way. The network model is also entirely different compared to IRC. -

+

SILC provides security services that any other conferencing protocol does not offer today. The most popular conferencing service, IRC, is entirely insecure. If you need secure place to talk to some people or to group of people over the Internet, IRC or any other conferencing service, for that matter, cannot be used. Anyone can see the messages and their contents in the IRC network. And the most worse case, some people is able to change the contents of the messages. Also, all the authentication data, such as, passwords are sent plaintext. -

+

SILC is a lot more than just about `encrypting the traffic'. That is easy enough to do with IRC, SSL and some ad hoc scripts, and even then the entire network cannot be secured, only part of it. SILC provides security @@ -28,31 +28,32 @@ session keys, and all commands, authentication data (such as passwords etc.) and other traffic is entirely secured. The entire network, and all parts of it, is secured. We are not aware of any other conferencing protocol providing same features at the present time. -

+

SILC has secure key exchange protocol that is used to create the session keys for each connection. SILC also provides strong authentication based on either passwords or public key authentication. All authentication data is always encrypted in the SILC network. All connections has their own session keys, all channels has channel specific keys, and all private messages can be secured with private message specific keys. -

+

SILC is an open source (or freeware) project and it has been released under the GNU General Public Licence. The SILC is free to use and everyone is free to distribute and change the SILC under the terms of the GNU GPL. While there is no guarantee for the product SILC has been tried make as secure as possible. The fact that the software and the protocol is open for public analysis is a good thing for end user. -

+

Protocol specification of SILC protocol is available for anyone to look at. There exists four Internet Drafts that has been submitted to IETF. See documentation page for more information. -

+

Contact -

+

Feedback and comments are welcome. You can reach me in the following Address. -

+

Pekka Riikonen
priikone at poseidon.pspt.fi -

+ +

diff --git a/public_html/contribute.php b/public_html/contribute.php index b3d1dd13..62e6c7ac 100644 --- a/public_html/contribute.php +++ b/public_html/contribute.php @@ -1,23 +1,24 @@ Contributing -

+

Developers are needed in SILC project. Everyone who has the time and ability is welcome to come and join the project. We need C coders and technical writers (to write documentation). Feel free to start narrowing down the TODO list. -

+

Interested people are also welcome to give new ideas to the SILC protocol that is still in its draft phase. You should probably go and read the SILC protocol specification Internet Drafts to get the idea about what SILC actually is. The current software version might not give the whole picture of the SILC. The Internet Drafts are available in documentation page. -

+

Who wants to send code to the project should read the CodingStyle documentation. New code must comply with the coding style conventions described in that document. -

+

There is anonymous CVS acccess for those who want to participate the development process. Go see the CVS page. -

+ +

diff --git a/public_html/copying.php b/public_html/copying.php index ac78c82b..83ec298d 100644 --- a/public_html/copying.php +++ b/public_html/copying.php @@ -1,15 +1,15 @@ GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
-

+

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA -

+

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed. -

+

Preamble -

+

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free @@ -19,48 +19,48 @@ Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. -

+

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. -

+

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. -

+

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. -

+

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. -

+

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. -

+

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. -

+

The precise terms and conditions for copying, distribution and modification follow. -

+

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION -

-0. +

+0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, @@ -70,15 +70,15 @@ that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". -

+

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. -

-1. +

+1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate @@ -86,28 +86,27 @@ copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. -

+

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. -

-2. +

+2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: -

-

+

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in @@ -128,42 +127,42 @@ distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. -

+

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. -

+

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. -

-3. +

+3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: -

+

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any @@ -174,14 +173,14 @@ anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. -

+

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. -

-4. +

+4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is @@ -189,8 +188,8 @@ void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. -

-5. +

+5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are @@ -199,8 +198,8 @@ modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. -

-6. +

+6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to @@ -208,8 +207,8 @@ these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. -

-7. +

+7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or @@ -222,12 +221,12 @@ license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. -

+

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. -

+

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the @@ -238,11 +237,11 @@ through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. -

+

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. -

-8. +

+8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License @@ -250,13 +249,13 @@ may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. -

-9. +

+9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. -

+

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions @@ -264,8 +263,8 @@ either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. -

-10. +

+10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free @@ -273,10 +272,10 @@ Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. -

-NO WARRANTY -

-11. +

+NO WARRANTY +

+11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES @@ -286,8 +285,8 @@ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. -

-12. +

+12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, @@ -297,6 +296,7 @@ TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -

+

END OF TERMS AND CONDITIONS -

+ +

diff --git a/public_html/cvs.php b/public_html/cvs.php index 73b21096..7598fed8 100644 --- a/public_html/cvs.php +++ b/public_html/cvs.php @@ -1,137 +1,136 @@ Anonymous CVS access -

+

Anonymous CVS access is now available to SILC CVS repository. The repository includes everything related to SILC project; source codes, documentation and even these web pages. The CVS access is of course public but it is intended for developers. After you have checked out the SILC source tree you should read README.CVS file from the source tree or rest of this web page. -

+

Also note that this is the closest to real time development you can get thus you cannot expect that the source tree would work or even compile. While it is our intention that the trunk would always at least compile there might be situations when it will not. -


+


Browsing the Source Tree -

+

If you want to browse the source tree using web browser before checking out the tree with CVS use following link: -

+

Web Access to CVS repository -

+

Note that this is not real-time access to the CVS repository. It is updated once a day. If you want real-time access then checkout the CVS repository. -


+


Howto Checkout The Source Tree -

+

The repository can be checked out by using anonymous pserver with CVS. -

+

For those who are using sh/ksh/bash the check out is done as follows: -

+

-export CVSROOT=:pserver:silc@silc.pspt.fi:/storage/silc/CVS -

+export CVSROOT=:pserver:cvs@cvs.silcnet.org:/cvs/silc +

cvs login
cvs co silc
-

+

For those who are using csh/tcsh the check out is done as follows: -

+

-setenv CVSROOT :pserver:silc@silc.pspt.fi:/storage/silc/CVS -

+setenv CVSROOT :pserver:cvs@cvs.silcnet.org:/cvs/silc +

cvs login
cvs co silc
-

+

If you don't want to set $CVSROOT environment variable you can set the path to the cvs as command line options: -

+

-cvs -d:pserver:silc@silc.pspt.fi:/storage/silc/CVS login
-cvs -d:pserver:silc@silc.pspt.fi:/storage/silc/CVS co silc +cvs -d:pserver:cvs@cvs.silcnet.org:/cvs/silc login
+cvs -d:pserver:cvs@cvs.silcnet.org:/cvs/silc co silc
-

+

What ever method you decide to use, after you have done cvs login you will be prompted for password: -

+

CVS password: silc -

+

Type the password "silc" and press Enter. -

+

The actual SILC source tree is checked out using the cvs co silc command, described above. This command will fetch the source tree and save it into directory named silc. SILC CVS repository currently does not have any branches thus this will check out the trunk. The size of the trunk is -currently about 11 MB but will grow in the future. +currently about 13 MB but will grow in the future. -


+


What SILC Source Tree Includes -

+

SILC Source tree includes a lot more stuff that appears in public distribution. The source tree includes, for example, internal scripts, configuration files, SILC webpages etc. These never appear on a public distribution. -

+

Following directories currently exist in SILC source tree. -

+

doc/ -

+

includes/ -
    +

    Includes SILC include files. -
+

lib/ -
    +

    Includes SILC libraries. There maybe libraries on the CVS that does not appear on public distribution. -
+

public_html/ -
    +

    Includes the official SILC web pages and everything that relates to them. This directory never appears on public distribution. -
+

silc/ -
    +

    Includes SILC client. There can be some extra files that will never appear in public distribution, such as, configuration files. -
+

silcd/ -
    +

    Includes SILC server. There can be some extra files that will never appear in public distribution, such as, configuration files. -
-


+


Howto Compile SILC Source Tree -

+

After checkout from CVS the SILC source tree must be prepared for configuration and compilation. To compile the source tree, give, -

+

./prepare
@@ -139,14 +138,14 @@ configuration and compilation. To compile the source tree, give, make
-

+

The ./prepare script is included in to the source tree and it never appears in public distribution. The script prepares the source tree by creating configuration scripts and Makefiles. The prepare must be run every time you make some changes to configuration scripts (however, making changes to Makefile.am's does not require running ./prepare). -

+

As a developer you should read the ./configure script's help by giving ./configure --help and study all of its different options. Also, you should configure the script with --enable-debug option as it @@ -154,7 +153,7 @@ compiles SILC with -g (debugging) option and it enables the SILC_LOG_DEBUG* scripts. Warning is due here: The debugging produced by both cilent and server is very heavy, thus it is common to test the programs as follows: -

+

./silc -d -f configfile 2>log
@@ -162,37 +161,38 @@ the programs as follows:
-


+


Howto Clean SILC Source Tree -

+

To entirely clear the source tree to the state after it was checked out from CVS, give, -

+

./prepare-clean -

+

This calls `make distclean' plus removes automatically generated files by hand. It also removes *.log files. However, it will not remove any other files you might have created. -


+


Makefiles and configuration files -

+

Developers should never directly write a Makefile. All Makefiles are always automatically generated by ./prepare and later by ./configure scripts. Instead, developers must write Makefile.am files. There are plenty of examples what they should look like. If you change Makefile.am during development you don't have to run ./prepare, just run normal make. -

+

Configuration files are the files that ./prepare automatically generates and what will be included into public distribution. ./prepare creates for example the ./configure script that is not commited to the CVS. `configure.in' is the file that developers must edit to change ./configure script. After changing one must run ./prepare. -

+ +

diff --git a/public_html/docs.php b/public_html/docs.php index 89982db6..68792712 100644 --- a/public_html/docs.php +++ b/public_html/docs.php @@ -1,30 +1,30 @@ SILC Documentation -

+

Currently the SILC documentation is under work and the software does not have that much of a documentation. -

+

README file from the software: README
Coding Style in SILC source tree: CodingStyle -

+

Coming later: Software manual, SILC Library Reference manual -


+


SILC Protocol Internet Drafts -

+

SILC Protocol is documented and four Internet Drafts exists. These Internet Drafts are also available from IETF. -

+

-

  • Secure Internet Live Conferencing (SILC), Protocol Specification -

    +Secure Internet Live Conferencing (SILC), Protocol Specification +

    Abstract -

    +

    This memo describes a Secure Internet Live Conferencing (SILC) protocol which provides secure conferencing services over insecure network channel. SILC is IRC [IRC] like protocol, however, it is @@ -33,15 +33,15 @@ Abstract Three other Internet Drafts relates very closely to this memo; SILC Packet Protocol [SILC2], SILC Key Exchange and Authentication Protocols [SILC3] and SILC Commands [SILC4]. -

    +

    draft-riikonen-silc-spec-02.txt -


    +


    -

  • SILC Packet Protocol -

    +SILC Packet Protocol +

    Abstract -

    +

    This memo describes a Packet Protocol used in the Secure Internet Live Conferencing (SILC) protocol, specified in the Secure Internet Live Conferencing, Protocol Specification Internet Draft [SILC1]. This @@ -49,15 +49,15 @@ Abstract the contents of the packets. The protocol provides secure binary packet protocol that assures that the contents of the packets are secured and authenticated. -

    +

    draft-riikonen-silc-pp-02.txt -


    +


    -

  • SILC Key Exchange and Authentication Protocols -

    +SILC Key Exchange and Authentication Protocols +

    Abstract -

    +

    This memo describes two protocols used in the Secure Internet Live Conferencing (SILC) protocol, specified in the Secure Internet Live Conferencing, Protocol Specification internet-draft [SILC1]. The @@ -67,21 +67,21 @@ Abstract is derived from several key exchange protocols. SKE uses best parts of the SSH2 Key Exchange protocol, Station-To-Station (STS) protocol and the OAKLEY Key Determination protocol [OAKLEY]. -

    +

    The SILC Connection Authentication protocol provides user level authentication used when creating connections in SILC network. The protocol is transparent to the authentication data which means that it can be used to authenticate the user with, for example, passphrase (pre-shared-secret) or public key (and certificate). -

    +

    draft-riikonen-silc-ke-auth-02.txt -


    +


    -

  • SILC Commands -

    +SILC Commands +

    Abstract -

    +

    This memo describes the commands used in the Secure Internet Live Conferencing (SILC) protocol, specified in the Secure Internet Live Conferencing, Protocol Specification Internet Draft [SILC1]. The @@ -89,9 +89,9 @@ Abstract the commands are used by SILC clients to manage the SILC session, but also SILC servers may use the commands. This memo specifies detailed command messages and command reply messages. -

    +

    draft-riikonen-silc-commands-00.txt -


    - -

    +
    + +

    diff --git a/public_html/download.php b/public_html/download.php index 57c500ce..e2d31a05 100644 --- a/public_html/download.php +++ b/public_html/download.php @@ -1,19 +1,19 @@ Download SILC -

    +

    The latest SILC release is version . Please, read the README and INSTALL files after downloading for instructions how to install and use SILC. -

    +

    This version has the functional server and router linking support. People who is running SILC servers and are interested to get the server linked to the new router on silc.pspt.fi contact me now. -

    +

    Main Download -

    +

    Sources HTTP: tar.gz ( KB), tar.bz2 ( KB)
    -Sources FTP: tar.gz and tar.bz2 -

    +Sources FTP: tar.gz and tar.bz2 +

    Other packages -

    +

    Mandrake: i586, @@ -34,25 +34,24 @@ href="ftp://ftp.free.fr/pub/Distributions_Linux/Mandrake-devel/cooker/contrib/SR src
    Debian: deb -

    +

    CVS Snapshots -

    +

    Daily CVS snapshots are available. These are generated 22:00 GMT every night. Read the CVS page for more information. -

    +

    HTTP: CVS Snapshot -

    +

    Portability -

    +

    The SILC has been reported to work on, at least: -

    -

    +

    + - Linux
    + - FreeBSD
    + - NetBSD
    + - OpenBSD
    + - HP-UX
    + - Solaris
    + - Windows (cygwin) +

    diff --git a/public_html/faq.php b/public_html/faq.php index 47ef3746..435e0397 100644 --- a/public_html/faq.php +++ b/public_html/faq.php @@ -1,6 +1,6 @@ Frequently Asked Questions -

    +

    Q: What is SILC?
    A: SILC (Secure Internet Live Conferencing) is a protocol which provides secure conferencing services in the Internet over insecure channel. SILC @@ -8,18 +8,18 @@ is IRC like although internally they are very different. Biggest similarity between SILC and IRC is that they both provide conferencing services and that SILC has almost same commands as IRC. Other than that they are nothing alike. -

    +

    Biggest differences are that SILC is secure what IRC is not in any way. The network model is also entirely different compared to IRC. -

    +

    Q: Why SILC in the first place?
    A: Simply for fun, nothing more. An actually for need back then when it was started. SILC has been very interesting and educational project. -

    +

    Q: Why use SILC? Why not IRC with SSL?
    A: Sure, that is possible, although, does that secure the entire IRC network? And does that increase or decrease the lags and splits in the IRC network? Does that provide user based security where some specific private message are secured? Does that provide security where some specific channel messages are secured? Security is not just about applying encryption to traffic and SILC is not just about `encrypting the traffic`. You cannot make insecure protocol suddenly secure just by encrypting the traffic. SILC is not meant to be IRC replacement. IRC is good for some things, SILC is good for same and some other things. -

    +

    Q: Can I use SILC with IRC client? What about can I use IRC with SILC client?
    A: Answer for both question is no. IRC client is in no way compatible with SILC server. SILC client cannot currently use IRC but this may @@ -27,7 +27,7 @@ change in the future if IRC support is added to the SILC client. After that one could use both SILC and IRC with the same client. Although, even then one cannot talk from SILC network to IRC network. That just is not possible. -

    +

    Q: Why client/server protocol is based on IRC? Would it be more interesting to implement something extensible and more powerful?
    A: They are not, not the least. Have you read the protocol specification? The client superficially resembles IRC client but everything that happens @@ -39,10 +39,10 @@ behind and not even tried to burden myself with the IRC caveats that will burden IRC and future IRC projects til the end. SILC client resembles IRC client because it is easier for new users to start using SILC when they already know all the commands. -

    +

    Q: Why SILC? Why not IRC3?
    A: Question that is justified no doubt of that. I didn't start doing SILC to be replacement for IRC. SILC was something that didn't exist in 1996 or even today except that SILC is now released. However, I did check out the IRC3 project in 1997 when I started coding and planning the SILC protocol. -

    +

    But, IRC3 is problematic. Why? Because it still doesn't exist. The project is at the same spot where it was in 1997 when I checked it out. And it was old project back then as well. Couple of months ago I checked @@ -57,7 +57,7 @@ making the IRC3 and I wasn't going to be part of that. The fact is that if I would've gone to IRC3 project, nor IRC3 or SILC would exist today. I think IRC3 could be something really great if they just would get their act together and start coding the thing. -

    +

    Q: How secure SILC really is?
    A: A good question which I don't have a answer. SILC has been tried to make as secure as possible. However, there is no security protocol or @@ -65,7 +65,7 @@ security software that has not been vulnerable to some sort of attacks. SILC is in no means different from this. So, it is suspected that there are security holes in the SILC. These holes just needs to be found so that they can be fixed. -

    +

    But to give you some parameters of security SILC uses the most secure crytographic algorithms such as AES, Twofish, Blowfish, RC5, etc. SILC does not have DES or 3DES as DES is insecure and 3DES is just too slow. @@ -73,25 +73,26 @@ SILC also uses cryptographically strong random number generator when it needs random numbers. Public key cryptography uses RSA (PKCS #1) and Diffie Hellman algorithms. Key lengths for ciphers are initially set to 256. For public key algorithms the starting key length is 1024 bits. -

    +

    But the best answer for this question is that SILC is as secure as its weakest link. SILC is open and the protocol is open and in public thus open for security analyzes. -

    +

    To give a list of attacks that are ineffective against SILC: -

    -

  • Man-in-the-middle attacks are ineffective if proper public key +

    +- Man-in-the-middle attacks are ineffective if proper public key infrastructure is used. SILC is vulnerable to this attack if the public keys used in the SILC are not verified to be trusted (as any other -protocol for that matter). -
  • IP spoofing is ineffective (because of encryption and trusted keys). -
  • Attacks that change the contents of the data or add extra data to the -packets are ineffective (because of encryption and integrity checks). -
  • Passive attacks (listenning network traffic) are ineffective (because +protocol for that matter).
    +- IP spoofing is ineffective (because of encryption and trusted keys).
    +- Attacks that change the contents of the data or add extra data to the +packets are ineffective (because of encryption and integrity checks).
    +- Passive attacks (listenning network traffic) are ineffective (because of encryption). Everything is encrypted including authentication data -such as passwords when they are needed. -
  • Any sort of cryptanalytic attacks are tried to make ineffective by -using the best cryptographic algorithms out there. -

    +such as passwords when they are needed.
    +- Any sort of cryptanalytic attacks are tried to make ineffective by +using the best cryptographic algorithms out there.
    +

    More to come later... -

    + +

    diff --git a/public_html/features.php b/public_html/features.php index 86f6adc0..78a96183 100644 --- a/public_html/features.php +++ b/public_html/features.php @@ -1,33 +1,34 @@ Features -

    +

    Features to be included into the final release of SILC. -

    -

  • Normal conferencing services such as private messages, channels, channel messages, etc. All traffic is secured and authenticated. -

    -

  • No unique nicknames. There can be same nicknames in SILC without collisions. SILC has unique Client ID's, Server ID's and Channel ID's to assure that there are no collisions. The maximum length of the nickname is 128 characters. The maximum length of the channel name is 256 characters. -

    -

  • Channels can have channel operators and a channel founder which is the client who created the channel. Channel founder privileges supersedes the channel operator privileges. Also, channel founder privileges may be regained even if the founder leaves the channel. The requirement for this is that the client is connected to the same server it was originally connected. The channel founder cannot be removed from the channel by force. -

    -

  • Channel messages are protected by channel key, generated by the server. The key is re-generated once in an hour. It is possible to set a private key for the channel so that even the servers does not know the key. Actually, it is possible to set several private keys so that only specific users on the channel may decrypt some specific messages. Adding the private key significantly increases the security as nobody else but the users on the channel knows the key. -

    -

  • Private messages are protected using the session keys, generated when connecting to the server. This means that the private messages are decrypted and re-encrypted enroute to the true receiver of the message. However, it is possible to set a private key between two clients and protect the private messages with that key. In this case no server enroute can decrypt the message since they don't have the key. The SILC protocol provides an automatic key negotiation between two clients using the SKE protocol. This makes it very easy to negotiate a shared secret key with another client in the network. -

    -

  • All the other traffic, like commands between client and the server are protected using the session keys. Session keys are re-generated once in an hour. The re-key may be done with or without the PFS (Perfect Forward Secrecy). -

    -

  • Secure key exchange and authentication protocol. SILC Key Exchange (SKE) protocol provides key material used in the SILC sessions in secure manner. The protocol is immune for example to man-in-the-middle attacks and is based on the Diffie-Hellman key exchange algorithm. The SILC Authentication protocol provides strong authentication. Authentication may be based on passphrase or public key (RSA) authentication. For clients there is an option not to use authentication when connecting to servers. -

    -

  • All traffic is encrypted and authenticated using the best cryptographic algorithms out there. Cipher keys are, by default, 256 bits in length and public keys, by default, 1024 bits in length. -

    -

  • Supports the following ciphers: AES, Twofish, Blowfish, Mars, Cast-256, RC5 and RC6. Supports the following hash functions: MD5 and SHA1. Supports the PKCS #1 (RSA) for public key cryptography. -

    -

  • Supports data compression with GZIP to improve performance. -

    -

  • Supports SOCKS4 and SOCKS5 firewall traversal protocols. -

    -

  • SIM (SILC Module) support. Support for loading of shared objects at run-time that provides new and extended features to both SILC client and server. These can provide extra ciphers and extra features to the software. -

    -

  • SILC client can be installed and used without root privileges. -

    -

  • SILC client can be configured by system wide configuration files but with user specific configuration files as well. -

    +

    +- Normal conferencing services such as private messages, channels, channel messages, etc. All traffic is secured and authenticated. +

    +- No unique nicknames. There can be same nicknames in SILC without collisions. SILC has unique Client ID's, Server ID's and Channel ID's to assure that there are no collisions. The maximum length of the nickname is 128 characters. The maximum length of the channel name is 256 characters. +

    +- Channels can have channel operators and a channel founder which is the client who created the channel. Channel founder privileges supersedes the channel operator privileges. Also, channel founder privileges may be regained even if the founder leaves the channel. The requirement for this is that the client is connected to the same server it was originally connected. The channel founder cannot be removed from the channel by force. +

    +- Channel messages are protected by channel key, generated by the server. The key is re-generated once in an hour. It is possible to set a private key for the channel so that even the servers does not know the key. Actually, it is possible to set several private keys so that only specific users on the channel may decrypt some specific messages. Adding the private key significantly increases the security as nobody else but the users on the channel knows the key. +

    +- Private messages are protected using the session keys, generated when connecting to the server. This means that the private messages are decrypted and re-encrypted enroute to the true receiver of the message. However, it is possible to set a private key between two clients and protect the private messages with that key. In this case no server enroute can decrypt the message since they don't have the key. The SILC protocol provides an automatic key negotiation between two clients using the SKE protocol. This makes it very easy to negotiate a shared secret key with another client in the network. +

    +- All the other traffic, like commands between client and the server are protected using the session keys. Session keys are re-generated once in an hour. The re-key may be done with or without the PFS (Perfect Forward Secrecy). +

    +- Secure key exchange and authentication protocol. SILC Key Exchange (SKE) protocol provides key material used in the SILC sessions in secure manner. The protocol is immune for example to man-in-the-middle attacks and is based on the Diffie-Hellman key exchange algorithm. The SILC Authentication protocol provides strong authentication. Authentication may be based on passphrase or public key (RSA) authentication. For clients there is an option not to use authentication when connecting to servers. +

    +- All traffic is encrypted and authenticated using the best cryptographic algorithms out there. Cipher keys are, by default, 256 bits in length and public keys, by default, 1024 bits in length. +

    +- Supports the following ciphers: AES, Twofish, Blowfish, Mars, Cast-256, RC5 and RC6. Supports the following hash functions: MD5 and SHA1. Supports the PKCS #1 (RSA) for public key cryptography. +

    +- Supports data compression with GZIP to improve performance. +

    +- Supports SOCKS4 and SOCKS5 firewall traversal protocols. +

    +- SIM (SILC Module) support. Support for loading of shared objects at run-time that provides new and extended features to both SILC client and server. These can provide extra ciphers and extra features to the software. +

    +- SILC client can be installed and used without root privileges. +

    +- SILC client can be configured by system wide configuration files but with user specific configuration files as well. + +

    diff --git a/public_html/history.php b/public_html/history.php index 8d159809..0970134a 100644 --- a/public_html/history.php +++ b/public_html/history.php @@ -1,6 +1,6 @@ History -

    +

    Even though SILC were released in summer 2000 to the public the idea and the protocol itself is quite old. I got the idea about SILC in its current form in the year 1996 and first lines of codes were written in @@ -13,7 +13,7 @@ number generator that exists in this current release is actually based on the RNG written in 1997. The RNG written in 1997, on the other hand, were based on the SSH's random number generator. The RNG has been rewritten twice since the first version. -

    +

    I stopped writing the SILC later in 1997 when I got busy at school and in work. The pause lasted several months. The development resumed in 1998 when my friend (Juha Räsänen) and I implemented ElGamal algorithm. I @@ -23,7 +23,7 @@ in 1998 by doing rewrite of the SILC in C++. This was obviously a mistake but at that time it seemed like a good idea. Again, in the winter 1999 I got very busy writing my thesis and was forced to stop the development again. I also, started a new job in the spring. -

    +

    Later, in 1999, I decided that this time I'm going to make it the right way. C++ was obviously a bad choice so I decided to fall back to plain C language. I also decided to do complete rewrite and started doing more @@ -33,7 +33,7 @@ development. I started writing SILC in the weekends and actually everytime I had some spare time. I also started a new job but I didn't let that get to my way. The result of this development effort is the release now in public. -

    +

    I've learned a lot by doing the SILC. I guess, when I started it I wasn't that good of a C programmer. That alone was a reason why SILC hasn't seen the day of light before now. My programming style has also changed @@ -41,11 +41,12 @@ dramatically during these years. Actually, it has changed couple times since this last rewrite as well. However, the code style of current SILC release is quite consistent (actually the coding style SILC has been written now I've learned in my current job). -

    +

    There is probably over 85% of new code in this third rewrite. Rest has just been copied from the old versions and only minor changes has been made (like changed function names and overall coding style). I've preserved the dates of the old files (dating back to 1997) that has existed in some forms in the old versions. There is a lot of new code but already I see a lot that needs rewriting. The development continues. -

    + +

    diff --git a/public_html/index.php b/public_html/index.php index 0dfa6b13..2f3d4f26 100644 --- a/public_html/index.php +++ b/public_html/index.php @@ -1,18 +1,22 @@ + SILC Secure Internet Live Conferencing - + + +
    -

    +
    @@ -25,32 +29,31 @@
    -
    - -
    +
    @@ -97,12 +100,12 @@ else
    -webpage by salo at Xtrmntr.org -
    - - -
    +webpage by +salo at Xtrmntr.org | + | +W3C HTML 4.01 compliant + + diff --git a/public_html/lists.php b/public_html/lists.php index cf030b0e..a1a5c470 100644 --- a/public_html/lists.php +++ b/public_html/lists.php @@ -1,17 +1,18 @@ Public SILC Mailing Lists -

    +

    Available since: Sat Jul 22 17:23:48 EEST 2000 -

    +

    There is currently one mailing list available. The mailing list is the main SILC development mailing list. To subscribe to the mailing list visit the following link and follow the instructions on the web page. -

    +

    SILC-devel mailing list -

    +

    After you have subscribed as instructed on the web site you will receive email for further instructions. To send email to the list the email must be destined to: silc-devel at lists.sourceforge.net address. -

    + +

    diff --git a/public_html/news.php b/public_html/news.php index 49173636..5527ca4b 100644 --- a/public_html/news.php +++ b/public_html/news.php @@ -1,51 +1,56 @@ SILC Is Now Available!
    -

    + +

    The new Beta version of SILC is available for testing. Read the README and INSTALL files after downloading for instructions how to compile and use SILC. Report bugs to the SILC development mailing list. -

    +

    This version has the functional server and router linking support. People who is running SILC servers and are interested to get the server linked to the new router on silc.pspt.fi contact me now. -

    +

    Download: SILC Beta Version
    Changes: SILC Changes
    -


    +


    SILC Server Available For Testing -

    + +

    There is SILC server up and running that can be tested. Just give command /server silc.pspt.fi to connect to the server. There may be some action on channel #silc (unless everybody is sleeping) so you might want to give command /join #silc. -

    +

    Available servers: silc.pspt.fi on port 706 is SILC Router and silc.pspt.fi on port 707 is normal SILC server connected to the router. Both are available for free use.
    -


    +


    New Web Pages -

    + +

    As you all can see the SILC Project has a new web page layout. Enjoy!
    -


    +


    Developers Wanted For SILC Project -

    + +

    SILC Project needs developers who would like to contribute their time, skills and ideas to the project. SILC still has a long road ahead before the first official stable release. -

    +

    If You would like to contribute to SILC project please contact me at: priikone at poseidon.pspt.fi -

    + +

    diff --git a/public_html/todo.php b/public_html/todo.php index a5a68720..2aa9384a 100644 --- a/public_html/todo.php +++ b/public_html/todo.php @@ -1,7 +1,20 @@ -

    -
    -
    +
    +
    +
     
    -

    + +
    -- 2.24.0