Code Monkey home page Code Monkey logo

silc / silc Goto Github PK

View Code? Open in Web Editor NEW
64.0 12.0 9.0 11.02 MB

Secure Internet Live Conferencing

Home Page: http://silcnet.org

License: GNU General Public License v2.0

Shell 2.25% TeX 2.18% C 82.74% Perl 1.25% C++ 2.44% Objective-C 0.14% Assembly 0.74% SAS 0.02% Pascal 0.21% PHP 2.37% CSS 0.04% Tcl 0.03% Makefile 0.63% M4 1.28% HTML 2.93% XS 0.60% Yacc 0.08% DIGITAL Command Language 0.04% Batchfile 0.01% Module Management System 0.02%

silc's Introduction

SILC - Secure Internet Live Conferencing
========================================

SILC (Secure Internet Live Conferencing) is a modern and secure
conferencing protocol.


Features
========

SILC provides all the common conferencing services like private messages,
instant messages, channels and groups, and video and audio conferencing.
The main difference to other protocols is that SILC has been designed with
security as its main feature - it is not an add-on or optional plugin -
and security cannot be turned off.

All SILC connections execute SILC Key Exchange protocol, an authenticated
Diffie-Hellman key exchange algorithm, to generate a shared secret session
key.  All SILC packets exchanged between SILC clients and servers are
protected with these keys.

All private messages (instant messages) are protected with private message
keys established using the SILC Key Exchange protocol over the SILC network.
Private messages can be read only by the sender and the recipient of the
message.  SILC servers along the way cannot decrypt the messages.
Optionally, private message key may also be a shared secret, such as
passphrase, or the SILC Key Exchange may be performed peer-to-peer between
clients.  If all these methods fail the session keys are used as the last
resort fallback to encrypt private messages.

All channel and group messages are protected with channel specific keys
generated by the SILC routers and only the members of the channel may read
the messages.  Optionally, channel members may set up a shared secret,
such as passphrase, as the channel key to exclude SILC routers from knowing
the key.


Running SILC
============

After installing the SILC to the system the SILC client is started by
giving command:

	silc

If you want to run with specific configuration file give -f option.

To run the server you should configure the server first.  To run the
server give the command:

	silcd

This will launch the server on to the background.


History
=======

SILC was developed between 1996 and 1999 and released to public in 2000.
SILC was originally developed by Pekka Riikonen.


Contact
=======

Feedback and comments are welcome.  Bug reports should be sent to the
development mailing list.

Official SILC project web site      : http://silcnet.org/
FTP archive for SILC project        : ftp://ftp.silcnet.org/
Development mailing list address    : [email protected]
SILC Server                         : /server silc.silcnet.org

silc's People

Contributors

bmwiedemann avatar priikone avatar skywingvl avatar vlkp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

silc's Issues

README.MACOSX missing from silc-client tarball

The 1.1.11 tarball has no README.MACOSX in the top-level directory, this leads to:

Making install in doc
make install-data-hook
mkdir -p /home/estan/silc-client/share/doc/silc-client
/usr/bin/install -c -m 644 ../doc/FAQ /home/estan/silc-client/share/doc/silc-client/
/usr/bin/install -c -m 644 ../COPYING /home/estan/silc-client/share/doc/silc-client/
/usr/bin/install -c -m 644 ../ChangeLog /home/estan/silc-client/share/doc/silc-client/
/usr/bin/install -c -m 644 ../CREDITS /home/estan/silc-client/share/doc/silc-client/
/usr/bin/install -c -m 644 ../README /home/estan/silc-client/share/doc/silc-client/
/usr/bin/install -c -m 644 ../README.MACOSX /home/estan/silc-client/share/doc/silc-client/
install: ../README.MACOSX: No such file or directory

Since it's specified in doc/Makefile.am.

Not sure if README.MACOSX should be added to the tarball, or the install command removed.

Problem compiling silc 1.1.10 on openSuSE 12.2: Bad value collect2: error: ld returned 1 exit status

I tried compiling the latest version on openSuSE 12.2 with the following command line:

./configure --with-silc-plugin=/usr/lib64/irssi --enable-ipv6 --sbindir=/sbin -sysconfdir=/etc --mandir=/usr/share/man --bindir=/bin --localstatedir=/var --prefix=/usr

This completed with the following output:

Building text frontend ..... : yes, using termcap
Building irssi bot ......... : no
Building irssi proxy ....... : no
Building with IPv6 support . : yes
Building with module support : yes
Building with Perl support . : static (in irssi binary)
Perl library directory ..... : /usr/lib/perl5/5.16.0/x86_64-linux-thread-multi

  • NOTE: This was automatically set to the same directory you gave with
    --prefix. If you want the perl libraries to install to their 'correct'
    path, you'll need to give --with-perl-lib=site option to configure.
    Anyway, installing perl to this directory should work just as well.
    Install prefix ............. : /usr

If there was any problems, read the INSTALL file.

silc-client Configuration Summary:

Target host ...................: x86_64-unknown-linux-gnu
Compiler ......................: gcc
CFLAGS ........................: -D_GNU_SOURCE -g -Wall -finline-functions -Wno-pointer-sign -O2 -D_REENTRANT
LDFLAGS .......................: -L$(silc_top_srcdir)/lib
LIBS ..........................: -lpthread

