Institute for Applied Information Processing and Communications
Chat Client Example Secure Peer-to-Peer Framework http://sourceforge.net/projects/securep2p Stefan Kraxberger Institute for Applied Information Processing and Communications Graz University of Technology, Inffeldgasse16a, Austria stefan kraxberger@iaik tugraz at
[email protected] www.iaik.tugraz.at Stefan Kraxberger
Secure P2P Framework 1
Institute for Applied Information Processing and Communications
Ch tCli t Example ChatClient E l • • • •
Simple chat client on top of SePP API Can be configured through files (res/ folder) Peers can be started local or distributed Neighborhood of peers is specified through configuration
Stefan Kraxberger
Secure P2P Framework 2
Institute for Applied Information Processing and Communications
St ti the Starting th chat h t client li t SePP folder contains several files • console_chat (Linux/Windows) • start_chat (Linux/Windows) • .project (Eclipse) • Readme.txt console_chat l h t and d start_chat t t h t only l require i a value l as input i t parameter which refers to the peer number start_chat 1 Run configurations in eclipse must specify • Command line parameter (-config res/peerX.config) • VM argument (-Dlog4j.configuration=file:res/log4j.properties) Stefan Kraxberger
Secure P2P Framework 3
Institute for Applied Information Processing and Communications
C fi Configuration ti 1/4 Files in the folder „res“ with ending „.config“ are the configuration files for the specific peers. E.g.: peer1.config, peer2.config These files must be specified as command line parameter if starting a peer (or at least the chat client)
<UseSecurity>true <UseDatabase>false jdbc:mysql://localhost:3306/ j y q sepp sepp
Stefan Kraxberger
… Should security be used in SePP … Should the message be stored in a database …JDBC URI for the database …Use for the databse …Password for the database
Secure P2P Framework 4
Institute for Applied Information Processing and Communications
C fi Configuration ti 2/4
org.sepp.routing.algorithms.DynamicSourceRouting org.sepp.routing.caches.PathCache <UseReversePath>True <UseSourceRoutes>True <UseLinkCache>False
Stefan Kraxberger
… Implementation class of the routing algorithm to use
… Implementation class of the route cache to use … If links are bidirectional reverse path can be used … Should source route be used … Should a link cache instead of a path cache be used
Secure P2P Framework 5
Institute for Applied Information Processing and Communications
C fi Configuration ti 3/4
True <StandardPort>12001 12000 <MessageTimeout>10000 peer1 127.0.0.1:12002 127.0.0.1:12003
Stefan Kraxberger
true“ if the peers are started locally … „true … Port on which this peer listens … Port on which this peer is expecting broadcasts … Time after messages are removed from the queue … Id of this peer … Specification of the neighbors of this peer including the IP and port information where they can be contacted
Secure P2P Framework 6
Institute for Applied Information Processing and Communications
C fi Configuration ti 4/4 <Security>
SharedSecretAuthentication IAIKKeyStore key/iaik-private.keystore smepppass <UseSecretKeystore>false <SecretKeystore>key/iaik-secret.keystore <SecretKeystorePassword>smepppass
RSA/ECB/PKCS1Padding smepppeer smepppeer peer1 >smepppeer
Stefan Kraxberger
… Authentication method used … Type of used keystore … Location of public key keystore … Password of the public key keystore … Should a secret keystore be used … Location of secret key keystore … Password of the secret key keystore … Default public key algorithm … Password of the stored shared secret … Password of the stored private key
Secure P2P Framework 7