Installation prefix ...........: /usr
bin directory .................: /bin
sbin directory ................: /sbin
etc directory .................: /etc
man directory .................: /usr/share/man
doc directory .................: /usr/share/doc/silc-client
include directory .............: /usr/include

Compile SILC Client ...........: yes
IPv6 support ..................: yes
Iconv support .................: yes
Assembler optimizations .......: yes
Multi-threads support .........: yes
Debugging enabled .............: no

Compile the sources with 'make' or 'gmake' command.

After running make, I get the following error:
/bin/sh ../../../libtool --tag=CC --mode=link gcc -g -O2 -Wall -o libsilc_core.la -rpath /usr/lib64/irssi/modules clientutil.lo silc-c
hannels.lo silc-core.lo silc-nicklist.lo silc-queries.lo silc-servers.lo silc-expandos.lo silc-servers-reconnect.lo silc-lag.lo silc-chatnet
s.lo silc-cmdqueue.lo client_ops.lo ../../../../../lib/libsilc.la ../../../../../lib/libsilcclient.la
libtool: link: gcc -shared -fPIC -DPIC .libs/clientutil.o .libs/silc-channels.o .libs/silc-core.o .libs/silc-nicklist.o .libs/silc-queries
.o .libs/silc-servers.o .libs/silc-expandos.o .libs/silc-servers-reconnect.o .libs/silc-lag.o .libs/silc-chatnets.o .libs/silc-cmdqueue.o .l
ibs/client_ops.o -Wl,--whole-archive ../../../../../lib/.libs/libsilc.a ../../../../../lib/.libs/libsilcclient.a -Wl,--no-whole-archive -L
/tmp/silc-client-1.1.10/lib -lpthread -O2 -Wl,-soname -Wl,libsilc_core.so.0 -o .libs/libsilc_core.so.0.0.0
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: ../../../../../lib/.libs/libsilc.a(stringprep.o): relocation R_X8
6_64_32S against .rodata' can not be used when making a shared object; recompile with -fPIC ../../../../../lib/.libs/libsilc.a(stringprep.o): could not read symbols: Bad value collect2: error: ld returned 1 exit status make[7]: *** [libsilc_core.la] Error 1 make[7]: Leaving directory/tmp/silc-client-1.1.10/apps/irssi/src/silc/core'
make[6]: *** [all-recursive] Error 1
make[6]: Leaving directory /tmp/silc-client-1.1.10/apps/irssi/src/silc' make[5]: *** [all-recursive] Error 1 make[5]: Leaving directory/tmp/silc-client-1.1.10/apps/irssi/src'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory /tmp/silc-client-1.1.10/apps/irssi' make[3]: *** [all] Error 2 make[3]: Leaving directory/tmp/silc-client-1.1.10/apps/irssi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory /tmp/silc-client-1.1.10/apps' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/tmp/silc-client-1.1.10'
make: *** [all] Error 2

I can provide more logs if required.
Is there something missing from my irssi install?
If I run configure without the "--with-silc-plugin=/usr/lib64/irssi", it compiles successfully.
irssi is version 0.8.15 (which comes with openSuSE).

Thank you,

Chewie

Refactoring a pidgin plugin?

If I am not mistaken, only certain precompiled binaries of pidgin come with the support for SILC, while many linux distros dropped the default support for it (since it requires the silc toolkit). Is it possible to refactor the silc protocol support into a separate plugin (so it can be compiled separately and made available on demand, under the assumption the toolkit is available)?

Master branch please?

I don't quite understand the workflow here, in git world, master should reflect the changes as well, but the last commit there was from 2008. I could see 1.1x branch as default, but it's still confusing.

Any plan to merge back to master?

Meanwhile when is it possible to see seperate repo and releases of client, server and toolkit instead of a jumbo repo?

Is it possible to brige silc with IRC?

I know this defeats the purpose of encrypted communication. But it would help to bring some users in and those who are on silc could communicated encrypted with each other already.

Not sure if it's worth the effort, but our matrix bridge is annoying and people want something that's encrypted in the long run, but nothing that requires a webbrowser or a special client that's not CLI.

silcd start assert crash

When trying to start silcd the following error shows up and the server exits:

[Fri Nov 11 19:14:26 2016] [Error] Could not allocate sha1 hash, probably not registered
silcd: silcrng.c:195: silc_rng_init: Assertion `rng != NULL' failed.
Aborted (core dumped)

Trace:

Process 30051 (silcd) of user 0 dumped core.
                                                  
                                                  Stack trace of thread 30051:
                                                  #0  0x0000007f8e2cca20 raise (libc.so.6)
                                                  #1  0x0000007f8e2cde14 abort (libc.so.6)
                                                  #2  0x0000007f8e2c6264 __assert_fail_base (libc.so.6)
                                                  #3  0x0000007f8e2c62fc __assert_fail (libc.so.6)
                                                  #4  0x0000007f8e475d20 silc_rng_init (libsilc-1.1.so.4)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.