init python rewrite

This commit is contained in:
age 2006-08-14 15:40:12 +00:00
parent d0029c26c7
commit e0ec6cb9a4
126 changed files with 15064 additions and 0 deletions

340
pythonrewrite/LICENSE Normal file
View file

@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 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
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
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.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
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,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
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. 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
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. 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:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
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
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
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. 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:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
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
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
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. 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
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. 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
prohibited by law if you do not accept this License. Therefore, by
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. 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
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. 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
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
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
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
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. 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
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. 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
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. 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
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. 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
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
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. 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,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
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
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

70
pythonrewrite/Makefile Normal file
View file

@ -0,0 +1,70 @@
#
# Makefile for the cryptobox web-interface
#
# Copyright (c) 02006 senselab
#
CRYPTOBOX_ROOT = .
PREFIX = /usr/local
SHARE_DIR = $(PREFIX)/share/cryptobox
LIB_DIR = $(PREFIX)/lib/cryptobox
DOC_DIR = $(PREFIX)/share/doc/cryptobox
BUILD_DIR = build_dir
INSTALL = install
OS_TYPE=$(shell uname -o | tr [:upper:] [:lower:] | sed s/[^a-z0-9\._\-]/_/g)
.PHONY: install clean build
build:
$(INSTALL) -d -m 755 $(BUILD_DIR)/etc
$(INSTALL) -c -m 644 conf-examples/cryptobox.conf $(BUILD_DIR)/etc/
@sed -i 's#^HTML_TEMPLATE_DIR=.*$$#HTML_TEMPLATE_DIR=$(SHARE_DIR)/templates#' $(BUILD_DIR)/etc/cryptobox.conf
@sed -i 's#^LANGUAGE_DIR=.*$$#LANGUAGE_DIR=$(SHARE_DIR)/lang#' $(BUILD_DIR)/etc/cryptobox.conf
@sed -i 's#^DOC_DIR=.*$$#DOC_DIR=$(DOC_DIR)/html#' $(BUILD_DIR)/etc/cryptobox.conf
@sed -i 's#^CONFIG_DEFAULTS_DIR=.*$$#CONFIG_DEFAULTS_DIR=$(SHARE_DIR)/defaults#' $(BUILD_DIR)/etc/cryptobox.conf
# choose the appropriate program_locations.conf
if test -e conf-examples/distributions/$(OS_TYPE) ; \
then cat conf-examples/distributions/$(OS_TYPE) ;\
else cat conf-examples/distributions/default ;\
fi >$(BUILD_DIR)/etc/distribution.conf
# compile the suid wrapper
$(MAKE) -C bin LIB_DIR=$(LIB_DIR)
@touch $(BUILD_DIR)-stamp
install: $(BUILD_DIR)-stamp
$(INSTALL) -d -m 755 $(LIB_DIR)
$(INSTALL) -c -m 755 bin/cbox-manage.sh $(LIB_DIR)
$(INSTALL) -c -m 755 bin/cbox-root-actions.sh $(LIB_DIR)
$(INSTALL) -c -m 755 bin/cryptobox.pl $(LIB_DIR)
$(INSTALL) -c -m 755 bin/cryptobox_cgi_wrapper $(LIB_DIR)
$(INSTALL) -c -m 4755 bin/cryptobox_root_wrapper $(LIB_DIR)
$(INSTALL) -d -m 755 $(SHARE_DIR)/lang
$(INSTALL) -c -m 644 lang/* $(SHARE_DIR)/lang/
$(INSTALL) -d -m 755 $(SHARE_DIR)/templates
$(INSTALL) -c -m 644 templates/*.cs $(SHARE_DIR)/templates
$(INSTALL) -d -m 755 $(SHARE_DIR)/defaults
$(INSTALL) -c -m 644 conf-examples/default-settings/* $(SHARE_DIR)/defaults/
$(INSTALL) -d -m 755 $(SHARE_DIR)/html
$(INSTALL) -c -m 644 www-data/*.css $(SHARE_DIR)/html/
$(INSTALL) -c -m 644 www-data/*.png $(SHARE_DIR)/html/
$(INSTALL) -c -m 644 www-data/*.gif $(SHARE_DIR)/html/
#$(INSTALL) -d -m 755 $(SHARE_DIR)/html/screenshots
#$(INSTALL) -c -m 644 www-data/screenshots/*.png $(SHARE_DIR)/html/screenshots/
$(INSTALL) -d -m 755 $(DOC_DIR)/html/en
$(INSTALL) -d -m 755 $(DOC_DIR)/html/de
$(INSTALL) -c -m 644 doc/html/en/* $(DOC_DIR)/html/en/
$(INSTALL) -c -m 644 doc/html/de/* $(DOC_DIR)/html/de/
$(INSTALL) -d -m 755 $(SHARE_DIR)/distributions
$(INSTALL) -c -m 644 conf-examples/distributions/* $(SHARE_DIR)/distributions/
clean:
$(MAKE) -C bin clean
-rm -rf $(BUILD_DIR)
-rm -f $(BUILD_DIR)-stamp

1
pythonrewrite/README Normal file
View file

@ -0,0 +1 @@
link cbox-tree.d/usr/share/doc/cryptobox/README

View file

@ -0,0 +1,37 @@
# Makefile to compile the binary suid-wrapper for cryptobox
#
# LIB_DIR should be defined in the higher level Makefile
#
HEADER_FILE = cryptobox_wrapper.h
SRC_FILE = cryptobox_wrapper.c
CGI_SUID_FILE = cryptobox_cgi_wrapper
ROOT_SUID_FILE = cryptobox_root_wrapper
CGI_FILENAME = cryptobox.pl
ROOT_SCRIPT_FILENAME = cbox-root-actions.sh
# fall back to default, if not overwritten
LIB_DIR = /usr/local/lib/cryptobox
# _always_ recompile (in case of a changed LIB_DIR)
.PHONY: build clean $(CGI_SUID_FILE) $(ROOT_SUID_FILE)
build: $(CGI_SUID_FILE) $(ROOT_SUID_FILE)
$(CGI_SUID_FILE): $(SRC_FILE)
@echo '#define EXEC_PATH "$(LIB_DIR)/$(CGI_FILENAME)"' >$(HEADER_FILE)
$(CC) -o $(CGI_SUID_FILE) $(SRC_FILE)
-rm $(HEADER_FILE)
$(ROOT_SUID_FILE): $(SRC_FILE)
@echo '#define EXEC_PATH "$(LIB_DIR)/$(ROOT_SCRIPT_FILENAME)"' >$(HEADER_FILE)
$(CC) -o $(ROOT_SUID_FILE) $(SRC_FILE)
-rm $(HEADER_FILE)
clean:
-rm -f $(CGI_SUID_FILE) $(ROOT_SUID_FILE) $(HEADER_FILE)

474
pythonrewrite/bin/cbox-manage.sh Executable file
View file

@ -0,0 +1,474 @@
#!/bin/sh
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
# $Id$
#
# this script does EVERYTHING
# all other scripts are only frontends :)
#
# called by:
# - some rc-scripts
# - the web frontend cgi
#
# TODO: check permissions and owners of config files, directories and scripts before
# running cbox-root-actions.sh
set -eu
# default location of config file
CONF_FILE=/etc/cryptobox/cryptobox.conf
LIB_DIR=$(dirname "$0")
# to determine a nice default partition name
DEVICE_NAME_PREFIX="Disk #"
# read the default setting file, if it exists
test -e /etc/default/cryptobox && . /etc/default/cryptobox
test ! -e "$CONF_FILE" && echo "Could not find the configuration file: $CONF_FILE" >&2 && exit 1
# parse config file
. "$CONF_FILE"
test ! -e "$CONF_FILE" && echo "Could not find the distribution specific configuration file: $CONF_FILE" >&2 && exit 1
# parse the distribution specific file
. "$DISTRIBUTION_CONF"
# check for writable log file
test -w "$LOG_FILE" || LOG_FILE=/tmp/$(basename "$LOG_FILE")
# retrieve configuration directory
CONFIG_DIR="$(getent passwd $CRYPTOBOX_USER | cut -d ':' -f 6)/config"
CONFIG_MARKER=cryptobox.marker
## configuration
ROOT_PERM_SCRIPT="$LIB_DIR/cryptobox_root_wrapper"
# ROOT_PERM_SCRIPT needs the MNT_PARENT setting
export MNT_PARENT="$(cd ~; pwd)/mnt"
######## stuff ##########
# all partitions with a trailing number
ALL_PARTITIONS=$(cat /proc/partitions | sed '1,2d; s/ */ /g; s/^ *//' | cut -d " " -f 4 | grep '[0-9]$')
#########################
function log_msg()
{
# the log file is (maybe) not writable during boot - try
# before writing ...
test -w "$LOG_FILE" || return 0
echo >>"$LOG_FILE"
echo "##### `date` #####" >>"$LOG_FILE"
echo "$1" >>"$LOG_FILE"
}
function error_msg()
# parameters: ExitCode ErrorMessage
{
local all=$@
test $# -ne 2 && error_msg 1 "*** invalid call of error_msg *** $all"
echo "[`date`] - $2" | tee -a "$LOG_FILE" >&2
# print the execution stack - not usable with busybox
# caller | sed 's/^/\t/' >&2
exit "$1"
}
# Parameter: device
function is_device_allowed() {
# check for invalid characters and exit if one is found
local device=$(echo "$1" | sed 's#[^a-zA-Z0-9_\-\./]##g')
test "$1" = "$device" || return 1
# remove leading "/dev/"
device=$(echo "$device" | sed 's#^/dev/##')
# return for empty name
test -z "$device" && return 1
for a in $ALL_PARTITIONS
do echo "$device" | grep -q "^$a.*" && return 0
done
# no matching device found - exit with error
return 1
}
function config_set_value()
# parameters: SettingName [SettingValue]
# read from stdin if SettingValue is not defined
{
if test $# -gt 1
then echo "$2" > "$CONFIG_DIR/$1"
else cat - >"$CONFIG_DIR/$1"
fi
}
function config_get_value()
# parameters: SettingName
{
# use mounted config, if it exists - otherwise use defaults
local conf_dir
test -z "$1" && error_msg 1 "empty setting name"
# check for existence - maybe use default values (even for old
# releases that did not contain this setting)
if test -e "$CONFIG_DIR/$1"
then cat "$CONFIG_DIR/$1"
elif test -e "$CONFIG_DEFAULTS_DIR/$1"
then cat "$CONFIG_DEFAULTS_DIR/$1"
else case "$1" in
# you may place default values for older versions here
# for compatibility
* )
error_msg 2 "unknown configuration value ($1)"
;;
esac
fi
return 0
}
function list_partitions_of_type()
# parameter: { config | crypto | plaindata | unused }
{
local config=
local crypto=
local plaindata=
local unused=
for a in $ALL_PARTITIONS
do if "$ROOT_PERM_SCRIPT" is_crypto_partition "/dev/$a"
then crypto="$crypto /dev/$a"
elif "$ROOT_PERM_SCRIPT" is_config_partition "/dev/$a"
then config="$config /dev/$a"
elif "$ROOT_PERM_SCRIPT" is_plaindata_partition "/dev/$a"
then plaindata="$plaindata /dev/$a"
else unused="$unused /dev/$a"
fi
done
case "$1" in
config )
echo "$config"
;;
crypto )
echo "$crypto"
;;
plaindata )
echo "$plaindata"
;;
unused )
echo "$unused"
;;
* )
error_msg 11 "wrong parameter ($1) for list_partition_types in $(basename $0)"
;;
esac | tr " " "\n" | grep -v '^$'
return 0
}
# Parameter: DEVICE
function get_device_mnt_name() {
"$ROOT_PERM_SCRIPT" get_device_mnt_name "$1"
}
# Parameter: DEVICE
function get_device_uuid() {
"$ROOT_PERM_SCRIPT" get_device_uuid "$1"
}
# Parameter: DEVICE
# return the readable name of the crypto container, if it is already defined
# if undefined - return the uuid
function get_device_name() {
local uuid=$(get_device_uuid "$1")
local dbname=$(config_get_value "names.db" | grep "^$uuid:" | cut -d ":" -f 2-)
# return dbname if it exists
test -n "$dbname" && echo "$dbname" && return 0
# find a nice name for the new partition
local counter=1
local test_name
local test_uuid
local test_result
# try to find a name with the defined "prefix" followed by a number ...
while true
do test_name="$DEVICE_NAME_PREFIX$counter"
if config_get_value "names.db" | grep -q ":$test_name$"
then counter=$((counter+1))
else # save it for next time
set_device_name "$1" "$test_name"
echo "$test_name"
return 0
fi
done
}
function set_device_name()
# TODO: the implementation is quite ugly, but it works (tm)
# Parameter: DEVICE NAME
{
local uuid=$(get_device_uuid "$1")
# remove the old setting for this device and every possible entry with the same name
local new_config=$(config_get_value 'names.db' | sed "/^$uuid:/d; /^[^:]*:$2$/d"; echo "$uuid:$2")
echo "$new_config" | config_set_value "names.db"
}
function does_crypto_name_exist()
# Parameter: NAME
{
config_get_value 'names.db' | grep -q "^[^:]*:$1$"
}
function create_crypto()
# Parameter: DEVICE NAME KEYFILE
# keyfile is necessary, to allow background execution via 'at'
{
local device=$1
local name=$2
local keyfile=$3
# otherwise the web interface will hang
# passphrase may be passed via command line
local key=$(<"$keyfile")
# remove the passphrase-file as soon as possible
dd if=/dev/zero of="$keyfile" bs=512 count=1 2>/dev/null
rm "$keyfile"
log_msg "Creating crypto partition with the cipher $DEFAULT_CIPHER on $device"
echo "$key" | "$ROOT_PERM_SCRIPT" create_crypto "$device"
set_crypto_name "$device" "$name"
}
function is_config_active() {
test -f "$CONFIG_DIR/$CONFIG_MARKER"
}
# Parameter: DEVICE
function is_mounted() {
local name=$(get_device_mnt_name "$1")
test -n "$name" && mountpoint -q "$MNT_PARENT/$name"
}
# Parameter: DEVICE
function is_plain() {
"$ROOT_PERM_SCRIPT" is_plain_partition "$1"
}
# Parameter: DEVICE
function is_encrypted() {
"$ROOT_PERM_SCRIPT" is_crypto_partition "$1"
}
# list which allowed disks are at the moment connected with the cbox
function get_available_disks() {
for scan in $SCAN_DEVICES
do for avail in $ALL_PARTITIONS
do echo "$avail" | grep -q "^$scan[^/]*" && echo "/dev/$avail"
done
done
return 0
}
# Parameter: DEVICE
function mount_crypto() {
local device=$1
test -z "$device" && error_msg 4 'No valid harddisk found!'
is_mounted "$device" && echo "The crypto filesystem is already active!" && return
# passphrase is read from stdin
log_msg "Mounting a crypto partition from $device"
"$ROOT_PERM_SCRIPT" mount "$device" >>"$LOG_FILE" 2>&1
}
function umount_partition() {
# Parameter: device
local container=$(get_device_name "$1")
"$ROOT_PERM_SCRIPT" umount "$1"
}
function box_purge()
# removing just the first bytes from the harddisk should be enough
# every harddisk will be overriden!
# this feature is only useful for validation
{
# TODO: not ALL harddisks, please!
get_available_disks | while read a
do log_msg "Purging $a ..."
"$ROOT_PERM_SCRIPT" trash_device "$a"
done
}
function turn_off_all_containers() {
# TODO - needs to be implemented
return 0
}
### main ###
# set PATH because thttpd removes /sbin and /usr/sbin for cgis
export PATH=/usr/sbin:/usr/bin:/sbin:/bin
ACTION=help
test $# -gt 0 && ACTION=$1 && shift
case "$ACTION" in
crypto-up )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'crypto-up'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
mount_crypto "$1"
;;
crypto-down )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'crypto-down'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
umount_partition "$1"
;;
init )
init_cryptobox </dev/null >>"$LOG_FILE" 2>&1
;;
list_container )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'list_container'"
case "$1" in
config | unused | plaindata | crypto )
list_partitions_of_type "$1"
;;
* )
return 1
;;
esac
return 0
;;
get_device_name )
# Parameter: DEVICE
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'get_device_name'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
get_device_name "$1"
;;
set_device_name )
# Parameter: DEVICE NAME
test $# -ne 2 && error_msg 10 "invalid number of parameters for 'set_device_name'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
set_device_name "$1" "$2"
;;
device_init )
# Parameter: DEVICE [KEYFILE]
test $# -lt 1 && error_msg 10 "invalid number of parameters for 'device_init' ($@)"
test $# -gt 2 && error_msg 10 "invalid number of parameters for 'device_init' ($@)"
if test $# -eq 2
then test -z "$2" -o ! -e "$2" && error_msg 11 "invalid keyfile ($2) given for 'device_init'"
fi
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
if test $# -eq 2
then "$ROOT_PERM_SCRIPT" create_crypto "$1" "$2"
else "$ROOT_PERM_SCRIPT" create_plain "$1"
fi
true
;;
is_mounted )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'is_mounted'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
is_mounted "$1"
;;
is_encrypted )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'is_encrypted'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
is_encrypted "$1"
;;
is_plain )
test $# -ne 1 && error_msg 10 "invalid number of parameters for 'is_plain'"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
is_plain "$1"
;;
check_config)
is_config_active
;;
get_available_disks )
get_available_disks
;;
set_config )
test $# -ne 2 && error_msg 7 "'set_config' requires two parameters"
config_set_value "$1" "$2"
;;
get_config )
test $# -ne 1 && error_msg 6 "'get_config' requires exactly one parameter"
config_get_value "$1"
;;
get_capacity_info )
test $# -ne 1 && error_msg 6 "'get_capacity_info' requires exactly one parameter"
is_device_allowed "$1" || error_msg 12 "invalid device: $1"
is_mounted "$1" || error_msg 13 "the device is not mounted: $1"
name=$(get_device_mnt_name "$1")
df -h "$MNT_PARENT/$name" | tail -1
;;
diskinfo )
get_available_disks | while read a
do "$ROOT_PERM_SCRIPT" diskinfo "$a"
done 2>/dev/null
;;
box-purge )
log_msg "Cleaning the CryptoBox ..."
turn_off_all_containers
"$0" config-down
box_purge >>"$LOG_FILE" 2>&1
;;
poweroff )
log_msg "Shutting down the Cryptobox ..."
turn_off_all_containers
"$ROOT_PERM_SCRIPT" poweroff
;;
reboot )
log_msg "Rebooting the Cryptobox ..."
turn_off_all_containers
"$ROOT_PERM_SCRIPT" reboot
;;
umount_all )
log_msg "Unmounting all volumes ..."
turn_off_all_containers
;;
* )
echo "[$(basename $0)] - unknown action: $ACTION" >&2
echo "Syntax: $(basename $0) ACTION [PARAMS]"
echo " crypto-up - mount crypto partition"
echo " crypto-down - unmount crypto partition"
echo " crypto-create - a wrapper for 'crypto-create-bg'"
echo " crypto-create-bg - create encrypted blockdevice and run mkfs"
echo " is_mounted - check, if crypto partition is mounted"
echo " check_config - check, if the configuration is usable"
echo " get_available_disks - shows all accessible disks"
echo " get_current_ip - get the current IP of the network interface"
echo " set_config NAME VALUE - change a configuration setting"
echo " get_config NAME - retrieve a configuration setting"
echo " get_device_name DEVICE - retrieve the human readable name of a partition"
echo " set_device_name DEVICE - set the human readable name of a partition"
echo " device_init DEVICE KEYFILE - initialize the filesystem of a partition (the keyfile just contains the passphrase)"
echo " get_capacity_info - print the output of 'df' for the (mounted) partition"
echo " diskinfo - show the partition table of the harddisk"
echo " box-purge - destroy the partition tables of all harddisks (delete everything)"
echo " poweroff - turn off the computer"
echo " reboot - reboot the computer"
echo
;;
esac
exit 0

View file

@ -0,0 +1,341 @@
#!/bin/sh
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
# $Id$
#
# this script is responsible for all dangerous actions, that require root privileges
# every action should be checked at least TWICE a day for open holes :)
# usually will get call via sudo
#
# called by:
# - cbox-manage.sh
#
set -eu
LIB_DIR=$(dirname "$0")
LIB_DIR=$(cd "$LIB_DIR"; pwd)
test "$(id -u)" -ne 0 && echo "$(basename $0) - only root may call this script" >&2 && exit 100
# read the default setting file, if it exists
test -e /etc/default/cryptobox && . /etc/default/cryptobox
# set CONF_FILE to default value, if not configured in /etc/default/cryptobox
CONF_FILE=${CONF_FILE:-/etc/cryptobox/cryptobox.conf}
# parse config file
. "$CONF_FILE"
# parse distribution specific file
. "$DISTRIBUTION_CONF"
CB_SCRIPT="$LIB_DIR/cbox-manage.sh"
CONFIG_MARKER=cryptobox.marker
############ some useful functions ###############
# check if the given device is part of the SCAN_DEVICE list
# every entry in SCAN_DEVICES is matched as "^/dev/${SCAN_DEVICE}[^/]*$" against
# the given device
# other devices may not be touched
function is_device_allowed()
# parameter: device
{
for a in $SCAN_DEVICES
do echo "$1" | grep -q "^/dev/${a}[^/]*$" && return 0
done
return 1
}
# return the uuid of the partition (if possible)
# this works at least for luks, ext2/3 and vfat partitions
function get_device_uuid() {
local UUID
# check for luksUUID or ext2/3-uuid
if is_luks_device "$1"
then UUID=$("$CRYPTSETUP" luksUUID "$1")
else test -x "$BLKID" && UUID=$("$BLKID" -s UUID -o value -c /dev/null -w /dev/null "$1" 2>/dev/null)
fi
if test -z "$UUID"
then get_device_flat_name "$1"
else echo "$UUID"
fi
return 0
}
# the device name is "flattened"
function get_device_flat_name() {
echo "$1" | sed 's#/#_#g'
}
# the basename of the mountpoint for this device - should be somehow human_readable
function get_device_mnt_name() {
"$CB_SCRIPT" get_device_name "$1"
}
# every devmapper name should look like a UUID
function is_uuid_valid() {
local hex=[0-9a-f]
echo "$1" | grep -q "^$hex\{8\}-$hex\{4\}-$hex\{4\}-$hex\{4\}-$hex\{12\}$"
}
# parameter ExitCode ErrorMessage
function error_msg() {
echo "CBOX-ERROR: [$(basename $0) - $ACTION] - $2" >&2
exit $1
}
# parameter: device sfdisk_layout_setup
# e.g.: /dev/hda "0,1,L \n,,L\n"
function partition_device() {
# TODO: allow different layouts
# TODO: skip config partition if a configuration is already active
# sfdisk -n doesn't actually write (for testing purpose)
if echo -e "$2" | "$SFDISK" -n "$1"
then echo -e "$2" | "$SFDISK" "$1" || return 1
else return 2
fi
true
}
function is_luks_device()
# parameter: device
{
"$CRYPTSETUP" isLuks "$1" 2>/dev/null
}
################ main ####################
ACTION=unknown
test $# -gt 0 && ACTION=$1 && shift
case "$ACTION" in
partition_disk )
test $# -ne 2 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
partition_device "$1" "$2" || \
error_msg 2 "failed to create new partition table on device $1"
;;
mount )
# parameters: device
# returns the relative name of the mointpoint for success
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
mnt_name=$(get_device_mnt_name "$1")
mountpoint -q "$MNT_PARENT/$mnt_name" && \
error_msg 5 "a device with the same name ($mnt_name) is already mounted"
mkdir -p "$MNT_PARENT/$mnt_name"
if is_luks_device "$1"
then "$CRYPTSETUP" luksOpen "$1" "$mnt_name" || \
error_msg 6 "could not open encrypted device $1"
if mount "$DEV_MAPPER_DIR/$mnt_name" "$MNT_PARENT/$mnt_name"
then true
else "$CRYPTSETUP" luksClose "$mnt_name" || true
error_msg 7 "wrong password for $1 supplied"
fi
else mount "$1" "$MNT_PARENT/$mnt_name" || \
error_msg 8 "invalid filesystem on device $1"
fi
# just in case, that there is no ext2/3 filesystem:
# set uid option (will fail silently for ext2/3)
# TODO: there is no FILE_USER setting anymore - do we still need it?
#mount -o remount,uid="$FILE_USER" "$MNT_PARENT/$name" 2>/dev/null || true
# adapt top-level permission to current setup - again: may fail silently
#chown "$FILE_USER" "$MNT_PARENT/$name" 2>/dev/null || true
true
;;
umount )
#parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
mnt_name=$(get_device_mnt_name "$1")
mountpoint -q "$MNT_PARENT/$mnt_name" || \
error_msg 9 "the device ($1) is not mounted as '$mnt_name'"
# try to unmount - do it in lazy mode
umount -l "$MNT_PARENT/$mnt_name"
# TODO: check, what happens, if there are open files - does the device gets mapping removed?
# remove (if necessary) the device mapping
if test -e "$DEV_MAPPER_DIR/$mnt_name"
then "$CRYPTSETUP" luksClose "$mnt_name" || \
error_msg 11 "could not remove the device mapper ($mnt_name) for device $1"
fi
# try to remove the mountpoint - a failure is not important
rmdir "$MNT_PARENT/$mnt_name" || true
# set exitcode
mountpoint -q "$MNT_PARENT/$mnt_name" && exit 1
true
;;
create_crypto )
# parameter: device keyfile
test $# -ne 2 && error_msg 1 "wrong number of parameters"
keyfile=$2
test -e "$keyfile" || error_msg 2 "keyfile ($keyfile) not found"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
# read the passphrase from stdin
# the iter-time is in milliseconds - keep it low for fast mounting
cat "$keyfile" | \
"$CRYPTSETUP" --cipher "$DEFAULT_CIPHER" --iter-time 2000 --batch-mode luksFormat "$1" || \
error_msg 11 "failed to create the encrypted partition"
name=$(get_device_mnt_name "$1")
cat "$keyfile" | "$CRYPTSETUP" --batch-mode luksOpen "$1" "$name" || \
error_msg 12 "failed to open the encrypted partition"
# trash the passphrase in keyfile
echo "0123456789abcdefghijklmnopqrstuvwxyz" > "$keyfile"
# the disk cache surely prevents the previous line from being written, but we do it anyway ...
echo "zyxwvutsrqponmlkjihgfedcba9876543210" > "$keyfile"
rm "$keyfile"
# complete in background
(
"$MKFS_DATA" "$DEV_MAPPER_DIR/$name" || \
error_msg 13 "failed to create the encrypted filesystem"
"$CRYPTSETUP" --batch-mode luksClose "$name" || \
error_msg 14 "failed to close the encrypted mapped device"
) </dev/null >/dev/null 2>/dev/null &
true
;;
create_plain )
# parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters for 'create_plain'"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
# complete in background
(
"$MKFS_DATA" "$1" || \
error_msg 15 "failed to create the plaintext filesystem"
) </dev/null >/dev/null 2>/dev/null &
true
;;
get_device_mnt_name )
# parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
get_device_mnt_name "$1"
;;
get_device_uuid )
# parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
get_device_uuid "$1"
;;
is_config_partition )
# parameter: device
# returns exitcode 0 if the device contains a configuration
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
is_config=0
tmp_dir=/tmp/$(basename $0)-$$-mnt
mkdir -p "$tmp_dir"
# error means "no config partition"
if mount "$1" "$CONFIG_DIR"
then test -e "$CONFIG_DIR/$CONFIG_MARKER" && is_config=1
umount "$CONFIG_DIR" || \
error_msg 14 "unable to unmount configation partition after probing"
fi
rmdir "$tmp_dir" || true
# return 0 if $device is a config partition
test "$is_config" -eq 1 && exit 0
exit 1
;;
is_crypto_partition )
# parameter: device
# returns exitcode 0 if the device contains a luks header
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
is_luks_device "$1"
;;
is_plain_partition )
# parameter: device
# returns exitcode 0 if the device contains a readable filesystem
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
status=0
tmp_dir=/tmp/$(basename $0)-$$-mnt
mkdir -p "$tmp_dir"
if mount "$1" "$tmp_dir" >/dev/null 2>/dev/null
then test ! -e "$tmp_dir/$CONFIG_MARKER" && status=1
umount "$tmp_dir"
fi
rmdir "$tmp_dir" || true
test "$status" -eq 1 && exit 0
exit 1
;;
trash_device )
# parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
dd if=/dev/urandom of="$1" bs=512 count=1 2>/dev/null
;;
diskinfo )
# parameter: device
test $# -ne 1 && error_msg 1 "wrong number of parameters"
is_device_allowed "$1" || \
error_msg 3 "this device ($1) is not listed in SCAN_DEVICES (see $CONF_FILE)"
"$SFDISK" -L -q -l "$1"
;;
update_network )
# parameter: none
ip=
# TODO: can we avoid to hard-code the filename ($CONFIG_DIR/ip) here?
test -e "$CONFIG_DIR/ip" && ip=$(<"$CONFIG_DIR/ip")
test -n "$z" && ifconfig "$NET_IFACE" "$ip"
;;
poweroff )
# TODO: check configuration setting before
"$POWEROFF"
;;
reboot )
# TODO: check configuration setting before
"$REBOOT"
;;
* )
echo "[$(basename $0)] - unknown action: $ACTION" >&2
echo "Syntax: $(basename $0) ACTION PARAMETERS"
echo ' partition_disk $device $disk_layout'
echo ' get_device_name $device'
echo ' get_device_uuid $device'
echo ' create_crypto $device'
echo ' mount $device'
echo ' umount $name'
echo ' create_config $device'
echo ' mount_config $device'
echo ' remount_config { ro | rw }'
echo ' umount_config'
echo ' is_config_partition $device'
echo ' is_plain_partition $device'
echo ' is_crypto_partition $device'
echo ' trash_device $device'
echo ' diskinfo $device'
echo ' update_network'
echo ' poweroff'
echo ' reboot'
echo ' help'
echo
test "$ACTION" = "help" && exit 0
# return error for any unknown/unspecified action
exit 1
;;
esac

946
pythonrewrite/bin/cryptobox.pl Executable file
View file

@ -0,0 +1,946 @@
#!/usr/bin/perl
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
# $Id$
#
# the web interface of the CryptoBox
#
###############################################
use strict;
use CGI;
use ClearSilver;
use ConfigFile;
use English;
use CGI::Carp;
use IO::File;
use POSIX;
use constant CRYPTOBOX_VERSION => 0.3;
# debug levels
use constant DEBUG_NONE => 0;
use constant DEBUG_ERROR => 1;
use constant DEBUG_WARN => 2;
use constant DEBUG_INFO => 3;
# drop privileges
$UID = $EUID;
$GID = $EGID;
# necessary for suid perl scripts (see 'man perlsec' for details)
$ENV{'PATH'} = '/bin:/usr/bin';
delete @ENV{qw(IFS CDPATH ENV BASH_ENV)}; # Make %ENV safer
my $CONFIG_FILE = '/etc/cryptobox/cryptobox.conf';
my $pagedata;
my ($LANGUAGE_DIR, $DEFAULT_LANGUAGE, $HTML_TEMPLATE_DIR, $DOC_DIR);
my ($CB_SCRIPT, $LOG_FILE, $IS_DEVEL, $STYLESHEET_URL, $DEBUG_LEVEL);
# get the directory of the cryptobox scripts/binaries and untaint it
$CB_SCRIPT = $0;
$CB_SCRIPT =~ m/^(.*)\/[^\/]*$/;
$CB_SCRIPT = ($1)? "$1/cbox-manage.sh" : './cbox-manage.sh';
&fatal_error ("could not find configuration file ($CONFIG_FILE)") unless (-e $CONFIG_FILE);
my $config = ConfigFile::read_config_file($CONFIG_FILE);
$LOG_FILE = $config->{LOG_FILE};
$LANGUAGE_DIR = $config->{LANGUAGE_DIR};
$DEFAULT_LANGUAGE = $config->{LANGUAGE};
$HTML_TEMPLATE_DIR = $config->{HTML_TEMPLATE_DIR};
$DOC_DIR = $config->{DOC_DIR};
$IS_DEVEL = ( -e $config->{DEV_FEATURES_SCRIPT});
$STYLESHEET_URL = $config->{STYLESHEET_URL};
if (defined($config->{DEBUG_LEVEL})) {
$DEBUG_LEVEL = $config->{DEBUG_LEVEL};
} else {
$DEBUG_LEVEL = DEBUG_ERROR; # default debug level
}
my $query = new CGI;
#################### subs ######################
# for fatal errors without the chance of clearsilver-rendering
sub fatal_error() {
my $message = shift;
print "Content-Type: text/html\n\n";
print "<html><head><title>CryptoBox</title></head>\n";
print "<body>\n";
print '<h1 align="center">' . $message . "</h1>\n";
print "</body></html>\n";
die "[CryptoBox]: $message";
}
sub debug_msg() {
my ($level, $message) = @_;
return 0 unless ($level >= $DEBUG_LEVEL);
warn "[cryptobox]: $message";
}
sub load_hdf {
my $hdf = ClearSilver::HDF->new();
my $fname = "$HTML_TEMPLATE_DIR/main.cs";
&fatal_error ("Template directory is invalid ($fname not found)!") unless (-e "$fname");
$hdf->setValue("Settings.TemplateDir","$HTML_TEMPLATE_DIR");
&fatal_error ("Documentation directory ($DOC_DIR) not found!") unless (-d "$DOC_DIR");
$hdf->setValue("Settings.DocDir","$DOC_DIR");
# if it was requested as directory index (link from index.html), we should
# set a real script name - otherwise links with a query string will break
# ignore POST part of the SCRIPT_NAME (after "&")
(my $script_url = $ENV{'SCRIPT_NAME'}) =~ m/^[^&]*/;
$hdf->setValue("ScriptName", ($ENV{'SCRIPT_NAME'} eq '/')? '/cryptobox' : $script_url );
# set stylesheet url
$hdf->setValue("Settings.Stylesheet",$STYLESHEET_URL);
&load_selected_language($hdf);
&get_available_languages($hdf);
return $hdf;
}
sub load_selected_language {
my $data = shift;
my $config_language;
# load $DEFAULT_LANGUAGE - this is necessary, if a translation is incomplete
$data->readFile("$LANGUAGE_DIR/$DEFAULT_LANGUAGE" . ".hdf");
# load configured language, if it is valid
$config_language = &get_cbox_config("language");
$config_language = $DEFAULT_LANGUAGE unless (&validate_language("$config_language"));
# check for preferred browser language, if the box was not initialized yet
if ( ! &check_config())
{
my $prefLang = &get_browser_language();
# take it, if a supported browser language was found
$config_language = $prefLang unless ($prefLang eq '');
}
######### temporary language setting? ############
# the default language can be overriden by the language links in the
# upper right of the page
if ($query->param('weblang')) {
my $weblang = $query->param('weblang');
if (&validate_language($weblang)) {
# load the data
$config_language = "$weblang";
# add the setting to every link
# how it should be done now ...
$data->setValue('Settings.LinkAttrs.weblang', "$weblang");
# old way of doing this ... (TODO: to be removed)
$data->setValue('Data.PostData.weblang', "$weblang");
} else {
# no valid language was selected - so you may ignore it
$data->setValue('Data.Warning', 'InvalidLanguage');
}
}
# import the configured resp. the temporarily selected language
$data->readFile("$LANGUAGE_DIR/$config_language" . ".hdf");
########## select documentation language ##########
if (&validate_doc_language($config_language)) {
# selected web interface language
$data->setValue('Settings.DocLang', "$config_language");
} elsif (&validate_doc_language($DEFAULT_LANGUAGE)) {
# configured CryptoBox language
$data->setValue('Settings.DocLang', "$DEFAULT_LANGUAGE");
} else {
# default hardcoded language (english)
$data->setValue('Settings.DocLang', "en");
}
}
# import the names of all available languages
sub get_available_languages {
my $data = shift;
my ($file, @files, $hdf, $lang_name);
opendir(DIR, $LANGUAGE_DIR) or &fatal_error ("Language directory ($LANGUAGE_DIR) not accessible!");
@files = sort grep { /.*\.hdf$/ } readdir(DIR);
close(DIR);
foreach $file (@files) {
$hdf = ClearSilver::HDF->new();
$hdf->readFile("$LANGUAGE_DIR/$file");
substr($file, -4) = "";
$lang_name = $hdf->getValue("Lang.Name", "$file");
$data->setValue("Data.Languages." . "$file", "$lang_name");
}
}
# look for preferred browser language setting
# this code was adapted from Per Cederberg - http://www.percederberg.net/home/perl/select.perl
# it returns an empty string, if no supported language was found
sub get_browser_language {
my ($str, @langs, @res);
# Use language preference settings
if ($ENV{'HTTP_ACCEPT_LANGUAGE'} ne '')
{
@langs = split(/,/, $ENV{'HTTP_ACCEPT_LANGUAGE'});
foreach (@langs)
{
# get the first part of the language setting
($str) = ($_ =~ m/([a-z]+)/);
# check, if it supported by the cryptobox
$res[$#res+1] = $str if validate_language($str);
}
}
# if everything fails - return empty string
$res[0] = "" if ($#res lt 0);
return $res[0];
}
sub log_msg {
my $text = shift;
open(LOGFILE,">> $LOG_FILE");
print LOGFILE "$text";
close(LOGFILE);
}
sub check_ssl {
# check, if we are behind a proxy with ssl (e.g. pound)
return (0==0) if ($ENV{'HTTP_FRONT_END_HTTPS'} =~ m/^on$/i);
# environment variable set (e.g. via apache directive "SetEnv HTTPS On")
return (0==0) if ($ENV{'HTTPS'} =~ m/^on$/i);
# port 80 -> not encrypted
return (0==1) if ($ENV{'SERVER_PORT'} == 80);
# other ports -> maybe ok - we accept it
return (0==0);
}
# check, if the given device is mounted/used somehow
# Paramter: device
sub check_mounted {
my ($dev) = @_;
return (system($CB_SCRIPT,"is_mounted",$dev) == 0);
}
sub check_config {
return (system($CB_SCRIPT,"check_config") == 0);
}
sub exec_cb_script {
my (@params) = @_;
my ($pid, @result);
&fatal_error("unable to fork process") unless defined($pid = open(PROG_OUT, "-|"));
if (!$pid) {
# child
exec($CB_SCRIPT, @params) or &fatal_error("failed to execute $CB_SCRIPT!");
exit 0;
} else {
# parent
# only read lines containing at least one non-whitespace character
@result = grep /\S/, <PROG_OUT>;
foreach (@result) { chomp; }
unless (close PROG_OUT) {
&debug_msg(DEBUG_WARN, "error while running $CB_SCRIPT (params:" . join(" ",@params) . "): $?");
return undef;
}
}
if (wantarray) {
return @result;
} elsif (@result > 0) {
return join('',@result);
} else {
return "";
}
}
sub check_init_running {
# TODO: improve this
return (0==1);
}
# Parameter: device
sub check_device_plaintext {
return (system("$CB_SCRIPT","is_plain",$1) == 0);
}
# Parameter: device
sub check_device_encryption {
return (system("$CB_SCRIPT","is_encrypted",$1) == 0);
}
sub is_harddisk_available {
my @all_disks = &exec_cb_script("get_available_disks");
return @all_disks > 0;
}
sub get_available_disks {
my @all_disks = &exec_cb_script("get_available_disks");
my ($disk, @return_disks);
foreach $disk (@all_disks) {
$disk =~ m#^([/\._\-\w]*)$#;
push @return_disks, $1 if ($1);
}
return @return_disks;
}
sub get_disk_name {
my ($dev) = @_;
my $disk_name = &exec_cb_script("get_device_name", $dev);
return $disk_name;
}
# return the value of a configuration setting (timeout, language, ip, ...)
# Parameter: setting_name
sub get_cbox_config {
my ($setting) = @_;
# tell the exec function, that we want a scalar instead of an array
my $scalar = &exec_cb_script("get_config",$setting);
return $scalar;
}
sub render {
my $pagefile = "$HTML_TEMPLATE_DIR/main.cs";
print "Content-Type: text/html\n\n";
my $cs = ClearSilver::CS->new($pagedata);
$cs->parseFile($pagefile);
print $cs->render();
}
# mount an encrypted volume
# Parameter: device password
sub mount_vol {
my ($device, $pw) = @_;
if (&check_mounted($device)) {
$pagedata->setValue('Data.Warning', 'IsMounted');
} else {
if ($pw eq '') {
&exec_cb_script("crypto-up", $device);
} else {
open(PW_INPUT, "| $CB_SCRIPT crypto-up $device");
print PW_INPUT $pw;
close(PW_INPUT);
}
}
}
# unmount a volume
# Parameter: device
sub umount_vol {
my ($device) = @_;
if (&check_mounted($device)) {
system($CB_SCRIPT, "crypto-down",$device);
} else {
$pagedata->setValue('Data.Warning', 'NotMounted');
}
}
# Parameter: device passphrase
# ignore passphrase (or leave it empty) to create a plaintext volume
sub volume_init {
my ($device, $crypto_pw) = @_;
my $result;
# only for encrypted volumes:
# write passphrase to a file - necessary as perl in secured mode does not allow
# the 'open(FH, "|/bin/prog ....")' call because of possible shell expansion - stupid 'open' :(
if ($crypto_pw) {
my ($fh, $temp_file);
# generate a temporary filename (as suggested by the Perl Cookbook)
do { $temp_file = POSIX::tmpnam() }
# TODO: reduce the file mask to the minimum - maybe 0600 would be a good choice
until $fh = IO::File->new($temp_file, O_RDWR|O_CREAT|O_EXCL);
close $fh;
unless (open(TMP, ">$temp_file")) {
&debug_msg(DEBUG_ERROR, "could not open a temporary file");
return (1==0);
}
print TMP $crypto_pw;
close TMP;
$result = &exec_cb_script("device_init", $device, $temp_file);
unlink ($temp_file) if (-e $temp_file);
} else {
$result = &exec_cb_script("device_init", $device);
}
# just to be sure, that the file does not get left behind
# usually the script should overwrite and remove it
return defined($result);
}
sub box_purge {
&exec_cb_script("box-purge");
}
sub system_poweroff {
&exec_cb_script("poweroff");
}
sub system_reboot {
&exec_cb_script("reboot");
}
sub validate_ip {
my $ip = shift;
my @octets = split /\./, $ip;
return 0 if ($#octets == 4);
# check for values and non-digits
return 0 if (($octets[0] <= 0) || ($octets[0] >= 255) || ($octets[0] =~ /\D/));
return 0 if (($octets[1] < 0) || ($octets[1] >= 255) || ($octets[1] =~ /\D/));
return 0 if (($octets[2] < 0) || ($octets[2] >= 255) || ($octets[2] =~ /\D/));
return 0 if (($octets[3] <= 0) || ($octets[3] >= 255) || ($octets[3] =~ /\D/));
return 1;
}
sub validate_timeout {
my $timeout = shift;
return 0 if ($timeout =~ /\D/);
return 1;
}
# check for a valid interface language
sub validate_language {
my $language = shift;
# check for non-alphanumeric character
return 0 if ($language =~ /\W/);
return 0 if ($language eq "");
return 0 if ( ! -e "$LANGUAGE_DIR/$language" . '.hdf');
return 1;
}
# check for a valid documentation language
sub validate_doc_language {
my $language = shift;
# check for non-alphanumeric character
return 0 if ($language =~ /\W/);
return 0 if ($language eq "");
return 0 if ( ! -e "$DOC_DIR/$language");
return 1;
}
################### main #########################
$pagedata = load_hdf();
my $current_admin_pw;
my $action = $query->param('action');
$action =~ m#^([\w\._\-]*)$#;
$action = ($1)? $1 : '';
my $device = $query->param('device');
$device =~ m#^([/_\-\w\.]*)$#;
$device = ($1)? $1 : '';
# BEWARE: there are two kinds of actions:
# * some require a harddisk
# * some do not require a harddisk
# take care, that you put a new action into the appropriate block below
# first: check for ssl!
if ( ! &check_ssl()) {
$pagedata->setValue('Data.Error', 'NoSSL');
# remove port number from HTTP_HOST
my $hostname = $ENV{'HTTP_HOST'};
$hostname =~ s/:[0-9]*//;
$pagedata->setValue('Data.Redirect.URL', "https://" . $hostname . $ENV{'SCRIPT_NAME'});
$pagedata->setValue('Data.Redirect.Delay', "3");
} elsif ($query->param('action')) {
#--------------------------------------------------------------#
# here you may define all cases that do not require a harddisk #
# put all other cases below the harddisk check #
#--------------------------------------------------------------#
#################### show_log #######################
if ($action eq 'show_log') {
$pagedata->setValue('Data.Action', 'show_log');
##################### doc ############################
} elsif ($action eq 'doc') {
if ($query->param('page')) {
$pagedata->setValue('Data.Doc.Page', $query->param('page'));
$pagedata->setValue('Data.Action', 'show_doc');
} else {
$pagedata->setValue('Data.Doc.Page', 'CryptoBoxUser');
$pagedata->setValue('Data.Action', 'show_doc');
}
##################### poweroff ######################
} elsif ($action eq 'system_ask') {
$pagedata->setValue('Data.Action', 'form_system');
##################### reboot ########################
} elsif ($action eq 'shutdown_do') {
if ($query->param('type') eq 'reboot') {
&system_reboot();
$pagedata->setValue('Data.Success', 'ReBoot');
$pagedata->setValue('Data.Redirect.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Delay', "180");
} else {
&system_poweroff();
$pagedata->setValue('Data.Success', 'PowerOff');
}
$pagedata->setValue('Data.Action', 'empty');
##################### check for a harddisk ##########################
# catch this error, to prevent all following actions from execution #
#####################################################################
} elsif ( ! &is_harddisk_available()) {
$pagedata->setValue('Data.Error', 'NoHardDisk');
#-------------------------------------------------------#
# here you may define all cases that require a harddisk #
#-------------------------------------------------------#
################ umount_do #######################
} elsif ($action eq 'umount_do') {
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'emptu');
} elsif ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} elsif (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'empty');
$pagedata->setValue('Data.Redirect.Action', 'form_config');
$pagedata->setValue('Data.Redirect.Delay', "30");
} elsif ( ! &check_mounted($device)) {
$pagedata->setValue('Data.Warning', 'NotMounted');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
# unmounten
&umount_vol($device);
if (&check_mounted($device)) {
$pagedata->setValue('Data.Warning', 'UmountFailed');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
#$pagedata->setValue('Data.Success', 'UmountDone');
$pagedata->setValue('Data.Action', 'show_volume');
}
}
################ mount_do ########################
} elsif ($action eq 'mount_do') {
my $is_encrypted = &check_device_encryption($device) if ($device ne '');
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'empty');
} elsif ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} elsif (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'empty');
$pagedata->setValue('Data.Redirect.Action', 'form_config');
$pagedata->setValue('Data.Redirect.Delay', "30");
} elsif (&check_mounted($device)) {
$pagedata->setValue('Data.Warning', 'IsMounted');
$pagedata->setValue('Data.Action', 'show_volume');
} elsif ($is_encrypted && ($query->param('crypto_password') eq '')) {
# leeres Passwort
$pagedata->setValue('Data.Warning', 'EmptyCryptoPassword');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
# mounten
if ($is_encrypted) {
&mount_vol($device, $query->param('crypto_password'));
} else {
&mount_vol($device);
}
if (!&check_mounted($device)) {
$pagedata->setValue('Data.Warning', 'MountFailed');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
#$pagedata->setValue('Data.Success', 'MountDone');
$pagedata->setValue('Data.Action', 'show_volume');
}
}
################## mount_ask #######################
} elsif ($action eq 'mount_ask') {
if ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} elsif (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'empty');
$pagedata->setValue('Data.Redirect.Action', 'form_config');
$pagedata->setValue('Data.Redirect.Delay', "30");
} else {
$pagedata->setValue('Data.Action', 'form_mount');
}
################# umount_ask ########################
} elsif ($action eq 'umount_ask') {
if ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} else {
$pagedata->setValue('Data.Action', 'form_umount');
}
################## init_ask #########################
} elsif ($action eq 'init_ask') {
if (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'form_config');
} elsif (&check_config()) {
$pagedata->setValue('Data.Warning', 'AlreadyConfigured');
$pagedata->setValue('Data.Action', 'form_init');
} else {
$pagedata->setValue('Data.Action', 'form_init');
}
#################### init_do ########################
} elsif ($action eq 'init_do') {
$current_admin_pw = &get_cbox_config("admin_pw");
if ($current_admin_pw ne '' && $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'form_init');
} elsif ($query->param('admin_password') ne $query->param('admin_password2')) {
# different admin-passwords
$pagedata->setValue('Data.Warning', 'DifferentAdminPasswords');
$pagedata->setValue('Data.Action', 'form_init');
} elsif ($query->param('crypto_password') ne $query->param('crypto_password2')) {
# different crypto-passwords
$pagedata->setValue('Data.Warning', 'DifferentCryptoPasswords');
$pagedata->setValue('Data.Action', 'form_init');
} elsif ($query->param('crypto_password') eq '') {
# empty password
$pagedata->setValue('Data.Warning', 'EmptyCryptoPassword');
$pagedata->setValue('Data.Action', 'form_init');
} elsif ($query->param('confirm') ne $pagedata->getValue('Lang.Text.ConfirmInit','')) {
# wrong confirm string
$pagedata->setValue('Data.Warning', 'InitNotConfirmed');
$pagedata->setValue('Data.Action', 'form_init');
} else {
if (&volume_init($query->param('crypto_password'),$query->param('admin_password'))) {
#$pagedata->setValue('Data.Success', 'InitRunning');
$pagedata->setValue('Data.Action', 'form_config');
} else {
$pagedata->setValue('Data.Error', 'InitFailed');
}
}
#################### config_ask ######################
} elsif ($action eq 'config_ask') {
if ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} else {
$pagedata->setValue('Data.Action', 'form_config');
}
#################### config_do #######################
} elsif ($action eq 'config_do') {
my $query_language = $query->param('language');
$query_language =~ m/^(\w+)$/; $query_language = $1;
my $query_timeout = $query->param('timeout');
$query_timeout =~ m/^(\d+)$/; $query_timeout = $1;
if ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} else {
$current_admin_pw = &get_cbox_config("admin_pw");
if ($current_admin_pw ne '' && $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'form_config');
} elsif ( ! &validate_language($query_language)) {
$pagedata->setValue('Data.Warning', 'InvalidLanguage');
$pagedata->setValue('Data.Action', 'form_config');
} elsif ( ! &validate_timeout($query_timeout)) {
$pagedata->setValue('Data.Warning', 'InvalidTimeOut');
$pagedata->setValue('Data.Action', 'form_config');
} else {
system($CB_SCRIPT, "set_config", "language", $query_language);
&load_selected_language($pagedata);
system($CB_SCRIPT, "set_config", "timeout", $query_timeout);
# check, if the ip was reconfigured
# TODO: IP stuff should be moved to the live-cd stuff
if (defined($query->param('ip')) && ($query->param('ip') ne &get_cbox_config("ip"))) {
# set the new value
system($CB_SCRIPT, "set_config", "ip", $query->param('ip'));
# redirect to the new address
$pagedata->setValue('Data.Redirect.URL', "https://" . $query->param('ip') . $ENV{'SCRIPT_NAME'});
$pagedata->setValue('Data.Redirect.Delay', "5");
# display a warning for the redirection
$pagedata->setValue('Data.Warning', 'IPAddressChanged');
}
# check for success
if (defined($query->param('timeout'))
&& (&get_cbox_config("timeout") ne $query->param('timeout'))) {
$pagedata->setValue('Data.Warning', 'ConfigTimeOutFailed');
} elsif (defined($query->param('ip')) &&
(&get_cbox_config("ip") ne $query->param('ip'))) {
$pagedata->setValue('Data.Warning', 'ConfigIPFailed');
} elsif (defined($query->param('language'))
&& (&get_cbox_config("language") ne $query->param('language'))) {
$pagedata->setValue('Data.Warning', 'ConfigLanguageFailed');
} else {
#$pagedata->setValue('Data.Success', 'ConfigSaved');
}
$pagedata->setValue('Data.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Delay', "30");
}
}
############## change volume name ###################
} elsif ($action eq 'volume_name_set') {
my $volume_name = $query->param('volume_name');
# remove all special characters which are not white-listed
$volume_name =~ s#[^\w \-_\#/\(\)\[\]]##g;
# untaint variable
$volume_name =~ m#^(.*)$#; $volume_name = $1;
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'show_status');
} elsif (&check_mounted($device)) {
$pagedata->setValue('Data.Warning','VolumeMayNotBeMounted');
$pagedata->setValue('Data.Action', 'show_volume');
} elsif ($volume_name eq '') {
$pagedata->setValue('Data.Warning','InvalidVolumeName');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
&exec_cb_script('set_device_name',$device,$volume_name);
my $new_volume_name = &exec_cb_script('get_device_name',$device);
$pagedata->setValue('Data.Warning','SetVolumeNameFailed') unless ($new_volume_name eq $volume_name);
$pagedata->setValue('Data.Action', 'show_volume');
}
############ initialize volume (form) ###############
} elsif ($action eq 'volume_init_ask') {
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'show_status');
} elsif (&check_mounted($device)) {
$pagedata->setValue('Data.Warning','VolumeMayNotBeMounted');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
$pagedata->setValue('Data.CurrentDisk.InitParams.encrypted',defined($query->param('encryption'))? 1 : 0);
$pagedata->setValue('Data.Action', 'form_init_partition');
}
############### initialize volume ###################
} elsif ($action eq 'volume_init_do') {
$current_admin_pw = &get_cbox_config("admin_pw");
# remember the current "encryption" setting - just in case, we want to emit a warning and
# return to the same screen
$pagedata->setValue('Data.CurrentDisk.InitParams.encrypted',defined($query->param('encryption'))? 1 : 0);
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'show_status');
} elsif (&check_mounted($device)) {
$pagedata->setValue('Data.Warning','VolumeMayNotBeMounted');
$pagedata->setValue('Data.Action', 'show_volume');
} elsif ($current_admin_pw ne ''
&& $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'form_init_partition');
} elsif (defined($query->param('encryption')) && ($query->param('crypto_password') ne $query->param('crypto_password2'))) {
# different crypto-passwords
$pagedata->setValue('Data.Warning', 'DifferentCryptoPasswords');
$pagedata->setValue('Data.Action', 'form_init_partition');
} elsif (defined($query->param('encryption')) && ($query->param('crypto_password') eq '')) {
# empty password
$pagedata->setValue('Data.Warning', 'EmptyCryptoPassword');
$pagedata->setValue('Data.Action', 'form_init_partition');
} elsif ($query->param('confirm') ne $pagedata->getValue('Lang.Text.ConfirmInit','')) {
# wrong confirm string
$pagedata->setValue('Data.Warning', 'InitNotConfirmed');
$pagedata->setValue('Data.Action', 'form_init_partition');
} else {
my $init_result;
if (defined($query->param('encryption'))) {
$init_result = &volume_init($device,$query->param('crypto_password'));
} else {
$init_result = &volume_init($device);
}
if ($init_result) {
#$pagedata->setValue('Data.Success', 'InitRunning');
$pagedata->setValue('Data.Action', 'show_volume');
} else {
$pagedata->setValue('Data.Error', 'InitFailed');
$pagedata->setValue('Data.Action', 'show_volume');
}
}
################## volume info ######################
} elsif ($action eq 'show_volume') {
if ($device eq '') {
&debug_msg(DEBUG_INFO, "invalid device: " . $query->param('device'));
$pagedata->setValue('Data.Warning', 'InvalidDevice');
$pagedata->setValue('Data.Action', 'show_status');
} else {
$pagedata->setValue('Data.Action', 'show_volume');
}
#################### status #########################
} elsif ($action eq 'show_status') {
if ( ! &check_config()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'form_init');
} elsif (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'empty');
$pagedata->setValue('Data.Redirect.Action', 'form_config');
$pagedata->setValue('Data.Redirect.Delay', "30");
} else {
$pagedata->setValue('Data.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Delay', "60");
}
################### box_purge #######################
# if we find an existing config partition, then check the adminpw
} elsif ($action eq 'do_purge') {
if ( &check_config()) {
$current_admin_pw = &get_cbox_config("admin_pw");
if ($current_admin_pw ne '' && $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'form_config');
} else {
&box_purge;
$pagedata->setValue('Data.Action', 'form_init');
}
}
################### unknown #########################
} else {
$pagedata->setValue('Data.Error', 'UnknownAction');
}
#################### default action ##########################
# check for a harddisk again, as this check was skipped
# because there was no action defined
} elsif ( ! &is_harddisk_available()) {
$pagedata->setValue('Data.Error', 'NoHardDisk');
} else {
if (&check_init_running()) {
$pagedata->setValue('Data.Warning', 'InitNotFinished');
$pagedata->setValue('Data.Action', 'empty');
$pagedata->setValue('Data.Redirect.Action', 'form_config');
$pagedata->setValue('Data.Redirect.Delay', "60");
} elsif (&check_config()) {
$pagedata->setValue('Data.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Action', 'show_status');
$pagedata->setValue('Data.Redirect.Delay', "60");
} else {
$pagedata->setValue('Data.Action', 'form_init');
}
}
# check state of the cryptobox
$pagedata->setValue('Data.Status.Config', &check_config() ? 1 : 0);
$pagedata->setValue('Data.Status.InitRunning', &check_init_running() ? 1 : 0);
my $output = &get_cbox_config("admin_pw");
$pagedata->setValue('Data.Config.AdminPasswordIsSet', 1) if ($output ne '');
$output = join ("<br/>", &exec_cb_script("diskinfo"));
$pagedata->setValue('Data.PartitionInfo',"$output");
# preset config settings for clearsilver
$pagedata->setValue('Data.Config.IP', &get_cbox_config("ip"));
$pagedata->setValue('Data.Config.TimeOut', &get_cbox_config("timeout"));
$pagedata->setValue('Data.Config.Language', &get_cbox_config("language"));
# read log and add html linebreaks
$output = '';
if (-e "$LOG_FILE") {
open(LOGFILE, "< $LOG_FILE");
while (<LOGFILE>) { $output .= "$_<br/>" }
close(LOGFILE);
}
$pagedata->setValue('Data.Log',"$output");
$pagedata->setValue('Data.Status.DevelopmentMode', 1) if ($IS_DEVEL);
# save QUERY_STRING (e.g. for weblang-links)
my $querystring = $ENV{'QUERY_STRING'};
# remove weblang setting
$querystring =~ s/weblang=\w\w&?//;
$pagedata->setValue('Data.QueryString', "$querystring") if ($querystring ne '');
$pagedata->setValue('Data.Version', CRYPTOBOX_VERSION);
my ($one_disk, $one_name, $isActive, $isEncrypted, $isPlaintext);
my $avail_counter = 0; my $active_counter = 0; my $passive_counter = 0;
for $one_disk (&get_available_disks()) {
$one_name = &get_disk_name($one_disk);
$isEncrypted = &check_device_encryption($one_disk);
$isPlaintext = &check_device_plaintext($one_disk);
$pagedata->setValue("Data.Disks.available.${avail_counter}.device",$one_disk);
$pagedata->setValue("Data.Disks.available.${avail_counter}.name",$one_name);
$pagedata->setValue("Data.Disks.available.${avail_counter}.encryption", $isEncrypted? 1 : 0);
$pagedata->setValue("Data.Disks.available.${avail_counter}.plaintext", $isPlaintext? 1 : 0);
$isActive = &check_mounted($one_disk);
if ($isActive) {
$pagedata->setValue("Data.Disks.available.${avail_counter}.isActive",1);
$pagedata->setValue("Data.Disks.active.${active_counter}.device",$one_disk);
$pagedata->setValue("Data.Disks.active.${active_counter}.name",$one_name);
$pagedata->setValue("Data.Disks.active.${active_counter}.encryption", $isEncrypted? 1 : 0);
$pagedata->setValue("Data.Disks.active.${active_counter}.plaintext", $isPlaintext? 1 : 0);
$active_counter++;
} else {
$pagedata->setValue("Data.Disks.available.${avail_counter}.isActive",0);
$pagedata->setValue("Data.Disks.passive.${passive_counter}.device",$one_disk);
$pagedata->setValue("Data.Disks.passive.${passive_counter}.name",$one_name);
$pagedata->setValue("Data.Disks.passive.${passive_counter}.encryption", $isEncrypted? 1 : 0);
$pagedata->setValue("Data.Disks.passive.${passive_counter}.plaintext", $isPlaintext? 1 : 0);
$passive_counter++;
}
if ($device eq $one_disk) {
$pagedata->setValue('Data.CurrentDisk.device', $one_disk);
$pagedata->setValue('Data.CurrentDisk.name', $one_name);
$pagedata->setValue('Data.CurrentDisk.active', $isActive? 1 : 0);
$pagedata->setValue("Data.CurrentDisk.encryption", $isEncrypted? 1 : 0);
$pagedata->setValue("Data.CurrentDisk.plaintext", $isPlaintext? 1 : 0);
# retrieve capacity information if the device is mounted
if (&check_mounted($device)) {
my $cap_info = &exec_cb_script("get_capacity_info",$device);
# filter the relevant values (a simple split is not working, as the device name may
# contain spaces
$cap_info =~ m#^.*\s+([0-9\.,]+\w)\s+([0-9\.,]+\w)\s+([0-9\.,]+\w)\s+([0-9\.,]+\%)\s+#;
my ($cap_size, $cap_used, $cap_free, $cap_percent) = ($1, $2, $3, $4);
$pagedata->setValue('Data.CurrentDisk.capacity.used', $cap_used);
$pagedata->setValue('Data.CurrentDisk.capacity.free', $cap_free);
$pagedata->setValue('Data.CurrentDisk.capacity.size', $cap_size);
$pagedata->setValue('Data.CurrentDisk.capacity.percent', $cap_percent);
}
}
$avail_counter++;
}
&render();
close STDOUT;
exit 0;

View file

@ -0,0 +1,21 @@
/* $Id$ */
// define the location of your cryptobox.pl file in this header file
#include "cryptobox_wrapper.h"
#include <stdio.h>
#include <unistd.h>
/* C wrapper to allow cryptobox to run under a different uid */
/* Copyright (C) 02006, senselab, All Rights Reserved */
/* See the LICENSE file in this distribution for copyright information */
int main(int argc, char *argv[]) {
// necessary for mount action of the root-script
setreuid(geteuid(), -1);
argv[0] = EXEC_PATH;
execv(EXEC_PATH, argv);
}

View file

@ -0,0 +1,191 @@
function create_config()
# Parameter: device
{
local device=$1
unload_config
# create the new configuration filesystem if it is not static
if [ "$USE_SEPERATE_CONFIG_PARTITION" != "1" ]
then log_msg "Using static configuration ..."
else log_msg "Creating config filesystem ..."
"$ROOT_PERM_SCRIPT" create_config "$device"
log_msg "Mounting config partition ..."
"$ROOT_PERM_SCRIPT" mount_config "$device"
"$ROOT_PERM_SCRIPT" remount_config rw
fi
log_msg "Copying configuration defaults ..."
cp -a "$CONFIG_DEFAULTS_DIR/." "$CONFIG_DIR"
log_msg "Copying temporary certificate file to config filesystem ..."
log_msg "Setting inital values ..."
# beware: config_set_value remounts the config partition read-only
config_set_value "ip" "$(get_current_ip)"
# create database of readable names
config_set_value "names.db" ""
# create a marker to recognize a cryptobox partition
# this should be the last step, to prevent a half-initialized state
config_set_value "$CONFIG_MARKER" "$(date -I)"
}
function find_harddisk()
# look for the harddisk to be partitioned
{
local device=$(get_available_disks | head -1)
if [ -z "$device" ] ; then
log_msg "no valid harddisk for initialisation found!"
cat /proc/partitions >>"$LOG_FILE"
# do not return with an error, to avoid a failing of the script ('break on error')
# the caller of this function should handle an empty return string
fi
echo -n "$device"
}
function load_config()
{
unload_config
local status=0
# look for a configuration partition
[ "$USE_SEPERATE_CONFIG_PARTITION" = "1" ] && \
list_partitions_of_type config | while read part && [ "$status" = 0 ]
do log_msg "configuraton found on $part"
# error check?
"$ROOT_PERM_SCRIPT" mount_config "/dev/$part"
status=1
done
if is_config_active
then return 0
else log_msg "failed to locate config partition"
return 1
fi
}
function unload_config()
{
is_config_active || return
# only try to unmount, if it is not static (the config of a live-cd is always dynamic)
if [ "$USE_SEPERATE_CONFIG_PARTITION" = "1" ]
then "$ROOT_PERM_SCRIPT" umount_config
else return 0
fi
}
# rename to "prepare_cryptobox"
function init_cryptobox()
# this is only the first part of initialisation that takes no time - good for a smooth web interface
{
local device=$(find_harddisk)
[ -z "$device" ] && log_msg 'No valid harddisk found!' && return 1
turn_off_all_crypto
unload_config || true
log_msg "Partitioning the device ($device) ..."
"$ROOT_PERM_SCRIPT" partition_disk "$device" "0,1,L \n,,L\n"
log_msg "Initializing config partition on ${device}1 ..."
# TODO: this should not be hard-coded
create_config "${device}1"
}
case "$ACTION" of
network-up )
if [ "$SKIP_NETWORK_CONFIG" != 1 ]
then conf_ip=$(config_get_value "ip")
log_msg "Configuring $NET_IFACE for $conf_ip ..."
echo "Configuring network interface for $NET_IFACE: $conf_ip"
"$IFCONFIG" "$NET_IFACE" "$conf_ip"
fi
if [ "$EXEC_FIREWALL_RULES" = 1 ]
then log_msg "Starting the firewall ..."
"$FIREWALL_SCRIPT" start
fi
if [ "$USE_STUNNEL" = 1 ]
then # start stunnel
if [ -f "$CERT_FILE" ]
then USE_CERT=$CERT_FILE
else USE_CERT=$CERT_TEMP
$MAKE_CERT_SCRIPT "$CERT_TEMP" >>"$LOG_FILE" 2>&1
# TODO: this could be dangerous - right?
# this is necessary, to allow www-data to copy the certificate
chown "$WEB_USER" "$CERT_TEMP"
fi
log_msg "Starting stunnel ..."
stunnel -p "$USE_CERT" -r localhost:80 -d 443 \
|| echo "$USE_CERT not found - not starting stunnel"
fi
;;
network-down )
if [ "$EXEC_FIREWALL_RULES" = 1 ]
then log_msg "Stopping the firewall ..."
"$FIREWALL_SCRIPT" stop
fi
if [ "$USE_STUNNEL" = 1 ]
then log_msg "Stopping stunnel ..."
# TODO: what about a pid?
killall stunnel 2>/dev/null || true
fi
if [ "$SKIP_NETWORK_CONFIG" != 1 ]
then log_msg "Shutting the network interface down ..."
"$IFCONFIG" "$NET_IFACE" down
fi
;;
services-up )
# the mount point has to be writeable
# this action is called as root - so we are allowed to umount
# TODO: do this only for ro-filesystem
# TODO: this way of mounting is evil
if mountpoint -q "$MNT_PARENT"
then true
else mount -t tmpfs tmpfs "$MNT_PARENT"
fi
true
;;
services-down )
# this action is called as root - so we are allowed to umount
mountpoint -q "$MNT_PARENT" && umount "$MNT_PARENT"
# TODO: we should not depend on samba and thttpd
# /etc/init.d/samba stop || true
# /etc/init.d/thttpd stop || true
true
;;
is_harddisk_available )
[ -z "$(find_harddisk)" ] && exit 1
exit 0
;;
update_ip_address )
# reconfigure the network interface to a new IP address
# wait for 5 seconds to finish present http requests
if [ "$SKIP_NETWORK_CONFIG" != 1 ]
then echo -n "sleep 5; \"$ROOT_PERM_SCRIPT\" update_network" | at now
fi
;;
poweroff )
log_msg "Turning off the CryptoBox ..."
turn_off_all_crypto
echo "poweroff" | at now
;;
reboot )
log_msg "Rebooting the CryptoBox ..."
turn_off_all_crypto
echo "reboot" | at now
;;
* )
echo "Syntax: $(basename $0) ACTION"
echo " config-up - scan for configuration partition and mount it"
echo " config-down - unmount configuration partition"
echo " network-up - enable network interface"
echo " network-down - disable network interface"
echo " services-up - run some cryptobox specific daemons"
echo " services-down - stop some cryptobox specific daemons"
echo " update_ip_address - update the network interface after reconfiguration"
echo " is_config_mounted - check, if configuration partition is mounted"
echo " box-init - initialize cryptobox (ALL data is LOST)"
echo " box-init-fg - the first part of initialization"
echo " box-init-bg - the last part of initialization (background)"
echo " is_harddisk_available - check, if there is a usable harddisk"
echo " poweroff - shutdown the cryptobox"
echo " reboot - reboot the cryptobox"
echo
;;
esac

View file

@ -0,0 +1,36 @@
# this file is directly sourced by some bash scripts
# so there should be no space around the "="
LANGUAGE=en
CRYPTOBOX_USER=cryptobox
SCAN_DEVICES="sd loop"
# web interface
HTML_TEMPLATE_DIR=/usr/share/cryptobox/templates
STYLESHEET_URL=/cryptobox-misc/cryptobox.css
# directories
LANGUAGE_DIR=/usr/share/cryptobox/lang
DOC_DIR=/usr/share/doc/cryptobox/html
CONFIG_DEFAULTS_DIR=/usr/share/cryptobox/defaults
# some files
LOG_FILE=/var/log/cryptobox.log
# crypto settings
# TODO: for now, the usual default cipher does not work on ARM, so we enable it during development
#DEFAULT_CIPHER=aes-cbc-essiv:sha256
DEFAULT_CIPHER=aes
DEV_MAPPER_DIR=/dev/mapper
# distribution specific configuration
# examples can be found in /usr/local/share/cryptobox/distributions
DISTRIBUTION_CONF=/etc/cryptobox/distribution.conf
# choose a debug level:
# 0 => no debug messages at all
# 1 => critical errors (default)
# 2 => warning messages
# 3 => information
DEBUG_LEVEL=1

View file

@ -0,0 +1 @@
192.168.0.23

View file

@ -0,0 +1 @@
en

View file

@ -0,0 +1 @@
30

View file

@ -0,0 +1 @@
0.3

View file

@ -0,0 +1,11 @@
You need to copy one of these files to /etc/cryptobox/distribution.conf.
Choose the one, that fits to your particular operating system - if you are
not sure which operation system you are using, then you should run
uname -o
to get to know yourself :)
If the file for your specific operating system is not available, then you
may consider to send a copy of the one you wrote for yourself to
devel@systemausfall.org.
Thanks!

View file

@ -0,0 +1,12 @@
# program locations for debian
SFDISK=/sbin/sfdisk
MKFS_DATA=/sbin/mkfs.ext3
MKFS_CONFIG=/sbin/mkfs.ext2
CRYPTSETUP=/sbin/cryptsetup
IFCONFIG=/sbin/ifconfig
PMOUNT=/bin/pmount
PUMOUNT=/bin/pumount
BLKID=/sbin/blkid
POWEROFF=/sbin/poweroff
REBOOT=/sbin/reboot

View file

@ -0,0 +1,6 @@
CryptoBox for Debian - installation notes
be aware of two things:
1) you need cryptsetup with luks support (for now only in unstable)
2) the debian perl-clearsilver package is broken (at least until April 02006)

View file

@ -0,0 +1,3 @@
cryptobox (0.3.0-1) unstable; urgency=low
* Initial release
-- Lars Kruse <devel@sumpfralle.de> Wed, 10 May 2006 20:26:47 +0100

View file

@ -0,0 +1,19 @@
Source: cryptobox
Section: admin
Priority: extra
Maintainer: Lars Kruse <devel@sumpfralle.de>
Build-Depends: debhelper (>>3.0.0), dpatch, gcc (>=2.95)
Standards-Version: 3.6.2
Package: cryptobox
Architecture: any
Depends: bash (>=2.0), sed (>=4.0), coreutils, grep (>=2.0), perl, httpd-cgi, hashalot, libconfigfile-perl, cryptsetup (>=20050111), dmsetup, pmount, initscripts, e2fsprogs (>= 1.27), adduser
Recommends: perl-clearsilver
Suggests: cron, samba
Description: Web interface for an encrypting fileserver
This bundle of scripts and cgis allow you to manage an encrypted harddisk
via a web interface. The data is platform independently available
via samba file shares.
Even non-technical users are able to encrypt their private data with the
CryptoBox.

View file

@ -0,0 +1,27 @@
This package was debianized by Lars Kruse <devel@sumpfralle.de> on
Wed, May 10 21:23:16 CEST 2006
It was downloaded from http://cryptobox.org/
Upstream Authors:
sense.lab development <devel@systemausfall.org>
Copyright:
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the
Free Software Foundation, Inc.,
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
On Debian GNU/Linux systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.

View file

@ -0,0 +1,12 @@
# boot configuration file for the CryptoBox
#
# $Id$
#
# the default setup of the cryptobox is complete inactivity
# set to "1" to turn off the cryptobox - otherwise "0"
NO_START=1
# change the default configuration file if necessary
#CONF_FILE=/etc/cryptobox/cryptobox.conf

View file

@ -0,0 +1,54 @@
#!/bin/sh
#
# runlevel script of the cryptobox package
#
# Copyright (c) 02006, senselab
#
# see LICENSE file in this package for details
#
# check if the cryptobox is installed
[ -e "/usr/lib/cryptobox/cbox-manage.sh" ] || exit 0
# read the default setting file, if it exists
[ -e /etc/default/cryptobox ] && source /etc/default/cryptobox
# startup switch defaults to zero (enabled)
NO_START=${NO_START:-0}
#if [ "$NO_START" = "1" ]
# then [ $# -eq 0 ] && exit 0
# [ "$1" = "status" ] && exit 1
# [ "$1" = "stop" ] && exit 0
# echo "CryptoBox is disabled by default"
# exit 0
# fi
# set CONF_FILE to default value, if not configured in /etc/default/cryptobox
CONF_FILE=${CONF_FILE:-/etc/cryptobox/cryptobox.conf}
# parse config file
if [ -e "$CONF_FILE" ]
then source "$CONF_FILE"
else echo "[$(basename $0)] - configuration file ($CONF_FILE) not found!" >&2
exit 1
fi
case "$1" in
start )
# nothing to be done
;;
stop )
# unmount all active containers
"/usr/lib/cryptobox/cbox-manage.sh" umount_all
;;
force-reload | restart )
"$0" stop
"$0" start
;;
* )
echo "invalid action specified - try { start | stop | restart }" >&2
exit 1
;;
esac

View file

@ -0,0 +1,4 @@
etc/cryptobox
etc/default
etc/init.d
usr/lib/cgi-bin

View file

@ -0,0 +1 @@
/usr/share/cryptobox/html /var/www/cryptobox-misc

View file

43
pythonrewrite/debian/postinst Executable file
View file

@ -0,0 +1,43 @@
#!/bin/sh
# read the default setting file, if it exists
[ -e /etc/default/cryptobox ] && . /etc/default/cryptobox
# set CONF_FILE to default value, if not configured in /etc/default/cryptobox
CONF_FILE=${CONF_FILE:-/etc/cryptobox/cryptobox.conf}
# parse config file
if test -e "$CONF_FILE"
then . "$CONF_FILE"
# create mount and config directories with appropriate permissions
test ! -e "$LOG_FILE" && touch "$LOG_FILE" && chown "$CRYPTOBOX_USER" "$LOG_FILE"
fi
if getent passwd "$CRYPTOBOX_USER" 2>/dev/null >/dev/null
then # do nothing - the user already exists
true
else # create cryptobox user
echo "Creating new user '$CRYPTOBOX_USER' ..."
USER_HOME=/var/lib/cryptobox
adduser --system --group --home "$USER_HOME" cryptobox
# add the user to the group "plugdev" (necessary for pmount)
adduser cryptobox plugdev
cp -r "$CONFIG_DEFAULTS_DIR" "$USER_HOME/config"
mkdir "$USER_HOME/mnt"
chown -R ${CRYPTOBOX_USER}: "$USER_HOME"
# only members of the cryptobox group may access the user directory
chmod 750 "$USER_HOME"
# no one may look into the config directory (protect init passwords)
chmod 700 "$USER_HOME/config"
fi
# set permissions for suid wrappers
chown root:$CRYPTOBOX_USER "/usr/lib/cryptobox/cryptobox_root_wrapper"
chmod 4750 "/usr/lib/cryptobox/cryptobox_root_wrapper"
chown $CRYPTOBOX_USER: "/usr/lib/cgi-bin/cryptobox"
chmod 6755 "/usr/lib/cgi-bin/cryptobox"
#DEBHELPER#
true

12
pythonrewrite/debian/postrm Executable file
View file

@ -0,0 +1,12 @@
#!/bin/sh
if test "$1" = "purge" && getent passwd cryptobox 2>/dev/null >/dev/null \
&& test "$(cd ~cryptobox;pwd)" = /var/lib/cryptobox
then echo "Removing user 'cryptobox' ..."
userdel -r cryptobox
fi
#DEBHELPER#
# return without error
true

98
pythonrewrite/debian/rules Executable file
View file

@ -0,0 +1,98 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# This is the debhelper compatibility version to use.
export DH_COMPAT=4
# necessary for dpatch
.NOTPARALLEL:
DEB_BUILD_DIR=$(CURDIR)/debian/cryptobox
configure: configure-stamp
configure-stamp: patch
dh_testdir
@# PUT SOMETHING HERE
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
$(MAKE) build PREFIX=/usr
touch build-stamp
clean: clean-patched unpatch
clean-patched:
dh_testdir
dh_testroot
$(MAKE) clean
rm -f build-stamp configure-stamp
dh_clean
patch: patch-stamp
patch-stamp:
dpatch apply-all
touch patch-stamp
unpatch:
dpatch deapply-all
rm -rf patch-stamp debian/patched
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
$(MAKE) install PREFIX=$(DEB_BUILD_DIR)/usr
install -c -m 644 build_dir/etc/cryptobox.conf $(DEB_BUILD_DIR)/etc/cryptobox/
install -c -m 644 build_dir/etc/distribution.conf $(DEB_BUILD_DIR)/etc/cryptobox/
install -c -m 755 bin/cryptobox_cgi_wrapper $(DEB_BUILD_DIR)/usr/lib/cgi-bin/cryptobox
# Build architecture-independent files here.
binary-indep: build install
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples
# dh_install
# dh_installmenu
# dh_installdebconf
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
dh_installinit
# dh_installcron
# dh_installinfo
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_perl
# dh_python
# dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure clean-patched patch patch-stamp unpatch

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View file

@ -0,0 +1,392 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="boesetest.svg"
sodipodi:docbase="/home/mtsrc/bilder/svg"
inkscape:version="0.41"
sodipodi:version="0.32"
id="svg2"
height="297mm"
width="210mm">
<defs
id="defs3">
<linearGradient
id="linearGradient2457">
<stop
style="stop-color:#0926d2;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2459" />
<stop
style="stop-color:#4a9cc4;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2461" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2457"
id="linearGradient2658"
gradientTransform="matrix(3.370202,0.000000,0.000000,2.638932,-176.0927,-1259.901)"
x1="124.50562"
y1="509.28540"
x2="138.30641"
y2="570.91620"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2596"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(1.391891,0.718447)"
x1="117.91422"
y1="443.89682"
x2="123.41339"
y2="477.12833" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2686"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.508579,0.000000,0.000000,2.532059,-135.4630,-1063.499)"
x1="123.01630"
y1="443.27271"
x2="137.66396"
y2="457.34415" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2690"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.508579,0.000000,0.000000,3.113477,99.47147,-1666.083)"
x1="123.01630"
y1="443.27271"
x2="137.66396"
y2="457.34415" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2696"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.508579,0.000000,0.000000,2.532059,-786.9792,-1436.567)"
x1="123.01630"
y1="443.27271"
x2="137.66396"
y2="457.34415" />
<linearGradient
id="linearGradient2465">
<stop
style="stop-color:#ffffff;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2467" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2469" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2700"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.508579,0.000000,0.000000,2.532059,-786.9792,-1063.147)"
x1="123.01630"
y1="443.27271"
x2="137.66396"
y2="457.34415" />
<linearGradient
id="linearGradient2215">
<stop
id="stop2217"
offset="0.0000000"
style="stop-color:#ffdb00;stop-opacity:1.0000000;" />
<stop
id="stop2219"
offset="1.0000000"
style="stop-color:#000000;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient2143"
inkscape:collect="always">
<stop
id="stop2145"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop2147"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient2135">
<stop
id="stop2137"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop2139"
offset="1.0000000"
style="stop-color:#000000;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
gradientUnits="userSpaceOnUse"
y2="239.82146"
x2="429.14163"
y1="99.157669"
x1="168.79323"
gradientTransform="matrix(0.932520,0.000000,0.000000,0.872108,0.000000,10.99820)"
id="linearGradient2133"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<radialGradient
gradientUnits="userSpaceOnUse"
r="72.676987"
fy="55.831612"
fx="238.68398"
cy="54.343491"
cx="238.68401"
gradientTransform="scale(1.277753,0.782624)"
id="radialGradient2155"
xlink:href="#linearGradient2143"
inkscape:collect="always" />
<linearGradient
spreadMethod="pad"
gradientUnits="userSpaceOnUse"
y2="357.05264"
x2="161.39738"
y1="266.49701"
x1="122.77643"
gradientTransform="matrix(1.617925,0.000000,0.000000,0.502655,-2.020305,4.426083)"
id="linearGradient2181"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="-539.59961"
x2="205.79190"
y1="-453.57123"
x1="161.00905"
gradientTransform="matrix(0.928841,-0.191499,-0.178455,-0.572481,71.67843,24.52701)"
id="linearGradient2203"
xlink:href="#linearGradient2215"
inkscape:collect="always" />
<linearGradient
y2="525.15021"
x2="214.14540"
y1="413.19473"
x1="82.933327"
gradientTransform="matrix(1.563798,0.000000,0.000000,0.639469,5.392016,252.3690)"
gradientUnits="userSpaceOnUse"
id="linearGradient2213"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="208.34334"
x2="253.60005"
y1="171.10872"
x1="117.61987"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,0.000000,10.99820)"
id="linearGradient2249"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="227.56172"
x2="546.69745"
y1="184.47606"
x1="352.24612"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,0.000000,10.99820)"
id="linearGradient2257"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(2.508579,0.000000,0.000000,2.532059,-136.8868,-1436.678)"
gradientUnits="userSpaceOnUse"
id="linearGradient2378"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="432.21533"
x2="238.41585"
y1="566.80432"
x1="196.24054"
gradientTransform="scale(1.580078,0.632880)"
id="linearGradient2386"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
inkscape:window-y="110"
inkscape:window-x="136"
inkscape:window-height="583"
inkscape:window-width="604"
inkscape:guide-bbox="true"
showguides="true"
inkscape:current-layer="layer1"
inkscape:document-units="px"
inkscape:cy="860.23072"
inkscape:cx="383.04126"
inkscape:zoom="0.98994949"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
id="Work6"
rdf:about="">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
id="type9" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Layer 1">
<rect
style="fill:url(#linearGradient2658);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:3.7500019;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2562"
width="323.38947"
height="252.10298"
x="164.58490"
y="60.419884"
rx="8.3694258"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
inkscape:export-xdpi="132.46655"
inkscape:export-ydpi="132.46655"
ry="8.3694220" />
<path
id="path2225"
d="M 170.03181,214.37452 C 169.98610,215.20783 170.53982,216.06007 171.66690,216.74075 L 236.76249,256.06407 C 238.10543,256.87510 239.95863,257.19367 241.75822,257.11300 L 246.15367,177.00120 C 244.37006,176.79050 242.48935,176.97356 241.06293,177.68410 L 171.91955,212.13616 C 170.72239,212.73249 170.07753,213.54125 170.03181,214.37452 z "
style="fill:url(#linearGradient2249);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="path2221"
d="M 481.02341,217.86644 C 481.06912,218.69975 480.51540,219.55198 479.38832,220.23267 L 414.29273,259.55599 C 412.94979,260.36702 411.09659,260.68559 409.29700,260.60491 L 404.90155,180.49311 C 406.68516,180.28242 408.56587,180.46548 409.99229,181.17601 L 479.13567,215.62808 C 480.33283,216.22441 480.97769,217.03317 481.02341,217.86644 z "
style="fill:url(#linearGradient2257);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<rect
ry="9.9999914"
rx="9.9999895"
y="281.10022"
x="335.24698"
height="26.288469"
width="101.26261"
id="rect2209"
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<rect
ry="9.9999914"
rx="9.9999895"
y="279.45721"
x="201.90685"
height="26.288469"
width="101.26261"
id="rect2207"
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="path1291"
d="M 322.84375,62.868812 C 255.02661,62.868812 200.00001,107.64506 200.00000,162.79789 C 200.00000,163.74091 200.12428,164.65669 200.15625,165.59346 C 200.13091,165.83054 200.00000,166.03705 200.00000,166.27965 L 200.00000,226.68947 C 200.00000,226.77092 200.05961,226.83734 200.06250,226.91820 C 200.05886,227.23484 200.00000,227.54120 200.00000,227.85853 C 200.00000,252.73151 211.27206,275.42801 229.78125,292.91917 L 415.93750,292.91917 C 434.45367,275.42801 445.71875,252.73151 445.71875,227.85853 C 445.71875,227.54120 445.65989,227.23484 445.65625,226.91820 C 445.65915,226.83734 445.71875,226.77092 445.71875,226.68947 L 445.71875,166.27965 C 445.71875,166.03705 445.58784,165.83054 445.56250,165.59346 C 445.59447,164.65669 445.71875,163.74091 445.71875,162.79789 C 445.71875,107.64506 390.66089,62.868812 322.84375,62.868812 z "
style="fill:url(#linearGradient2133);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:2.0500004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
transform="matrix(1.000000,0.000000,0.000000,-0.813258,0.000000,531.4859)"
d="M 387.89858 320.00159 A 63.639610 24.243662 0 1 1 260.61936,320.00159 A 63.639610 24.243662 0 1 1 387.89858 320.00159 z"
sodipodi:ry="24.243662"
sodipodi:rx="63.639610"
sodipodi:cy="320.00159"
sodipodi:cx="324.25897"
id="path2229"
style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:4.1583133;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0;fill:url(#linearGradient2386)"
sodipodi:type="arc" />
<path
id="rect1306"
d="M 333.55871,273.29531 C 332.72935,273.46630 331.77982,273.24222 330.90587,272.60827 L 280.42021,235.99543 C 279.37890,235.24006 278.74617,234.06258 278.52355,232.85336 L 358.25623,216.41487 C 358.76886,217.56431 358.90232,218.84471 358.42926,219.91230 L 335.48866,271.66343 C 335.09164,272.55942 334.38804,273.12433 333.55871,273.29531 z "
style="fill:url(#linearGradient2203);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="rect1358"
d="M 236.20622,144.83255 C 232.33880,144.43847 228.40872,145.89622 226.33122,148.82259 L 214.23747,165.85018 C 211.46747,169.75202 213.09594,174.70351 217.89372,176.95624 L 290.33122,210.96059 C 292.26764,211.86981 294.40155,212.06661 296.45622,211.87550 C 296.69469,211.88922 296.90081,211.97716 297.14372,211.97716 L 349.36247,211.97716 C 349.51923,211.97716 349.64502,211.90666 349.79997,211.90092 C 351.61073,211.95254 353.45248,211.75469 355.14372,210.96059 L 427.58122,176.95624 C 432.37900,174.70352 434.00747,169.75201 431.23747,165.85018 L 419.17497,148.82259 C 416.40498,144.92077 410.28524,143.59640 405.48747,145.84912 L 341.20622,176.06674 L 304.29997,176.06674 L 239.98747,145.84912 C 238.78802,145.28594 237.49536,144.96391 236.20622,144.83255 z "
style="fill:url(#linearGradient2181);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
transform="matrix(-1.000000,0.000000,0.000000,0.813258,571.7463,19.21334)"
d="M 329.30973 104.83910 A 80.812202 49.497475 0 1 1 167.68533,104.83910 A 80.812202 49.497475 0 1 1 329.30973 104.83910 z"
sodipodi:ry="49.497475"
sodipodi:rx="80.812202"
sodipodi:cy="104.83910"
sodipodi:cx="248.49753"
id="path2141"
style="fill:url(#radialGradient2155);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
id="path2211"
d="M 327.28943,525.43937 C 325.38856,525.43937 323.49405,526.03926 322.03752,527.20254 L 237.89082,594.38878 C 236.15536,595.77484 235.58320,597.64365 235.91555,599.43703 L 418.66331,599.43703 C 418.99565,597.64365 418.42351,595.77484 416.68803,594.38878 L 332.54133,527.20254 C 331.08480,526.03926 329.19029,525.43937 327.28943,525.43937 z "
style="fill:url(#linearGradient2213);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3623666;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<rect
style="fill:url(#linearGradient2686);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
id="rect2684"
width="112.58687"
height="113.64094"
x="167.36400"
y="62.370102"
rx="8.3694210"
ry="8.3694210"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
inkscape:export-xdpi="132.46655"
inkscape:export-ydpi="132.46655" />
<rect
style="fill:url(#linearGradient2696);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
id="rect2694"
width="112.58687"
height="113.64094"
x="-484.15228"
y="-310.69904"
rx="8.3694210"
ry="8.3694210"
transform="scale(-1.000000,-1.000000)"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
inkscape:export-xdpi="132.46655"
inkscape:export-ydpi="132.46655" />
<rect
style="fill:url(#linearGradient2700);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
id="rect2698"
width="112.58687"
height="113.64094"
x="-484.15225"
y="62.720863"
rx="8.3694210"
ry="8.3694210"
transform="scale(-1.000000,1.000000)"
inkscape:export-xdpi="132.46655"
inkscape:export-ydpi="132.46655" />
<rect
style="fill:url(#linearGradient2378);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
id="rect2376"
width="112.58687"
height="113.64094"
x="165.94012"
y="-310.81058"
rx="8.3694210"
ry="8.3694210"
transform="scale(1.000000,-1.000000)"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
inkscape:export-xdpi="132.46655"
inkscape:export-ydpi="132.46655" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,774 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="bubblebutton.svg"
sodipodi:docbase="/home/mtsrc/bilder/svg"
inkscape:version="0.41"
sodipodi:version="0.32"
id="svg1679"
height="297mm"
width="210mm">
<defs
id="defs3">
<linearGradient
id="linearGradient2646">
<stop
id="stop2648"
offset="0.0000000"
style="stop-color:#95ffff;stop-opacity:0.11602210;" />
<stop
id="stop2650"
offset="1.0000000"
style="stop-color:#ffff2a;stop-opacity:0.17127071;" />
</linearGradient>
<linearGradient
id="linearGradient2477">
<stop
id="stop2479"
offset="0.0000000"
style="stop-color:#89ffff;stop-opacity:1.0000000;" />
<stop
id="stop2481"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient2465">
<stop
id="stop2467"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop2469"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient2457">
<stop
id="stop2459"
offset="0.0000000"
style="stop-color:#0926d2;stop-opacity:1.0000000;" />
<stop
id="stop2461"
offset="1.0000000"
style="stop-color:#4a9cc4;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
gradientUnits="userSpaceOnUse"
y2="502.05252"
x2="79.737450"
y1="454.03168"
x1="79.737411"
gradientTransform="scale(1.899318,0.526505)"
id="linearGradient2455"
xlink:href="#linearGradient2457"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="616.70624"
x2="61.157009"
y1="596.49152"
x1="61.160572"
gradientTransform="matrix(2.431402,0.000000,0.000000,0.411285,0.000000,-0.505076)"
id="linearGradient2471"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="-629.70691"
x2="60.308784"
y1="-657.05664"
x1="60.312954"
gradientTransform="matrix(2.452165,0.000000,0.000000,0.407803,0.714286,-0.714286)"
gradientUnits="userSpaceOnUse"
id="linearGradient2475"
xlink:href="#linearGradient2477"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
id="linearGradient2534"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
gradientUnits="userSpaceOnUse"
id="linearGradient2560"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
gradientUnits="userSpaceOnUse"
id="linearGradient2596"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
gradientTransform="translate(0.535242,-1.309928)"
gradientUnits="userSpaceOnUse"
y2="88.428467"
x2="418.22263"
y1="100.39260"
x1="405.30463"
id="linearGradient2618"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="88.428467"
x2="418.22263"
y1="100.39260"
x1="405.30463"
gradientTransform="translate(-455.9825,455.5312)"
gradientUnits="userSpaceOnUse"
id="linearGradient2622"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="607.05457"
x2="136.46704"
y1="514.83978"
x1="132.94408"
gradientTransform="matrix(1.296658,0.000000,0.000000,0.771213,106.1429,140.4286)"
id="linearGradient2634"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="-872.88464"
x2="-97.053352"
y1="-928.71460"
x1="-97.656326"
gradientTransform="matrix(1.868497,0.000000,0.000000,0.488495,4.745925,-51.61167)"
gradientUnits="userSpaceOnUse"
id="linearGradient2640"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="793.54077"
x2="96.272980"
y1="752.33276"
x1="95.870987"
gradientTransform="matrix(1.819647,0.000000,0.000000,1.453273,-118.9286,-572.6226)"
gradientUnits="userSpaceOnUse"
id="linearGradient2644"
xlink:href="#linearGradient2646"
inkscape:collect="always" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="570.91620"
x2="138.30641"
y1="509.28540"
x1="124.50562"
gradientTransform="scale(1.183584,0.844891)"
id="linearGradient2658"
xlink:href="#linearGradient2457"
inkscape:collect="always" />
<linearGradient
y2="-900.19800"
x2="94.830948"
y1="-971.24817"
x1="94.210007"
gradientTransform="matrix(1.838219,0.000000,0.000000,0.533676,-4.415460,-100.0000)"
gradientUnits="userSpaceOnUse"
id="linearGradient2668"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(0.897617,0.000000,0.000000,1.114061,13.00000,-71.00000)"
gradientUnits="userSpaceOnUse"
id="linearGradient2686"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(0.897617,0.000000,0.000000,1.114061,12.50000,-997.2240)"
gradientUnits="userSpaceOnUse"
id="linearGradient2690"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(0.897617,0.000000,0.000000,1.114061,-339.5000,-997.2240)"
gradientUnits="userSpaceOnUse"
id="linearGradient2696"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(0.897617,0.000000,0.000000,1.114061,-339.5000,-70.49963)"
gradientUnits="userSpaceOnUse"
id="linearGradient2700"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
inkscape:window-y="150"
inkscape:window-x="15"
inkscape:window-height="600"
inkscape:window-width="779"
inkscape:current-layer="layer1"
inkscape:document-units="px"
inkscape:cy="556.31018"
inkscape:cx="154.79088"
inkscape:zoom="2.0000000"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
id="Work6"
rdf:about="">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
id="type9" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Layer 1">
<rect
ry="8.3694210"
rx="8.3694210"
y="509.59680"
x="46.566353"
height="229.50000"
width="246.00000"
id="rect2636"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
ry="10.000004"
rx="10.000005"
y="243.79076"
x="111.42857"
height="22.857143"
width="85.714287"
id="rect1689"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0;fill:url(#linearGradient2455)" />
<rect
ry="6.4285703"
rx="10.000006"
y="244.88033"
x="113.27695"
height="11.810629"
width="82.017502"
id="rect2463"
style="fill:url(#linearGradient2471);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.99999990pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
<rect
transform="scale(1.000000,-1.000000)"
ry="6.4285703"
rx="10.000004"
y="-265.76752"
x="112.57351"
height="11.810629"
width="83.424240"
id="rect2473"
style="fill:url(#linearGradient2475);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.99999971pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
<path
transform="matrix(0.806002,0.000000,0.000000,1.177977,36.67986,-44.19780)"
d="M 211.87950 353.33661 A 20.203051 5.0507627 0 1 1 171.47340,353.33661 A 20.203051 5.0507627 0 1 1 211.87950 353.33661 z"
sodipodi:ry="5.0507627"
sodipodi:rx="20.203051"
sodipodi:cy="353.33661"
sodipodi:cx="191.67645"
id="path2487"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0262751pt;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0000000;fill:#ffdb00"
sodipodi:type="arc" />
<path
transform="matrix(0.806002,0.000000,0.000000,1.177977,0.314277,-44.19796)"
d="M 211.87950 353.33661 A 20.203051 5.0507627 0 1 1 171.47340,353.33661 A 20.203051 5.0507627 0 1 1 211.87950 353.33661 z"
sodipodi:ry="5.0507627"
sodipodi:rx="20.203051"
sodipodi:cy="353.33661"
sodipodi:cx="191.67645"
id="path2491"
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0262751pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<rect
transform="matrix(0.909376,0.415976,-0.909376,0.415976,0.000000,0.000000)"
ry="0.0000000"
rx="8.3694010"
y="312.34888"
x="479.24988"
height="27.463554"
width="27.463554"
id="rect2497"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.1496872pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
transform="matrix(0.909376,0.415976,-0.909376,0.415976,0.000000,0.000000)"
ry="0.0000000"
rx="8.3694067"
y="288.29178"
x="505.73489"
height="27.463573"
width="27.463573"
id="rect2501"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.1496880pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
transform="matrix(2.315371,0.000000,0.000000,2.315371,-181.3513,-354.8571)"
d="M 166.92771 300.30362 A 13.889598 13.889598 0 1 1 139.14852,300.30362 A 13.889598 13.889598 0 1 1 166.92771 300.30362 z"
sodipodi:ry="13.889598"
sodipodi:rx="13.889598"
sodipodi:cy="300.30362"
sodipodi:cx="153.03812"
id="path2485"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.43189626pt;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0000000;fill:#000000"
sodipodi:type="arc" />
<path
d="M 191.67645 362.68054 A 18.940361 10.354064 0 1 1 153.79572,362.68054 A 18.940361 10.354064 0 1 1 191.67645 362.68054 z"
sodipodi:ry="10.354064"
sodipodi:rx="18.940361"
sodipodi:cy="362.68054"
sodipodi:cx="172.73608"
id="path2514"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#201b00;fill-rule:nonzero;fill-opacity:1.0000000;fill:#ffffff"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cccc"
id="path2512"
d="M 159.58042,348.48986 C 171.79079,347.15255 171.66065,347.38035 179.76291,344.60355 L 174.29002,363.93924 L 159.58042,348.48986 z "
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999982px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
transform="matrix(1.000000,0.000000,0.000000,1.358491,-2.020306,-123.3039)"
d="M 202.03051 333.38611 A 26.516504 13.384521 0 1 1 148.99750,333.38611 A 26.516504 13.384521 0 1 1 202.03051 333.38611 z"
sodipodi:ry="13.384521"
sodipodi:rx="26.516504"
sodipodi:cy="333.38611"
sodipodi:cx="175.51401"
id="path2526"
style="fill:url(#linearGradient2534);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-7.071068,-2.679117e-7)"
d="M 179.04954 331.87088 A 10.354064 10.354064 0 1 1 158.34142,331.87088 A 10.354064 10.354064 0 1 1 179.04954 331.87088 z"
sodipodi:ry="10.354064"
sodipodi:rx="10.354064"
sodipodi:cy="331.87088"
sodipodi:cx="168.69548"
id="path2518"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-1.010153,6.565992)"
d="M 192.18153 328.08279 A 8.5862970 8.5862970 0 1 1 175.00893,328.08279 A 8.5862970 8.5862970 0 1 1 192.18153 328.08279 z"
sodipodi:ry="8.5862970"
sodipodi:rx="8.5862970"
sodipodi:cy="328.08279"
sodipodi:cx="183.59523"
id="path2520"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
d="M 168.19041 336.16403 A 4.0406103 4.0406103 0 1 1 160.10919,336.16403 A 4.0406103 4.0406103 0 1 1 168.19041 336.16403 z"
sodipodi:ry="4.0406103"
sodipodi:rx="4.0406103"
sodipodi:cy="336.16403"
sodipodi:cx="164.14980"
id="path2522"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#201b00;fill-rule:nonzero;fill-opacity:1.0000000;fill:#000000"
sodipodi:type="arc" />
<path
transform="translate(0.505076,-1.010153)"
d="M 181.82746 339.19449 A 2.5253813 2.5253813 0 1 1 176.77670,339.19449 A 2.5253813 2.5253813 0 1 1 181.82746 339.19449 z"
sodipodi:ry="2.5253813"
sodipodi:rx="2.5253813"
sodipodi:cy="339.19449"
sodipodi:cx="179.30208"
id="path2524"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#201b00;fill-rule:nonzero;fill-opacity:1.0000000;fill:#000000"
sodipodi:type="arc" />
<path
transform="matrix(0.806002,0.000000,0.000000,1.177977,-83.38605,56.68636)"
d="M 211.87950 353.33661 A 20.203051 5.0507627 0 1 1 171.47340,353.33661 A 20.203051 5.0507627 0 1 1 211.87950 353.33661 z"
sodipodi:ry="5.0507627"
sodipodi:rx="20.203051"
sodipodi:cy="353.33661"
sodipodi:cx="191.67645"
id="path2536"
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0262751pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="matrix(0.806002,0.000000,0.000000,1.177977,-119.7516,56.68620)"
d="M 211.87950 353.33661 A 20.203051 5.0507627 0 1 1 171.47340,353.33661 A 20.203051 5.0507627 0 1 1 211.87950 353.33661 z"
sodipodi:ry="5.0507627"
sodipodi:rx="20.203051"
sodipodi:cy="353.33661"
sodipodi:cx="191.67645"
id="path2538"
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0262751pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<rect
transform="matrix(0.909376,0.415976,-0.909376,0.415976,0.000000,0.000000)"
ry="0.0000000"
rx="8.3694181"
y="499.62738"
x="534.49756"
height="27.463612"
width="27.463612"
id="rect2540"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.1496895pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
transform="matrix(0.909376,0.415976,-0.909376,0.415976,0.000000,0.000000)"
ry="0.0000000"
rx="8.3694239"
y="475.57025"
x="560.98279"
height="27.463631"
width="27.463631"
id="rect2542"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.1496902pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
transform="matrix(2.315371,0.000000,0.000000,2.315371,-301.4173,-253.9729)"
d="M 166.92771 300.30362 A 13.889598 13.889598 0 1 1 139.14852,300.30362 A 13.889598 13.889598 0 1 1 166.92771 300.30362 z"
sodipodi:ry="13.889598"
sodipodi:rx="13.889598"
sodipodi:cy="300.30362"
sodipodi:cx="153.03812"
id="path2544"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.43189626pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-120.0659,100.8841)"
d="M 191.67645 362.68054 A 18.940361 10.354064 0 1 1 153.79572,362.68054 A 18.940361 10.354064 0 1 1 191.67645 362.68054 z"
sodipodi:ry="10.354064"
sodipodi:rx="18.940361"
sodipodi:cy="362.68054"
sodipodi:cx="172.73608"
id="path2546"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cccc"
id="path2548"
d="M 39.514508,449.37402 C 51.724878,448.03671 51.594738,448.26451 59.697000,445.48771 L 54.224108,464.82340 L 39.514508,449.37402 z "
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999982px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
transform="matrix(1.000000,0.000000,0.000000,1.358491,-122.8005,-21.70545)"
d="M 202.03051 333.38611 A 26.516504 13.384521 0 1 1 148.99750,333.38611 A 26.516504 13.384521 0 1 1 202.03051 333.38611 z"
sodipodi:ry="13.384521"
sodipodi:rx="26.516504"
sodipodi:cy="333.38611"
sodipodi:cx="175.51401"
id="path2550"
style="fill:url(#linearGradient2560);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-127.1370,100.8841)"
d="M 179.04954 331.87088 A 10.354064 10.354064 0 1 1 158.34142,331.87088 A 10.354064 10.354064 0 1 1 179.04954 331.87088 z"
sodipodi:ry="10.354064"
sodipodi:rx="10.354064"
sodipodi:cy="331.87088"
sodipodi:cx="168.69548"
id="path2552"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-121.0761,107.4501)"
d="M 192.18153 328.08279 A 8.5862970 8.5862970 0 1 1 175.00893,328.08279 A 8.5862970 8.5862970 0 1 1 192.18153 328.08279 z"
sodipodi:ry="8.5862970"
sodipodi:rx="8.5862970"
sodipodi:cy="328.08279"
sodipodi:cx="183.59523"
id="path2554"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-120.0659,100.8841)"
d="M 168.19041 336.16403 A 4.0406103 4.0406103 0 1 1 160.10919,336.16403 A 4.0406103 4.0406103 0 1 1 168.19041 336.16403 z"
sodipodi:ry="4.0406103"
sodipodi:rx="4.0406103"
sodipodi:cy="336.16403"
sodipodi:cx="164.14980"
id="path2556"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="translate(-119.5608,99.87393)"
d="M 181.82746 339.19449 A 2.5253813 2.5253813 0 1 1 176.77670,339.19449 A 2.5253813 2.5253813 0 1 1 181.82746 339.19449 z"
sodipodi:ry="2.5253813"
sodipodi:rx="2.5253813"
sodipodi:cy="339.19449"
sodipodi:cx="179.30208"
id="path2558"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
rx="8.3694210"
y="422.71933"
x="119.64286"
height="80.714287"
width="113.57143"
id="rect2562"
style="fill:url(#linearGradient2658);fill-opacity:1.0;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(0.681708,0.731624,-0.681708,0.731624,0.000000,0.000000)"
ry="0.0000000"
rx="2.4977283"
y="213.91008"
x="405.13129"
height="14.877851"
width="14.877851"
id="rect2664"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0012515pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
rx="4.6428556"
ry="4.6428571"
y="493.43362"
x="128.29718"
height="9.2857141"
width="41.262676"
id="rect2574"
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:0.99999981pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
rx="4.6428571"
ry="4.6428571"
y="493.07648"
x="179.32126"
height="9.2857141"
width="38.500336"
id="rect2576"
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(0.717176,0.696892,-0.717176,0.696892,0.000000,0.000000)"
ry="0.0000000"
rx="2.4061787"
y="172.84694"
x="481.59723"
height="14.142070"
width="14.142070"
id="rect2580"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0002091pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
ry="23.369421"
rx="40.512280"
y="424.50507"
x="124.64286"
height="77.142860"
width="100.85715"
id="rect2660"
style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(1.547615,0.000000,0.000000,1.000000,-91.97187,127.8959)"
d="M 191.67645 362.68054 A 18.940361 10.354064 0 1 1 153.79572,362.68054 A 18.940361 10.354064 0 1 1 191.67645 362.68054 z"
sodipodi:ry="10.354064"
sodipodi:rx="18.940361"
sodipodi:cy="362.68054"
sodipodi:cx="172.73608"
id="path2662"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#201b00;stroke-width:0.80383797pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
sodipodi:nodetypes="cccc"
id="path2584"
d="M 155.76020,471.17172 C 177.44060,469.83441 177.20953,470.06221 191.59569,467.28541 L 181.87817,486.62110 L 155.76020,471.17172 z "
style="fill:#ffdb00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999976px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(1.390592,0.000000,0.000000,1.358491,-71.56839,-6.336321)"
d="M 202.03051 333.38611 A 26.516504 13.384521 0 1 1 148.99750,333.38611 A 26.516504 13.384521 0 1 1 202.03051 333.38611 z"
sodipodi:ry="13.384521"
sodipodi:rx="26.516504"
sodipodi:cy="333.38611"
sodipodi:cx="175.51401"
id="path2586"
style="fill:url(#linearGradient2596);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(1.471659,-0.219527,0.147537,0.989057,-138.7376,158.3468)"
d="M 179.04954 331.87088 A 10.354064 12.496922 0 1 1 158.34142,331.87088 A 10.354064 12.496922 0 1 1 179.04954 331.87088 z"
sodipodi:ry="12.496922"
sodipodi:rx="10.354064"
sodipodi:cy="331.87088"
sodipodi:cx="168.69548"
id="path2588"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.81979837pt;stroke:#201b00;fill-rule:nonzero;fill-opacity:1.0000000;fill:#ffffff"
sodipodi:type="arc" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(2.108601e-7,-1.247747,1.308964,-7.423492e-8,-276.3526,658.3060)"
d="M 168.19041 336.16403 A 4.0406103 4.0406103 0 1 1 160.10919,336.16403 A 4.0406103 4.0406103 0 1 1 168.19041 336.16403 z"
sodipodi:ry="4.0406103"
sodipodi:rx="4.0406103"
sodipodi:cy="336.16403"
sodipodi:cx="164.14980"
id="path2592"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.78247957pt;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0000000;fill:#000000"
sodipodi:type="arc" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(2.981034e-15,-1.491163,1.000000,1.999133e-15,-142.9201,726.1010)"
d="M 192.18153 328.08279 A 8.5862970 9.3005829 0 1 1 175.00893,328.08279 A 8.5862970 9.3005829 0 1 1 192.18153 328.08279 z"
sodipodi:ry="9.3005829"
sodipodi:rx="8.5862970"
sodipodi:cy="328.08279"
sodipodi:cx="183.59523"
id="path2590"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.81891241pt;stroke:#201b00;fill-rule:nonzero;fill-opacity:1.0000000;fill:#ffffff"
sodipodi:type="arc" />
<path
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="matrix(3.471841e-15,-1.736673,1.000000,1.999133e-15,-150.4963,767.1153)"
d="M 181.82746 339.19449 A 2.5253813 2.5253813 0 1 1 176.77670,339.19449 A 2.5253813 2.5253813 0 1 1 181.82746 339.19449 z"
sodipodi:ry="2.5253813"
sodipodi:rx="2.5253813"
sodipodi:cy="339.19449"
sodipodi:cx="179.30208"
id="path2594"
style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.75882382pt;stroke:#000000;fill-rule:nonzero;fill-opacity:1.0000000;fill:#000000"
sodipodi:type="arc" />
<rect
ry="8.3694210"
rx="8.3694210"
y="518.79077"
x="2.8571434"
height="85.000000"
width="106.42857"
id="rect2642"
style="fill:url(#linearGradient2644);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
ry="8.3694210"
rx="8.3694210"
y="563.86218"
x="228.64287"
height="65.000000"
width="109.28571"
id="rect2626"
style="fill:url(#linearGradient2634);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
transform="scale(1.000000,-1.000000)"
ry="8.3694210"
rx="8.3694210"
y="-603.79077"
x="114.35715"
height="32.142857"
width="110.71429"
id="rect2666"
style="fill:url(#linearGradient2668);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
ry="8.3694210"
rx="8.3694210"
y="424.36218"
x="121.35715"
height="50.000000"
width="40.285713"
id="rect2684"
style="fill:url(#linearGradient2686);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="scale(1.000000,-1.000000)"
ry="8.3694210"
rx="8.3694210"
y="-501.86218"
x="120.85715"
height="50.000000"
width="40.285713"
id="rect2688"
style="fill:url(#linearGradient2690);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
inkscape:export-filename="/home/mtsrc/bilder/svg/rect2698_small.png"
transform="scale(-1.000000,-1.000000)"
ry="8.3694210"
rx="8.3694210"
y="-501.86218"
x="-231.14285"
height="50.000000"
width="40.285713"
id="rect2694"
style="fill:url(#linearGradient2696);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
<rect
inkscape:export-ydpi="132.46655"
inkscape:export-xdpi="132.46655"
transform="scale(-1.000000,1.000000)"
ry="8.3694210"
rx="8.3694210"
y="424.86218"
x="-231.14285"
height="50.000000"
width="40.285713"
id="rect2698"
style="fill:url(#linearGradient2700);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 33 KiB

View file

@ -0,0 +1,945 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:export-ydpi="120.48000"
inkscape:export-xdpi="120.48000"
inkscape:export-filename="/home/lars/vault_pingu_uncut.png"
sodipodi:docname="entwurf.svg"
sodipodi:docbase="/home/lars"
inkscape:version="0.41"
sodipodi:version="0.32"
id="svg2"
height="297mm"
width="210mm">
<defs
id="defs3">
<linearGradient
id="linearGradient41925">
<stop
id="stop41927"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop41929"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient37357">
<stop
id="stop37359"
offset="0.0000000"
style="stop-color:#d12626;stop-opacity:1.0000000;" />
<stop
id="stop37361"
offset="1.0000000"
style="stop-color:#e44453;stop-opacity:0.96078432;" />
</linearGradient>
<linearGradient
id="linearGradient29297">
<stop
id="stop29299"
offset="0.0000000"
style="stop-color:#505fd0;stop-opacity:0.10067114;" />
<stop
id="stop29301"
offset="1.0000000"
style="stop-color:#5a50d0;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient23566">
<stop
id="stop23568"
offset="0.0000000"
style="stop-color:#a1a118;stop-opacity:1.0000000;" />
<stop
id="stop23570"
offset="1"
style="stop-color:#ebebeb;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient22800">
<stop
id="stop22802"
offset="0.0000000"
style="stop-color:#f3f356;stop-opacity:1.0000000;" />
<stop
id="stop22804"
offset="1.0000000"
style="stop-color:#caca32;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient12842">
<stop
id="stop12844"
offset="0.0000000"
style="stop-color:#2e6c74;stop-opacity:1.0000000;" />
<stop
id="stop12846"
offset="1.0000000"
style="stop-color:#d0ced7;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient12836">
<stop
id="stop12838"
offset="0.0000000"
style="stop-color:#2e6c74;stop-opacity:1.0000000;" />
<stop
id="stop12840"
offset="1.0000000"
style="stop-color:#d0ced7;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient12830">
<stop
id="stop12832"
offset="0.0000000"
style="stop-color:#2e6c74;stop-opacity:1.0000000;" />
<stop
id="stop12834"
offset="1.0000000"
style="stop-color:#d0ced7;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient12822">
<stop
id="stop12824"
offset="0.0000000"
style="stop-color:#45a2ac;stop-opacity:1.0000000;" />
<stop
id="stop12826"
offset="1"
style="stop-color:#cbc9d1;stop-opacity:0;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient2213"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.563798,0.000000,0.000000,0.639469,5.392016,252.3690)"
x1="82.933327"
y1="413.19473"
x2="214.14540"
y2="525.15021" />
<linearGradient
id="linearGradient2135">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2137" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2139" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient2143">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2145" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2147" />
</linearGradient>
<linearGradient
id="linearGradient2215">
<stop
style="stop-color:#ffdb00;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2217" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2219" />
</linearGradient>
<linearGradient
id="linearGradient2465">
<stop
id="stop2467"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop2469"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(2.508579,0.000000,0.000000,3.113477,99.47147,-1666.083)"
gradientUnits="userSpaceOnUse"
id="linearGradient2690"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
gradientUnits="userSpaceOnUse"
id="linearGradient2596"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
id="linearGradient2457">
<stop
id="stop2459"
offset="0.0000000"
style="stop-color:#0926d2;stop-opacity:1.0000000;" />
<stop
id="stop2461"
offset="1.0000000"
style="stop-color:#4a9cc4;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
y2="821.94214"
x2="219.92314"
y1="821.94189"
x1="212.34076"
gradientTransform="matrix(1.143161,0.000000,0.000000,0.516398,177.3643,34.02000)"
gradientUnits="userSpaceOnUse"
id="linearGradient28466"
xlink:href="#linearGradient22800"
inkscape:collect="always" />
<radialGradient
r="1.4599676"
fy="263.20694"
fx="292.23877"
cy="263.20694"
cx="292.23877"
gradientTransform="scale(0.732428,1.365322)"
gradientUnits="userSpaceOnUse"
id="radialGradient28468"
xlink:href="#linearGradient23566"
inkscape:collect="always" />
<linearGradient
y2="821.94214"
x2="219.92314"
y1="821.94189"
x1="212.34076"
gradientTransform="matrix(1.143161,0.000000,0.000000,0.516398,177.3643,34.02000)"
gradientUnits="userSpaceOnUse"
id="linearGradient28470"
xlink:href="#linearGradient22800"
inkscape:collect="always" />
<radialGradient
r="1.4599676"
fy="263.20694"
fx="292.23877"
cy="263.20694"
cx="292.23877"
gradientTransform="scale(0.732428,1.365322)"
gradientUnits="userSpaceOnUse"
id="radialGradient28472"
xlink:href="#linearGradient23566"
inkscape:collect="always" />
<linearGradient
y2="821.94214"
x2="219.92314"
y1="821.94189"
x1="212.34076"
gradientTransform="matrix(0.903696,0.000000,0.000000,0.516398,228.1908,-2.076340)"
gradientUnits="userSpaceOnUse"
id="linearGradient28474"
xlink:href="#linearGradient22800"
inkscape:collect="always" />
<radialGradient
r="1.4599676"
fy="263.20694"
fx="292.23877"
cy="263.20694"
cx="292.23877"
gradientTransform="scale(0.732428,1.365322)"
gradientUnits="userSpaceOnUse"
id="radialGradient28476"
xlink:href="#linearGradient23566"
inkscape:collect="always" />
<radialGradient
r="99.525002"
fy="422.86218"
fx="388.91885"
cy="422.86218"
cx="388.91885"
gradientUnits="userSpaceOnUse"
id="radialGradient28478"
xlink:href="#linearGradient12842"
inkscape:collect="always" />
<linearGradient
y2="208.34334"
x2="253.60005"
y1="171.10872"
x1="117.61987"
gradientTransform="matrix(0.453331,0.000000,0.000000,0.472522,74.81840,21.12007)"
gradientUnits="userSpaceOnUse"
id="linearGradient28525"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="227.56172"
x2="546.69745"
y1="184.47606"
x1="352.24612"
gradientTransform="matrix(0.453331,0.000000,0.000000,0.472522,74.81840,21.12007)"
gradientUnits="userSpaceOnUse"
id="linearGradient28527"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="239.82146"
x2="429.14163"
y1="99.157669"
x1="168.79323"
gradientTransform="matrix(0.478589,0.000000,0.000000,0.447584,74.81840,21.12007)"
gradientUnits="userSpaceOnUse"
id="linearGradient28529"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="432.21533"
x2="238.41585"
y1="566.80432"
x1="196.24054"
gradientTransform="scale(1.580078,0.632880)"
gradientUnits="userSpaceOnUse"
id="linearGradient28531"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="-539.59961"
x2="205.79190"
y1="-453.57123"
x1="161.00905"
gradientTransform="matrix(0.476701,-9.828131e-2,-9.158685e-2,-0.293809,111.6053,28.06334)"
gradientUnits="userSpaceOnUse"
id="linearGradient28533"
xlink:href="#linearGradient2215"
inkscape:collect="always" />
<linearGradient
y2="357.05264"
x2="161.39738"
y1="266.49701"
x1="122.77643"
spreadMethod="pad"
gradientTransform="matrix(0.830353,0.000000,0.000000,0.257973,73.78154,17.74712)"
gradientUnits="userSpaceOnUse"
id="linearGradient28535"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<radialGradient
r="72.676987"
fy="55.831612"
fx="238.68398"
cy="54.343491"
cx="238.68401"
gradientTransform="scale(1.277753,0.782624)"
gradientUnits="userSpaceOnUse"
id="radialGradient28537"
xlink:href="#linearGradient2143"
inkscape:collect="always" />
<radialGradient
gradientUnits="userSpaceOnUse"
r="133.26981"
fy="365.03641"
fx="368.66299"
cy="365.03641"
cx="368.66299"
id="radialGradient29303"
xlink:href="#linearGradient29297"
inkscape:collect="always" />
<radialGradient
gradientUnits="userSpaceOnUse"
r="256.13660"
fy="451.60577"
fx="377.83347"
cy="451.60577"
cx="377.83347"
gradientTransform="scale(1.086905,0.920044)"
id="radialGradient37363"
xlink:href="#linearGradient37357"
inkscape:collect="always" />
<radialGradient
gradientUnits="userSpaceOnUse"
r="45.956501"
fy="419.20913"
fx="165.63489"
cy="419.20913"
cx="165.63489"
gradientTransform="scale(1.044466,0.957427)"
id="radialGradient41931"
xlink:href="#linearGradient41925"
inkscape:collect="always" />
<radialGradient
r="45.956501"
fy="419.20913"
fx="165.63489"
cy="419.20913"
cx="165.63489"
gradientTransform="scale(1.044466,0.957427)"
gradientUnits="userSpaceOnUse"
id="radialGradient42693"
xlink:href="#linearGradient41925"
inkscape:collect="always" />
<radialGradient
r="45.956501"
fy="419.20913"
fx="165.63489"
cy="419.20913"
cx="165.63489"
gradientTransform="scale(1.044466,0.957427)"
gradientUnits="userSpaceOnUse"
id="radialGradient42697"
xlink:href="#linearGradient41925"
inkscape:collect="always" />
<radialGradient
r="45.956501"
fy="419.20913"
fx="165.63489"
cy="419.20913"
cx="165.63489"
gradientTransform="scale(1.044466,0.957427)"
gradientUnits="userSpaceOnUse"
id="radialGradient42701"
xlink:href="#linearGradient41925"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
inkscape:guide-bbox="true"
showguides="true"
inkscape:window-y="2"
inkscape:window-x="2"
inkscape:window-height="741"
inkscape:window-width="1018"
inkscape:guide-points="true"
gridempspacing="10"
gridspacingy="1.0000000px"
gridspacingx="1.0000000px"
inkscape:grid-points="true"
showgrid="true"
inkscape:current-layer="layer1"
inkscape:document-units="px"
inkscape:cy="629.77313"
inkscape:cx="404.29727"
inkscape:zoom="0.54172185"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
id="Work6"
rdf:about="">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
id="type9" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Layer 1">
<path
transform="matrix(1.083251,0.000000,0.000000,1.279979,-49.46891,-122.5693)"
d="M 600.00000 429.86218 A 182.75732 154.50000 0 1 1 234.48535,429.86218 A 182.75732 154.50000 0 1 1 600.00000 429.86218 z"
sodipodi:ry="154.50000"
sodipodi:rx="182.75732"
sodipodi:cy="429.86218"
sodipodi:cx="417.24268"
id="path36597"
style="fill:url(#radialGradient37363);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#3a2d3d;stroke-width:2.6115401;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
<path
transform="matrix(2.905340,0.000000,0.000000,2.905340,-240.4154,-876.8737)"
d="M 221.00000 401.36218 A 48.000000 44.000000 0 1 1 125.00000,401.36218 A 48.000000 44.000000 0 1 1 221.00000 401.36218 z"
sodipodi:ry="44.000000"
sodipodi:rx="48.000000"
sodipodi:cy="401.36218"
sodipodi:cx="173.00000"
id="path42691"
style="opacity:0.73573571;fill:url(#radialGradient42693);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#96f366;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="matrix(2.905340,0.000000,0.000000,2.905340,43.76230,-876.8737)"
d="M 221.00000 401.36218 A 48.000000 44.000000 0 1 1 125.00000,401.36218 A 48.000000 44.000000 0 1 1 221.00000 401.36218 z"
sodipodi:ry="44.000000"
sodipodi:rx="48.000000"
sodipodi:cy="401.36218"
sodipodi:cx="173.00000"
id="path42695"
style="opacity:0.73573571;fill:url(#radialGradient42697);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#96f366;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="matrix(2.905340,0.000000,0.000000,2.905340,43.76230,-610.1353)"
d="M 221.00000 401.36218 A 48.000000 44.000000 0 1 1 125.00000,401.36218 A 48.000000 44.000000 0 1 1 221.00000 401.36218 z"
sodipodi:ry="44.000000"
sodipodi:rx="48.000000"
sodipodi:cy="401.36218"
sodipodi:cx="173.00000"
id="path42699"
style="opacity:0.73573571;fill:url(#radialGradient42701);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#96f366;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="matrix(2.905340,0.000000,0.000000,2.905340,-238.9358,-612.5410)"
d="M 221.00000 401.36218 A 48.000000 44.000000 0 1 1 125.00000,401.36218 A 48.000000 44.000000 0 1 1 221.00000 401.36218 z"
sodipodi:ry="44.000000"
sodipodi:rx="48.000000"
sodipodi:cy="401.36218"
sodipodi:cx="173.00000"
id="path41165"
style="opacity:0.73573571;fill:url(#radialGradient41931);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#96f366;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
transform="matrix(1.041531,0.000000,0.000000,1.041531,-20.94463,-10.62345)"
d="M 503.00000 420.36218 A 95.000000 95.000000 0 1 1 313.00000,420.36218 A 95.000000 95.000000 0 1 1 503.00000 420.36218 z"
sodipodi:ry="95.000000"
sodipodi:rx="95.000000"
sodipodi:cy="420.36218"
sodipodi:cx="408.00000"
id="path17473"
style="fill:url(#radialGradient29303);fill-opacity:1.0;fill-rule:nonzero;stroke:#3a2d3d;stroke-width:2.6115401;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000;stroke-dasharray:none"
sodipodi:type="arc" />
<g
transform="translate(474.0885,314.1198)"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="g28339">
<g
transform="matrix(1.194885,0.000000,0.000000,1.000000,245.9613,4.350923)"
id="g34290">
<path
sodipodi:nodetypes="cccccccccccc"
id="rect30869"
d="M -293.60856,143.96930 L -204.67387,146.24462 L -219.92912,165.97162 L -228.13312,175.24462 L -235.18438,185.69861 L -256.67387,186.24462 L -279.31858,184.58225 L -302.67387,184.24462 L -323.45278,183.46589 L -316.67387,173.24462 L -308.53067,163.71760 L -293.60856,143.96930 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34274"
d="M -295.51268,141.62943 L -206.57799,143.90475 L -221.83324,163.63175 L -230.03724,172.90475 L -237.08850,183.35874 L -258.57799,183.90475 L -281.22270,182.24238 L -304.57799,181.90475 L -325.35690,181.12602 L -318.57799,170.90475 L -310.43479,161.37773 L -295.51268,141.62943 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34276"
d="M -291.16639,140.24006 L -202.23170,142.51538 L -217.48695,162.24238 L -225.69095,171.51538 L -232.74221,181.96937 L -254.23170,182.51538 L -276.87641,180.85301 L -300.23170,180.51538 L -321.01061,179.73665 L -314.23170,169.51538 L -306.08850,159.98836 L -291.16639,140.24006 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34278"
d="M -290.24428,138.74579 L -201.30959,141.02111 L -216.56484,160.74811 L -224.76884,170.02111 L -231.82010,180.47510 L -253.30959,181.02111 L -275.95430,179.35874 L -299.30959,179.02111 L -320.08850,178.24238 L -313.30959,168.02111 L -305.16639,158.49409 L -290.24428,138.74579 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34280"
d="M -294.03770,137.34842 L -205.10301,139.62374 L -220.35826,159.35074 L -228.56226,168.62374 L -235.61352,179.07773 L -257.10301,179.62374 L -279.74772,177.96137 L -303.10301,177.62374 L -323.88192,176.84501 L -317.10301,166.62374 L -308.95981,157.09672 L -294.03770,137.34842 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34282"
d="M -291.64165,135.91079 L -202.70696,138.18611 L -217.96221,157.91311 L -226.16621,167.18611 L -233.21747,177.64010 L -254.70696,178.18611 L -277.35167,176.52374 L -300.70696,176.18611 L -321.48587,175.40738 L -314.70696,165.18611 L -306.56376,155.65909 L -291.64165,135.91079 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34284"
d="M -287.84823,137.30816 L -198.91354,139.58348 L -214.16879,159.31048 L -222.37279,168.58348 L -229.42405,179.03747 L -250.91354,179.58348 L -273.55825,177.92111 L -296.91354,177.58348 L -317.69245,176.80475 L -310.91354,166.58348 L -302.77034,157.05646 L -287.84823,137.30816 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34286"
d="M -289.28586,136.34974 L -200.35117,138.62506 L -215.60642,158.35206 L -223.81042,167.62506 L -230.86168,178.07905 L -252.35117,178.62506 L -274.99588,176.96269 L -298.35117,176.62506 L -319.13008,175.84633 L -312.35117,165.62506 L -304.20797,156.09804 L -289.28586,136.34974 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<path
sodipodi:nodetypes="cccccccccccc"
id="path34288"
d="M -290.72349,134.43290 L -201.78880,136.70822 L -217.04405,156.43522 L -225.24805,165.70822 L -232.29931,176.16221 L -253.78880,176.70822 L -276.43351,175.04585 L -299.78880,174.70822 L -320.56771,173.92949 L -313.78880,163.70822 L -305.64560,154.18120 L -290.72349,134.43290 z "
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#495366;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.90153849" />
<text
transform="matrix(1.447164,4.566348e-2,-0.527025,0.674377,0.000000,0.000000)"
sodipodi:linespacing="120%"
id="text34216"
y="212.13515"
x="-121.30048"
style="font-size:2.3458211;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Sans;text-anchor:start;writing-mode:lr-tb"
xml:space="preserve"><tspan
y="212.13515"
x="-121.30048"
id="tspan34218"
sodipodi:role="line">doire wrote to mention a Physicsweb piece</tspan><tspan
y="214.95013"
x="-121.30048"
id="tspan34240"
sodipodi:role="line">revealing some of the first bits of data from</tspan><tspan
y="217.76512"
x="-121.30048"
id="tspan34242"
sodipodi:role="line">the Deep Impact mission. From the article:</tspan><tspan
y="220.58010"
x="-121.30048"
id="tspan34244"
sodipodi:role="line">&quot;Based on data from the flyby spacecraft and</tspan><tspan
y="223.39509"
x="-121.30048"
id="tspan34246"
sodipodi:role="line">the impactor, Michael O'Hearn of the</tspan><tspan
y="226.21007"
x="-121.30048"
id="tspan34248"
sodipodi:role="line">University of Maryland and colleagues say</tspan><tspan
y="229.02506"
x="-121.30048"
id="tspan34250"
sodipodi:role="line">that Tempel 1 belongs to the Jupiter family of</tspan><tspan
y="231.84005"
x="-121.30048"
id="tspan34252"
sodipodi:role="line">comets, although its overall shape and surface</tspan><tspan
y="234.65503"
x="-121.30048"
id="tspan34228"
sodipodi:role="line">features are quite different from the nuclei of</tspan><tspan
y="237.47002"
x="-121.30048"
id="tspan34254"
sodipodi:role="line">the two other comets that have been studied</tspan><tspan
y="240.28500"
x="-121.30048"
id="tspan34256"
sodipodi:role="line">in detail -- Wild 2 and Borelly. They also report</tspan><tspan
y="243.09999"
x="-121.30048"
id="tspan34232"
sodipodi:role="line">that Tempel 1 consists largely of extremely</tspan><tspan
y="245.91497"
x="-121.30048"
id="tspan34258"
sodipodi:role="line">fine particles that seem to be very loosely</tspan><tspan
y="248.72996"
x="-121.30048"
id="tspan34260"
sodipodi:role="line">bound together: in other words, the comet is</tspan><tspan
y="251.54494"
x="-121.30048"
id="tspan34262"
sodipodi:role="line">more like a pile of powder than a solid rock.&quot;</tspan><tspan
y="254.35993"
x="-121.30048"
id="tspan34264"
sodipodi:role="line">Looks like the Electric Universe folks were off.</tspan><tspan
y="257.17491"
x="-121.30048"
id="tspan34268"
sodipodi:role="line"></tspan><tspan
y="259.98990"
x="-121.30048"
id="tspan34270"
sodipodi:role="line">Yours sincerely,</tspan><tspan
y="262.80489"
x="-121.30048"
id="tspan34272"
sodipodi:role="line">Big Brother</tspan></text>
</g>
<g
transform="translate(-311.8500,-5.670000)"
id="g28514">
<path
style="fill:url(#linearGradient28525);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M 162.08230,125.49707 C 162.05884,125.92474 162.34302,126.36213 162.92146,126.71146 L 196.32988,146.89302 C 197.01911,147.30926 197.97021,147.47275 198.89380,147.43135 L 201.14963,106.31629 C 200.23425,106.20816 199.26903,106.30211 198.53696,106.66677 L 163.05112,124.34829 C 162.43672,124.65434 162.10576,125.06941 162.08230,125.49707 z "
id="path2225" />
<path
style="fill:url(#linearGradient28527);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M 321.68972,127.28919 C 321.71317,127.71686 321.42899,128.15425 320.85055,128.50359 L 287.44213,148.68514 C 286.75290,149.10138 285.80180,149.26488 284.87822,149.22347 L 282.62238,108.10841 C 283.53776,108.00028 284.50298,108.09423 285.23505,108.45889 L 320.72089,126.14042 C 321.33530,126.44647 321.66625,126.86154 321.68972,127.28919 z "
id="path2221" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2209"
width="51.970100"
height="13.491795"
x="246.87419"
y="159.74210"
rx="9.9999876"
ry="9.9999905" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2207"
width="51.970100"
height="13.491795"
x="178.44124"
y="158.89886"
rx="9.9999876"
ry="9.9999905" />
<path
style="fill:url(#linearGradient28529);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.0521033;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M 240.50859,47.741155 C 205.70341,47.741155 177.46261,70.721265 177.46260,99.026856 C 177.46260,99.510834 177.52638,99.980831 177.54279,100.46160 C 177.52979,100.58328 177.46260,100.68926 177.46260,100.81377 L 177.46260,131.81736 C 177.46260,131.85916 177.49319,131.89325 177.49468,131.93475 C 177.49281,132.09725 177.46260,132.25448 177.46260,132.41734 C 177.46260,145.18268 183.24766,156.83100 192.74696,165.80783 L 288.28626,165.80783 C 297.78915,156.83100 303.57062,145.18268 303.57062,132.41734 C 303.57062,132.25448 303.54041,132.09725 303.53855,131.93475 C 303.54003,131.89325 303.57062,131.85916 303.57062,131.81736 L 303.57062,100.81377 C 303.57062,100.68926 303.50344,100.58328 303.49043,100.46160 C 303.50684,99.980831 303.57062,99.510834 303.57062,99.026856 C 303.57062,70.721265 275.31377,47.741155 240.50859,47.741155 z "
id="path1291" />
<path
sodipodi:type="arc"
style="fill:url(#linearGradient28531);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.1583133;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2229"
sodipodi:cx="324.25897"
sodipodi:cy="320.00159"
sodipodi:rx="63.639610"
sodipodi:ry="24.243662"
d="M 387.89858 320.00159 A 63.639610 24.243662 0 1 1 260.61936,320.00159 A 63.639610 24.243662 0 1 1 387.89858 320.00159 z"
transform="matrix(0.513221,0.000000,0.000000,-0.417381,74.81840,288.2453)" />
<path
style="fill:url(#linearGradient28533);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M 246.00773,155.73645 C 245.58209,155.82421 245.09477,155.70921 244.64624,155.38385 L 218.73594,136.59337 C 218.20152,136.20570 217.87679,135.60139 217.76253,134.98079 L 258.68302,126.54422 C 258.94611,127.13413 259.01461,127.79126 258.77182,128.33917 L 246.99823,154.89894 C 246.79447,155.35878 246.43336,155.64870 246.00773,155.73645 z "
id="rect1306" />
<path
style="fill:url(#linearGradient28535);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9245793;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M 196.04439,89.806666 C 194.05955,89.604416 192.04255,90.352564 190.97634,91.854438 L 184.76957,100.59336 C 183.34795,102.59586 184.18371,105.13707 186.64603,106.29322 L 223.82248,123.74496 C 224.81629,124.21160 225.91146,124.31260 226.96596,124.21452 C 227.08835,124.22156 227.19413,124.26669 227.31880,124.26669 L 254.11856,124.26669 C 254.19901,124.26669 254.26357,124.23051 254.34309,124.22756 C 255.27241,124.25405 256.21764,124.15251 257.08562,123.74496 L 294.26206,106.29322 C 296.72438,105.13708 297.56015,102.59586 296.13853,100.59336 L 289.94780,91.854438 C 288.52618,89.851943 285.38540,89.172248 282.92308,90.328391 L 249.93260,105.83671 L 230.99153,105.83671 L 197.98501,90.328391 C 197.36943,90.039355 196.70601,89.874083 196.04439,89.806666 z "
id="rect1358" />
<path
sodipodi:type="arc"
style="fill:url(#radialGradient28537);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2141"
sodipodi:cx="248.49753"
sodipodi:cy="104.83910"
sodipodi:rx="80.812202"
sodipodi:ry="49.497475"
d="M 329.30973 104.83910 A 80.812202 49.497475 0 1 1 167.68533,104.83910 A 80.812202 49.497475 0 1 1 329.30973 104.83910 z"
transform="matrix(-0.513221,0.000000,0.000000,0.417381,368.2506,25.33625)" />
</g>
<path
sodipodi:nodetypes="ccc"
id="path33182"
d="M -316.08850,108.74238 C -316.08850,108.74238 -301.08850,104.20173 -289.08850,102.69254 C -270.08850,104.20173 -259.08850,104.20173 -244.66507,99.201733"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
</g>
<path
transform="matrix(1.077898,0.000000,0.000000,1.077898,-35.87046,-26.15161)"
d="M 503.00000 420.36218 A 95.000000 95.000000 0 1 1 313.00000,420.36218 A 95.000000 95.000000 0 1 1 503.00000 420.36218 z"
sodipodi:ry="95.000000"
sodipodi:rx="95.000000"
sodipodi:cy="420.36218"
sodipodi:cx="408.00000"
id="path18233"
style="fill:none;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:8.6411257;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.99625468"
sodipodi:type="arc" />
<path
transform="matrix(1.041531,0.000000,0.000000,1.041531,-20.94463,-10.62345)"
d="M 503.00000 420.36218 A 95.000000 95.000000 0 1 1 313.00000,420.36218 A 95.000000 95.000000 0 1 1 503.00000 420.36218 z"
sodipodi:ry="95.000000"
sodipodi:rx="95.000000"
sodipodi:cy="420.36218"
sodipodi:cx="408.00000"
id="path34321"
style="fill:none;fill-opacity:1.0;fill-rule:nonzero;stroke:#3a2d3d;stroke-width:2.6156251;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.99625468"
sodipodi:type="arc" />
<g
id="g30845">
<g
transform="matrix(0.478825,0.000000,0.000000,1.000000,265.9079,-1.213364e-4)"
id="g18995">
<path
d="M 503.00000 423.08450 A 37.500000 120.72232 0 1 1 428.00000,423.08450 A 37.500000 120.72232 0 1 1 503.00000 423.08450 z"
sodipodi:ry="120.72232"
sodipodi:rx="37.500000"
sodipodi:cy="423.08450"
sodipodi:cx="465.50000"
id="path18993"
style="fill:none;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:8.6411257;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.99625468"
sodipodi:type="arc" />
<g
transform="matrix(0.386233,0.000000,0.000000,1.247225,309.8276,-109.2713)"
id="g17462">
<path
transform="translate(25.03383,4.500000)"
d="M 487.41885 422.86218 A 98.500000 98.500000 0 1 1 290.41885,422.86218 A 98.500000 98.500000 0 1 1 487.41885 422.86218 z"
sodipodi:ry="98.500000"
sodipodi:rx="98.500000"
sodipodi:cy="422.86218"
sodipodi:cx="388.91885"
id="path12062"
style="fill:url(#radialGradient28478);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#51baba;stroke-width:2.0500000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
id="path12850"
d="M 356.03383,363.94848 L 368.19872,355.36218 L 415.19872,426.90297 L 356.03383,363.94848 z "
style="fill:#9393a9;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
<path
id="path13630"
d="M 366.56790,498.33951 L 355.53383,488.34159 L 415.09361,426.86218 L 366.56790,498.33951 z "
style="fill:#9393a9;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
<path
id="path13632"
d="M 514.16316,403.74722 L 513.00000,459.21636 L 415.14470,426.86218 L 514.16316,403.74722 z "
style="fill:#9393a9;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0713823px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.0000000" />
<g
transform="translate(3.793280,0.000000)"
id="g17458">
<path
transform="matrix(0.770900,0.000000,0.000000,0.770900,230.6669,76.65921)"
d="M 277.89046 453.62949 A 39.732712 39.732712 0 1 1 198.42503,453.62949 A 39.732712 39.732712 0 1 1 277.89046 453.62949 z"
sodipodi:ry="39.732712"
sodipodi:rx="39.732712"
sodipodi:cy="453.62949"
sodipodi:cx="238.15775"
id="path13642"
style="fill:none;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#749e61;stroke-width:9.0802956;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.99625468;marker-mid:none"
sodipodi:type="arc" />
<path
transform="matrix(1.032258,0.000000,0.000000,1.032258,6.169615,-9.487798)"
d="M 425.00000 422.12408 A 29.500000 29.761890 0 1 1 366.00000,422.12408 A 29.500000 29.761890 0 1 1 425.00000 422.12408 z"
sodipodi:ry="29.761890"
sodipodi:rx="29.500000"
sodipodi:cy="422.12408"
sodipodi:cx="395.50000"
id="path15160"
style="fill:none;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#705b74;stroke-width:2.6156251;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.99625468"
sodipodi:type="arc" />
</g>
</g>
</g>
<g
transform="matrix(0.478825,0.000000,0.000000,1.000000,265.9079,-1.213364e-4)"
id="g28170">
<rect
y="420.28574"
x="420.00000"
height="4.0000000"
width="7.0000000"
id="rect28151"
style="fill:url(#linearGradient28474);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-370.9737,-296.4511)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path28153"
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-377.9556,-296.4511)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path28155"
style="fill:url(#radialGradient28476);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
</g>
<g
transform="matrix(0.478825,0.000000,0.000000,1.000000,265.9079,-70.87512)"
id="g28137">
<rect
y="456.38208"
x="420.00000"
height="4.0000000"
width="8.8548889"
id="rect28139"
style="fill:url(#linearGradient28470);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-369.2307,-260.3548)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path28141"
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-377.9556,-260.3548)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path28143"
style="fill:url(#radialGradient28472);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
</g>
<g
transform="matrix(0.478825,0.000000,0.000000,1.000000,265.9079,-1.213364e-4)"
id="g28132">
<rect
y="456.38208"
x="420.00000"
height="4.0000000"
width="8.8548889"
id="rect22040"
style="fill:url(#linearGradient28466);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-369.2307,-260.3548)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path27364"
style="fill:#d0d050;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
<path
transform="matrix(3.728273,0.000000,0.000000,2.000035,-377.9556,-260.3548)"
d="M 214.58032 359.36218 A 0.53645080 1.0000000 0 1 1 213.50742,359.36218 A 0.53645080 1.0000000 0 1 1 214.58032 359.36218 z"
sodipodi:ry="1.0000000"
sodipodi:rx="0.53645080"
sodipodi:cy="359.36218"
sodipodi:cx="214.04387"
id="path19006"
style="fill:url(#radialGradient28468);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#c1c1c1;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:0.0000000"
sodipodi:type="arc" />
</g>
</g>
<rect
y="282.02222"
x="136.00000"
height="287.00000"
width="125.00000"
id="rect38125"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#1b28af;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<rect
y="282.02222"
x="547.07507"
height="287.00000"
width="125.00000"
id="rect38885"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#1b28af;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<rect
y="556.09473"
x="192.86331"
height="112.15255"
width="422.51175"
id="rect38887"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#1b28af;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<rect
y="176.20471"
x="192.86331"
height="112.15255"
width="422.51175"
id="rect38889"
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#1b28af;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.0000000 0.0000000 0.0000000 0.0000000 ;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<rect
y="290.36218"
x="261.85754"
height="266.05313"
width="283.95767"
id="rect37365"
style="fill:none;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#96f366;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.1999998;stroke-dasharray:0.50000000,0.50000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,811 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="evil_stick.svg"
sodipodi:docbase="/home/lars/svn/cryptobox/trunk/logo"
inkscape:version="0.41"
sodipodi:version="0.32"
id="svg2"
height="297mm"
width="210mm">
<defs
id="defs3">
<linearGradient
id="linearGradient21671">
<stop
id="stop21673"
offset="0.0000000"
style="stop-color:#fffeff;stop-opacity:1.0000000;" />
<stop
id="stop21675"
offset="1.0000000"
style="stop-color:#fffffe;stop-opacity:0.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient18159">
<stop
id="stop18161"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop18163"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<marker
inkscape:stockid="DiamondM"
orient="auto"
refY="0.0"
refX="0.0"
id="DiamondM"
style="overflow:visible">
<path
id="path6516"
d="M -2.1579186e-005,-7.0710768 L -7.0710894,-8.9383918e-006 L -2.1579186e-005,7.0710589 L 7.0710462,-8.9383918e-006 L -2.1579186e-005,-7.0710768 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0.0"
refX="0.0"
id="TriangleInL"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path6511"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(-0.8)" />
</marker>
<marker
inkscape:stockid="SemiCircleIn"
orient="auto"
refY="0.0"
refX="0.0"
id="SemiCircleIn"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path941"
d="M -0.37450702,-0.045692580 C -0.37450702,2.7143074 1.8654930,4.9543074 4.6254930,4.9543074 L 4.6254930,-5.0456926 C 1.8654930,-5.0456926 -0.37450702,-2.8056926 -0.37450702,-0.045692580 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
transform="scale(0.6)" />
</marker>
<marker
inkscape:stockid="Tail"
orient="auto"
refY="0.0"
refX="0.0"
id="Tail"
style="overflow:visible">
<g
id="g1087"
transform="scale(-1.2)">
<path
id="path1126"
d="M -3.8048674,-3.9585227 L 0.54352094,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1127"
d="M -1.2866832,-3.9585227 L 3.0617053,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path6547"
d="M 1.3053582,-3.9585227 L 5.6537466,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1848"
d="M -3.8048674,4.1775838 L 0.54352094,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1849"
d="M -1.2866832,4.1775838 L 3.0617053,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1850"
d="M 1.3053582,4.1775838 L 5.6537466,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
</g>
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
sodipodi:nodetypes="ccccc"
id="path6575"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path6558"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(-5,0)" />
</marker>
<marker
inkscape:stockid="Scissors"
orient="auto"
refY="0.0"
refX="0.0"
id="Scissors"
style="overflow:visible">
<path
id="schere"
style="marker-start:none"
d="M 9.0898857,-3.6061018 C 8.1198849,-4.7769976 6.3697607,-4.7358294 5.0623558,-4.2327734 L -3.1500488,-1.1548705 C -5.5383421,-2.4615840 -7.8983361,-2.0874077 -7.8983361,-2.7236578 C -7.8983361,-3.2209742 -7.4416699,-3.1119800 -7.5100293,-4.4068519 C -7.5756648,-5.6501286 -8.8736064,-6.5699315 -10.100428,-6.4884954 C -11.327699,-6.4958500 -12.599867,-5.5553341 -12.610769,-4.2584343 C -12.702194,-2.9520479 -11.603560,-1.7387447 -10.304005,-1.6532027 C -8.7816644,-1.4265411 -6.0857470,-2.3487593 -4.8210600,-0.082342643 C -5.7633447,1.6559151 -7.4350844,1.6607341 -8.9465707,1.5737277 C -10.201445,1.5014928 -11.708664,1.8611256 -12.307219,3.0945882 C -12.885586,4.2766744 -12.318421,5.9591904 -10.990470,6.3210002 C -9.6502788,6.8128279 -7.8098011,6.1912892 -7.4910978,4.6502760 C -7.2454393,3.4624530 -8.0864637,2.9043186 -7.7636052,2.4731223 C -7.5199917,2.1477623 -5.9728246,2.3362771 -3.2164999,1.0982979 L 5.6763468,4.2330688 C 6.8000164,4.5467672 8.1730685,4.5362646 9.1684433,3.4313614 L -0.051640930,-0.053722219 L 9.0898857,-3.6061018 z M -9.2179159,-5.5066058 C -7.9233569,-4.7838060 -8.0290767,-2.8230356 -9.3743431,-2.4433169 C -10.590861,-2.0196559 -12.145370,-3.2022863 -11.757521,-4.5207817 C -11.530373,-5.6026336 -10.104134,-6.0014137 -9.2179159,-5.5066058 z M -9.1616516,2.5107591 C -7.8108215,3.0096239 -8.0402087,5.2951947 -9.4138723,5.6023681 C -10.324932,5.9187072 -11.627422,5.4635705 -11.719569,4.3902287 C -11.897178,3.0851737 -10.363484,1.9060805 -9.1616516,2.5107591 z " />
</marker>
<marker
inkscape:stockid="Legs"
orient="auto"
refY="0.0"
refX="0.0"
id="Legs"
style="overflow:visible">
<g
id="g1163"
transform="scale(-0.7)">
<g
transform="matrix(-1.836909e-16,-1.000000,-1.000000,1.836909e-16,20.70862,21.31391)"
id="g2032">
<path
sodipodi:nodetypes="cc"
id="path2019"
d="M 21.221250,20.675360 C 14.311099,25.396517 18.766725,27.282204 15.380179,34.118595"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path2026"
d="M 21.398110,20.548120 C 20.037601,28.895644 24.934182,29.318060 25.903151,34.373078"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
</g>
<path
id="polygon2039"
d="M -14.090070,-6.7318716 L -15.012238,-2.6884886 L -11.049487,-3.9115586 L -14.090070,-6.7318716 z "
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<path
id="path2041"
d="M -15.215679,4.5567534 L -13.341552,8.2563664 L -11.074678,4.7835114 L -15.215679,4.5567534 z "
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
</g>
</marker>
<marker
inkscape:stockid="Torso"
orient="auto"
refY="0.0"
refX="0.0"
id="Torso"
style="overflow:visible">
<g
id="g2045"
transform="scale(0.7)">
<path
sodipodi:nodetypes="ccccc"
id="path1128"
d="M -4.7792281,-3.2395420 C -2.4288541,-2.8736027 0.52103922,-1.3019943 0.25792722,0.38794346 C -0.0051877922,2.0778819 -2.2126741,2.6176539 -4.5630471,2.2517169 C -6.9134221,1.8857769 -8.5210350,0.75201414 -8.2579220,-0.93792336 C -7.9948090,-2.6278615 -7.1296041,-3.6054813 -4.7792281,-3.2395420 z "
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;marker-start:none;marker-mid:none;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path1909"
d="M 4.4598789,0.088665736 C -2.5564571,-4.3783320 5.2248769,-3.9061806 -0.84829578,-8.7197331"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path1910"
d="M 4.9298719,0.057520736 C -1.3872731,1.7494689 1.8027579,5.4782079 -4.9448731,7.5462725"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
<rect
transform="matrix(0.527536,-0.849533,0.887668,0.460484,0.000000,0.000000)"
y="-1.7408575"
x="-10.391706"
height="2.7608147"
width="2.6366582"
id="rect2035"
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<rect
transform="matrix(0.671205,-0.741272,0.790802,0.612072,0.000000,0.000000)"
y="-7.9629307"
x="4.9587269"
height="2.8614161"
width="2.7327356"
id="rect2036"
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<path
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,25.96648,19.71619)"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
sodipodi:ry="0.60731727"
sodipodi:rx="0.60731727"
sodipodi:cy="-28.685045"
sodipodi:cx="16.172634"
id="path2037"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
sodipodi:type="arc" />
<path
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,26.82450,16.99126)"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
sodipodi:ry="0.60731727"
sodipodi:rx="0.60731727"
sodipodi:cy="-28.685045"
sodipodi:cx="16.172634"
id="path2038"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
sodipodi:type="arc" />
</g>
</marker>
<marker
inkscape:stockid="Club"
orient="auto"
refY="0.0"
refX="0.0"
id="Club"
style="overflow:visible">
<path
id="path1015"
d="M -1.5971367,-7.0977635 C -3.4863874,-7.0977635 -5.0235187,-5.5606321 -5.0235187,-3.6713813 C -5.0235187,-3.0147015 -4.7851656,-2.4444556 -4.4641095,-1.9232271 C -4.5028609,-1.8911157 -4.5437814,-1.8647646 -4.5806531,-1.8299921 C -5.2030765,-2.6849849 -6.1700514,-3.2751330 -7.3077730,-3.2751330 C -9.1970245,-3.2751331 -10.734155,-1.7380016 -10.734155,0.15124914 C -10.734155,2.0404999 -9.1970245,3.5776313 -7.3077730,3.5776313 C -6.3143268,3.5776313 -5.4391540,3.1355702 -4.8137404,2.4588126 C -4.9384274,2.8137041 -5.0235187,3.1803000 -5.0235187,3.5776313 C -5.0235187,5.4668819 -3.4863874,7.0040135 -1.5971367,7.0040135 C 0.29211394,7.0040135 1.8292454,5.4668819 1.8292454,3.5776313 C 1.8292454,2.7842354 1.5136868,2.0838028 1.0600576,1.5031550 C 2.4152718,1.7663868 3.7718375,2.2973711 4.7661444,3.8340272 C 4.0279463,3.0958289 3.5540908,1.7534117 3.5540908,-0.058529361 L 2.9247554,-0.10514681 L 3.5074733,-0.12845553 C 3.5074733,-1.9403966 3.9580199,-3.2828138 4.6962183,-4.0210121 C 3.7371277,-2.5387813 2.4390549,-1.9946496 1.1299838,-1.7134486 C 1.5341802,-2.2753578 1.8292454,-2.9268556 1.8292454,-3.6713813 C 1.8292454,-5.5606319 0.29211394,-7.0977635 -1.5971367,-7.0977635 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:0.74587913pt;marker-start:none"
transform="scale(0.6)" />
</marker>
<linearGradient
id="linearGradient2135">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2137" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2139" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient2143">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2145" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2147" />
</linearGradient>
<linearGradient
id="linearGradient2215">
<stop
style="stop-color:#ffdb00;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2217" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2219" />
</linearGradient>
<linearGradient
id="linearGradient2465">
<stop
id="stop2467"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop2469"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(2.508579,0.000000,0.000000,3.113477,99.47147,-1666.083)"
gradientUnits="userSpaceOnUse"
id="linearGradient2690"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
gradientUnits="userSpaceOnUse"
id="linearGradient2596"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
id="linearGradient2457">
<stop
id="stop2459"
offset="0.0000000"
style="stop-color:#0926d2;stop-opacity:1.0000000;" />
<stop
id="stop2461"
offset="1.0000000"
style="stop-color:#4a9cc4;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
y2="208.34334"
x2="253.60005"
y1="171.10872"
x1="117.61987"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1625"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="227.56172"
x2="546.69745"
y1="184.47606"
x1="352.24612"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1627"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="239.82146"
x2="429.14163"
y1="99.157669"
x1="168.79323"
gradientTransform="matrix(0.932520,0.000000,0.000000,0.872108,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1629"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="432.21533"
x2="238.41585"
y1="566.80432"
x1="196.24054"
gradientTransform="scale(1.580078,0.632880)"
gradientUnits="userSpaceOnUse"
id="linearGradient1631"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="-539.59961"
x2="205.79190"
y1="-453.57123"
x1="161.00905"
gradientTransform="matrix(0.928841,-0.191499,-0.178455,-0.572481,-544.5146,-236.0923)"
gradientUnits="userSpaceOnUse"
id="linearGradient1633"
xlink:href="#linearGradient2215"
inkscape:collect="always" />
<linearGradient
y2="357.05264"
x2="161.39738"
y1="266.49701"
x1="122.77643"
spreadMethod="pad"
gradientTransform="matrix(1.617925,0.000000,0.000000,0.502655,-618.2133,-256.1933)"
gradientUnits="userSpaceOnUse"
id="linearGradient1635"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<radialGradient
r="72.676987"
fy="55.831612"
fx="238.68398"
cy="54.343491"
cx="238.68401"
gradientTransform="scale(1.277753,0.782624)"
gradientUnits="userSpaceOnUse"
id="radialGradient1637"
xlink:href="#linearGradient2143"
inkscape:collect="always" />
<radialGradient
spreadMethod="pad"
gradientUnits="userSpaceOnUse"
r="264.77359"
fy="1035.0133"
fx="-12.059620"
cy="1035.0133"
cx="-12.059620"
id="radialGradient21677"
xlink:href="#linearGradient21671"
inkscape:collect="always" />
<radialGradient
r="264.77359"
fy="1035.0133"
fx="-12.059620"
cy="1035.0133"
cx="-12.059620"
spreadMethod="pad"
gradientUnits="userSpaceOnUse"
id="radialGradient22564"
xlink:href="#linearGradient21671"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
inkscape:window-y="0"
inkscape:window-x="0"
inkscape:window-height="744"
inkscape:window-width="1022"
inkscape:current-layer="svg2"
inkscape:document-units="px"
inkscape:cy="190.40604"
inkscape:cx="272.45326"
inkscape:zoom="0.53679245"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
id="Work6"
rdf:about="">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
id="type9" />
</cc:Work>
</rdf:RDF>
</metadata>
<rect
y="491.57361"
x="4.6182861"
height="530.00000"
width="530.00000"
id="rect17285"
style="color:#000000;fill:#072bd6;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<g
transform="translate(17.01000,-2.835000)"
id="g22559">
<path
transform="matrix(1.293532,0.000000,0.000000,1.278607,-1.933324,-283.6533)"
d="M 271.36000 1018.1129 A 264.77359 264.77359 0 1 1 -258.18718,1018.1129 A 264.77359 264.77359 0 1 1 271.36000 1018.1129 z"
sodipodi:ry="264.77359"
sodipodi:rx="264.77359"
sodipodi:cy="1018.1129"
sodipodi:cx="6.5864077"
id="path20797"
style="color:#000000;fill:url(#radialGradient22564);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
sodipodi:type="arc" />
<use
height="1052.3622"
width="744.09448"
transform="translate(529.9967,-2.183044e-3)"
id="use22553"
xlink:href="#path20797"
y="0.0000000"
x="0.0000000" />
<use
height="1052.3622"
width="744.09448"
transform="translate(529.9967,-530.0022)"
id="use22557"
xlink:href="#path20797"
y="0.0000000"
x="0.0000000" />
</g>
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Datenzeug">
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path4863"
d="M 197.02867,746.58294 C 221.77741,746.58294 249.20339,741.75409 273.95213,741.75409 C 298.70086,741.75409 320.77236,746.58294 345.52110,746.58294 C 370.26984,746.58294 393.67997,748.99736 418.42870,748.99736 C 443.17744,748.99736 469.26479,746.58294 494.01353,746.58294 C 482.62577,767.12271 474.79394,788.86969 463.40618,809.40946 C 452.01842,829.94923 437.07473,849.28178 425.68697,869.82155 C 414.29920,890.36132 400.49702,910.90109 389.10926,931.44086 C 377.72150,951.98062 368.74816,972.52039 357.36040,993.06016 C 332.61166,993.06016 308.20371,997.88901 283.45498,997.88901 C 258.70624,997.88901 245.28848,994.87098 220.53974,994.87098 C 195.79100,994.87098 165.60367,989.43852 140.85493,989.43852 C 116.10619,989.43852 85.124280,993.06016 60.375530,993.06016 C 71.763300,972.52039 80.401980,952.58423 91.789750,932.04446 C 103.17751,911.50469 117.98365,889.15411 129.37141,868.61434 C 140.75917,848.07457 153.01949,828.13841 164.40725,807.59864 C 175.79501,787.05887 185.64091,767.12271 197.02867,746.58294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5649"
d="M 191.35867,740.91294 C 216.10741,740.91294 243.53339,736.08409 268.28213,736.08409 C 293.03086,736.08409 315.10236,740.91294 339.85110,740.91294 C 364.59984,740.91294 388.00997,743.32736 412.75870,743.32736 C 437.50744,743.32736 463.59479,740.91294 488.34353,740.91294 C 476.95577,761.45271 469.12394,783.19969 457.73618,803.73946 C 446.34842,824.27923 431.40473,843.61178 420.01697,864.15155 C 408.62920,884.69132 394.82702,905.23109 383.43926,925.77086 C 372.05150,946.31062 363.07816,966.85039 351.69040,987.39016 C 326.94166,987.39016 302.53371,992.21901 277.78498,992.21901 C 253.03624,992.21901 239.61848,989.20098 214.86974,989.20098 C 190.12100,989.20098 159.93367,983.76852 135.18493,983.76852 C 110.43619,983.76852 79.454280,987.39016 54.705530,987.39016 C 66.093300,966.85039 74.731980,946.91423 86.119750,926.37446 C 97.507510,905.83469 112.31365,883.48411 123.70141,862.94434 C 135.08917,842.40457 147.34949,822.46841 158.73725,801.92864 C 170.12501,781.38887 179.97091,761.45271 191.35867,740.91294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5651"
d="M 199.86367,735.24294 C 224.61241,735.24294 252.03839,730.41409 276.78713,730.41409 C 301.53586,730.41409 323.60736,735.24294 348.35610,735.24294 C 373.10484,735.24294 396.51497,737.65736 421.26370,737.65736 C 446.01244,737.65736 472.09979,735.24294 496.84853,735.24294 C 485.46077,755.78271 477.62894,777.52969 466.24118,798.06946 C 454.85342,818.60923 439.90973,837.94178 428.52197,858.48155 C 417.13420,879.02132 403.33202,899.56109 391.94426,920.10086 C 380.55650,940.64062 371.58316,961.18039 360.19540,981.72016 C 335.44666,981.72016 311.03871,986.54901 286.28998,986.54901 C 261.54124,986.54901 248.12348,983.53098 223.37474,983.53098 C 198.62600,983.53098 168.43867,978.09852 143.68993,978.09852 C 118.94119,978.09852 87.959280,981.72016 63.210530,981.72016 C 74.598300,961.18039 83.236980,941.24423 94.624750,920.70446 C 106.01251,900.16469 120.81865,877.81411 132.20641,857.27434 C 143.59417,836.73457 155.85449,816.79841 167.24225,796.25864 C 178.63001,775.71887 188.47591,755.78271 199.86367,735.24294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5653"
d="M 211.20367,732.40794 C 235.95241,732.40794 263.37839,727.57909 288.12713,727.57909 C 312.87586,727.57909 334.94736,732.40794 359.69610,732.40794 C 384.44484,732.40794 407.85497,734.82236 432.60370,734.82236 C 457.35244,734.82236 483.43979,732.40794 508.18853,732.40794 C 496.80077,752.94771 488.96894,774.69469 477.58118,795.23446 C 466.19342,815.77423 451.24973,835.10678 439.86197,855.64655 C 428.47420,876.18632 414.67202,896.72609 403.28426,917.26586 C 391.89650,937.80562 382.92316,958.34539 371.53540,978.88516 C 346.78666,978.88516 322.37871,983.71401 297.62998,983.71401 C 272.88124,983.71401 259.46348,980.69598 234.71474,980.69598 C 209.96600,980.69598 179.77867,975.26352 155.02993,975.26352 C 130.28119,975.26352 99.299280,978.88516 74.550530,978.88516 C 85.938300,958.34539 94.576980,938.40923 105.96475,917.86946 C 117.35251,897.32969 132.15865,874.97911 143.54641,854.43934 C 154.93417,833.89957 167.19449,813.96341 178.58225,793.42364 C 189.97001,772.88387 199.81591,752.94771 211.20367,732.40794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5655"
d="M 188.52367,729.57294 C 213.27241,729.57294 240.69839,724.74409 265.44713,724.74409 C 290.19586,724.74409 312.26736,729.57294 337.01610,729.57294 C 361.76484,729.57294 385.17497,731.98736 409.92370,731.98736 C 434.67244,731.98736 460.75979,729.57294 485.50853,729.57294 C 474.12077,750.11271 466.28894,771.85969 454.90118,792.39946 C 443.51342,812.93923 428.56973,832.27178 417.18197,852.81155 C 405.79420,873.35132 391.99202,893.89109 380.60426,914.43086 C 369.21650,934.97062 360.24316,955.51039 348.85540,976.05016 C 324.10666,976.05016 299.69871,980.87901 274.94998,980.87901 C 250.20124,980.87901 236.78348,977.86098 212.03474,977.86098 C 187.28600,977.86098 157.09867,972.42852 132.34993,972.42852 C 107.60119,972.42852 76.619280,976.05016 51.870530,976.05016 C 63.258300,955.51039 71.896980,935.57423 83.284750,915.03446 C 94.672510,894.49469 109.47865,872.14411 120.86641,851.60434 C 132.25417,831.06457 144.51449,811.12841 155.90225,790.58864 C 167.29001,770.04887 177.13591,750.11271 188.52367,729.57294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5657"
d="M 222.54367,715.39794 C 247.29241,715.39794 274.71839,710.56909 299.46713,710.56909 C 324.21586,710.56909 346.28736,715.39794 371.03610,715.39794 C 395.78484,715.39794 419.19497,717.81236 443.94370,717.81236 C 468.69244,717.81236 494.77979,715.39794 519.52853,715.39794 C 508.14077,735.93771 500.30894,757.68469 488.92118,778.22446 C 477.53342,798.76423 462.58973,818.09678 451.20197,838.63655 C 439.81420,859.17632 426.01202,879.71609 414.62426,900.25586 C 403.23650,920.79562 394.26316,941.33539 382.87540,961.87516 C 358.12666,961.87516 333.71871,966.70401 308.96998,966.70401 C 284.22124,966.70401 270.80348,963.68598 246.05474,963.68598 C 221.30600,963.68598 191.11867,958.25352 166.36993,958.25352 C 141.62119,958.25352 110.63928,961.87516 85.890530,961.87516 C 97.278300,941.33539 105.91698,921.39923 117.30475,900.85946 C 128.69251,880.31969 143.49865,857.96911 154.88641,837.42934 C 166.27417,816.88957 178.53449,796.95341 189.92225,776.41364 C 201.31001,755.87387 211.15591,735.93771 222.54367,715.39794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5659"
d="M 205.53367,723.90294 C 230.28241,723.90294 257.70839,719.07409 282.45713,719.07409 C 307.20586,719.07409 329.27736,723.90294 354.02610,723.90294 C 378.77484,723.90294 402.18497,726.31736 426.93370,726.31736 C 451.68244,726.31736 477.76979,723.90294 502.51853,723.90294 C 491.13077,744.44271 483.29894,766.18969 471.91118,786.72946 C 460.52342,807.26923 445.57973,826.60178 434.19197,847.14155 C 422.80420,867.68132 409.00202,888.22109 397.61426,908.76086 C 386.22650,929.30062 377.25316,949.84039 365.86540,970.38016 C 341.11666,970.38016 316.70871,975.20901 291.95998,975.20901 C 267.21124,975.20901 253.79348,972.19098 229.04474,972.19098 C 204.29600,972.19098 174.10867,966.75852 149.35993,966.75852 C 124.61119,966.75852 93.629280,970.38016 68.880530,970.38016 C 80.268300,949.84039 88.906980,929.90423 100.29475,909.36446 C 111.68251,888.82469 126.48865,866.47411 137.87641,845.93434 C 149.26417,825.39457 161.52449,805.45841 172.91225,784.91864 C 184.30001,764.37887 194.14591,744.44271 205.53367,723.90294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5661"
d="M 194.19367,715.39794 C 218.94241,715.39794 246.36839,710.56909 271.11713,710.56909 C 295.86586,710.56909 317.93736,715.39794 342.68610,715.39794 C 367.43484,715.39794 390.84497,717.81236 415.59370,717.81236 C 440.34244,717.81236 466.42979,715.39794 491.17853,715.39794 C 479.79077,735.93771 471.95894,757.68469 460.57118,778.22446 C 449.18342,798.76423 434.23973,818.09678 422.85197,838.63655 C 411.46420,859.17632 397.66202,879.71609 386.27426,900.25586 C 374.88650,920.79562 365.91316,941.33539 354.52540,961.87516 C 329.77666,961.87516 305.36871,966.70401 280.61998,966.70401 C 255.87124,966.70401 242.45348,963.68598 217.70474,963.68598 C 192.95600,963.68598 162.76867,958.25352 138.01993,958.25352 C 113.27119,958.25352 82.289280,961.87516 57.540530,961.87516 C 68.928300,941.33539 77.566980,921.39923 88.954750,900.85946 C 100.34251,880.31969 115.14865,857.96911 126.53641,837.42934 C 137.92417,816.88957 150.18449,796.95341 161.57225,776.41364 C 172.96001,755.87387 182.80591,735.93771 194.19367,715.39794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5663"
d="M 185.68867,712.56294 C 210.43741,712.56294 237.86339,707.73409 262.61213,707.73409 C 287.36086,707.73409 309.43236,712.56294 334.18110,712.56294 C 358.92984,712.56294 382.33997,714.97736 407.08870,714.97736 C 431.83744,714.97736 457.92479,712.56294 482.67353,712.56294 C 471.28577,733.10271 463.45394,754.84969 452.06618,775.38946 C 440.67842,795.92923 425.73473,815.26178 414.34697,835.80155 C 402.95920,856.34132 389.15702,876.88109 377.76926,897.42086 C 366.38150,917.96062 357.40816,938.50039 346.02040,959.04016 C 321.27166,959.04016 296.86371,963.86901 272.11498,963.86901 C 247.36624,963.86901 233.94848,960.85098 209.19974,960.85098 C 184.45100,960.85098 154.26367,955.41852 129.51493,955.41852 C 104.76619,955.41852 73.784280,959.04016 49.035530,959.04016 C 60.423300,938.50039 69.061980,918.56423 80.449750,898.02446 C 91.837510,877.48469 106.64365,855.13411 118.03141,834.59434 C 129.41917,814.05457 141.67949,794.11841 153.06725,773.57864 C 164.45501,753.03887 174.30091,733.10271 185.68867,712.56294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5665"
d="M 219.70867,704.05794 C 244.45741,704.05794 271.88339,699.22909 296.63213,699.22909 C 321.38086,699.22909 343.45236,704.05794 368.20110,704.05794 C 392.94984,704.05794 416.35997,706.47236 441.10870,706.47236 C 465.85744,706.47236 491.94479,704.05794 516.69353,704.05794 C 505.30577,724.59771 497.47394,746.34469 486.08618,766.88446 C 474.69842,787.42423 459.75473,806.75678 448.36697,827.29655 C 436.97920,847.83632 423.17702,868.37609 411.78926,888.91586 C 400.40150,909.45562 391.42816,929.99539 380.04040,950.53516 C 355.29166,950.53516 330.88371,955.36401 306.13498,955.36401 C 281.38624,955.36401 267.96848,952.34598 243.21974,952.34598 C 218.47100,952.34598 188.28367,946.91352 163.53493,946.91352 C 138.78619,946.91352 107.80428,950.53516 83.055530,950.53516 C 94.443300,929.99539 103.08198,910.05923 114.46975,889.51946 C 125.85751,868.97969 140.66365,846.62911 152.05141,826.08934 C 163.43917,805.54957 175.69949,785.61341 187.08725,765.07364 C 198.47501,744.53387 208.32091,724.59771 219.70867,704.05794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5667"
d="M 208.36867,701.22294 C 233.11741,701.22294 260.54339,696.39409 285.29213,696.39409 C 310.04086,696.39409 332.11236,701.22294 356.86110,701.22294 C 381.60984,701.22294 405.01997,703.63736 429.76870,703.63736 C 454.51744,703.63736 480.60479,701.22294 505.35353,701.22294 C 493.96577,721.76271 486.13394,743.50969 474.74618,764.04946 C 463.35842,784.58923 448.41473,803.92178 437.02697,824.46155 C 425.63920,845.00132 411.83702,865.54109 400.44926,886.08086 C 389.06150,906.62062 380.08816,927.16039 368.70040,947.70016 C 343.95166,947.70016 319.54371,952.52901 294.79498,952.52901 C 270.04624,952.52901 256.62848,949.51098 231.87974,949.51098 C 207.13100,949.51098 176.94367,944.07852 152.19493,944.07852 C 127.44619,944.07852 96.464280,947.70016 71.715530,947.70016 C 83.103300,927.16039 91.741980,907.22423 103.12975,886.68446 C 114.51751,866.14469 129.32365,843.79411 140.71141,823.25434 C 152.09917,802.71457 164.35949,782.77841 175.74725,762.23864 C 187.13501,741.69887 196.98091,721.76271 208.36867,701.22294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5669"
d="M 199.86367,695.55294 C 224.61241,695.55294 252.03839,690.72409 276.78713,690.72409 C 301.53586,690.72409 323.60736,695.55294 348.35610,695.55294 C 373.10484,695.55294 396.51497,697.96736 421.26370,697.96736 C 446.01244,697.96736 472.09979,695.55294 496.84853,695.55294 C 485.46077,716.09271 477.62894,737.83969 466.24118,758.37946 C 454.85342,778.91923 439.90973,798.25178 428.52197,818.79155 C 417.13420,839.33132 403.33202,859.87109 391.94426,880.41086 C 380.55650,900.95062 371.58316,921.49039 360.19540,942.03016 C 335.44666,942.03016 311.03871,946.85901 286.28998,946.85901 C 261.54124,946.85901 248.12348,943.84098 223.37474,943.84098 C 198.62600,943.84098 168.43867,938.40852 143.68993,938.40852 C 118.94119,938.40852 87.959280,942.03016 63.210530,942.03016 C 74.598300,921.49039 83.236980,901.55423 94.624750,881.01446 C 106.01251,860.47469 120.81865,838.12411 132.20641,817.58434 C 143.59417,797.04457 155.85449,777.10841 167.24225,756.56864 C 178.63001,736.02887 188.47591,716.09271 199.86367,695.55294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<text
transform="matrix(0.791463,0.000000,-0.700507,1.263483,0.000000,0.000000)"
id="text4009"
y="565.96759"
x="762.08246"
style="font-size:8.9472828;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:helvetica"
xml:space="preserve"><tspan
y="565.96759"
x="762.08246"
id="tspan4011"
sodipodi:role="line">During the course of our ongoing review of the Secure Flight program,</tspan><tspan
y="574.91487"
x="762.08246"
id="tspan4013"
sodipodi:role="line">we found that TSA did not fully disclose to the public its use of personal</tspan><tspan
y="583.86216"
x="762.08246"
id="tspan4015"
sodipodi:role="line">information in its fall 2004 privacy notices as required by the Privacy Act.</tspan><tspan
y="592.80944"
x="762.08246"
id="tspan4017"
sodipodi:role="line">In particular, the public was not made fully aware of, nor had the</tspan><tspan
y="601.75672"
x="762.08246"
id="tspan4019"
sodipodi:role="line">opportunity to comment on, TSA's use of personal information drawn</tspan><tspan
y="610.70400"
x="762.08246"
id="tspan4021"
sodipodi:role="line">from commercial sources to test aspects of the Secure Flight program.</tspan><tspan
y="619.65129"
x="762.08246"
id="tspan4023"
sodipodi:role="line">In September 2004 and November 2004, TSA issued privacy notices in</tspan><tspan
y="628.59857"
x="762.08246"
id="tspan4025"
sodipodi:role="line">the Federal Register that included descriptions of how such information</tspan><tspan
y="637.54585"
x="762.08246"
id="tspan4027"
sodipodi:role="line">would be used. However, these notices did not fully inform the public</tspan><tspan
y="646.49314"
x="762.08246"
id="tspan4029"
sodipodi:role="line">before testing began about the procedures that TSA and its contractors</tspan><tspan
y="655.44042"
x="762.08246"
id="tspan4031"
sodipodi:role="line">would follow for collecting, using, and storing commercial data. In</tspan><tspan
y="664.38770"
x="762.08246"
id="tspan4033"
sodipodi:role="line">addition, the scope of the data used during commercial data testing was</tspan><tspan
y="673.33498"
x="762.08246"
id="tspan4035"
sodipodi:role="line">not fully disclosed in the notices. Specifically, a TSA contractor, acting on</tspan><tspan
y="682.28227"
x="762.08246"
id="tspan4037"
sodipodi:role="line">behalf of the agency, collected more than 100 million commercial data</tspan><tspan
y="691.22955"
x="762.08246"
id="tspan4039"
sodipodi:role="line">records containing personal information such as name, date of birth, and</tspan><tspan
y="700.17683"
x="762.08246"
id="tspan4041"
sodipodi:role="line">telephone number without informing the public. As a result of TSA's</tspan><tspan
y="709.12411"
x="762.08246"
id="tspan4043"
sodipodi:role="line">actions, the public did not receive the full protections of the Privacy Act.</tspan><tspan
y="718.07140"
x="762.08246"
id="tspan4045"
sodipodi:role="line"></tspan><tspan
y="727.01868"
x="762.08246"
id="tspan4047"
sodipodi:role="line">Yours sincerely,</tspan><tspan
y="735.96596"
x="762.08246"
id="tspan4049"
sodipodi:role="line">Big Brother</tspan></text>
</g>
<use
height="1052.3622"
width="744.09448"
transform="matrix(1.000006,0.000000,0.000000,1.000000,1.688860e-3,-530.0022)"
id="use22555"
xlink:href="#path20797"
y="0.0000000"
x="0.0000000" />
<rect
inkscape:export-ydpi="20.000000"
inkscape:export-xdpi="20.000000"
inkscape:export-filename="/home/lars/svn/cryptobox/trunk/logo/evil_stick.png"
y="491.57361"
x="4.6182861"
height="530.00000"
width="530.00000"
id="rect19923"
style="stroke-dasharray:none;color:#000000;fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<g
inkscape:label="pingu"
id="layer3"
inkscape:groupmode="layer">
<g
transform="translate(728.3196,573.5281)"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="g1597">
<g
transform="translate(-163.6837,275.0000)"
id="g1614">
<path
style="fill:url(#linearGradient1625);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -446.16124,-46.244836 C -446.20695,-45.411526 -445.65323,-44.559286 -444.52615,-43.878606 L -379.43056,-4.5552905 C -378.08762,-3.7442605 -376.23442,-3.4256905 -374.43483,-3.5063605 L -370.03938,-83.618156 C -371.82299,-83.828856 -373.70370,-83.645796 -375.13012,-82.935256 L -444.27350,-48.483196 C -445.47066,-47.886866 -446.11552,-47.078106 -446.16124,-46.244836 z "
id="path2225" />
<path
style="fill:url(#linearGradient1627);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -135.16964,-42.752916 C -135.12393,-41.919606 -135.67765,-41.067376 -136.80473,-40.386686 L -201.90032,-1.0633705 C -203.24326,-0.25234047 -205.09646,0.066229532 -206.89605,-0.014450468 L -211.29150,-80.126246 C -209.50789,-80.336936 -207.62718,-80.153876 -206.20076,-79.443346 L -137.05738,-44.991276 C -135.86022,-44.394946 -135.21536,-43.586186 -135.16964,-42.752916 z "
id="path2221" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2209"
width="101.26261"
height="26.288469"
x="-280.94608"
y="20.480856"
rx="9.9999895"
ry="9.9999914" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2207"
width="101.26261"
height="26.288469"
x="-414.28619"
y="18.837851"
rx="9.9999895"
ry="9.9999914" />
<path
style="fill:url(#linearGradient1629);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:2.0500004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -293.34930,-197.75054 C -361.16644,-197.75054 -416.19304,-152.97430 -416.19305,-97.821466 C -416.19305,-96.878446 -416.06877,-95.962666 -416.03680,-95.025896 C -416.06214,-94.788816 -416.19305,-94.582306 -416.19305,-94.339706 L -416.19305,-33.929886 C -416.19305,-33.848436 -416.13344,-33.782016 -416.13055,-33.701156 C -416.13419,-33.384516 -416.19305,-33.078156 -416.19305,-32.760826 C -416.19305,-7.8878505 -404.92099,14.808650 -386.41180,32.299810 L -200.25555,32.299810 C -181.73938,14.808650 -170.47430,-7.8878505 -170.47430,-32.760826 C -170.47430,-33.078156 -170.53316,-33.384516 -170.53680,-33.701156 C -170.53390,-33.782016 -170.47430,-33.848436 -170.47430,-33.929886 L -170.47430,-94.339706 C -170.47430,-94.582306 -170.60521,-94.788816 -170.63055,-95.025896 C -170.59858,-95.962666 -170.47430,-96.878446 -170.47430,-97.821466 C -170.47430,-152.97430 -225.53216,-197.75054 -293.34930,-197.75054 z "
id="path1291" />
<path
sodipodi:type="arc"
style="fill:url(#linearGradient1631);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.1583133;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2229"
sodipodi:cx="324.25897"
sodipodi:cy="320.00159"
sodipodi:rx="63.639610"
sodipodi:ry="24.243662"
d="M 387.89858 320.00159 A 63.639610 24.243662 0 1 1 260.61936,320.00159 A 63.639610 24.243662 0 1 1 387.89858 320.00159 z"
transform="matrix(1.000000,0.000000,0.000000,-0.813258,-616.1930,270.8666)" />
<path
style="fill:url(#linearGradient1633);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -282.63434,12.675950 C -283.46370,12.846940 -284.41323,12.622860 -285.28718,11.988910 L -335.77284,-24.623926 C -336.81415,-25.379296 -337.44688,-26.556776 -337.66950,-27.765996 L -257.93682,-44.204486 C -257.42419,-43.055046 -257.29073,-41.774646 -257.76379,-40.707056 L -280.70439,11.044070 C -281.10141,11.940060 -281.80501,12.504970 -282.63434,12.675950 z "
id="rect1306" />
<path
style="fill:url(#linearGradient1635);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -379.98683,-115.78681 C -383.85425,-116.18089 -387.78433,-114.72314 -389.86183,-111.79677 L -401.95558,-94.769176 C -404.72558,-90.867336 -403.09711,-85.915846 -398.29933,-83.663116 L -325.86183,-49.658766 C -323.92541,-48.749546 -321.79150,-48.552746 -319.73683,-48.743856 C -319.49836,-48.730136 -319.29224,-48.642196 -319.04933,-48.642196 L -266.83058,-48.642196 C -266.67382,-48.642196 -266.54803,-48.712696 -266.39308,-48.718436 C -264.58232,-48.666816 -262.74057,-48.864666 -261.04933,-49.658766 L -188.61183,-83.663116 C -183.81405,-85.915836 -182.18558,-90.867346 -184.95558,-94.769176 L -197.01808,-111.79677 C -199.78807,-115.69859 -205.90781,-117.02296 -210.70558,-114.77024 L -274.98683,-84.552616 L -311.89308,-84.552616 L -376.20558,-114.77024 C -377.40503,-115.33342 -378.69769,-115.65545 -379.98683,-115.78681 z "
id="rect1358" />
<path
sodipodi:type="arc"
style="fill:url(#radialGradient1637);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2141"
sodipodi:cx="248.49753"
sodipodi:cy="104.83910"
sodipodi:rx="80.812202"
sodipodi:ry="49.497475"
d="M 329.30973 104.83910 A 80.812202 49.497475 0 1 1 167.68533,104.83910 A 80.812202 49.497475 0 1 1 329.30973 104.83910 z"
transform="matrix(-1.000000,0.000000,0.000000,0.813258,-44.44673,-241.4060)" />
</g>
<g
transform="translate(14.17500,11.34000)"
id="g17274">
<use
height="1052.3622"
width="744.09448"
transform="translate(68.70016,9.170333e-8)"
id="use10443"
xlink:href="#path8129"
y="0.0000000"
x="0.0000000" />
<path
sodipodi:nodetypes="cc"
id="path8129"
d="M -681.46322,-19.806723 L -681.26684,41.417087"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;marker-start:none;marker-mid:none;marker-end:none" />
<g
id="g17248">
<path
sodipodi:nodetypes="css"
id="path8131"
d="M -681.21720,40.534110 C -679.11202,57.797647 -676.66204,76.342887 -613.85229,75.828433 C -548.04372,75.293726 -544.03134,55.240098 -542.27703,39.766860"
style="color:#000000;fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0398970;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<path
id="path8133"
d="M -612.37306,41.826578 L -612.37306,312.67223"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<use
height="1052.3622"
width="744.09448"
transform="translate(138.9150,0.000000)"
id="use10441"
xlink:href="#path8129"
y="0.0000000"
x="0.0000000" />
<path
sodipodi:nodetypes="ccccccc"
id="path16369"
d="M -651.99912,18.996321 C -665.95818,14.752539 -667.52540,-16.048801 -681.48446,-20.292583 C -695.52064,-16.374318 -698.59223,16.392855 -712.62842,20.311120 C -701.59125,11.483501 -713.91045,-19.022176 -702.87321,-27.849795 C -699.60157,-40.818929 -683.93810,-46.645589 -680.66646,-59.614724 C -677.74457,-46.543323 -662.43083,-40.614404 -659.50902,-27.543003 C -648.74447,-18.492133 -662.76359,9.9454513 -651.99912,18.996321 z "
style="color:#000000;fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.2481158;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<use
height="1052.3622"
width="744.09448"
transform="translate(68.80972,0.000000)"
id="use17244"
xlink:href="#path16369"
y="0.0000000"
x="0.0000000" />
<use
height="1052.3622"
width="744.09448"
transform="translate(138.9150,0.000000)"
id="use17246"
xlink:href="#path16369"
y="0.0000000"
x="0.0000000" />
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,820 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:export-ydpi="15.600000"
inkscape:export-xdpi="15.600000"
inkscape:export-filename="/home/lars/svn/cryptobox/trunk/logo/evil_stick2.png"
width="210mm"
height="297mm"
id="svg2"
sodipodi:version="0.32"
inkscape:version="0.41"
sodipodi:docbase="/home/lars/svn/cryptobox/trunk/logo"
sodipodi:docname="evil_stick2.svg">
<defs
id="defs3">
<linearGradient
id="linearGradient9344"
inkscape:collect="always">
<stop
id="stop9346"
offset="0"
style="stop-color:#072bd6;stop-opacity:1;" />
<stop
id="stop9348"
offset="1"
style="stop-color:#072bd6;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient21671">
<stop
style="stop-color:#fffeff;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop21673" />
<stop
style="stop-color:#fffffe;stop-opacity:0.0000000;"
offset="1.0000000"
id="stop21675" />
</linearGradient>
<linearGradient
id="linearGradient18159">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop18161" />
<stop
style="stop-color:#000000;stop-opacity:0;"
offset="1"
id="stop18163" />
</linearGradient>
<marker
style="overflow:visible"
id="DiamondM"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="DiamondM">
<path
transform="scale(0.4)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
d="M -2.1579186e-005,-7.0710768 L -7.0710894,-8.9383918e-006 L -2.1579186e-005,7.0710589 L 7.0710462,-8.9383918e-006 L -2.1579186e-005,-7.0710768 z "
id="path6516" />
</marker>
<marker
style="overflow:visible"
id="TriangleInL"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleInL">
<path
transform="scale(-0.8)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path6511"
sodipodi:nodetypes="cccc" />
</marker>
<marker
style="overflow:visible"
id="SemiCircleIn"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="SemiCircleIn">
<path
transform="scale(0.6)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
d="M -0.37450702,-0.045692580 C -0.37450702,2.7143074 1.8654930,4.9543074 4.6254930,4.9543074 L 4.6254930,-5.0456926 C 1.8654930,-5.0456926 -0.37450702,-2.8056926 -0.37450702,-0.045692580 z "
id="path941"
sodipodi:nodetypes="cccc" />
</marker>
<marker
style="overflow:visible"
id="Tail"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Tail">
<g
transform="scale(-1.2)"
id="g1087">
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M -3.8048674,-3.9585227 L 0.54352094,-0.00068114835"
id="path1126" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M -1.2866832,-3.9585227 L 3.0617053,-0.00068114835"
id="path1127" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M 1.3053582,-3.9585227 L 5.6537466,-0.00068114835"
id="path6547" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M -3.8048674,4.1775838 L 0.54352094,0.21974226"
id="path1848" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M -1.2866832,4.1775838 L 3.0617053,0.21974226"
id="path1849" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round"
d="M 1.3053582,4.1775838 L 5.6537466,0.21974226"
id="path1850" />
</g>
</marker>
<marker
style="overflow:visible"
id="Arrow1Lstart"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Lstart">
<path
transform="scale(0.8)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path6575"
sodipodi:nodetypes="ccccc" />
</marker>
<marker
style="overflow:visible"
id="Arrow2Lstart"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow2Lstart">
<path
transform="scale(1.1) translate(-5,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
id="path6558"
sodipodi:nodetypes="cccc" />
</marker>
<marker
style="overflow:visible"
id="Scissors"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Scissors">
<path
d="M 9.0898857,-3.6061018 C 8.1198849,-4.7769976 6.3697607,-4.7358294 5.0623558,-4.2327734 L -3.1500488,-1.1548705 C -5.5383421,-2.4615840 -7.8983361,-2.0874077 -7.8983361,-2.7236578 C -7.8983361,-3.2209742 -7.4416699,-3.1119800 -7.5100293,-4.4068519 C -7.5756648,-5.6501286 -8.8736064,-6.5699315 -10.100428,-6.4884954 C -11.327699,-6.4958500 -12.599867,-5.5553341 -12.610769,-4.2584343 C -12.702194,-2.9520479 -11.603560,-1.7387447 -10.304005,-1.6532027 C -8.7816644,-1.4265411 -6.0857470,-2.3487593 -4.8210600,-0.082342643 C -5.7633447,1.6559151 -7.4350844,1.6607341 -8.9465707,1.5737277 C -10.201445,1.5014928 -11.708664,1.8611256 -12.307219,3.0945882 C -12.885586,4.2766744 -12.318421,5.9591904 -10.990470,6.3210002 C -9.6502788,6.8128279 -7.8098011,6.1912892 -7.4910978,4.6502760 C -7.2454393,3.4624530 -8.0864637,2.9043186 -7.7636052,2.4731223 C -7.5199917,2.1477623 -5.9728246,2.3362771 -3.2164999,1.0982979 L 5.6763468,4.2330688 C 6.8000164,4.5467672 8.1730685,4.5362646 9.1684433,3.4313614 L -0.051640930,-0.053722219 L 9.0898857,-3.6061018 z M -9.2179159,-5.5066058 C -7.9233569,-4.7838060 -8.0290767,-2.8230356 -9.3743431,-2.4433169 C -10.590861,-2.0196559 -12.145370,-3.2022863 -11.757521,-4.5207817 C -11.530373,-5.6026336 -10.104134,-6.0014137 -9.2179159,-5.5066058 z M -9.1616516,2.5107591 C -7.8108215,3.0096239 -8.0402087,5.2951947 -9.4138723,5.6023681 C -10.324932,5.9187072 -11.627422,5.4635705 -11.719569,4.3902287 C -11.897178,3.0851737 -10.363484,1.9060805 -9.1616516,2.5107591 z "
style="marker-start:none"
id="schere" />
</marker>
<marker
style="overflow:visible"
id="Legs"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Legs">
<g
transform="scale(-0.7)"
id="g1163">
<g
id="g2032"
transform="matrix(-1.836909e-16,-1.000000,-1.000000,1.836909e-16,20.70862,21.31391)">
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
d="M 21.221250,20.675360 C 14.311099,25.396517 18.766725,27.282204 15.380179,34.118595"
id="path2019"
sodipodi:nodetypes="cc" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
d="M 21.398110,20.548120 C 20.037601,28.895644 24.934182,29.318060 25.903151,34.373078"
id="path2026"
sodipodi:nodetypes="cc" />
</g>
<path
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none"
d="M -14.090070,-6.7318716 L -15.012238,-2.6884886 L -11.049487,-3.9115586 L -14.090070,-6.7318716 z "
id="polygon2039" />
<path
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none"
d="M -15.215679,4.5567534 L -13.341552,8.2563664 L -11.074678,4.7835114 L -15.215679,4.5567534 z "
id="path2041" />
</g>
</marker>
<marker
style="overflow:visible"
id="Torso"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Torso">
<g
transform="scale(0.7)"
id="g2045">
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;marker-start:none;marker-mid:none;marker-end:none"
d="M -4.7792281,-3.2395420 C -2.4288541,-2.8736027 0.52103922,-1.3019943 0.25792722,0.38794346 C -0.0051877922,2.0778819 -2.2126741,2.6176539 -4.5630471,2.2517169 C -6.9134221,1.8857769 -8.5210350,0.75201414 -8.2579220,-0.93792336 C -7.9948090,-2.6278615 -7.1296041,-3.6054813 -4.7792281,-3.2395420 z "
id="path1128"
sodipodi:nodetypes="ccccc" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-end:none"
d="M 4.4598789,0.088665736 C -2.5564571,-4.3783320 5.2248769,-3.9061806 -0.84829578,-8.7197331"
id="path1909"
sodipodi:nodetypes="cc" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
d="M 4.9298719,0.057520736 C -1.3872731,1.7494689 1.8027579,5.4782079 -4.9448731,7.5462725"
id="path1910"
sodipodi:nodetypes="cc" />
<rect
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none"
id="rect2035"
width="2.6366582"
height="2.7608147"
x="-10.391706"
y="-1.7408575"
transform="matrix(0.527536,-0.849533,0.887668,0.460484,0.000000,0.000000)" />
<rect
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none"
id="rect2036"
width="2.7327356"
height="2.8614161"
x="4.9587269"
y="-7.9629307"
transform="matrix(0.671205,-0.741272,0.790802,0.612072,0.000000,0.000000)" />
<path
sodipodi:type="arc"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
id="path2037"
sodipodi:cx="16.172634"
sodipodi:cy="-28.685045"
sodipodi:rx="0.60731727"
sodipodi:ry="0.60731727"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,25.96648,19.71619)" />
<path
sodipodi:type="arc"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
id="path2038"
sodipodi:cx="16.172634"
sodipodi:cy="-28.685045"
sodipodi:rx="0.60731727"
sodipodi:ry="0.60731727"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,26.82450,16.99126)" />
</g>
</marker>
<marker
style="overflow:visible"
id="Club"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Club">
<path
transform="scale(0.6)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:0.74587913pt;marker-start:none"
d="M -1.5971367,-7.0977635 C -3.4863874,-7.0977635 -5.0235187,-5.5606321 -5.0235187,-3.6713813 C -5.0235187,-3.0147015 -4.7851656,-2.4444556 -4.4641095,-1.9232271 C -4.5028609,-1.8911157 -4.5437814,-1.8647646 -4.5806531,-1.8299921 C -5.2030765,-2.6849849 -6.1700514,-3.2751330 -7.3077730,-3.2751330 C -9.1970245,-3.2751331 -10.734155,-1.7380016 -10.734155,0.15124914 C -10.734155,2.0404999 -9.1970245,3.5776313 -7.3077730,3.5776313 C -6.3143268,3.5776313 -5.4391540,3.1355702 -4.8137404,2.4588126 C -4.9384274,2.8137041 -5.0235187,3.1803000 -5.0235187,3.5776313 C -5.0235187,5.4668819 -3.4863874,7.0040135 -1.5971367,7.0040135 C 0.29211394,7.0040135 1.8292454,5.4668819 1.8292454,3.5776313 C 1.8292454,2.7842354 1.5136868,2.0838028 1.0600576,1.5031550 C 2.4152718,1.7663868 3.7718375,2.2973711 4.7661444,3.8340272 C 4.0279463,3.0958289 3.5540908,1.7534117 3.5540908,-0.058529361 L 2.9247554,-0.10514681 L 3.5074733,-0.12845553 C 3.5074733,-1.9403966 3.9580199,-3.2828138 4.6962183,-4.0210121 C 3.7371277,-2.5387813 2.4390549,-1.9946496 1.1299838,-1.7134486 C 1.5341802,-2.2753578 1.8292454,-2.9268556 1.8292454,-3.6713813 C 1.8292454,-5.5606319 0.29211394,-7.0977635 -1.5971367,-7.0977635 z "
id="path1015" />
</marker>
<linearGradient
id="linearGradient2135">
<stop
id="stop2137"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop2139"
offset="1.0000000"
style="stop-color:#000000;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient2143"
inkscape:collect="always">
<stop
id="stop2145"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop2147"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient2215">
<stop
id="stop2217"
offset="0.0000000"
style="stop-color:#ffdb00;stop-opacity:1.0000000;" />
<stop
id="stop2219"
offset="1.0000000"
style="stop-color:#000000;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient2465">
<stop
style="stop-color:#ffffff;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2467" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2469" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2690"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.508579,0.000000,0.000000,3.113477,99.47147,-1666.083)"
x1="123.01630"
y1="443.27271"
x2="137.66396"
y2="457.34415" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2465"
id="linearGradient2596"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(1.391891,0.718447)"
x1="117.91422"
y1="443.89682"
x2="123.41339"
y2="477.12833" />
<linearGradient
id="linearGradient2457">
<stop
style="stop-color:#0926d2;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2459" />
<stop
style="stop-color:#4a9cc4;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2461" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient1625"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
x1="117.61987"
y1="171.10872"
x2="253.60005"
y2="208.34334" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient1627"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
x1="352.24612"
y1="184.47606"
x2="546.69745"
y2="227.56172" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient1629"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.932520,0.000000,0.000000,0.872108,-616.1930,-249.6211)"
x1="168.79323"
y1="99.157669"
x2="429.14163"
y2="239.82146" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient1631"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(1.580078,0.632880)"
x1="196.24054"
y1="566.80432"
x2="238.41585"
y2="432.21533" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2215"
id="linearGradient1633"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.928841,-0.191499,-0.178455,-0.572481,-544.5146,-236.0923)"
x1="161.00905"
y1="-453.57123"
x2="205.79190"
y2="-539.59961" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2135"
id="linearGradient1635"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.617925,0.000000,0.000000,0.502655,-618.2133,-256.1933)"
spreadMethod="pad"
x1="122.77643"
y1="266.49701"
x2="161.39738"
y2="357.05264" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient2143"
id="radialGradient1637"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(1.277753,0.782624)"
cx="238.68401"
cy="54.343491"
fx="238.68398"
fy="55.831612"
r="72.676987" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient21671"
id="radialGradient21677"
cx="-12.059620"
cy="1035.0133"
fx="-12.059620"
fy="1035.0133"
r="264.77359"
gradientUnits="userSpaceOnUse"
spreadMethod="pad" />
<radialGradient
gradientTransform="matrix(1.275240,0.000000,0.000000,1.240102,-106.1403,-181.1180)"
gradientUnits="userSpaceOnUse"
r="265.00000"
fy="756.57361"
fx="269.61829"
cy="756.57361"
cx="269.61829"
id="radialGradient9350"
xlink:href="#linearGradient9344"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.64437744"
inkscape:cx="245.93412"
inkscape:cy="244.30897"
inkscape:document-units="px"
inkscape:current-layer="svg2"
inkscape:window-width="1022"
inkscape:window-height="744"
inkscape:window-x="0"
inkscape:window-y="0" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
rdf:about=""
id="Work6">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
id="type9"
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<rect
style="color:#000000;fill:url(#radialGradient9350);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
id="rect17285"
width="675.87726"
height="657.25458"
x="-100.25091"
y="428.48386" />
<g
inkscape:label="Datenzeug"
inkscape:groupmode="layer"
id="layer1">
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 197.02867,746.58294 C 221.77741,746.58294 249.20339,741.75409 273.95213,741.75409 C 298.70086,741.75409 320.77236,746.58294 345.52110,746.58294 C 370.26984,746.58294 393.67997,748.99736 418.42870,748.99736 C 443.17744,748.99736 469.26479,746.58294 494.01353,746.58294 C 482.62577,767.12271 474.79394,788.86969 463.40618,809.40946 C 452.01842,829.94923 437.07473,849.28178 425.68697,869.82155 C 414.29920,890.36132 400.49702,910.90109 389.10926,931.44086 C 377.72150,951.98062 368.74816,972.52039 357.36040,993.06016 C 332.61166,993.06016 308.20371,997.88901 283.45498,997.88901 C 258.70624,997.88901 245.28848,994.87098 220.53974,994.87098 C 195.79100,994.87098 165.60367,989.43852 140.85493,989.43852 C 116.10619,989.43852 85.124280,993.06016 60.375530,993.06016 C 71.763300,972.52039 80.401980,952.58423 91.789750,932.04446 C 103.17751,911.50469 117.98365,889.15411 129.37141,868.61434 C 140.75917,848.07457 153.01949,828.13841 164.40725,807.59864 C 175.79501,787.05887 185.64091,767.12271 197.02867,746.58294 z "
id="path4863"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 191.35867,740.91294 C 216.10741,740.91294 243.53339,736.08409 268.28213,736.08409 C 293.03086,736.08409 315.10236,740.91294 339.85110,740.91294 C 364.59984,740.91294 388.00997,743.32736 412.75870,743.32736 C 437.50744,743.32736 463.59479,740.91294 488.34353,740.91294 C 476.95577,761.45271 469.12394,783.19969 457.73618,803.73946 C 446.34842,824.27923 431.40473,843.61178 420.01697,864.15155 C 408.62920,884.69132 394.82702,905.23109 383.43926,925.77086 C 372.05150,946.31062 363.07816,966.85039 351.69040,987.39016 C 326.94166,987.39016 302.53371,992.21901 277.78498,992.21901 C 253.03624,992.21901 239.61848,989.20098 214.86974,989.20098 C 190.12100,989.20098 159.93367,983.76852 135.18493,983.76852 C 110.43619,983.76852 79.454280,987.39016 54.705530,987.39016 C 66.093300,966.85039 74.731980,946.91423 86.119750,926.37446 C 97.507510,905.83469 112.31365,883.48411 123.70141,862.94434 C 135.08917,842.40457 147.34949,822.46841 158.73725,801.92864 C 170.12501,781.38887 179.97091,761.45271 191.35867,740.91294 z "
id="path5649"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 199.86367,735.24294 C 224.61241,735.24294 252.03839,730.41409 276.78713,730.41409 C 301.53586,730.41409 323.60736,735.24294 348.35610,735.24294 C 373.10484,735.24294 396.51497,737.65736 421.26370,737.65736 C 446.01244,737.65736 472.09979,735.24294 496.84853,735.24294 C 485.46077,755.78271 477.62894,777.52969 466.24118,798.06946 C 454.85342,818.60923 439.90973,837.94178 428.52197,858.48155 C 417.13420,879.02132 403.33202,899.56109 391.94426,920.10086 C 380.55650,940.64062 371.58316,961.18039 360.19540,981.72016 C 335.44666,981.72016 311.03871,986.54901 286.28998,986.54901 C 261.54124,986.54901 248.12348,983.53098 223.37474,983.53098 C 198.62600,983.53098 168.43867,978.09852 143.68993,978.09852 C 118.94119,978.09852 87.959280,981.72016 63.210530,981.72016 C 74.598300,961.18039 83.236980,941.24423 94.624750,920.70446 C 106.01251,900.16469 120.81865,877.81411 132.20641,857.27434 C 143.59417,836.73457 155.85449,816.79841 167.24225,796.25864 C 178.63001,775.71887 188.47591,755.78271 199.86367,735.24294 z "
id="path5651"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 211.20367,732.40794 C 235.95241,732.40794 263.37839,727.57909 288.12713,727.57909 C 312.87586,727.57909 334.94736,732.40794 359.69610,732.40794 C 384.44484,732.40794 407.85497,734.82236 432.60370,734.82236 C 457.35244,734.82236 483.43979,732.40794 508.18853,732.40794 C 496.80077,752.94771 488.96894,774.69469 477.58118,795.23446 C 466.19342,815.77423 451.24973,835.10678 439.86197,855.64655 C 428.47420,876.18632 414.67202,896.72609 403.28426,917.26586 C 391.89650,937.80562 382.92316,958.34539 371.53540,978.88516 C 346.78666,978.88516 322.37871,983.71401 297.62998,983.71401 C 272.88124,983.71401 259.46348,980.69598 234.71474,980.69598 C 209.96600,980.69598 179.77867,975.26352 155.02993,975.26352 C 130.28119,975.26352 99.299280,978.88516 74.550530,978.88516 C 85.938300,958.34539 94.576980,938.40923 105.96475,917.86946 C 117.35251,897.32969 132.15865,874.97911 143.54641,854.43934 C 154.93417,833.89957 167.19449,813.96341 178.58225,793.42364 C 189.97001,772.88387 199.81591,752.94771 211.20367,732.40794 z "
id="path5653"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 188.52367,729.57294 C 213.27241,729.57294 240.69839,724.74409 265.44713,724.74409 C 290.19586,724.74409 312.26736,729.57294 337.01610,729.57294 C 361.76484,729.57294 385.17497,731.98736 409.92370,731.98736 C 434.67244,731.98736 460.75979,729.57294 485.50853,729.57294 C 474.12077,750.11271 466.28894,771.85969 454.90118,792.39946 C 443.51342,812.93923 428.56973,832.27178 417.18197,852.81155 C 405.79420,873.35132 391.99202,893.89109 380.60426,914.43086 C 369.21650,934.97062 360.24316,955.51039 348.85540,976.05016 C 324.10666,976.05016 299.69871,980.87901 274.94998,980.87901 C 250.20124,980.87901 236.78348,977.86098 212.03474,977.86098 C 187.28600,977.86098 157.09867,972.42852 132.34993,972.42852 C 107.60119,972.42852 76.619280,976.05016 51.870530,976.05016 C 63.258300,955.51039 71.896980,935.57423 83.284750,915.03446 C 94.672510,894.49469 109.47865,872.14411 120.86641,851.60434 C 132.25417,831.06457 144.51449,811.12841 155.90225,790.58864 C 167.29001,770.04887 177.13591,750.11271 188.52367,729.57294 z "
id="path5655"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 222.54367,715.39794 C 247.29241,715.39794 274.71839,710.56909 299.46713,710.56909 C 324.21586,710.56909 346.28736,715.39794 371.03610,715.39794 C 395.78484,715.39794 419.19497,717.81236 443.94370,717.81236 C 468.69244,717.81236 494.77979,715.39794 519.52853,715.39794 C 508.14077,735.93771 500.30894,757.68469 488.92118,778.22446 C 477.53342,798.76423 462.58973,818.09678 451.20197,838.63655 C 439.81420,859.17632 426.01202,879.71609 414.62426,900.25586 C 403.23650,920.79562 394.26316,941.33539 382.87540,961.87516 C 358.12666,961.87516 333.71871,966.70401 308.96998,966.70401 C 284.22124,966.70401 270.80348,963.68598 246.05474,963.68598 C 221.30600,963.68598 191.11867,958.25352 166.36993,958.25352 C 141.62119,958.25352 110.63928,961.87516 85.890530,961.87516 C 97.278300,941.33539 105.91698,921.39923 117.30475,900.85946 C 128.69251,880.31969 143.49865,857.96911 154.88641,837.42934 C 166.27417,816.88957 178.53449,796.95341 189.92225,776.41364 C 201.31001,755.87387 211.15591,735.93771 222.54367,715.39794 z "
id="path5657"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 205.53367,723.90294 C 230.28241,723.90294 257.70839,719.07409 282.45713,719.07409 C 307.20586,719.07409 329.27736,723.90294 354.02610,723.90294 C 378.77484,723.90294 402.18497,726.31736 426.93370,726.31736 C 451.68244,726.31736 477.76979,723.90294 502.51853,723.90294 C 491.13077,744.44271 483.29894,766.18969 471.91118,786.72946 C 460.52342,807.26923 445.57973,826.60178 434.19197,847.14155 C 422.80420,867.68132 409.00202,888.22109 397.61426,908.76086 C 386.22650,929.30062 377.25316,949.84039 365.86540,970.38016 C 341.11666,970.38016 316.70871,975.20901 291.95998,975.20901 C 267.21124,975.20901 253.79348,972.19098 229.04474,972.19098 C 204.29600,972.19098 174.10867,966.75852 149.35993,966.75852 C 124.61119,966.75852 93.629280,970.38016 68.880530,970.38016 C 80.268300,949.84039 88.906980,929.90423 100.29475,909.36446 C 111.68251,888.82469 126.48865,866.47411 137.87641,845.93434 C 149.26417,825.39457 161.52449,805.45841 172.91225,784.91864 C 184.30001,764.37887 194.14591,744.44271 205.53367,723.90294 z "
id="path5659"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 194.19367,715.39794 C 218.94241,715.39794 246.36839,710.56909 271.11713,710.56909 C 295.86586,710.56909 317.93736,715.39794 342.68610,715.39794 C 367.43484,715.39794 390.84497,717.81236 415.59370,717.81236 C 440.34244,717.81236 466.42979,715.39794 491.17853,715.39794 C 479.79077,735.93771 471.95894,757.68469 460.57118,778.22446 C 449.18342,798.76423 434.23973,818.09678 422.85197,838.63655 C 411.46420,859.17632 397.66202,879.71609 386.27426,900.25586 C 374.88650,920.79562 365.91316,941.33539 354.52540,961.87516 C 329.77666,961.87516 305.36871,966.70401 280.61998,966.70401 C 255.87124,966.70401 242.45348,963.68598 217.70474,963.68598 C 192.95600,963.68598 162.76867,958.25352 138.01993,958.25352 C 113.27119,958.25352 82.289280,961.87516 57.540530,961.87516 C 68.928300,941.33539 77.566980,921.39923 88.954750,900.85946 C 100.34251,880.31969 115.14865,857.96911 126.53641,837.42934 C 137.92417,816.88957 150.18449,796.95341 161.57225,776.41364 C 172.96001,755.87387 182.80591,735.93771 194.19367,715.39794 z "
id="path5661"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 185.68867,712.56294 C 210.43741,712.56294 237.86339,707.73409 262.61213,707.73409 C 287.36086,707.73409 309.43236,712.56294 334.18110,712.56294 C 358.92984,712.56294 382.33997,714.97736 407.08870,714.97736 C 431.83744,714.97736 457.92479,712.56294 482.67353,712.56294 C 471.28577,733.10271 463.45394,754.84969 452.06618,775.38946 C 440.67842,795.92923 425.73473,815.26178 414.34697,835.80155 C 402.95920,856.34132 389.15702,876.88109 377.76926,897.42086 C 366.38150,917.96062 357.40816,938.50039 346.02040,959.04016 C 321.27166,959.04016 296.86371,963.86901 272.11498,963.86901 C 247.36624,963.86901 233.94848,960.85098 209.19974,960.85098 C 184.45100,960.85098 154.26367,955.41852 129.51493,955.41852 C 104.76619,955.41852 73.784280,959.04016 49.035530,959.04016 C 60.423300,938.50039 69.061980,918.56423 80.449750,898.02446 C 91.837510,877.48469 106.64365,855.13411 118.03141,834.59434 C 129.41917,814.05457 141.67949,794.11841 153.06725,773.57864 C 164.45501,753.03887 174.30091,733.10271 185.68867,712.56294 z "
id="path5663"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 219.70867,704.05794 C 244.45741,704.05794 271.88339,699.22909 296.63213,699.22909 C 321.38086,699.22909 343.45236,704.05794 368.20110,704.05794 C 392.94984,704.05794 416.35997,706.47236 441.10870,706.47236 C 465.85744,706.47236 491.94479,704.05794 516.69353,704.05794 C 505.30577,724.59771 497.47394,746.34469 486.08618,766.88446 C 474.69842,787.42423 459.75473,806.75678 448.36697,827.29655 C 436.97920,847.83632 423.17702,868.37609 411.78926,888.91586 C 400.40150,909.45562 391.42816,929.99539 380.04040,950.53516 C 355.29166,950.53516 330.88371,955.36401 306.13498,955.36401 C 281.38624,955.36401 267.96848,952.34598 243.21974,952.34598 C 218.47100,952.34598 188.28367,946.91352 163.53493,946.91352 C 138.78619,946.91352 107.80428,950.53516 83.055530,950.53516 C 94.443300,929.99539 103.08198,910.05923 114.46975,889.51946 C 125.85751,868.97969 140.66365,846.62911 152.05141,826.08934 C 163.43917,805.54957 175.69949,785.61341 187.08725,765.07364 C 198.47501,744.53387 208.32091,724.59771 219.70867,704.05794 z "
id="path5665"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 208.36867,701.22294 C 233.11741,701.22294 260.54339,696.39409 285.29213,696.39409 C 310.04086,696.39409 332.11236,701.22294 356.86110,701.22294 C 381.60984,701.22294 405.01997,703.63736 429.76870,703.63736 C 454.51744,703.63736 480.60479,701.22294 505.35353,701.22294 C 493.96577,721.76271 486.13394,743.50969 474.74618,764.04946 C 463.35842,784.58923 448.41473,803.92178 437.02697,824.46155 C 425.63920,845.00132 411.83702,865.54109 400.44926,886.08086 C 389.06150,906.62062 380.08816,927.16039 368.70040,947.70016 C 343.95166,947.70016 319.54371,952.52901 294.79498,952.52901 C 270.04624,952.52901 256.62848,949.51098 231.87974,949.51098 C 207.13100,949.51098 176.94367,944.07852 152.19493,944.07852 C 127.44619,944.07852 96.464280,947.70016 71.715530,947.70016 C 83.103300,927.16039 91.741980,907.22423 103.12975,886.68446 C 114.51751,866.14469 129.32365,843.79411 140.71141,823.25434 C 152.09917,802.71457 164.35949,782.77841 175.74725,762.23864 C 187.13501,741.69887 196.98091,721.76271 208.36867,701.22294 z "
id="path5667"
sodipodi:nodetypes="cssscssscssscsssc" />
<path
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000"
d="M 199.86367,695.55294 C 224.61241,695.55294 252.03839,690.72409 276.78713,690.72409 C 301.53586,690.72409 323.60736,695.55294 348.35610,695.55294 C 373.10484,695.55294 396.51497,697.96736 421.26370,697.96736 C 446.01244,697.96736 472.09979,695.55294 496.84853,695.55294 C 485.46077,716.09271 477.62894,737.83969 466.24118,758.37946 C 454.85342,778.91923 439.90973,798.25178 428.52197,818.79155 C 417.13420,839.33132 403.33202,859.87109 391.94426,880.41086 C 380.55650,900.95062 371.58316,921.49039 360.19540,942.03016 C 335.44666,942.03016 311.03871,946.85901 286.28998,946.85901 C 261.54124,946.85901 248.12348,943.84098 223.37474,943.84098 C 198.62600,943.84098 168.43867,938.40852 143.68993,938.40852 C 118.94119,938.40852 87.959280,942.03016 63.210530,942.03016 C 74.598300,921.49039 83.236980,901.55423 94.624750,881.01446 C 106.01251,860.47469 120.81865,838.12411 132.20641,817.58434 C 143.59417,797.04457 155.85449,777.10841 167.24225,756.56864 C 178.63001,736.02887 188.47591,716.09271 199.86367,695.55294 z "
id="path5669"
sodipodi:nodetypes="cssscssscssscsssc" />
<text
xml:space="preserve"
style="font-size:8.9472828;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:helvetica"
x="762.08246"
y="565.96759"
id="text4009"
transform="matrix(0.791463,0.000000,-0.700507,1.263483,0.000000,0.000000)"><tspan
sodipodi:role="line"
id="tspan4011"
x="762.08246"
y="565.96759">During the course of our ongoing review of the Secure Flight program,</tspan><tspan
sodipodi:role="line"
id="tspan4013"
x="762.08246"
y="574.91487">we found that TSA did not fully disclose to the public its use of personal</tspan><tspan
sodipodi:role="line"
id="tspan4015"
x="762.08246"
y="583.86216">information in its fall 2004 privacy notices as required by the Privacy Act.</tspan><tspan
sodipodi:role="line"
id="tspan4017"
x="762.08246"
y="592.80944">In particular, the public was not made fully aware of, nor had the</tspan><tspan
sodipodi:role="line"
id="tspan4019"
x="762.08246"
y="601.75672">opportunity to comment on, TSA's use of personal information drawn</tspan><tspan
sodipodi:role="line"
id="tspan4021"
x="762.08246"
y="610.70400">from commercial sources to test aspects of the Secure Flight program.</tspan><tspan
sodipodi:role="line"
id="tspan4023"
x="762.08246"
y="619.65129">In September 2004 and November 2004, TSA issued privacy notices in</tspan><tspan
sodipodi:role="line"
id="tspan4025"
x="762.08246"
y="628.59857">the Federal Register that included descriptions of how such information</tspan><tspan
sodipodi:role="line"
id="tspan4027"
x="762.08246"
y="637.54585">would be used. However, these notices did not fully inform the public</tspan><tspan
sodipodi:role="line"
id="tspan4029"
x="762.08246"
y="646.49314">before testing began about the procedures that TSA and its contractors</tspan><tspan
sodipodi:role="line"
id="tspan4031"
x="762.08246"
y="655.44042">would follow for collecting, using, and storing commercial data. In</tspan><tspan
sodipodi:role="line"
id="tspan4033"
x="762.08246"
y="664.38770">addition, the scope of the data used during commercial data testing was</tspan><tspan
sodipodi:role="line"
id="tspan4035"
x="762.08246"
y="673.33498">not fully disclosed in the notices. Specifically, a TSA contractor, acting on</tspan><tspan
sodipodi:role="line"
id="tspan4037"
x="762.08246"
y="682.28227">behalf of the agency, collected more than 100 million commercial data</tspan><tspan
sodipodi:role="line"
id="tspan4039"
x="762.08246"
y="691.22955">records containing personal information such as name, date of birth, and</tspan><tspan
sodipodi:role="line"
id="tspan4041"
x="762.08246"
y="700.17683">telephone number without informing the public. As a result of TSA's</tspan><tspan
sodipodi:role="line"
id="tspan4043"
x="762.08246"
y="709.12411">actions, the public did not receive the full protections of the Privacy Act.</tspan><tspan
sodipodi:role="line"
id="tspan4045"
x="762.08246"
y="718.07140"></tspan><tspan
sodipodi:role="line"
id="tspan4047"
x="762.08246"
y="727.01868">Yours sincerely,</tspan><tspan
sodipodi:role="line"
id="tspan4049"
x="762.08246"
y="735.96596">Big Brother</tspan></text>
</g>
<g
inkscape:groupmode="layer"
id="layer3"
inkscape:label="pingu">
<g
id="g1597"
inkscape:groupmode="layer"
inkscape:label="Layer 1"
transform="translate(728.3196,573.5281)">
<g
transform="translate(769.4298,-218.5582)"
id="g8451">
<path
style="color:#000000;fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:7.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
d="M -1431.7292,263.27456 C -1429.6240,280.53810 -1427.1740,299.08334 -1364.3643,298.56888 C -1298.5557,298.03418 -1294.5433,277.98055 -1292.7890,262.50731"
id="path1440"
sodipodi:nodetypes="css" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:7.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -1362.8850,264.56703 L -1362.8850,535.41268"
id="path1442" />
<g
id="g8443">
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:7.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;marker-start:none;marker-mid:none;marker-end:none"
d="M -1431.9752,202.93373 L -1431.7788,264.15754"
id="path1436"
sodipodi:nodetypes="cc" />
<path
style="color:#000000;fill:#6e6e6e;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:3.2481158;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
d="M -1402.5111,241.73677 C -1416.4702,237.49299 -1418.0374,206.69165 -1431.9965,202.44787 C -1446.0326,206.36613 -1449.1042,239.13330 -1463.1404,243.05157 C -1452.1032,234.22395 -1464.4224,203.71827 -1453.3852,194.89066 C -1450.1136,181.92153 -1434.4501,176.09487 -1431.1785,163.12573 C -1428.2566,176.19713 -1412.9428,182.12605 -1410.0210,195.19745 C -1399.2565,204.24832 -1413.2756,232.68590 -1402.5111,241.73677 z "
id="path1446"
sodipodi:nodetypes="ccccccc" />
</g>
<use
height="1052.3622"
width="744.09448"
transform="translate(68.81594,0.000000)"
id="use8447"
xlink:href="#g8443"
y="0.0000000"
x="0.0000000" />
<use
height="1052.3622"
width="744.09448"
transform="translate(138.9150,0.000000)"
id="use8449"
xlink:href="#g8443"
y="0.0000000"
x="0.0000000" />
</g>
<g
id="g1614"
transform="translate(-163.6837,275.0000)">
<path
id="path2225"
d="M -446.16124,-46.244836 C -446.20695,-45.411526 -445.65323,-44.559286 -444.52615,-43.878606 L -379.43056,-4.5552905 C -378.08762,-3.7442605 -376.23442,-3.4256905 -374.43483,-3.5063605 L -370.03938,-83.618156 C -371.82299,-83.828856 -373.70370,-83.645796 -375.13012,-82.935256 L -444.27350,-48.483196 C -445.47066,-47.886866 -446.11552,-47.078106 -446.16124,-46.244836 z "
style="fill:url(#linearGradient1625);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="path2221"
d="M -135.16964,-42.752916 C -135.12393,-41.919606 -135.67765,-41.067376 -136.80473,-40.386686 L -201.90032,-1.0633705 C -203.24326,-0.25234047 -205.09646,0.066229532 -206.89605,-0.014450468 L -211.29150,-80.126246 C -209.50789,-80.336936 -207.62718,-80.153876 -206.20076,-79.443346 L -137.05738,-44.991276 C -135.86022,-44.394946 -135.21536,-43.586186 -135.16964,-42.752916 z "
style="fill:url(#linearGradient1627);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<rect
ry="9.9999914"
rx="9.9999895"
y="20.480856"
x="-280.94608"
height="26.288469"
width="101.26261"
id="rect2209"
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<rect
ry="9.9999914"
rx="9.9999895"
y="18.837851"
x="-414.28619"
height="26.288469"
width="101.26261"
id="rect2207"
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="path1291"
d="M -293.34930,-197.75054 C -361.16644,-197.75054 -416.19304,-152.97430 -416.19305,-97.821466 C -416.19305,-96.878446 -416.06877,-95.962666 -416.03680,-95.025896 C -416.06214,-94.788816 -416.19305,-94.582306 -416.19305,-94.339706 L -416.19305,-33.929886 C -416.19305,-33.848436 -416.13344,-33.782016 -416.13055,-33.701156 C -416.13419,-33.384516 -416.19305,-33.078156 -416.19305,-32.760826 C -416.19305,-7.8878505 -404.92099,14.808650 -386.41180,32.299810 L -200.25555,32.299810 C -181.73938,14.808650 -170.47430,-7.8878505 -170.47430,-32.760826 C -170.47430,-33.078156 -170.53316,-33.384516 -170.53680,-33.701156 C -170.53390,-33.782016 -170.47430,-33.848436 -170.47430,-33.929886 L -170.47430,-94.339706 C -170.47430,-94.582306 -170.60521,-94.788816 -170.63055,-95.025896 C -170.59858,-95.962666 -170.47430,-96.878446 -170.47430,-97.821466 C -170.47430,-152.97430 -225.53216,-197.75054 -293.34930,-197.75054 z "
style="fill:url(#linearGradient1629);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:2.0500004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
transform="matrix(1.000000,0.000000,0.000000,-0.813258,-616.1930,270.8666)"
d="M 387.89858 320.00159 A 63.639610 24.243662 0 1 1 260.61936,320.00159 A 63.639610 24.243662 0 1 1 387.89858 320.00159 z"
sodipodi:ry="24.243662"
sodipodi:rx="63.639610"
sodipodi:cy="320.00159"
sodipodi:cx="324.25897"
id="path2229"
style="fill:url(#linearGradient1631);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.1583133;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
<path
id="rect1306"
d="M -282.63434,12.675950 C -283.46370,12.846940 -284.41323,12.622860 -285.28718,11.988910 L -335.77284,-24.623926 C -336.81415,-25.379296 -337.44688,-26.556776 -337.66950,-27.765996 L -257.93682,-44.204486 C -257.42419,-43.055046 -257.29073,-41.774646 -257.76379,-40.707056 L -280.70439,11.044070 C -281.10141,11.940060 -281.80501,12.504970 -282.63434,12.675950 z "
style="fill:url(#linearGradient1633);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
id="rect1358"
d="M -379.98683,-115.78681 C -383.85425,-116.18089 -387.78433,-114.72314 -389.86183,-111.79677 L -401.95558,-94.769176 C -404.72558,-90.867336 -403.09711,-85.915846 -398.29933,-83.663116 L -325.86183,-49.658766 C -323.92541,-48.749546 -321.79150,-48.552746 -319.73683,-48.743856 C -319.49836,-48.730136 -319.29224,-48.642196 -319.04933,-48.642196 L -266.83058,-48.642196 C -266.67382,-48.642196 -266.54803,-48.712696 -266.39308,-48.718436 C -264.58232,-48.666816 -262.74057,-48.864666 -261.04933,-49.658766 L -188.61183,-83.663116 C -183.81405,-85.915836 -182.18558,-90.867346 -184.95558,-94.769176 L -197.01808,-111.79677 C -199.78807,-115.69859 -205.90781,-117.02296 -210.70558,-114.77024 L -274.98683,-84.552616 L -311.89308,-84.552616 L -376.20558,-114.77024 C -377.40503,-115.33342 -378.69769,-115.65545 -379.98683,-115.78681 z "
style="fill:url(#linearGradient1635);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
<path
transform="matrix(-1.000000,0.000000,0.000000,0.813258,-44.44673,-241.4060)"
d="M 329.30973 104.83910 A 80.812202 49.497475 0 1 1 167.68533,104.83910 A 80.812202 49.497475 0 1 1 329.30973 104.83910 z"
sodipodi:ry="49.497475"
sodipodi:rx="80.812202"
sodipodi:cy="104.83910"
sodipodi:cx="248.49753"
id="path2141"
style="fill:url(#radialGradient1637);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
sodipodi:type="arc" />
</g>
<g
id="g17274"
transform="translate(15.27235,8.505000)">
<use
x="0.0000000"
y="0.0000000"
xlink:href="#path8129"
id="use10443"
transform="translate(68.70016,9.170333e-8)"
width="744.09448"
height="1052.3622" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;marker-start:none;marker-mid:none;marker-end:none"
d="M -681.46322,-19.806723 L -681.26684,41.417087"
id="path8129"
sodipodi:nodetypes="cc" />
<g
id="g17248">
<path
style="color:#000000;fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0398970;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
d="M -681.21720,40.534110 C -679.11202,57.797647 -676.66204,76.342887 -613.85229,75.828433 C -548.04372,75.293726 -544.03134,55.240098 -542.27703,39.766860"
id="path8131"
sodipodi:nodetypes="css" />
<path
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -612.37306,41.826578 L -612.37306,312.67223"
id="path8133" />
<use
x="0.0000000"
y="0.0000000"
xlink:href="#path8129"
id="use10441"
transform="translate(138.9150,0.000000)"
width="744.09448"
height="1052.3622" />
<path
style="color:#000000;fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.2481158;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
d="M -651.99912,18.996321 C -665.95818,14.752539 -667.52540,-16.048801 -681.48446,-20.292583 C -695.52064,-16.374318 -698.59223,16.392855 -712.62842,20.311120 C -701.59125,11.483501 -713.91045,-19.022176 -702.87321,-27.849795 C -699.60157,-40.818929 -683.93810,-46.645589 -680.66646,-59.614724 C -677.74457,-46.543323 -662.43083,-40.614404 -659.50902,-27.543003 C -648.74447,-18.492133 -662.76359,9.9454513 -651.99912,18.996321 z "
id="path16369"
sodipodi:nodetypes="ccccccc" />
<use
x="0.0000000"
y="0.0000000"
xlink:href="#path16369"
id="use17244"
transform="translate(68.80972,0.000000)"
width="744.09448"
height="1052.3622" />
<use
x="0.0000000"
y="0.0000000"
xlink:href="#path16369"
id="use17246"
transform="translate(138.9150,0.000000)"
width="744.09448"
height="1052.3622" />
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,909 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="evil_stick3.svg"
sodipodi:docbase="/home/lars/svn/cryptobox/trunk/logo"
inkscape:version="0.41"
sodipodi:version="0.32"
id="svg2"
height="297mm"
width="210mm"
inkscape:export-filename="/home/lars/svn/cryptobox/trunk/logo/evil_stick2.png"
inkscape:export-xdpi="15.600000"
inkscape:export-ydpi="15.600000">
<defs
id="defs3">
<linearGradient
id="linearGradient6897">
<stop
id="stop6899"
offset="0.0000000"
style="stop-color:#ac5163;stop-opacity:1.0000000;" />
<stop
id="stop6901"
offset="1.0000000"
style="stop-color:#8f424b;stop-opacity:0.73333335;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient9344">
<stop
style="stop-color:#072bd6;stop-opacity:1;"
offset="0"
id="stop9346" />
<stop
style="stop-color:#072bd6;stop-opacity:0;"
offset="1"
id="stop9348" />
</linearGradient>
<linearGradient
id="linearGradient21671">
<stop
id="stop21673"
offset="0.0000000"
style="stop-color:#fffeff;stop-opacity:1.0000000;" />
<stop
id="stop21675"
offset="1.0000000"
style="stop-color:#fffffe;stop-opacity:0.0000000;" />
</linearGradient>
<linearGradient
id="linearGradient18159">
<stop
id="stop18161"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop18163"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<marker
inkscape:stockid="DiamondM"
orient="auto"
refY="0.0"
refX="0.0"
id="DiamondM"
style="overflow:visible">
<path
id="path6516"
d="M -2.1579186e-005,-7.0710768 L -7.0710894,-8.9383918e-006 L -2.1579186e-005,7.0710589 L 7.0710462,-8.9383918e-006 L -2.1579186e-005,-7.0710768 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.4)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0.0"
refX="0.0"
id="TriangleInL"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path6511"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(-0.8)" />
</marker>
<marker
inkscape:stockid="SemiCircleIn"
orient="auto"
refY="0.0"
refX="0.0"
id="SemiCircleIn"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path941"
d="M -0.37450702,-0.045692580 C -0.37450702,2.7143074 1.8654930,4.9543074 4.6254930,4.9543074 L 4.6254930,-5.0456926 C 1.8654930,-5.0456926 -0.37450702,-2.8056926 -0.37450702,-0.045692580 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
transform="scale(0.6)" />
</marker>
<marker
inkscape:stockid="Tail"
orient="auto"
refY="0.0"
refX="0.0"
id="Tail"
style="overflow:visible">
<g
id="g1087"
transform="scale(-1.2)">
<path
id="path1126"
d="M -3.8048674,-3.9585227 L 0.54352094,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1127"
d="M -1.2866832,-3.9585227 L 3.0617053,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path6547"
d="M 1.3053582,-3.9585227 L 5.6537466,-0.00068114835"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1848"
d="M -3.8048674,4.1775838 L 0.54352094,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1849"
d="M -1.2866832,4.1775838 L 3.0617053,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
<path
id="path1850"
d="M 1.3053582,4.1775838 L 5.6537466,0.21974226"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;marker-start:none;marker-end:none;stroke-linecap:round" />
</g>
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lstart"
style="overflow:visible">
<path
sodipodi:nodetypes="ccccc"
id="path6575"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
transform="scale(0.8)" />
</marker>
<marker
inkscape:stockid="Arrow2Lstart"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow2Lstart"
style="overflow:visible">
<path
sodipodi:nodetypes="cccc"
id="path6558"
style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
transform="scale(1.1) translate(-5,0)" />
</marker>
<marker
inkscape:stockid="Scissors"
orient="auto"
refY="0.0"
refX="0.0"
id="Scissors"
style="overflow:visible">
<path
id="schere"
style="marker-start:none"
d="M 9.0898857,-3.6061018 C 8.1198849,-4.7769976 6.3697607,-4.7358294 5.0623558,-4.2327734 L -3.1500488,-1.1548705 C -5.5383421,-2.4615840 -7.8983361,-2.0874077 -7.8983361,-2.7236578 C -7.8983361,-3.2209742 -7.4416699,-3.1119800 -7.5100293,-4.4068519 C -7.5756648,-5.6501286 -8.8736064,-6.5699315 -10.100428,-6.4884954 C -11.327699,-6.4958500 -12.599867,-5.5553341 -12.610769,-4.2584343 C -12.702194,-2.9520479 -11.603560,-1.7387447 -10.304005,-1.6532027 C -8.7816644,-1.4265411 -6.0857470,-2.3487593 -4.8210600,-0.082342643 C -5.7633447,1.6559151 -7.4350844,1.6607341 -8.9465707,1.5737277 C -10.201445,1.5014928 -11.708664,1.8611256 -12.307219,3.0945882 C -12.885586,4.2766744 -12.318421,5.9591904 -10.990470,6.3210002 C -9.6502788,6.8128279 -7.8098011,6.1912892 -7.4910978,4.6502760 C -7.2454393,3.4624530 -8.0864637,2.9043186 -7.7636052,2.4731223 C -7.5199917,2.1477623 -5.9728246,2.3362771 -3.2164999,1.0982979 L 5.6763468,4.2330688 C 6.8000164,4.5467672 8.1730685,4.5362646 9.1684433,3.4313614 L -0.051640930,-0.053722219 L 9.0898857,-3.6061018 z M -9.2179159,-5.5066058 C -7.9233569,-4.7838060 -8.0290767,-2.8230356 -9.3743431,-2.4433169 C -10.590861,-2.0196559 -12.145370,-3.2022863 -11.757521,-4.5207817 C -11.530373,-5.6026336 -10.104134,-6.0014137 -9.2179159,-5.5066058 z M -9.1616516,2.5107591 C -7.8108215,3.0096239 -8.0402087,5.2951947 -9.4138723,5.6023681 C -10.324932,5.9187072 -11.627422,5.4635705 -11.719569,4.3902287 C -11.897178,3.0851737 -10.363484,1.9060805 -9.1616516,2.5107591 z " />
</marker>
<marker
inkscape:stockid="Legs"
orient="auto"
refY="0.0"
refX="0.0"
id="Legs"
style="overflow:visible">
<g
id="g1163"
transform="scale(-0.7)">
<g
transform="matrix(-1.836909e-16,-1.000000,-1.000000,1.836909e-16,20.70862,21.31391)"
id="g2032">
<path
sodipodi:nodetypes="cc"
id="path2019"
d="M 21.221250,20.675360 C 14.311099,25.396517 18.766725,27.282204 15.380179,34.118595"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path2026"
d="M 21.398110,20.548120 C 20.037601,28.895644 24.934182,29.318060 25.903151,34.373078"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
</g>
<path
id="polygon2039"
d="M -14.090070,-6.7318716 L -15.012238,-2.6884886 L -11.049487,-3.9115586 L -14.090070,-6.7318716 z "
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<path
id="path2041"
d="M -15.215679,4.5567534 L -13.341552,8.2563664 L -11.074678,4.7835114 L -15.215679,4.5567534 z "
style="fill:#030300;fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
</g>
</marker>
<marker
inkscape:stockid="Torso"
orient="auto"
refY="0.0"
refX="0.0"
id="Torso"
style="overflow:visible">
<g
id="g2045"
transform="scale(0.7)">
<path
sodipodi:nodetypes="ccccc"
id="path1128"
d="M -4.7792281,-3.2395420 C -2.4288541,-2.8736027 0.52103922,-1.3019943 0.25792722,0.38794346 C -0.0051877922,2.0778819 -2.2126741,2.6176539 -4.5630471,2.2517169 C -6.9134221,1.8857769 -8.5210350,0.75201414 -8.2579220,-0.93792336 C -7.9948090,-2.6278615 -7.1296041,-3.6054813 -4.7792281,-3.2395420 z "
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;marker-start:none;marker-mid:none;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path1909"
d="M 4.4598789,0.088665736 C -2.5564571,-4.3783320 5.2248769,-3.9061806 -0.84829578,-8.7197331"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-end:none" />
<path
sodipodi:nodetypes="cc"
id="path1910"
d="M 4.9298719,0.057520736 C -1.3872731,1.7494689 1.8027579,5.4782079 -4.9448731,7.5462725"
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none" />
<rect
transform="matrix(0.527536,-0.849533,0.887668,0.460484,0.000000,0.000000)"
y="-1.7408575"
x="-10.391706"
height="2.7608147"
width="2.6366582"
id="rect2035"
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<rect
transform="matrix(0.671205,-0.741272,0.790802,0.612072,0.000000,0.000000)"
y="-7.9629307"
x="4.9587269"
height="2.8614161"
width="2.7327356"
id="rect2036"
style="fill-rule:evenodd;stroke-width:1.0000000pt;marker-end:none" />
<path
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,25.96648,19.71619)"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
sodipodi:ry="0.60731727"
sodipodi:rx="0.60731727"
sodipodi:cy="-28.685045"
sodipodi:cx="16.172634"
id="path2037"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
sodipodi:type="arc" />
<path
transform="matrix(6.793608e-17,-1.109517,1.109517,6.793608e-17,26.82450,16.99126)"
d="M 16.779951 -28.685045 A 0.60731727 0.60731727 0 1 0 15.565317,-28.685045 A 0.60731727 0.60731727 0 1 0 16.779951 -28.685045 z"
sodipodi:ry="0.60731727"
sodipodi:rx="0.60731727"
sodipodi:cy="-28.685045"
sodipodi:cx="16.172634"
id="path2038"
style="fill:#ff0000;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000pt;marker-start:none;marker-end:none"
sodipodi:type="arc" />
</g>
</marker>
<marker
inkscape:stockid="Club"
orient="auto"
refY="0.0"
refX="0.0"
id="Club"
style="overflow:visible">
<path
id="path1015"
d="M -1.5971367,-7.0977635 C -3.4863874,-7.0977635 -5.0235187,-5.5606321 -5.0235187,-3.6713813 C -5.0235187,-3.0147015 -4.7851656,-2.4444556 -4.4641095,-1.9232271 C -4.5028609,-1.8911157 -4.5437814,-1.8647646 -4.5806531,-1.8299921 C -5.2030765,-2.6849849 -6.1700514,-3.2751330 -7.3077730,-3.2751330 C -9.1970245,-3.2751331 -10.734155,-1.7380016 -10.734155,0.15124914 C -10.734155,2.0404999 -9.1970245,3.5776313 -7.3077730,3.5776313 C -6.3143268,3.5776313 -5.4391540,3.1355702 -4.8137404,2.4588126 C -4.9384274,2.8137041 -5.0235187,3.1803000 -5.0235187,3.5776313 C -5.0235187,5.4668819 -3.4863874,7.0040135 -1.5971367,7.0040135 C 0.29211394,7.0040135 1.8292454,5.4668819 1.8292454,3.5776313 C 1.8292454,2.7842354 1.5136868,2.0838028 1.0600576,1.5031550 C 2.4152718,1.7663868 3.7718375,2.2973711 4.7661444,3.8340272 C 4.0279463,3.0958289 3.5540908,1.7534117 3.5540908,-0.058529361 L 2.9247554,-0.10514681 L 3.5074733,-0.12845553 C 3.5074733,-1.9403966 3.9580199,-3.2828138 4.6962183,-4.0210121 C 3.7371277,-2.5387813 2.4390549,-1.9946496 1.1299838,-1.7134486 C 1.5341802,-2.2753578 1.8292454,-2.9268556 1.8292454,-3.6713813 C 1.8292454,-5.5606319 0.29211394,-7.0977635 -1.5971367,-7.0977635 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:0.74587913pt;marker-start:none"
transform="scale(0.6)" />
</marker>
<linearGradient
id="linearGradient2135">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2137" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2139" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient2143">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2145" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2147" />
</linearGradient>
<linearGradient
id="linearGradient2215">
<stop
style="stop-color:#ffdb00;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2217" />
<stop
style="stop-color:#000000;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2219" />
</linearGradient>
<linearGradient
id="linearGradient2465">
<stop
id="stop2467"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop2469"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
y2="457.34415"
x2="137.66396"
y1="443.27271"
x1="123.01630"
gradientTransform="matrix(2.508579,0.000000,0.000000,3.113477,99.47147,-1666.083)"
gradientUnits="userSpaceOnUse"
id="linearGradient2690"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
y2="477.12833"
x2="123.41339"
y1="443.89682"
x1="117.91422"
gradientTransform="scale(1.391891,0.718447)"
gradientUnits="userSpaceOnUse"
id="linearGradient2596"
xlink:href="#linearGradient2465"
inkscape:collect="always" />
<linearGradient
id="linearGradient2457">
<stop
id="stop2459"
offset="0.0000000"
style="stop-color:#0926d2;stop-opacity:1.0000000;" />
<stop
id="stop2461"
offset="1.0000000"
style="stop-color:#4a9cc4;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
y2="208.34334"
x2="253.60005"
y1="171.10872"
x1="117.61987"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1625"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="227.56172"
x2="546.69745"
y1="184.47606"
x1="352.24612"
gradientTransform="matrix(0.883305,0.000000,0.000000,0.920698,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1627"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="239.82146"
x2="429.14163"
y1="99.157669"
x1="168.79323"
gradientTransform="matrix(0.932520,0.000000,0.000000,0.872108,-616.1930,-249.6211)"
gradientUnits="userSpaceOnUse"
id="linearGradient1629"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="432.21533"
x2="238.41585"
y1="566.80432"
x1="196.24054"
gradientTransform="scale(1.580078,0.632880)"
gradientUnits="userSpaceOnUse"
id="linearGradient1631"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<linearGradient
y2="-539.59961"
x2="205.79190"
y1="-453.57123"
x1="161.00905"
gradientTransform="matrix(0.928841,-0.191499,-0.178455,-0.572481,-544.5146,-236.0923)"
gradientUnits="userSpaceOnUse"
id="linearGradient1633"
xlink:href="#linearGradient2215"
inkscape:collect="always" />
<linearGradient
y2="357.05264"
x2="161.39738"
y1="266.49701"
x1="122.77643"
spreadMethod="pad"
gradientTransform="matrix(1.617925,0.000000,0.000000,0.502655,-618.2133,-256.1933)"
gradientUnits="userSpaceOnUse"
id="linearGradient1635"
xlink:href="#linearGradient2135"
inkscape:collect="always" />
<radialGradient
r="72.676987"
fy="55.831612"
fx="238.68398"
cy="54.343491"
cx="238.68401"
gradientTransform="scale(1.277753,0.782624)"
gradientUnits="userSpaceOnUse"
id="radialGradient1637"
xlink:href="#linearGradient2143"
inkscape:collect="always" />
<radialGradient
spreadMethod="pad"
gradientUnits="userSpaceOnUse"
r="264.77359"
fy="1035.0133"
fx="-12.059620"
cy="1035.0133"
cx="-12.059620"
id="radialGradient21677"
xlink:href="#linearGradient21671"
inkscape:collect="always" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient9344"
id="radialGradient9350"
cx="269.61829"
cy="756.57361"
fx="269.61829"
fy="756.57361"
r="265.00000"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.202975,0.000000,0.000000,1.202980,-64.67099,-106.3403)" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient6907"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient6909"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient6911"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient6913"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="matrix(0.480935,-2.814434e-2,0.212288,1.910813,102.0308,-73.90978)"
gradientUnits="userSpaceOnUse"
id="radialGradient10404"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="matrix(0.480935,-2.814434e-2,0.212288,1.910813,102.0308,-73.90978)"
gradientUnits="userSpaceOnUse"
id="radialGradient10408"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient10411"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient10413"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient10421"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="matrix(0.480935,-2.814434e-2,0.212288,1.910813,102.0308,-73.90978)"
gradientUnits="userSpaceOnUse"
id="radialGradient10423"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="scale(0.467531,2.138894)"
gradientUnits="userSpaceOnUse"
id="radialGradient10425"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
<radialGradient
r="76.738419"
fy="106.97469"
fx="-2291.0054"
cy="106.97469"
cx="-2291.0054"
gradientTransform="matrix(0.480935,-2.814434e-2,0.212288,1.910813,102.0308,-73.90978)"
gradientUnits="userSpaceOnUse"
id="radialGradient10427"
xlink:href="#linearGradient6897"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
inkscape:window-y="0"
inkscape:window-x="0"
inkscape:window-height="744"
inkscape:window-width="1022"
inkscape:current-layer="g1597"
inkscape:document-units="px"
inkscape:cy="244.30896"
inkscape:cx="245.93407"
inkscape:zoom="0.64437744"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata4">
<rdf:RDF
id="RDF5">
<cc:Work
id="Work6"
rdf:about="">
<dc:format
id="format7">image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
id="type9" />
</cc:Work>
</rdf:RDF>
</metadata>
<rect
y="485.01334"
x="-59.115349"
height="637.58002"
width="637.57672"
id="rect17285"
style="color:#000000;fill:url(#radialGradient9350);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Datenzeug">
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path4863"
d="M 197.02867,746.58294 C 221.77741,746.58294 249.20339,741.75409 273.95213,741.75409 C 298.70086,741.75409 320.77236,746.58294 345.52110,746.58294 C 370.26984,746.58294 393.67997,748.99736 418.42870,748.99736 C 443.17744,748.99736 469.26479,746.58294 494.01353,746.58294 C 482.62577,767.12271 474.79394,788.86969 463.40618,809.40946 C 452.01842,829.94923 437.07473,849.28178 425.68697,869.82155 C 414.29920,890.36132 400.49702,910.90109 389.10926,931.44086 C 377.72150,951.98062 368.74816,972.52039 357.36040,993.06016 C 332.61166,993.06016 308.20371,997.88901 283.45498,997.88901 C 258.70624,997.88901 245.28848,994.87098 220.53974,994.87098 C 195.79100,994.87098 165.60367,989.43852 140.85493,989.43852 C 116.10619,989.43852 85.124280,993.06016 60.375530,993.06016 C 71.763300,972.52039 80.401980,952.58423 91.789750,932.04446 C 103.17751,911.50469 117.98365,889.15411 129.37141,868.61434 C 140.75917,848.07457 153.01949,828.13841 164.40725,807.59864 C 175.79501,787.05887 185.64091,767.12271 197.02867,746.58294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5649"
d="M 191.35867,740.91294 C 216.10741,740.91294 243.53339,736.08409 268.28213,736.08409 C 293.03086,736.08409 315.10236,740.91294 339.85110,740.91294 C 364.59984,740.91294 388.00997,743.32736 412.75870,743.32736 C 437.50744,743.32736 463.59479,740.91294 488.34353,740.91294 C 476.95577,761.45271 469.12394,783.19969 457.73618,803.73946 C 446.34842,824.27923 431.40473,843.61178 420.01697,864.15155 C 408.62920,884.69132 394.82702,905.23109 383.43926,925.77086 C 372.05150,946.31062 363.07816,966.85039 351.69040,987.39016 C 326.94166,987.39016 302.53371,992.21901 277.78498,992.21901 C 253.03624,992.21901 239.61848,989.20098 214.86974,989.20098 C 190.12100,989.20098 159.93367,983.76852 135.18493,983.76852 C 110.43619,983.76852 79.454280,987.39016 54.705530,987.39016 C 66.093300,966.85039 74.731980,946.91423 86.119750,926.37446 C 97.507510,905.83469 112.31365,883.48411 123.70141,862.94434 C 135.08917,842.40457 147.34949,822.46841 158.73725,801.92864 C 170.12501,781.38887 179.97091,761.45271 191.35867,740.91294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5651"
d="M 199.86367,735.24294 C 224.61241,735.24294 252.03839,730.41409 276.78713,730.41409 C 301.53586,730.41409 323.60736,735.24294 348.35610,735.24294 C 373.10484,735.24294 396.51497,737.65736 421.26370,737.65736 C 446.01244,737.65736 472.09979,735.24294 496.84853,735.24294 C 485.46077,755.78271 477.62894,777.52969 466.24118,798.06946 C 454.85342,818.60923 439.90973,837.94178 428.52197,858.48155 C 417.13420,879.02132 403.33202,899.56109 391.94426,920.10086 C 380.55650,940.64062 371.58316,961.18039 360.19540,981.72016 C 335.44666,981.72016 311.03871,986.54901 286.28998,986.54901 C 261.54124,986.54901 248.12348,983.53098 223.37474,983.53098 C 198.62600,983.53098 168.43867,978.09852 143.68993,978.09852 C 118.94119,978.09852 87.959280,981.72016 63.210530,981.72016 C 74.598300,961.18039 83.236980,941.24423 94.624750,920.70446 C 106.01251,900.16469 120.81865,877.81411 132.20641,857.27434 C 143.59417,836.73457 155.85449,816.79841 167.24225,796.25864 C 178.63001,775.71887 188.47591,755.78271 199.86367,735.24294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5653"
d="M 211.20367,732.40794 C 235.95241,732.40794 263.37839,727.57909 288.12713,727.57909 C 312.87586,727.57909 334.94736,732.40794 359.69610,732.40794 C 384.44484,732.40794 407.85497,734.82236 432.60370,734.82236 C 457.35244,734.82236 483.43979,732.40794 508.18853,732.40794 C 496.80077,752.94771 488.96894,774.69469 477.58118,795.23446 C 466.19342,815.77423 451.24973,835.10678 439.86197,855.64655 C 428.47420,876.18632 414.67202,896.72609 403.28426,917.26586 C 391.89650,937.80562 382.92316,958.34539 371.53540,978.88516 C 346.78666,978.88516 322.37871,983.71401 297.62998,983.71401 C 272.88124,983.71401 259.46348,980.69598 234.71474,980.69598 C 209.96600,980.69598 179.77867,975.26352 155.02993,975.26352 C 130.28119,975.26352 99.299280,978.88516 74.550530,978.88516 C 85.938300,958.34539 94.576980,938.40923 105.96475,917.86946 C 117.35251,897.32969 132.15865,874.97911 143.54641,854.43934 C 154.93417,833.89957 167.19449,813.96341 178.58225,793.42364 C 189.97001,772.88387 199.81591,752.94771 211.20367,732.40794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5655"
d="M 188.52367,729.57294 C 213.27241,729.57294 240.69839,724.74409 265.44713,724.74409 C 290.19586,724.74409 312.26736,729.57294 337.01610,729.57294 C 361.76484,729.57294 385.17497,731.98736 409.92370,731.98736 C 434.67244,731.98736 460.75979,729.57294 485.50853,729.57294 C 474.12077,750.11271 466.28894,771.85969 454.90118,792.39946 C 443.51342,812.93923 428.56973,832.27178 417.18197,852.81155 C 405.79420,873.35132 391.99202,893.89109 380.60426,914.43086 C 369.21650,934.97062 360.24316,955.51039 348.85540,976.05016 C 324.10666,976.05016 299.69871,980.87901 274.94998,980.87901 C 250.20124,980.87901 236.78348,977.86098 212.03474,977.86098 C 187.28600,977.86098 157.09867,972.42852 132.34993,972.42852 C 107.60119,972.42852 76.619280,976.05016 51.870530,976.05016 C 63.258300,955.51039 71.896980,935.57423 83.284750,915.03446 C 94.672510,894.49469 109.47865,872.14411 120.86641,851.60434 C 132.25417,831.06457 144.51449,811.12841 155.90225,790.58864 C 167.29001,770.04887 177.13591,750.11271 188.52367,729.57294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5657"
d="M 222.54367,715.39794 C 247.29241,715.39794 274.71839,710.56909 299.46713,710.56909 C 324.21586,710.56909 346.28736,715.39794 371.03610,715.39794 C 395.78484,715.39794 419.19497,717.81236 443.94370,717.81236 C 468.69244,717.81236 494.77979,715.39794 519.52853,715.39794 C 508.14077,735.93771 500.30894,757.68469 488.92118,778.22446 C 477.53342,798.76423 462.58973,818.09678 451.20197,838.63655 C 439.81420,859.17632 426.01202,879.71609 414.62426,900.25586 C 403.23650,920.79562 394.26316,941.33539 382.87540,961.87516 C 358.12666,961.87516 333.71871,966.70401 308.96998,966.70401 C 284.22124,966.70401 270.80348,963.68598 246.05474,963.68598 C 221.30600,963.68598 191.11867,958.25352 166.36993,958.25352 C 141.62119,958.25352 110.63928,961.87516 85.890530,961.87516 C 97.278300,941.33539 105.91698,921.39923 117.30475,900.85946 C 128.69251,880.31969 143.49865,857.96911 154.88641,837.42934 C 166.27417,816.88957 178.53449,796.95341 189.92225,776.41364 C 201.31001,755.87387 211.15591,735.93771 222.54367,715.39794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5659"
d="M 205.53367,723.90294 C 230.28241,723.90294 257.70839,719.07409 282.45713,719.07409 C 307.20586,719.07409 329.27736,723.90294 354.02610,723.90294 C 378.77484,723.90294 402.18497,726.31736 426.93370,726.31736 C 451.68244,726.31736 477.76979,723.90294 502.51853,723.90294 C 491.13077,744.44271 483.29894,766.18969 471.91118,786.72946 C 460.52342,807.26923 445.57973,826.60178 434.19197,847.14155 C 422.80420,867.68132 409.00202,888.22109 397.61426,908.76086 C 386.22650,929.30062 377.25316,949.84039 365.86540,970.38016 C 341.11666,970.38016 316.70871,975.20901 291.95998,975.20901 C 267.21124,975.20901 253.79348,972.19098 229.04474,972.19098 C 204.29600,972.19098 174.10867,966.75852 149.35993,966.75852 C 124.61119,966.75852 93.629280,970.38016 68.880530,970.38016 C 80.268300,949.84039 88.906980,929.90423 100.29475,909.36446 C 111.68251,888.82469 126.48865,866.47411 137.87641,845.93434 C 149.26417,825.39457 161.52449,805.45841 172.91225,784.91864 C 184.30001,764.37887 194.14591,744.44271 205.53367,723.90294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5661"
d="M 194.19367,715.39794 C 218.94241,715.39794 246.36839,710.56909 271.11713,710.56909 C 295.86586,710.56909 317.93736,715.39794 342.68610,715.39794 C 367.43484,715.39794 390.84497,717.81236 415.59370,717.81236 C 440.34244,717.81236 466.42979,715.39794 491.17853,715.39794 C 479.79077,735.93771 471.95894,757.68469 460.57118,778.22446 C 449.18342,798.76423 434.23973,818.09678 422.85197,838.63655 C 411.46420,859.17632 397.66202,879.71609 386.27426,900.25586 C 374.88650,920.79562 365.91316,941.33539 354.52540,961.87516 C 329.77666,961.87516 305.36871,966.70401 280.61998,966.70401 C 255.87124,966.70401 242.45348,963.68598 217.70474,963.68598 C 192.95600,963.68598 162.76867,958.25352 138.01993,958.25352 C 113.27119,958.25352 82.289280,961.87516 57.540530,961.87516 C 68.928300,941.33539 77.566980,921.39923 88.954750,900.85946 C 100.34251,880.31969 115.14865,857.96911 126.53641,837.42934 C 137.92417,816.88957 150.18449,796.95341 161.57225,776.41364 C 172.96001,755.87387 182.80591,735.93771 194.19367,715.39794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5663"
d="M 185.68867,712.56294 C 210.43741,712.56294 237.86339,707.73409 262.61213,707.73409 C 287.36086,707.73409 309.43236,712.56294 334.18110,712.56294 C 358.92984,712.56294 382.33997,714.97736 407.08870,714.97736 C 431.83744,714.97736 457.92479,712.56294 482.67353,712.56294 C 471.28577,733.10271 463.45394,754.84969 452.06618,775.38946 C 440.67842,795.92923 425.73473,815.26178 414.34697,835.80155 C 402.95920,856.34132 389.15702,876.88109 377.76926,897.42086 C 366.38150,917.96062 357.40816,938.50039 346.02040,959.04016 C 321.27166,959.04016 296.86371,963.86901 272.11498,963.86901 C 247.36624,963.86901 233.94848,960.85098 209.19974,960.85098 C 184.45100,960.85098 154.26367,955.41852 129.51493,955.41852 C 104.76619,955.41852 73.784280,959.04016 49.035530,959.04016 C 60.423300,938.50039 69.061980,918.56423 80.449750,898.02446 C 91.837510,877.48469 106.64365,855.13411 118.03141,834.59434 C 129.41917,814.05457 141.67949,794.11841 153.06725,773.57864 C 164.45501,753.03887 174.30091,733.10271 185.68867,712.56294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5665"
d="M 219.70867,704.05794 C 244.45741,704.05794 271.88339,699.22909 296.63213,699.22909 C 321.38086,699.22909 343.45236,704.05794 368.20110,704.05794 C 392.94984,704.05794 416.35997,706.47236 441.10870,706.47236 C 465.85744,706.47236 491.94479,704.05794 516.69353,704.05794 C 505.30577,724.59771 497.47394,746.34469 486.08618,766.88446 C 474.69842,787.42423 459.75473,806.75678 448.36697,827.29655 C 436.97920,847.83632 423.17702,868.37609 411.78926,888.91586 C 400.40150,909.45562 391.42816,929.99539 380.04040,950.53516 C 355.29166,950.53516 330.88371,955.36401 306.13498,955.36401 C 281.38624,955.36401 267.96848,952.34598 243.21974,952.34598 C 218.47100,952.34598 188.28367,946.91352 163.53493,946.91352 C 138.78619,946.91352 107.80428,950.53516 83.055530,950.53516 C 94.443300,929.99539 103.08198,910.05923 114.46975,889.51946 C 125.85751,868.97969 140.66365,846.62911 152.05141,826.08934 C 163.43917,805.54957 175.69949,785.61341 187.08725,765.07364 C 198.47501,744.53387 208.32091,724.59771 219.70867,704.05794 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5667"
d="M 208.36867,701.22294 C 233.11741,701.22294 260.54339,696.39409 285.29213,696.39409 C 310.04086,696.39409 332.11236,701.22294 356.86110,701.22294 C 381.60984,701.22294 405.01997,703.63736 429.76870,703.63736 C 454.51744,703.63736 480.60479,701.22294 505.35353,701.22294 C 493.96577,721.76271 486.13394,743.50969 474.74618,764.04946 C 463.35842,784.58923 448.41473,803.92178 437.02697,824.46155 C 425.63920,845.00132 411.83702,865.54109 400.44926,886.08086 C 389.06150,906.62062 380.08816,927.16039 368.70040,947.70016 C 343.95166,947.70016 319.54371,952.52901 294.79498,952.52901 C 270.04624,952.52901 256.62848,949.51098 231.87974,949.51098 C 207.13100,949.51098 176.94367,944.07852 152.19493,944.07852 C 127.44619,944.07852 96.464280,947.70016 71.715530,947.70016 C 83.103300,927.16039 91.741980,907.22423 103.12975,886.68446 C 114.51751,866.14469 129.32365,843.79411 140.71141,823.25434 C 152.09917,802.71457 164.35949,782.77841 175.74725,762.23864 C 187.13501,741.69887 196.98091,721.76271 208.36867,701.22294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<path
sodipodi:nodetypes="cssscssscssscsssc"
id="path5669"
d="M 199.86367,695.55294 C 224.61241,695.55294 252.03839,690.72409 276.78713,690.72409 C 301.53586,690.72409 323.60736,695.55294 348.35610,695.55294 C 373.10484,695.55294 396.51497,697.96736 421.26370,697.96736 C 446.01244,697.96736 472.09979,695.55294 496.84853,695.55294 C 485.46077,716.09271 477.62894,737.83969 466.24118,758.37946 C 454.85342,778.91923 439.90973,798.25178 428.52197,818.79155 C 417.13420,839.33132 403.33202,859.87109 391.94426,880.41086 C 380.55650,900.95062 371.58316,921.49039 360.19540,942.03016 C 335.44666,942.03016 311.03871,946.85901 286.28998,946.85901 C 261.54124,946.85901 248.12348,943.84098 223.37474,943.84098 C 198.62600,943.84098 168.43867,938.40852 143.68993,938.40852 C 118.94119,938.40852 87.959280,942.03016 63.210530,942.03016 C 74.598300,921.49039 83.236980,901.55423 94.624750,881.01446 C 106.01251,860.47469 120.81865,838.12411 132.20641,817.58434 C 143.59417,797.04457 155.85449,777.10841 167.24225,756.56864 C 178.63001,736.02887 188.47591,716.09271 199.86367,695.55294 z "
style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.1999998;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" />
<text
transform="matrix(0.791463,0.000000,-0.700507,1.263483,0.000000,0.000000)"
id="text4009"
y="565.96759"
x="762.08246"
style="font-size:8.9472828;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:helvetica"
xml:space="preserve"><tspan
y="565.96759"
x="762.08246"
id="tspan4011"
sodipodi:role="line">During the course of our ongoing review of the Secure Flight program,</tspan><tspan
y="574.91487"
x="762.08246"
id="tspan4013"
sodipodi:role="line">we found that TSA did not fully disclose to the public its use of personal</tspan><tspan
y="583.86216"
x="762.08246"
id="tspan4015"
sodipodi:role="line">information in its fall 2004 privacy notices as required by the Privacy Act.</tspan><tspan
y="592.80944"
x="762.08246"
id="tspan4017"
sodipodi:role="line">In particular, the public was not made fully aware of, nor had the</tspan><tspan
y="601.75672"
x="762.08246"
id="tspan4019"
sodipodi:role="line">opportunity to comment on, TSA's use of personal information drawn</tspan><tspan
y="610.70400"
x="762.08246"
id="tspan4021"
sodipodi:role="line">from commercial sources to test aspects of the Secure Flight program.</tspan><tspan
y="619.65129"
x="762.08246"
id="tspan4023"
sodipodi:role="line">In September 2004 and November 2004, TSA issued privacy notices in</tspan><tspan
y="628.59857"
x="762.08246"
id="tspan4025"
sodipodi:role="line">the Federal Register that included descriptions of how such information</tspan><tspan
y="637.54585"
x="762.08246"
id="tspan4027"
sodipodi:role="line">would be used. However, these notices did not fully inform the public</tspan><tspan
y="646.49314"
x="762.08246"
id="tspan4029"
sodipodi:role="line">before testing began about the procedures that TSA and its contractors</tspan><tspan
y="655.44042"
x="762.08246"
id="tspan4031"
sodipodi:role="line">would follow for collecting, using, and storing commercial data. In</tspan><tspan
y="664.38770"
x="762.08246"
id="tspan4033"
sodipodi:role="line">addition, the scope of the data used during commercial data testing was</tspan><tspan
y="673.33498"
x="762.08246"
id="tspan4035"
sodipodi:role="line">not fully disclosed in the notices. Specifically, a TSA contractor, acting on</tspan><tspan
y="682.28227"
x="762.08246"
id="tspan4037"
sodipodi:role="line">behalf of the agency, collected more than 100 million commercial data</tspan><tspan
y="691.22955"
x="762.08246"
id="tspan4039"
sodipodi:role="line">records containing personal information such as name, date of birth, and</tspan><tspan
y="700.17683"
x="762.08246"
id="tspan4041"
sodipodi:role="line">telephone number without informing the public. As a result of TSA's</tspan><tspan
y="709.12411"
x="762.08246"
id="tspan4043"
sodipodi:role="line">actions, the public did not receive the full protections of the Privacy Act.</tspan><tspan
y="718.07140"
x="762.08246"
id="tspan4045"
sodipodi:role="line"></tspan><tspan
y="727.01868"
x="762.08246"
id="tspan4047"
sodipodi:role="line">Yours sincerely,</tspan><tspan
y="735.96596"
x="762.08246"
id="tspan4049"
sodipodi:role="line">Big Brother</tspan></text>
</g>
<g
inkscape:label="pingu"
id="layer3"
inkscape:groupmode="layer">
<g
transform="translate(728.3196,573.5281)"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="g1597">
<g
transform="translate(-149.5087,266.4950)"
id="g1614">
<path
style="fill:url(#linearGradient1625);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -446.16124,-46.244836 C -446.20695,-45.411526 -445.65323,-44.559286 -444.52615,-43.878606 L -379.43056,-4.5552905 C -378.08762,-3.7442605 -376.23442,-3.4256905 -374.43483,-3.5063605 L -370.03938,-83.618156 C -371.82299,-83.828856 -373.70370,-83.645796 -375.13012,-82.935256 L -444.27350,-48.483196 C -445.47066,-47.886866 -446.11552,-47.078106 -446.16124,-46.244836 z "
id="path2225" />
<path
style="fill:url(#linearGradient1627);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -135.16964,-42.752916 C -135.12393,-41.919606 -135.67765,-41.067376 -136.80473,-40.386686 L -201.90032,-1.0633705 C -203.24326,-0.25234047 -205.09646,0.066229532 -206.89605,-0.014450468 L -211.29150,-80.126246 C -209.50789,-80.336936 -207.62718,-80.153876 -206.20076,-79.443346 L -137.05738,-44.991276 C -135.86022,-44.394946 -135.21536,-43.586186 -135.16964,-42.752916 z "
id="path2221" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2209"
width="101.26261"
height="26.288469"
x="-280.94608"
y="20.480856"
rx="9.9999895"
ry="9.9999914" />
<rect
style="fill:#ffdf00;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="rect2207"
width="101.26261"
height="26.288469"
x="-414.28619"
y="18.837851"
rx="9.9999895"
ry="9.9999914" />
<path
style="fill:url(#linearGradient1629);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:2.0500004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -293.34930,-197.75054 C -361.16644,-197.75054 -416.19304,-152.97430 -416.19305,-97.821466 C -416.19305,-96.878446 -416.06877,-95.962666 -416.03680,-95.025896 C -416.06214,-94.788816 -416.19305,-94.582306 -416.19305,-94.339706 L -416.19305,-33.929886 C -416.19305,-33.848436 -416.13344,-33.782016 -416.13055,-33.701156 C -416.13419,-33.384516 -416.19305,-33.078156 -416.19305,-32.760826 C -416.19305,-7.8878505 -404.92099,14.808650 -386.41180,32.299810 L -200.25555,32.299810 C -181.73938,14.808650 -170.47430,-7.8878505 -170.47430,-32.760826 C -170.47430,-33.078156 -170.53316,-33.384516 -170.53680,-33.701156 C -170.53390,-33.782016 -170.47430,-33.848436 -170.47430,-33.929886 L -170.47430,-94.339706 C -170.47430,-94.582306 -170.60521,-94.788816 -170.63055,-95.025896 C -170.59858,-95.962666 -170.47430,-96.878446 -170.47430,-97.821466 C -170.47430,-152.97430 -225.53216,-197.75054 -293.34930,-197.75054 z "
id="path1291" />
<path
sodipodi:type="arc"
style="fill:url(#linearGradient1631);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.1583133;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2229"
sodipodi:cx="324.25897"
sodipodi:cy="320.00159"
sodipodi:rx="63.639610"
sodipodi:ry="24.243662"
d="M 387.89858 320.00159 A 63.639610 24.243662 0 1 1 260.61936,320.00159 A 63.639610 24.243662 0 1 1 387.89858 320.00159 z"
transform="matrix(1.000000,0.000000,0.000000,-0.813258,-616.1930,270.8666)" />
<path
style="fill:url(#linearGradient1633);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -282.63434,12.675950 C -283.46370,12.846940 -284.41323,12.622860 -285.28718,11.988910 L -335.77284,-24.623926 C -336.81415,-25.379296 -337.44688,-26.556776 -337.66950,-27.765996 L -257.93682,-44.204486 C -257.42419,-43.055046 -257.29073,-41.774646 -257.76379,-40.707056 L -280.70439,11.044070 C -281.10141,11.940060 -281.80501,12.504970 -282.63434,12.675950 z "
id="rect1306" />
<path
style="fill:url(#linearGradient1635);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500010;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
d="M -379.98683,-115.78681 C -383.85425,-116.18089 -387.78433,-114.72314 -389.86183,-111.79677 L -401.95558,-94.769176 C -404.72558,-90.867336 -403.09711,-85.915846 -398.29933,-83.663116 L -325.86183,-49.658766 C -323.92541,-48.749546 -321.79150,-48.552746 -319.73683,-48.743856 C -319.49836,-48.730136 -319.29224,-48.642196 -319.04933,-48.642196 L -266.83058,-48.642196 C -266.67382,-48.642196 -266.54803,-48.712696 -266.39308,-48.718436 C -264.58232,-48.666816 -262.74057,-48.864666 -261.04933,-49.658766 L -188.61183,-83.663116 C -183.81405,-85.915836 -182.18558,-90.867346 -184.95558,-94.769176 L -197.01808,-111.79677 C -199.78807,-115.69859 -205.90781,-117.02296 -210.70558,-114.77024 L -274.98683,-84.552616 L -311.89308,-84.552616 L -376.20558,-114.77024 C -377.40503,-115.33342 -378.69769,-115.65545 -379.98683,-115.78681 z "
id="rect1358" />
<path
sodipodi:type="arc"
style="fill:url(#radialGradient1637);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
id="path2141"
sodipodi:cx="248.49753"
sodipodi:cy="104.83910"
sodipodi:rx="80.812202"
sodipodi:ry="49.497475"
d="M 329.30973 104.83910 A 80.812202 49.497475 0 1 1 167.68533,104.83910 A 80.812202 49.497475 0 1 1 329.30973 104.83910 z"
transform="matrix(-1.000000,0.000000,0.000000,0.813258,-44.44673,-241.4060)" />
</g>
<g
transform="matrix(1.088602,0.000000,0.000000,1.000000,462.3482,-26.38205)"
id="g10415">
<path
transform="matrix(1.266752,-7.413036e-2,0.122222,1.100131,-647.3832,-694.3787)"
d="M -317.67350,694.29771 L -324.36542,701.53320 L -337.07307,700.41887 L -341.44565,698.30147 L -350.73223,698.54233 L -360.41523,687.86335 L -364.61192,680.83601 L -368.88689,675.42384 L -363.97391,663.36348 L -366.60316,656.46691 L -357.93762,647.17408 L -352.46882,643.03369 L -345.67341,638.20027 L -337.74925,638.66232 L -328.59317,641.43201 L -316.29355,645.06366 L -310.07236,646.02436 L -306.11097,658.83766 L -304.08475,664.79826 L -306.50731,670.37129 L -304.22322,680.80469 L -312.54349,687.25655 L -317.67350,694.29771 z "
inkscape:randomized="0.10000000"
inkscape:rounded="0.0000000"
inkscape:flatsided="true"
sodipodi:arg2="1.1392912"
sodipodi:arg1="0.99649150"
sodipodi:r2="31.103441"
sodipodi:r1="31.423286"
sodipodi:cy="669.04645"
sodipodi:cx="-335.20728"
sodipodi:sides="22"
id="path1647"
style="color:#000000;fill:url(#radialGradient10421);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
sodipodi:type="star" />
<path
sodipodi:nodetypes="ccccc"
id="rect1649"
d="M -999.96686,91.816256 L -969.64064,90.041565 L -950.05178,338.67429 L -964.41427,339.51479 L -999.96686,91.816256 z "
style="color:#000000;fill:url(#radialGradient10423);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
<path
transform="matrix(1.290561,-7.552361e-2,0.124519,1.120807,-636.6977,-711.8467)"
d="M -317.67350,694.29771 L -324.36542,701.53320 L -337.07307,700.41887 L -341.44565,698.30147 L -350.73223,698.54233 L -360.41523,687.86335 L -364.61192,680.83601 L -368.88689,675.42384 L -363.97391,663.36348 L -366.60316,656.46691 L -357.93762,647.17408 L -352.46882,643.03369 L -345.67341,638.20027 L -337.74925,638.66232 L -328.59317,641.43201 L -316.29355,645.06366 L -310.07236,646.02436 L -306.11097,658.83766 L -304.08475,664.79826 L -306.50731,670.37129 L -304.22322,680.80469 L -312.54349,687.25655 L -317.67350,694.29771 z "
inkscape:randomized="0.10000000"
inkscape:rounded="0.0000000"
inkscape:flatsided="true"
sodipodi:arg2="1.1392912"
sodipodi:arg1="0.99649150"
sodipodi:r2="31.103441"
sodipodi:r1="31.423286"
sodipodi:cy="669.04645"
sodipodi:cx="-335.20728"
sodipodi:sides="22"
id="path1655"
style="color:#000000;fill:url(#radialGradient10425);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible"
sodipodi:type="star" />
<path
sodipodi:nodetypes="ccccc"
id="path5145"
d="M -1005.2367,97.222957 L -974.91045,95.448266 L -955.62963,341.30820 L -969.99213,342.14869 L -1005.2367,97.222957 z "
style="color:#000000;fill:url(#radialGradient10427);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6e6e6e;stroke-width:0.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;marker:none;marker-start:none;marker-mid:none;marker-end:none;visibility:visible;display:inline;overflow:visible" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

24
pythonrewrite/doc/README Normal file
View file

@ -0,0 +1,24 @@
$Id$
CryptoBox version 0.3
1) Documentation
The documentation is available at https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser
2) Building a LiveCD
try: "scripts/cbox-build.sh release"
or look at the developer's documentation: https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxDev
3) Bug reporting
Use our issue tracker at https://systemausfall.org/trac/cryptobox/newticket
4) Licence
All scripts are GPL code (v2.0 or above).
The documentation is licenced under "Creative Commons 2.5 share-alike" (http://creativecommons.org/licenses/by-sa/2.5/).
5) Contributors
Clavdia Horvat, Tadej Brce & Dušan Rebolj - slovenian translation
6) Contact
email: cryptobox@systemausfall.org
The CryptoBox project is mainly driven by sense.lab (https://systemausfall.org/senselab).

View file

@ -0,0 +1,28 @@
Version 0.3 - 01/??/02006
* uses cryptsetup-luks instead of cryptsetup
* bugfix: add /dev/hdd to device scan
* support for usb, scsi and firewire cdrom drive
* seperated cryptobox package
Version 0.2.1 - 10/22/02005
* fixed a critical bug in the initialisation process
* default cipher changed to "aes-cbc-essiv:sha256" (more secure)
* the boot menue (grub) is now protected
* support for usb and firewire harddisks
* new kernel: Linux 2.6.12.6
* minor language improvements
Version 0.2 - 10/04/02005
* first public release
* fully configurable via web interface
* AES encryption via device-mapper
* Samba v3.0.14a-3
* Linux 2.6.11
* based on Debian GNU/Linux 3.1
* documentation languages:
* English
* German
* interface languages:
* English
* German
* Slovenian

View file

@ -0,0 +1,18 @@
Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, version 2.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License with
your Debian GNU/Linux system, in /usr/share/common-licenses/GPL, or with the
Debian GNU/Linux hello source package as the file COPYING. If not,
write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
Boston, MA 02110-1301 USA
$Id$

View file

@ -0,0 +1,132 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Neuigkeiten">Neuigkeiten</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#berblick">Überblick</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Spezifikation">Spezifikation</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Download">Download</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Frdichvonuns">Für dich von uns</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Vondirfrandere">Von dir für andere</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Entwicklung">Entwicklung</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Mitwirkende">Mitwirkende</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Rechtliches">Rechtliches</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=de#Kommentare">Kommentare</a></li>
</ol>
</div>
</p>
<h1 id="DieCryptoBox">Die CryptoBox</h1>
<p>
<i><a href="?action=doc&page=CryptoBox&weblang=de">English version</a></i>
</p>
<h2 id="Neuigkeiten">Neuigkeiten</h2>
<ul><li>[14.04.02006] Leider ist codecoop.org wahrscheinlich noch bis 17. April offline. Update: der Download funktioniert wieder, die aktuellste Version findest du <a class="ext-link" title="http://codecoop.org/projects/cryptobox/" href="http://codecoop.org/projects/cryptobox/">hier</a>.
</li><li>[07.03.02006] Wir strukturieren die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> gerade um. Zukünftig wird es das CryptoBox-Webfrontend als einzelnes Paket geben, so dass du es in ein bestehendes Linuxsystem installieren kannst. stay tuned..
</li><li>[30.10.02005] Die neue <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> Version 0.2.1 ist verfügbar: <a class="ext-link" title="http://codecoop.org/frs/?group_id=60" href="http://codecoop.org/frs/?group_id=60">codecoop.org</a>
<ul><li><a href="/trac/cryptobox/wiki/ReleaseNotes/0.2.1">Release-Informationen</a>
</li></ul></li><li>[21.10.02005] Wir haben einen Fehler im Release v0.2 entdeckt, der unter bestimmten Umständen die Initialisierung fehlschlagen lässt. Die Veröffentlichung der v0.2.1 behebt diesen Fehler. Wir raten sehr, nur noch v0.2.1 und nachfolgende Versionen zu benutzen und entschuldigen uns, euch Umstände bereitet zu haben.
</li><li>[04.10.02005] Das erste Release (v0.2) der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ist unter <a class="ext-link" title="http://codecoop.org/projects/cryptobox/" href="http://codecoop.org/projects/cryptobox/">Codecoop.org</a> verfügbar.
</li></ul><h2 id="berblick">Überblick</h2>
<p>
Die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ist eine <a class="ext-link" title="http://de.wikipedia.org/wiki/Live-cd" href="http://de.wikipedia.org/wiki/Live-cd">Live-CD</a> mit der sich jeder alte Rechner in Sekundenschnelle in einen verschlüsselnden Server umwandeln lässt. Damit kannst du sensible Daten speichern, ohne dass du etwas über <a class="ext-link" title="http://de.wikipedia.org/wiki/Kryptografie" href="http://de.wikipedia.org/wiki/Kryptografie">Kryptografie</a> wissen musst.
</p>
<p>
Damit sprechen wir hauptsächlich Menschen an, die ihre Daten (Ideen, Werke, Geheimnisse ...) auf einfachem Wege vor unbefugtem Zugriff sichern wollen. Kurzum: Privatsphäre, als grundlegendes Menschenrecht sichern!
</p>
<p>
Die Bedienung erfolgt vollständig per Webbrowser. Wirf einen Blick auf die <a href="?action=doc&page=ScreenShots&weblang=de">ScreenShots</a>.
</p>
<p>
Nutze das Web-Interface der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> in deiner Lieblingssprache:
</p>
<ul><li>deutsch
</li><li>englisch
</li><li>slowenisch
</li></ul><h2 id="Spezifikation">Spezifikation</h2>
<p>
einige eher technische Details:
</p>
<table class="wiki">
<tr><td>System</td><td>Debian GNU/Linux-basierte Live-CD
</td></tr><tr><td>benötigter Computer</td><td>&#34;ausrangierter&#34; PC (i386 ab p1 mind. 32MB RAM)
</td></tr><tr><td>unterstützte Clients</td><td><a class="ext-link" title="http://de.wikipedia.org/wiki/Liste_der_Betriebssysteme" href="http://de.wikipedia.org/wiki/Liste_der_Betriebssysteme">*nix; *bsd; Windows; Mac OS</a>
</td></tr><tr><td>interner Fileserver</td><td><a class="ext-link" title="http://samba.org" href="http://samba.org">samba</a> (Netzwerkfreigaben)
</td></tr><tr><td>Benutzerschnittstelle</td><td>per Browser bedienbares Web-Interface
</td></tr><tr><td>Verschlüsselung</td><td><a class="ext-link" title="http://de.wikipedia.org/wiki/Advanced_Encryption_Standard" href="http://de.wikipedia.org/wiki/Advanced_Encryption_Standard">AES</a> via device-mapper
</td></tr></table>
<h2 id="Download">Download</h2>
<p>
Wenn du die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> benutzen möchtest, kannst du ein aktuelles Image herunterladen und auf eine CD brennen.
</p>
<p>
Denk bitte daran, dass dies ein <a class="ext-link" title="http://de.wikipedia.org/wiki/Open_source" href="http://de.wikipedia.org/wiki/Open_source">Open Source</a> Projekt ist! Wir bitten dich deshalb, deine Erfahrungen (vor allem auch negative) im Umgang mit der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>, mit uns zu teilen. So können wir etwaige Fehler schneller beheben und letztlich der Community ein besseres &#34;Produkt&#34; bereitstellen.
</p>
<ul><li>Zur aktuellsten Version führt dich <a class="ext-link" title="http://codecoop.org/frs/?group_id=60" href="http://codecoop.org/frs/?group_id=60">dieser Link</a>
<ul><li>Vielen Dank an die Menschen der <a class="ext-link" title="http://codecoop.org" href="http://codecoop.org">Codecoop</a> für die Bereitstellung der Download-Möglichkeit!
</li></ul></li></ul><h2 id="Frdichvonuns">Für dich von uns</h2>
<p>
Wir wollen dir, soweit wir können, beim Umgang mit der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> helfen.
</p>
<ul><li>Im <a href="?action=doc&page=CryptoBoxUser&weblang=de">Nutzerhandbuch</a> findest du eine ausführliche Hilfe.
</li><li>Schreibe eine eMail an <i>cryptobox[at]systemausfall.org</i>, wenn du weitere Fragen hast.
</li></ul><h2 id="Vondirfrandere">Von dir für andere</h2>
<p>
Du bist nicht nur Konsument. Durch deine Taten kannst du anderen Menschen helfen.
</p>
<ul><li>Wir suchen noch Übersetzungen in andere Sprachen. Wenn du dich beteiligen möchtest, wirf einen Blick in die <a href="/trac/cryptobox/browser/trunk/cbox-tree.d/usr/share/cryptobox/lang">Übersetzungen-Sektion</a>. Dort gibt es eine &#34;README&#34; Datei in der genauere Beschreibungen stehen.
</li><li>Probleme und Anregungen kannst du in unserer <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/newticket" href="https://systemausfall.org/trac/cryptobox/newticket">Fehlerdatenbank</a> melden. (Dabei kannst du alle Eingabefelder, die dir unklar sind, getrost ignorieren.)
</li></ul><h2 id="Entwicklung">Entwicklung</h2>
<p>
Beteilige dich an der Entwicklung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> und werde reich und schön! ;) <br />
Nee im Ernst, wir freuen uns über jeden partizipierenden Menschen. Du wirst in einem entspannten Team reichlich Erfahrungen sammeln, eine nützliche Sache voranbringen und - wer weiß - vielleicht macht dich das auch schön. <br />
Trage dich einfach in die Entwickler-Mailingliste ein: <a class="ext-link" title="mailto:cryptobox-dev-subscribe@lists.systemausfall.org" href="mailto:cryptobox-dev-subscribe@lists.systemausfall.org">cryptobox-dev-subscribe@lists.systemausfall.org</a> und hab Spaß.
</p>
<p>
Das Mailinglisten-Archiv ist verfügbar unter <a class="ext-link" title="https://systemausfall.org/mail-archive" href="https://systemausfall.org/mail-archive">https://systemausfall.org/mail-archive</a>.
</p>
<p>
Die englischsprachige Entwickler-Doku findest du unter <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>. Dort wird detailiert beschrieben, wie du die Entwicklungsumgebung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> verwenden kannst.
</p>
<p>
Unsere Enwticklungspläne kannst du dir in der <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/roadmap" href="https://systemausfall.org/trac/cryptobox/roadmap">Roadmap</a> anschauen.
</p>
<h2 id="Mitwirkende">Mitwirkende</h2>
<p>
Vielen Dank an alle HelferInnen - ihr macht die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> erst richtig rund! :)
</p>
<p>
<ul><li>Clavdia Horvat, Tadej Brce &amp; Dušan Rebolj - slovenian translation
</li><li><a class="ext-link" title="http://codecoop.org" href="http://codecoop.org">http://codecoop.org</a> - webspace
</li></ul>
</p>
<h2 id="Rechtliches">Rechtliches</h2>
<ol><li>Alle Skripte unterliegen der <a class="ext-link" title="http://www.fsf.org/licensing/licenses/gpl.html" href="http://www.fsf.org/licensing/licenses/gpl.html">GPL</a> - sie sind also quasi vollständig frei.
</li><li>Die Dokumentation unterliegt einer <i><a class="ext-link" title="http://creativecommons.org/licenses/by-nc-sa/2.0/" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">Creative Commons</a></i>-Lizenz, damit wird die Möglichkeit der freien Verbreitung des gesammelten Wissens gewährleistet.
</li><li>Wir übernehmen keinerlei Haftung für eventuelle Folgen, die durch die Nutzung einer <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> entstehen könnten.
</li></ol><hr />
<h2 id="Kommentare">Kommentare</h2>
<h4 id="CommentbyanonymousonTueNov291054062005">Comment by anonymous on Tue Nov 29 10:54:06 2005</h4>
<p>
Ein feines Projekt!
</p>
<p>
Das würde ich gerne in meinen Server integrieren.
Ein Howto für Debian wäre nicht schlecht.
</p>
<blockquote>
<p>
den Rest der Diskussion findest du in Ticket <a href="/trac/cryptobox/ticket/84" title="NEW : debianize the web-interface">#84*</a>
</p>
</blockquote>
<p>
</div>
</div>

View file

@ -0,0 +1,94 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Preparationsfordevelopers">Preparations for developers</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Softwarerequirements">Software requirements</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Getthesource">Get the source</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Firstbuild">First build</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Finished">Finished</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Developmentworkflow">Development workflow</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Preparations">Preparations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Debuggingandmerging">Debugging and merging</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#SettingupanewRelease">Setting up a new Release</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#CustombuildsoftheCryptoBox">Custom builds of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Settings">Settings</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#CustomconfigurationoftheCryptoBox">Custom configuration of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Locations">Locations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Examples">Examples</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#ValidationoftheCryptoBox">Validation of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Validate">Validate</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Howtocreateatest">How to create a test</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#DetailsoftheCryptoBox">Details of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#thekernel">the kernel</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#alternativeLiveCDs">alternative LiveCDs</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#Knownproblems">Known problems</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox/de</a>, <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox/en</a>)
</p>
<hr />
<h1 id="Developmentdocumentation">Development documentation</h1>
<p>
The following pages are written for developers only. <br />
Users of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> should read <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser</a> instead.
</p>
<ul><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de">CryptoBoxDevPreparation</a>
</li><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de">CryptoBoxDevWorkFlow</a>
</li><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a>
</li><li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de">CryptoBoxDevCustomConfigure</a>
</li><li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de">CryptoBoxDevValidation</a>
</li><li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de">CryptoBoxDevBackground</a>
</li><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de">CryptoBoxDevKnownProblems</a>
</li></ul><h2 id="Source">Source</h2>
<p>
You may browse the <a href="/trac/cryptobox/browser/">source code</a>.
</p>
<h2 id="Contact">Contact</h2>
<p>
Join the mailing list: <a class="ext-link" title="mailto:cryptobox-dev-subscribe@lists.systemausfall.org" href="mailto:cryptobox-dev-subscribe@lists.systemausfall.org">cryptobox-dev-subscribe@lists.systemausfall.org</a>.
</p>
<h2 id="Bugreports">Bug reports</h2>
<p>
If you think you found a bug or you get an error message, please help us to fix the problem and file a ticket (a bug report). Follow these steps:
</p>
<ol><li>Have a look at <a href="/trac/cryptobox/report/1">Open bugs</a> that need to be fixed
</li><li>Create a <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/newticket" href="https://systemausfall.org/trac/cryptobox/newticket">New Ticket</a>
</li></ol></div>
</div>

View file

@ -0,0 +1,64 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#thekernel">the kernel</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#alternativeLiveCDs">alternative LiveCDs</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="DetailsoftheCryptoBox">Details of the CryptoBox</h1>
<h2 id="dfsbuild">dfsbuild</h2>
<p>
The base system of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> Live-CD is created by <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>.
</p>
<p>
It is recommended to use some kind of caching tool for the retrieval of the debian packages (e.g.: <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a>, <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy">apt-proxy</a> or <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx">approx</a>). This saves a lot of bandwidth and time.
</p>
<p>
The documentation for <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a> is sparse. But it is quite unlikely, that you will get in direct contact with it, as it is wrapped by <a href="/trac/cryptobox/browser/trunk/scripts/cbox-build.sh">cbox-build</a>. However the following links may help you for specific problems:
</p>
<ul><li><a class="ext-link" title="http://www.debian-administration.org/articles/125" href="http://www.debian-administration.org/articles/125">Debian Administration: Building Debian CD-ROMS Part 1 - dfsbuild</a>
</li><li><a class="ext-link" title="http://www.debian-administration.org/articles/149" href="http://www.debian-administration.org/articles/149">Debian Administration: Getting in deep with dfsbuild</a>
</li></ul><h2 id="thekernel">the kernel</h2>
<p>
The linux kernel for the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> is compiled statically. If you want to change it, you could follow this steps:
</p>
<ol><li>get the sources: <tt>apt-get install kernel-tree-2.6.11</tt> (or the version of your choice)
</li><li>copy the exisiting config file <i>kernel/config-2.6.11</i> as <i>.config</i> into your kernel source directory
</li><li>build the debian kernel package <tt>make-kpkg --revision=1.dfs --rootcmd=fakeroot kernel_image</tt>
</li><li>change the kernel in the <i>unpackdebs</i> setting in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/dfs-cbox.conf">dfs-cbox.conf</a> (see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a> for details)
</li></ol><p>
See <a title="" href="/trac/cryptobox/browser/trunk/hints/kernel-build.txt">source:trunk/hints/kernel-build.txt</a> for more details.
</p>
<h2 id="qemu">qemu</h2>
<p>
<a class="ext-link" title="http://fabrice.bellard.free.fr/qemu/" href="http://fabrice.bellard.free.fr/qemu/">Qemu</a> is a portable system emulator. It is a convenient tool to ease the development workflow, as you do not need to burn LiveCDs for testing.
</p>
<h2 id="alternativeLiveCDs">alternative LiveCDs</h2>
<p>
We tried some other LiveCDs before we decided to use <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>. The following pages describe their advantages and disadvantages as the base system for the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>:
</p>
<ul><li><a href="?action=doc&page=CryptoBoxKnoppixVerworfen&weblang=de">CryptoBoxKnoppixVerworfen</a> - Knoppix
</li><li><a href="?action=doc&page=CryptoBoxMorphixVerworfen&weblang=de">CryptoBoxMorphixVerworfen</a> - Morphix / IBuild
</li></ul><hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,85 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Settings">Settings</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#dfsbuildsettings">dfsbuild settings</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#CryptoBoxdevelopmentconfiguration">CryptoBox development configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#SSHconnection">SSH connection</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#qemunetworkconfiguration">qemu network configuration</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevBackground&weblang=de">CryptoBoxDevBackground</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevPreparation">CryptoBoxDevPreparation</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevWorkFlow">CryptoBoxDevWorkFlow</a>)
</p>
<hr />
<h1 id="CustombuildsoftheCryptoBox">Custom builds of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
The following sections are useful, if you want to change the default settings of your personal <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> development environment.
</p>
<p>
You should have completed the steps described in <a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de">CryptoBoxDevPreparation</a>.
</p>
<h2 id="Settings">Settings</h2>
<h3 id="dfsbuildsettings">dfsbuild settings</h3>
<p>
All settings for <i>dfsbuild</i> can be found in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/dfs-cbox.conf">etc-defaults.d/dfs-cbox.conf</a>.
</p>
<p>
If you want to change any of them, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/dfs-cbox.conf</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/dfs-cbox.conf</i> according to your needs
</li></ol><p>
This allows you to use your own (personal) settings, without interfering with files under version control.
</p>
<h3 id="CryptoBoxdevelopmentconfiguration">CryptoBox development configuration</h3>
<p>
Some settings regarding the building, configuring and validating of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> can be found in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/cbox-dev.conf">etc-defaults.d/cbox-dev.conf</a>.
</p>
<p>
If you want to change any of them, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/cbox-dev.conf</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/cbox-dev.conf</i> according to your needs
</li></ol><h3 id="SSHconnection">SSH connection</h3>
<p>
The file <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/ssh_config">ssh_config</a> is used to establish a connection to a running <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system.
</p>
<p>
It can be necessary to change these settings, if:
</p>
<ul><li>you do not want to use the default IP for the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>
</li><li>or the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> is not within your local network.
</li></ul><p>
If you want to change some settings, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/ssh_config</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/ssh_config</i> according to your needs
</li></ol><h3 id="qemunetworkconfiguration">qemu network configuration</h3>
<p>
The file <a href="/trac/cryptobox/browser/trunk/etc-defauolts.d/qemu-ifup">etc-defauolts.d/qemu-ifup</a> is used for the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> emulation with <i>qemu</i>. See <i>man qemu</i> for details.
</p>
<p>
If you want to change some settings, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/qemu-ifup</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/qemu-ifup</i> according to your needs
</li></ol><hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,60 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Locations">Locations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Examples">Examples</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="CustomconfigurationoftheCryptoBox">Custom configuration of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
You may change nearly every aspect of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> by using the custom configuration hook directory.
</p>
<p>
Any script inside of this directory will be executed after the default configuration procedure (see <a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de">CryptoBoxDevWorkFlow</a>).
</p>
<p>
The order of execution is defined by the names of the scripts (alphabetically).
</p>
<h2 id="Locations">Locations</h2>
<p>
Some example customization scripts can be found in <a href="/trac/cryptobox/browser/trunk/configure-examples.d">configure-examples.d/</a>.
</p>
<p>
You may put your scripts into <i>configure-local.d/</i>. They will be sourced by <a href="/trac/cryptobox/browser/trunk/scripts/cbox-build.sh">cbox-build.sh</a>.
</p>
<h2 id="Examples">Examples</h2>
<p>
The examples in <a href="/trac/cryptobox/browser/trunk/configure-examples.d">configure-examples.d/</a> can be copied to <i>configure-local.d/</i> and adjusted to your needs.
</p>
<table class="wiki">
<tr><td>set_default_ip</td><td>change the default IP address of the CryptoBox
</td></tr><tr><td>set_default_language</td><td>set the default language
</td></tr><tr><td>set_default_timeout</td><td>set the default idle time for automatic unmounting
</td></tr><tr><td>set_hostname</td><td>change the default hostname
</td></tr><tr><td>set_root_pw</td><td>change the password of root (only useful for a development <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>)
</td></tr><tr><td>import_authorized_keys</td><td>upload a <i>ssh</i> key for passwordless access to a development CryptoBox
</td></tr><tr><td>set_scan_devices</td><td>where to look for usable harddisks
</td></tr></table>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,46 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#qemu">qemu</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#interleavedfilesnotyetsupported">interleaved files not (yet) supported</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#smbdsegfault">smbd: segfault</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#dfsbuild">dfsbuild</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#cantcdto_builddirtargetvarlibaptlists">can't cd to _builddir/target/var/lib/apt/lists</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="Knownproblems">Known problems</h1>
<h2 id="qemu">qemu</h2>
<h3 id="interleavedfilesnotyetsupported">interleaved files not (yet) supported</h3>
<p>
You should update <i>qemu</i> to version 0.7 or higher.
</p>
<h3 id="smbdsegfault">smbd: segfault</h3>
<p>
This happens under certain circumstances. We do not know a solution for this problem.
</p>
<h2 id="dfsbuild">dfsbuild</h2>
<h3 id="cantcdto_builddirtargetvarlibaptlists">can't cd to _builddir/target/var/lib/apt/lists</h3>
<p>
Try to downgrade <a class="ext-link" title="http://packages.debian.org/stable/admin/cdebootstrap" href="http://packages.debian.org/stable/admin/cdebootstrap">cdebootstrap</a> to v0.3.4 (for debian: <i>apt-get install cdebootstrap/stable</i>). This problem occours at least up to v0.3.8 of <a class="ext-link" title="http://packages.debian.org/stable/admin/cdebootstrap" href="http://packages.debian.org/stable/admin/cdebootstrap">cdebootstrap</a>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,77 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Softwarerequirements">Software requirements</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Packages">Packages</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Kernel">Kernel</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Getthesource">Get the source</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Firstbuild">First build</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Finished">Finished</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevWorkFlow">CryptoBoxDevWorkFlow</a>)
</p>
<hr />
<h1 id="Preparationsfordevelopers">Preparations for developers</h1>
<h2 id="Softwarerequirements">Software requirements</h2>
<h3 id="Packages">Packages</h3>
<p>
We use <a class="ext-link" title="http://debian.org" href="http://debian.org">Debian</a> as our development environment. This was a natural choice, as the CryptoBox-LiveCD is also based on Debian. Other distributions should work too, of course - <i>your mileage may vary</i>.
</p>
<p>
required:
</p>
<ul><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=subversion" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=subversion">subversion</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=chroot" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=chroot">chroot</a>
</li></ul><p>
recommended:
</p>
<ul><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a>, <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy"> apt-proxy</a> or <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx">approx</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=qemu" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=qemu">qemu</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=curl" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=curl">curl</a>
</li></ul><h3 id="Kernel">Kernel</h3>
<p>
If you want to use <a class="ext-link" title="http://fabrice.bellard.free.fr/qemu/" href="http://fabrice.bellard.free.fr/qemu/">qemu</a> to test your <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> in a virtual environment, then you will need the <i>tun/tap</i> kernel feature.
</p>
<pre class="wiki">CONFIG_TUN=m
</pre><h2 id="Getthesource">Get the source</h2>
<p>
Download the latest release from our <a class="ext-link" title="http://subversion.tigris.org" href="http://subversion.tigris.org">subversion</a>-Repository:
</p>
<pre class="wiki">svn checkout https://svn.systemausfall.org/svn/cryptobox/trunk
</pre><h2 id="Firstbuild">First build</h2>
<p>
run <tt>scripts/cbox-build.sh release</tt> as <i>root</i> - hopefully, there should be no errors :)
</p>
<p>
Hint: This step will fail, if you did not install <i>apt-cacher</i>. See <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a> for details on how to change the build-configuration settings (in this case: <i>mirror</i> in <i>dfs-cbox.conf</i>).
</p>
<h2 id="Finished">Finished</h2>
<p>
Now you can start to pariticipate in the development of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> or simply customize your own CryptoBox-LiveCD.
</p>
<p>
See <a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de">CryptoBoxDevWorkFlow</a> for details of how to use the developer's tools of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>.
</p>
<p>
<a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a> shows some examples for local customizations of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,78 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Validate">Validate</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Howtocreateatest">How to create a test</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="ValidationoftheCryptoBox">Validation of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
The validation feature helps you to check the programming logic of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>. A lot of test cases are defined to verify as many functions of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> as possible.
</p>
<p>
The requests are processed with <a class="ext-link" title="http://curl.haxx.se/" href="http://curl.haxx.se/">curl</a>.
</p>
<p>
The received web page is saved to allow a later design review or css debugging.
</p>
<p>
The current state of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> is represented by ten single values (e.g.: <i>box is configured</i>, <i>IP of the box</i>, <i>current language setting</i>, ...), which are invisibly a part of each html page (as comments). The returned status of every request is compared to the predicted value of the test case.
</p>
<p>
Similar test cases are pooled into test groups (e.g.: <i>initialization</i>, <i>configuration</i> and <i>mounting</i>).
</p>
<h2 id="Validate">Validate</h2>
<p>
Run <i><a href="/trac/cryptobox/browser/trunk/scripts/validate.sh">scripts/validate.sh</a>]</i> to conduct all tests of all groups. See <i>scripts/validate.sh help</i> for other actions.
</p>
<p>
The results will be saved in <i>validation/report</i>.
</p>
<p>
In addition to every single retrieved page, a html page called <i>summary-?.html</i> is created, which contains the state checks of all tests in a group.
</p>
<h2 id="Howtocreateatest">How to create a test</h2>
<p>
All test cases can be found in <i>validation/test-cases</i>.
</p>
<p>
Every test consists of the following files:
</p>
<table class="wiki">
<tr><td>input.curl</td><td>the configuration file for the <i>curl</i> request
</td></tr><tr><td>output</td><td>the predicted state of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> after the call
</td></tr><tr><td>description</td><td>a short description of the test (will be used for the summary)
</td></tr><tr><td>delay</td><td>[optional] time to wait after this test
</td></tr></table>
<p>
Use the existing test cases as templates for new tests.
</p>
<p>
Read <a href="/trac/cryptobox/browser/trunk/validation/test-cases/README">validation/test-cases/README</a> for details.
</p>
<p>
Every logical path of the web interface CGI should be validated by a test case.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,156 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Preparations">Preparations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Buildthebasesystem">Build the base system</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Configurethebaseimage">Configure the base image</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Removedevelopmentfeatures">Remove development features</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Createanisoimage">Create an iso image</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#BurntheCD">Burn the CD</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Chrootquickampdirtytests">Chroot: quick &amp; dirty tests</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Qemunearlycompleteemulation">Qemu: nearly complete emulation</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Debuggingandmerging">Debugging and merging</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Developmentonarunningsystem">Development on a running system</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Copyingatestversion">Copying a testversion</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#SettingupanewRelease">Setting up a new Release</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=de#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=de">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=de">CryptoBoxDevCustomConfigure</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevPreparation">CryptoBoxDevPreparation</a>)
</p>
<hr />
<h1 id="Developmentworkflow">Development workflow</h1>
<h2 id="Preparations">Preparations</h2>
<p>
You should have completed the steps described in <a href="?action=doc&page=CryptoBoxDevPreparation&weblang=de">CryptoBoxDevPreparation</a>.
</p>
<h2 id="CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</h2>
<p>
The following steps can be executed in the order of their appearance.
</p>
<p>
Usually there is no need to repeat the whole process, after you changed some parts of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>. Especially the first step (building of the base system with <i>dfsbuild</i>) may usually be skipped.
</p>
<p>
Every step of the building process must be executed as <i>root</i>.
</p>
<h3 id="Buildthebasesystem">Build the base system</h3>
<p>
Run <i>scripts/cbox-build.sh dfsbuild</i> to create the base system for the LiveCD.
</p>
<p>
The result can be found in <i>_builddir/cd1/image</i>.
</p>
<p>
If you do not want to use the <i><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a> to save bandwidth and time, then you should modify the </i>mirror<i>-setting in <a href="/trac/cryptobox/browser/trunk/etc-default.d/dfs-cbox.conf">dfs-cbox.conf</a> (see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a> for details).</i>
</p>
<h3 id="Configurethebaseimage">Configure the base image</h3>
<p>
Run <i>scripts/cbox-build.sh config</i> to copy the CryptoBox-specific files to the base image.
</p>
<p>
TODO: link to cbox-build.sh-manpage
</p>
<h3 id="Removedevelopmentfeatures">Remove development features</h3>
<p>
The original base system, that was created by <i>dfsbuild</i> contains a lot packages and some scripts, that are only useful during development. You should remove them, as they cause severe security implications.
</p>
<p>
To reduce the CryptoBox-LiveCD to the usable minimum for operational use, you should run <i>scripts/cbox-build.sh harden</i>.
</p>
<h3 id="Createanisoimage">Create an iso image</h3>
<p>
To burn a CryptoBox-LiveCD, you need an bootable <i>iso9660</i>-image.
</p>
<p>
Create the <i>iso</i> image with <i>scripts/cbox-build.sh iso</i>. The resulting file can be found at <i>_builddir/cd1/cryptobox.iso</i>.
</p>
<h3 id="BurntheCD">Burn the CD</h3>
<p>
Do it manually:
</p>
<pre class="wiki">cdrecord -v dev=0,0,0 _builddir/cryptobox.iso
</pre><p>
(change the <i>dev</i> setting according to your setup).
</p>
<p>
Let the script do it for you: <i>scripts/cbox-build.sh burn</i> (maybe you have to change the <i>CDWRITER</i> setting in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/cbox-dev.conf">cbox-dev.conf</a> - see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=de">CryptoBoxDevCustomBuild</a>).
</p>
<p>
Of course, it is not wise to use CD-R media. CD-RW consume less resources.
</p>
<h2 id="TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</h2>
<p>
This section is only useful for developers, who want to improve or change the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system.
</p>
<h3 id="Chrootquickampdirtytests">Chroot: quick &amp; dirty tests</h3>
<p>
If you modified the <i>perl</i>- or <i>shell</i>-scripts of the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>, then you can check for syntax errors by running them in a <i>chroot</i> environment. Be careful: you have access to all ressources of your computer, while you are working within a <i>chroot</i> environment - so you can easily repartition your real disk ...
</p>
<p>
To start a <i>chroot</i> environment, you can execute <i>scripts/cbox-dev.sh chroot</i>.
</p>
<p>
For more intensive tests, you may use <i>qemu</i> (see below) or burn real LiveCDs - of course this would take much more time.
</p>
<h3 id="Qemunearlycompleteemulation">Qemu: nearly complete emulation</h3>
<p>
The processor emulator <a class="ext-link" title="http://fabrice.bellard.free.fr/qemu" href="http://fabrice.bellard.free.fr/qemu">qemu</a> allows you test the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> in a virtual environment, that is completely separated from your real computer's resources. It is the tool of choice, if you do nat have a real computer around for testing.
</p>
<p>
Beware - there are some problems, when using <i>qemu</i>:
</p>
<ul><li><i>smbd</i> does not start (segfault)
</li><li>???
</li></ul><p>
To start a <i>qemu</i> emulation of the <i>iso</i> image, you may type:
</p>
<pre class="wiki">scripts/cbox-dev.sh qemu
</pre><h2 id="Debuggingandmerging">Debugging and merging</h2>
<p>
This section is only useful for developers, who want to develop on a running <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system (emulated or real).
</p>
<p>
You may access the <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> directly or you can use <i>ssh</i> to open a remote session:
</p>
<pre class="wiki">./cbox-dev.sh ssh
</pre><h3 id="Developmentonarunningsystem">Development on a running system</h3>
<p>
When you run an emulation or test a real LiveCD, you may encounter problems and bugs. To test your fixes for these problems, it is convenient, to change the running test system. Afterwards you can merge these changes to your local development copy.
</p>
<p>
Type <i>scripts/cbox-dev.sh diff</i> to see the changes, you made on the running <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system.
</p>
<p>
Type <i>scripts/cbox-dev.sh merge</i> to merge these changes to your local working copy.
</p>
<h3 id="Copyingatestversion">Copying a testversion</h3>
<p>
Alternatively you may also upload a new version of your local working copy to the running <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system.
</p>
<p>
Type <i>scripts/cbox-dev.sh upload</i> - beware: all recent changes you made to the running <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> system, are lost.
</p>
<h2 id="SettingupanewRelease">Setting up a new Release</h2>
<p>
Once you finished your development, you surely want to make a new release. Please read the instructions in the <a href="/trac/cryptobox/browser/trunk/hints/release-policy.txt">releas-policy.txt</a> it will save you a lot of time! Then you basically just have to run <i>scripts/cbox-build.sh release</i> and get yourself a good coffee. After the command has finished you'll see the releasefiles in <i>_buildir</i>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,59 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Wiegehteslos">Wie geht es los</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#ErsteSchritte">Erste Schritte</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#DieKonfigurationdeinerCryptoBox">Die Konfiguration deiner CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#berblick">Überblick</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Vorwort">Vorwort</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Initialisierung">Initialisierung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Konfiguration">Konfiguration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#TglicheNutzung">Tägliche Nutzung</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AktivierendesverschlsseltenDateisystems">Aktivieren des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#ZugriffaufdieverschlsseltenDaten">Zugriff auf die verschlüsselten Daten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltendesverschlsseltenDateisystems">Abschalten des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltungderCryptoBox">Abschaltung der CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#NotfallAbschaltung">Notfall-Abschaltung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#FragenundAntworten">Fragen und Antworten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#Kommentare">Kommentare</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox/de</a>)
</p>
<hr />
<h1 id="Nutzerhandbuch">Nutzerhandbuch</h1>
<p>
Die folgenden Seiten beschreiben die Nutzung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>.
</p>
<p>
Die online-Version dieses Handbuchs ist ein Wiki. Das bedeutet, dass du diese Seiten verändern kannst. Falls du also Fragen oder Anregungen hast, schreibe bitte deine Anmerkungen in den Kommentar-Abschnitt am Ende der jeweiligen Seite. Die Entwickler werden deine Fragen beantworten und das Handbuch schnellstmöglich aktualisieren. Auf diese Art und Weise kannst du die Nutzbarkeit der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> für alle Nutzer verbessern!
</p>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de">CryptoBoxUserGettingStarted</a> -- die Vorbereitung der Hardware
</li><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de">CryptoBoxUserConfiguration</a> -- die Einrichtung deines neuen verschlüsselten Dateiservers
</li><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de">CryptoBoxUserDailyUse</a> -- die tägliche Nutzung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>
</li></ol><p>
Die online-Version dieses Handbuchs befindet sich unter <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/de" href="https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/de">https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/de</a>.
</p>
<hr />
<p>
</div>
</div>

View file

@ -0,0 +1,125 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Wiegehteslos">Wie geht es los</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#ErsteSchritte">Erste Schritte</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#DieKonfigurationdeinerCryptoBox">Die Konfiguration deiner CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#berblick">Überblick</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Vorwort">Vorwort</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Initialisierung">Initialisierung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Konfiguration">Konfiguration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#TglicheNutzung">Tägliche Nutzung</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AktivierendesverschlsseltenDateisystems">Aktivieren des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#ZugriffaufdieverschlsseltenDaten">Zugriff auf die verschlüsselten Daten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltendesverschlsseltenDateisystems">Abschalten des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltungderCryptoBox">Abschaltung der CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#NotfallAbschaltung">Notfall-Abschaltung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#FragenundAntworten">Fragen und Antworten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#Kommentare">Kommentare</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser/de</a>)
</p>
<hr />
<h1 id="DieKonfigurationdeinerCryptoBox">Die Konfiguration deiner CryptoBox</h1>
<h2 id="berblick">Überblick</h2>
<p>
Alle Funktionen der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> können durch das komfortable Web-Interface bedient werden. Zur Erst-Einrichtung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> folge einfach den folgenden Schritten.
</p>
<p>
Falls du in Eile bist, kannst du das <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Vorwort">Vorwort</a> überspringen.
</p>
<p>
Die <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Initialisierung">Initialisierung</a> erklärt die Einrichtung der Festplatte. Dieser Schritt ist nur bei der ersten Einrichtung oder nach einem Festplattenwechsel notwendig.
</p>
<p>
Im <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Konfiguration">Konfigurations</a>-Abschnitt werden die verfügbaren Einstellungen der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> beschrieben. Hier kannst du beispielsweise die Sprache des Web-Interfaces oder die Netzwerkadresse deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> einstellen.
</p>
<p>
Vergiss nicht, auch den <i><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#HinweiseFallstricke">Hinweise/Fallstricke</a></i>-Abschnitt zu lesen.
</p>
<h2 id="Vorwort">Vorwort</h2>
<p>
Du bist den Anweisungen aus <a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de">CryptoBoxUserGettingStarted</a> gefolgt und sitzt nun vor deinem Arbeits-Rechner. Nun kannst du in deinem Web-Browser das Web-Interface der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ansteuern: <i><a class="ext-link" title="https://192.168.0.23" href="https://192.168.0.23">https://192.168.0.23</a></i>.
</p>
<p>
Bevor du Daten auf deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> speichern kannst, muss die Festplatte mit einem verschlüsselten Dateisystem versehen werden. Das klingt kompliziert, ist jedoch mit einem Klick erledigt. :)
</p>
<h2 id="Initialisierung">Initialisierung</h2>
<p>
Klicke auf <i>Initialisierung</i> in der Menü-Zeile.
</p>
<p>
Jetzt wirst du zur Eingabe zweier Passworte aufgefordert (jeweils mit Wiederholung - zum Training deiner Tipp-Fertigkeiten ;)).
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/de_init.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/de_init.png?format=raw' alt="de_init.png" title="de_init.png" style="" /></a>
</p>
<ul><li>Das erste Passwort ist das <i>Administrations-Password</i>.
<ul><li>Es schützt die Konfiguration deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>.
</li><li>Dies ist notwendig, um zu verhindern, dass jemand unerlaubt die Daten auf deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> durch eine erneute Initialisierung löscht.
</li><li>Wahrscheinlich wirst du dieses Passwort nie wieder benötigen.
</li><li>Du kannst das Administrations-Passwort leer lassen - dies wird jedoch nicht empfohlen.
</li></ul></li><li>Das <i>Crypto-Passwort</i> ist wesentlich wichtiger, da es der einzige Schutz der Daten auf der verschlüsselten Festplatte ist. Wähle es mit Sorgfalt!
<ul><li>Du benötigst es, um auf deine Daten zuzugreifen.
</li><li>Ein sicheres Passwort sollte aus mindestens 15 Zeichen (einschließlich Ziffern und Sonderzeichen) bestehen. Die Sicherheit deiner Daten steht und fällt mit der Qualität dieses Passworts.
</li></ul></li><li>Um dich daran zu erinnern, dass dieser Schritt die Festplatte der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> komplett löschen wird, musst du den angezeigten roten Warnhinweis im letzten Formularfeld eingeben.
</li><li>Nun kannst du die Initialisierung durch einen Klick auf <i>Initialisiere die CryptoBox</i> abschließen.
</li></ul><p>
Das war es dann auch schon. Kryptographie war wohl nie einfacher zu verwenden, oder? ;)
</p>
<p>
Der Initialisierungsvorgang läuft nun im Hintergrund ab und wird nach wenigen Minuten (abhängig von der Größe deiner Festplatte) abgeschlossen.
</p>
<h2 id="Konfiguration">Konfiguration</h2>
<p>
Im Gegensatz zur Initialisierung, die nur einmal durchgeführt werden muss, kannst du die Konfiguration jederzeit deinen Wünschen anpassen. Dazu klickst du einfach auf <i>Konfiguration</i> in der Menü-Zeile des Web-Interfaces. Nun wird dir ein Formular mit vier Feldern präsentiert:
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/de_config.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/de_config.png?format=raw' alt="de_config.png" title="de_config.png" style="" /></a>
</p>
<ul><li>Falls du ein Administrator-Passwort während der <i>Initialisierung</i> festgelegt hast, musst du es nun eingeben. Andernfalls wird dieses Formularfeld nicht angezeigt.
</li><li>Du kannst die voreingestellte Netzwerk-Adresse (IP) verändern, falls sie nicht zu deiner Netzwerk-Struktur passt.
</li><li>Die Zeitabschaltung sorgt dafür, dass nach einer festgelegten Dauer von Inaktivität (in Minuten), das Crypto-Dateisystem deaktiviert wird (damit sind deine Daten wieder geschützt). Laufende Dateiübertragungen werden dadurch natürlich nicht gestört.
<ul><li>Es ist ratsam, eine kurze Abschalt-Zeit einzustellen (wenige Minuten).
</li><li>Der Wert <i>0</i> deaktiviert die automatische Abschaltung.
</li></ul></li><li>Die Sprache ist der Standard für alle Nutzer des CryptoBox-Web-Interfaces. Sie kann individuell durch die Sprach-Links am rechten oberen Bildschirmrand überschrieben werden.
</li></ul><p>
Speichere deine neuen Einstellungen durch einen Klick auf <i>Speichere Konfiguration</i>.
</p>
<p>
Das ist alles - deine <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ist jetzt bereit für die <a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de">tägliche Nutzung</a>!
</p>
<h2 id="HinweiseFallstricke">Hinweise / Fallstricke</h2>
<ul><li>Alle Daten auf der Festplatte in der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> werden bei der Initialisierung gelöscht.
</li><li>Die Passworte müssen jeweils zweimal eingegeben werden, um die Gefahr von Tipp-Fehlern zu vermindern.
</li><li>Das optionale Administrations-Passwort ist nur für die Konfiguration oder eine erneute Initialisierung erforderlich.
</li><li>Das Crypto-Passwort beschützt deine sensiblen Daten.
</li><li>Falls die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> nicht über die Adresse <i>192.168.0.23</i> erreichbar ist, musst du die Netzwerk-Adresse deines Arbeits-Rechners für die Dauer der Initialisierung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> vorübergehend ändern.
</li></ul><p>
<i>zurück zu <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser</a></i>
</p>
<hr />
<h2 id="Kommentare">Kommentare</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,139 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Wiegehteslos">Wie geht es los</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#ErsteSchritte">Erste Schritte</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#DieKonfigurationdeinerCryptoBox">Die Konfiguration deiner CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#berblick">Überblick</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Vorwort">Vorwort</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Initialisierung">Initialisierung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Konfiguration">Konfiguration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#TglicheNutzung">Tägliche Nutzung</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AktivierendesverschlsseltenDateisystems">Aktivieren des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#ZugriffaufdieverschlsseltenDaten">Zugriff auf die verschlüsselten Daten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltendesverschlsseltenDateisystems">Abschalten des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltungderCryptoBox">Abschaltung der CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#NotfallAbschaltung">Notfall-Abschaltung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#FragenundAntworten">Fragen und Antworten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#Kommentare">Kommentare</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser/de</a>, <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de">CryptoBoxUserConfiguration/de</a>)
</p>
<hr />
<h1 id="TglicheNutzung">Tägliche Nutzung</h1>
<h2 id="AktivierendesverschlsseltenDateisystems">Aktivieren des verschlüsselten Dateisystems</h2>
<p>
Du kannst dein verschlüsseltes Dateisystem mit folgenden Schritten aktivieren:
</p>
<ul><li>Wähle mit deinem Web-Browser die Adresse deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> an. Die Voreinstellung ist <a class="ext-link" title="https://192.168.0.23" href="https://192.168.0.23">https://192.168.0.23</a>.
</li><li>Klicke auf <i>Aktivieren der Crypto-Daten</i>. Daraufhin erscheint ein Formular zur Eingabe des Crypto-Passworts.
</li><li>Gib dein Crypto-Passwort ein und klicke auf die darunterliegende Schaltfläche.
</li></ul><p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/de_mount.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/de_mount.png?format=raw' alt="de_mount.png" title="de_mount.png" style="" /></a>
</p>
<p>
Nun ist das verschlüsselte Dateisystem verfügbar. Um es zu nutzen, suche in deiner Netzwerkumgebung nach der Netzwerk-Adresse deiner <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> (Voreinstellung: 192.168.0.23). Nun kannst du das Netzlaufwerk wie üblich verwenden.
</p>
<h2 id="ZugriffaufdieverschlsseltenDaten">Zugriff auf die verschlüsselten Daten</h2>
<h3 id="LinuxKommandozeile">Linux - Kommandozeile</h3>
<p>
Um als normaler Nutzer auf die Crypto-Partition zuzugreifen, solltest du folgende Zeile zur <i>/etc/fstab</i> hinzufügen:
</p>
<pre class="wiki">//192.168.0.23/public /mnt/ smbfs defaults,noexec,noauto,user,guest 0 0
</pre><p>
Nun kannst du die Crypto-Partition nach /mnt mounten:
</p>
<pre class="wiki">mount /mnt/
</pre><p>
bzw. unmounten:
</p>
<pre class="wiki">smbumount /mnt
</pre><h3 id="Windows">Windows</h3>
<p>
Starte den Windows Explorer und wähle im Menü unter <i>Extras</i> die Option <i>Netzlaufwerke verbinden</i> aus.
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/de_w98_network_drive.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/de_w98_network_drive.png?format=raw' alt="de_w98_network_drive.png" title="de_w98_network_drive.png" style="" /></a>
</p>
<p>
Trage unter <i>Pfad</i> die Adresse des Verzeichnisse der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ein, auf das du zugreifen willst (Standard: \\192.168.0.23\public). Soll die Verbindung beim jedem Start von Windows wiederhergestellt werden, aktiviere <i>Verbindung beim Start wiederherstellen</i>.
</p>
<p>
Nun kannst du auf das verschlüsselte Dateisystem wie jedes andere Laufwerk benutzen.
</p>
<h2 id="AbschaltendesverschlsseltenDateisystems">Abschalten des verschlüsselten Dateisystems</h2>
<p>
Du kannst das verschlüsselte Dateisystem abschalten, indem du in der Menü-Zeile des Web-Interfaces der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> auf <i>Deaktivierung der Crypto-Daten</i> klickst.
</p>
<p>
Deine Daten sind nun wieder vor jedem Zugriff geschützt.
</p>
<h2 id="AbschaltungderCryptoBox">Abschaltung der CryptoBox</h2>
<p>
Klicke auf <i>System</i> in der Menü-Zeile des Web-Interfaces. Nun kannst du zwischen <i>Abschaltung</i> und <i>Neustart</i> wählen. Die Abschaltung dauert einige Sekunden.
</p>
<p>
Falls dein CryptoBox-Rechner relativ neu ist (ungefähr ab Baujahr 02000), wird er sich nun selbständig abschalten. Andernfalls musst du dies per Hand tun.
</p>
<h2 id="NotfallAbschaltung">Notfall-Abschaltung</h2>
<p>
Falls du deine Daten wirklich schnell vor neugierigen Augen schützen musst, dann ziehe einfach den Stecker der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a>. Dies ist nicht besonders sauber und kann (in sehr seltenen Ausnahmefällen) geöffnete Dateien beschädigen. Es ist jedoch die schnellste Methode zur Sicherung deiner Daten vor unbefugtem Zugriff.
</p>
<p>
<i>zurück zu <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser</a></i>
</p>
<hr />
<h2 id="FragenundAntworten">Fragen und Antworten</h2>
<h3 id="WindowsNetzlaufwerkkannnichtverbundenwerden">Windows: Netzlaufwerk kann nicht verbunden werden</h3>
<p>
<a href='/trac/cryptobox/file/trunk/cbox-tree.d/var/www/cryptobox-img/screenshots/de_w98_not_logged_in.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/cbox-tree.d/var/www/cryptobox-img/screenshots/de_w98_not_logged_in.png?format=raw' alt="de_w98_not_logged_in.png" title="de_w98_not_logged_in.png" style="" /></a>
</p>
<p>
Erscheint diese Fehlermeldung, hast du dich beim Start von Windows nicht angemeldet bzw. das Anmeldefenster mit der Taste <i>Esc</i> (Escape) verschwinden lassen. Klicke auf <i>Start</i> und <i>Abmelden</i> und melde dich neu an - sobald das Anmeldefenster erscheint, klicke auf <i>OK</i>:
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/de_w98_login.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/de_w98_login.png?format=raw' alt="de_w98_login.png" title="de_w98_login.png" style="" /></a>
</p>
<h3 id="Linuxonlyrootcanunmount192168023public">Linux: only root can unmount //192.168.0.23/public</h3>
<p>
Das Unmounten der Crypto-Partition mit <i>umount</i> funktioniert nicht.
</p>
<p>
<strong>Lösung:</strong> Verwende stattdessen:
</p>
<pre class="wiki">smbumount /mnt
</pre><h3 id="LinuxOperationnotpermittedsmbmntfailed1">Linux: Operation not permitted / smbmnt failed: 1</h3>
<p>
Der Versuch die Partition als normaler Nutzer zu mounten schlägt fehl:
</p>
<pre class="wiki">cannot mount on /mnt/: Operation not permitted
smbmnt failed: 1
</pre><p>
<strong>Lösung:</strong> Das Mount-Verzeichnis muss dem selben Nutzer gehören, der den mount-Befehl ausführt (bspw. phil):
</p>
<pre class="wiki">chown phil. /mnt
</pre><hr />
<h2 id="Kommentare">Kommentare</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,76 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Wiegehteslos">Wie geht es los</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#ErsteSchritte">Erste Schritte</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#DieKonfigurationdeinerCryptoBox">Die Konfiguration deiner CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#berblick">Überblick</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Vorwort">Vorwort</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Initialisierung">Initialisierung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Konfiguration">Konfiguration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#HinweiseFallstricke">Hinweise / Fallstricke</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de#Kommentare">Kommentare</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#TglicheNutzung">Tägliche Nutzung</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AktivierendesverschlsseltenDateisystems">Aktivieren des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#ZugriffaufdieverschlsseltenDaten">Zugriff auf die verschlüsselten Daten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltendesverschlsseltenDateisystems">Abschalten des verschlüsselten Dateisystems</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#AbschaltungderCryptoBox">Abschaltung der CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#NotfallAbschaltung">Notfall-Abschaltung</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#FragenundAntworten">Fragen und Antworten</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=de#Kommentare">Kommentare</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=de">CryptoBoxUser/de</a>, <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de">CryptoBoxUserConfiguration/de</a>, <a href="/trac/cryptobox/wiki/CryptoBoxUserDailyUse/de">CryptoBoxUserDailyUse/de</a>)
</p>
<hr />
<h1 id="Wiegehteslos">Wie geht es los</h1>
<h2 id="ErsteSchritte">Erste Schritte</h2>
<p>
Die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> ist schnell aufgebaut:
</p>
<ol><li>Du brauchst einen alten Computer (mindestens 100MHZ, 48MB RAM) (Faustregel: nach 1996 gekauft). Dazu eine passende Netzwerkkarte, ein CD-ROM Laufwerk und eine riesige Festplatte.
<ul><li>Die Festplatte muss nicht riesig sein, je nachdem was du speichern willst, reicht auch 'ne kleine ;)
</li><li>Du brauchst keinen Monitor, keine Tastatur und keine Maus, um die <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> zu benutzen (bzw. nur für die Erst-Einrichtung).
</li><li>Du kannst natürlich einen schnelleren Rechner verwenden - der unbedeutende Performance-Zuwachs wird jedoch wohl nicht durch den erhöhten Energiebedarf gerechtfertigt.
</li></ul></li><li>Lade die aktuellste Version der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> als iso-image herunter und brenne dieses auf einen CD-Rohling.
<ul><li><a class="ext-link" title="http://codecoop.org/projects/cryptobox/" href="http://codecoop.org/projects/cryptobox/">http://codecoop.org/projects/cryptobox/</a>
</li></ul></li><li>Konfiguriere den PC, so dass er vom CD Laufwerk bootet. Dazu solltest du im BIOS als &#34;boot device&#34; &#34;CD-ROM&#34; einstellen.
</li><li>Pack die frisch gebrannte <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> CD ins Laufwerk und starte den Computer.
</li></ol><p>
Wenn der Computer jetzt von der CD startet, hast du alle Anforderungen erfüllt.
</p>
<p>
Du kannst nun zu deinem Arbeits-Rechner in demselben Netzwerk gehen und &#34;<a class="ext-link" title="https://192.168.0.23&#34;" href="https://192.168.0.23&#34;">https://192.168.0.23&#34;</a> ansurfen. Dort sollte die CryptoBox-Konfigurationsseite erscheinen. Ist doch kinderleicht, oder?
</p>
<p>
Die weiteren Schritte werden unter <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=de">CryptoBoxUserConfiguration</a> beschrieben.
</p>
<h2 id="HinweiseFallstricke">Hinweise / Fallstricke</h2>
<ul><li>Eventuell musst du für die Einrichtung der <a href="?action=doc&page=CryptoBox&weblang=de">CryptoBox</a> kurzzeitig deine Netzwerkaddresse (IP) ändern. Falls du nicht weißt, wie und warum, dann frage jemanden um Rat ... (wahrscheinlich klappt es aber ohne Änderungen)
</li><li>Falls du eine neue Festplatte kaufen willst, beachte, dass alte PCs nicht mit modernen Festplattengrößen klarkommen.
</li><li>Einige alte PCs können nicht vom CD-ROM-Laufwerk booten.
</li><li>Falls dir der Begriff &#34;BIOS&#34; nichts sagt, bitte Menschen um Hilfe, bevor du was veränderst ;)
</li><li>Vergiss nicht, den CryptoBox-Rechner ans Netzwerk anzuschliessen!
</li><li>Du brauchst einen Monitor und eine Tastatur für die Konfiguration des BIOS.
</li></ul><hr />
<h2 id="Kommentare">Kommentare</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,154 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBox&weblang=en#News">News</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Specifications">Specifications</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Download">Download</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Whatweshare">What we share</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Whatyoumightshare">What you might share</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Development">Development</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Acknowledgements">Acknowledgements</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Legalstuff">Legal stuff</a></li>
<li><a href="?action=doc&page=CryptoBox&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<h1 id="TheCryptoBox">The CryptoBox</h1>
<p>
<i><a href="?action=doc&page=CryptoBox&weblang=en">deutschsprachige Version</a></i>
</p>
<h2 id="News">News</h2>
<ul><li>[14/04/02006] Sorry folks, codecoop.org is temporarly down. Update: it's up and running again. Fetch the latest version <a class="ext-link" title="http://codecoop.org/projects/cryptobox/" href="http://codecoop.org/projects/cryptobox/">here</a>
</li><li>[07/03/02006] We're currently splitting the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> up in the CryptoBox-Webfrontend and the Cryptobox-CD. This will let you use the CryptoBox-Webfrontend in your favourite Linux Installation. stay tuned..
</li><li>[30/10/02005] The new <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> version 0.2.1 is available at <a class="ext-link" title="http://codecoop.org/frs/?group_id=60" href="http://codecoop.org/frs/?group_id=60">codecoop.org</a>!
<ul><li><a href="/trac/cryptobox/wiki/ReleaseNotes/0.2.1">release notes</a>
</li></ul></li><li>[21/10/02005] We discovered a bug in v0.2, which in some cases prevents the intialization of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. Please wait for v0.2.1 to obtain a working release. We recommend not using v0.2 and are very sorry for the inconvenience.
</li><li>[04/10/02005] The first release (v0.2) of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is available at <a class="ext-link" title="https://codecoop.org/projects/cryptobox/" href="https://codecoop.org/projects/cryptobox/">Codecoop.org</a>.
</li></ul><h2 id="Overview">Overview</h2>
<p>
The <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is a Debian/Linux based <a class="ext-link" title="http://en.wikipedia.org/wiki/Live_CD" href="http://en.wikipedia.org/wiki/Live_CD">live-cd</a>. This CD boots up, starting a secure fileserver. Even non-technical users are able to store their data on its encrypted harddisk. There is no special knowledge about <a class="ext-link" title="http://en.wikipedia.org/wiki/Cryptography" href="http://en.wikipedia.org/wiki/Cryptography">cryptography</a> or servers required at all.<br />
The <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is fully controllable via your web browser. Have a look at the <a href="?action=doc&page=ScreenShots&weblang=en">ScreenShots</a>.
</p>
<p>
Use the web interface of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> in your favourite language:
</p>
<ul><li>English
</li><li>German
</li><li>Slovenian
</li></ul><h2 id="Specifications">Specifications</h2>
<p>
some rather technical details:
</p>
<table class="wiki">
<tr><td>system</td><td>Debian/Linux based Live-CD
</td></tr><tr><td>needed hardware</td><td> &#34;outdated&#34; PC (i386 p1-100 32MB RAM minimum)
</td></tr><tr><td>supported clients</td><td><a class="ext-link" title="http://en.wikipedia.org/wiki/Operating_System" href="http://en.wikipedia.org/wiki/Operating_System">*nix; *bsd; Windows; Mac OS</a>
</td></tr><tr><td>fileserver</td><td><a class="ext-link" title="http://samba.org" href="http://samba.org">samba</a> (network shares)
</td></tr><tr><td>userinterface</td><td>fully remote controlled via webbrowser
</td></tr><tr><td>encryption</td><td><a class="ext-link" title="http://en.wikipedia.org/wiki/Advanced_Encryption_Standard" href="http://en.wikipedia.org/wiki/Advanced_Encryption_Standard">AES</a> via device-mapper
</td></tr></table>
<h2 id="Download">Download</h2>
<ul><li>Get the newest version by following <a class="ext-link" title="http://codecoop.org/frs/?group_id=60" href="http://codecoop.org/frs/?group_id=60">this link</a>.
<ul><li><i>kindly provided by <a class="ext-link" title="http://codecoop.org" href="http://codecoop.org">http://codecoop.org</a></i>
</li></ul></li></ul><h2 id="Whatweshare">What we share</h2>
<p>
We do our best to help you using the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<ul><li>You can find detailed information in the <a href="?action=doc&page=CryptoBoxUser&weblang=en">user manual</a>.
</li><li>For further questions write an email to <i>cryptobox[at]systemausfall.org</i>
</li></ul><h2 id="Whatyoumightshare">What you might share</h2>
<p>
You are not just a consumer. You can help others with your knowledge.
</p>
<ul><li>We are looking for more translations. Take a look at the &#34;README&#34;-file in our <a href="/trac/cryptobox/browser/trunk/cbox-tree.d/usr/share/cryptobox/lang/">language section</a>. There you can find further instructions if you'd like to contribute.
</li><li>Open up a <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/newticket" href="https://systemausfall.org/trac/cryptobox/newticket">ticket</a> for your feature requests and bugs.
</li></ul><h2 id="Development">Development</h2>
<ul><li>Take a look at the developer's documentation at <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a> for more information.
</li><li>The <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/roadmap" href="https://systemausfall.org/trac/cryptobox/roadmap">development roadmap</a> shows our goals for the next release and the estimated release date.
</li><li>Join the development mailing list: <i><a class="ext-link" title="mailto:cryptobox-dev-subscribe@lists.systemausfall.org" href="mailto:cryptobox-dev-subscribe@lists.systemausfall.org">cryptobox-dev-subscribe@lists.systemausfall.org</a></i>.
</li><li>Browse the mailing list archive: <a class="ext-link" title="https://systemausfall.org/mail-archive" href="https://systemausfall.org/mail-archive">https://systemausfall.org/mail-archive</a>
</li></ul><h2 id="Acknowledgements">Acknowledgements</h2>
<p>
<ul><li>Clavdia Horvat, Tadej Brce &amp; Dušan Rebolj - slovenian translation
</li><li><a class="ext-link" title="http://codecoop.org" href="http://codecoop.org">http://codecoop.org</a> - webspace
</li></ul>
</p>
<h2 id="Legalstuff">Legal stuff</h2>
<ol><li>All scripts are <a class="ext-link" title="http://www.fsf.org/licensing/licenses/gpl.html" href="http://www.fsf.org/licensing/licenses/gpl.html">GPL licensed</a>
</li><li>The documentation is licensed under a <a class="ext-link" title="http://creativecommons.org/licenses/by-nc-sa/2.0/" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">Creative Commons License</a><i></i>
</li><li>We do not take any warranty for the functionality or usability of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</li></ol><hr />
<h2 id="Comments">Comments</h2>
<h4 id="CommentbyanonymousonTueNov291354272005">Comment by anonymous on Tue Nov 29 13:54:27 2005</h4>
<p>
Let me just make sure I understand correctly.
The protected data is encrypted on the Cryptobox drive,
but is available in clear on the network, between the cryptobox and the user. Right?
</p>
<blockquote>
<p>
see the whole discussion at ticket <a href="/trac/cryptobox/ticket/83" title="NEW : implement DAV interface">#83*</a>
</p>
</blockquote>
<h4 id="CommentbyanonymousonSunDec40651502005">Comment by anonymous on Sun Dec 4 06:51:50 2005</h4>
<p>
<i>Do you have suggestions on how to secure the file transfer in a platform independent way?</i>
</p>
<p>
Perhaps the simplest thing to do would be make (one version of) <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> be a https (secure web server).
(Instead of, or in addition to, being a samba file server).
</p>
<p>
Web browsers use encryption when they upload a file to a &#34;https:// &#34; web server, right?
(using a &lt;FORM&gt; with &lt;INPUT type=&#34;file&#34; name=&#34;name_of_files&#34;&gt;, see
<a class="ext-link" title="http://www.w3.org/TR/html4/interact/forms.html#h-17.4" href="http://www.w3.org/TR/html4/interact/forms.html#h-17.4">http://www.w3.org/TR/html4/interact/forms.html#h-17.4</a>
).
Then one (static) web page on that server asks users to upload files using such a form.
</p>
<p>
All https servers use encryption when they download files, right?
So another (dynamic) web page on that server lists all of that user's files. Each one is hotlinked, so the user simply clicks on it to download / view it.
</p>
<p>
Perhaps a bit kludgy, but I think even unexperienced users could figure it out.
</p>
<blockquote>
<p>
see the whole discussion at ticket <a href="/trac/cryptobox/ticket/83" title="NEW : implement DAV interface">#83*</a>, too
</p>
</blockquote>
<h4 id="CommentbyanonymousonSatDec101215552005">Comment by anonymous on Sat Dec 10 12:15:55 2005</h4>
<p>
What happens when there are multiple hard drives in the machine? Will it erase all? Does it combine them to one share with something like raid or lvm, or will they be mountable as different shares? I'd try myself, but I currently only have one free hdd to test with.
btw, wonderful tool, keep up the good work, and tell us if you need more testers :-)
</p>
<blockquote>
<p>
If there are multiple harddisks available, then it will use only the first. <br />
We are going to implement an interface to manually partition harddisks and choose more than one of them for (seperated) encrypted containers. This feature should be available in the next release (v0.3).<br />
If you would like to help us (e.g. by testing), then you could subscribe to the mailing list.
</p>
</blockquote>
<h4 id="CommentbyanonymousonSatMay61041212006">Comment by anonymous on Sat May 6 10:41:21 2006</h4>
<p>
Could the hdd be external usb or firewire?
</p>
<blockquote>
<p>
yes - version 2.1 should support usb drives (firewire will work with 3.0)
</p>
</blockquote>
<p>
</div>
</div>

View file

@ -0,0 +1,94 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Preparationsfordevelopers">Preparations for developers</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Softwarerequirements">Software requirements</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Getthesource">Get the source</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Firstbuild">First build</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Finished">Finished</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Developmentworkflow">Development workflow</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Preparations">Preparations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Debuggingandmerging">Debugging and merging</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#SettingupanewRelease">Setting up a new Release</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#CustombuildsoftheCryptoBox">Custom builds of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Settings">Settings</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#CustomconfigurationoftheCryptoBox">Custom configuration of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Locations">Locations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Examples">Examples</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#ValidationoftheCryptoBox">Validation of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Validate">Validate</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Howtocreateatest">How to create a test</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#DetailsoftheCryptoBox">Details of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#thekernel">the kernel</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#alternativeLiveCDs">alternative LiveCDs</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#Knownproblems">Known problems</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox/de</a>, <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox/en</a>)
</p>
<hr />
<h1 id="Developmentdocumentation">Development documentation</h1>
<p>
The following pages are written for developers only. <br />
Users of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> should read <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser</a> instead.
</p>
<ul><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en">CryptoBoxDevPreparation</a>
</li><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en">CryptoBoxDevWorkFlow</a>
</li><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a>
</li><li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en">CryptoBoxDevCustomConfigure</a>
</li><li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en">CryptoBoxDevValidation</a>
</li><li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en">CryptoBoxDevBackground</a>
</li><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en">CryptoBoxDevKnownProblems</a>
</li></ul><h2 id="Source">Source</h2>
<p>
You may browse the <a href="/trac/cryptobox/browser/">source code</a>.
</p>
<h2 id="Contact">Contact</h2>
<p>
Join the mailing list: <a class="ext-link" title="mailto:cryptobox-dev-subscribe@lists.systemausfall.org" href="mailto:cryptobox-dev-subscribe@lists.systemausfall.org">cryptobox-dev-subscribe@lists.systemausfall.org</a>.
</p>
<h2 id="Bugreports">Bug reports</h2>
<p>
If you think you found a bug or you get an error message, please help us to fix the problem and file a ticket (a bug report). Follow these steps:
</p>
<ol><li>Have a look at <a href="/trac/cryptobox/report/1">Open bugs</a> that need to be fixed
</li><li>Create a <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/newticket" href="https://systemausfall.org/trac/cryptobox/newticket">New Ticket</a>
</li></ol></div>
</div>

View file

@ -0,0 +1,64 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#dfsbuild">dfsbuild</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#thekernel">the kernel</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#qemu">qemu</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#alternativeLiveCDs">alternative LiveCDs</a></li>
<li><a href="?action=doc&page=CryptoBoxDevBackground&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="DetailsoftheCryptoBox">Details of the CryptoBox</h1>
<h2 id="dfsbuild">dfsbuild</h2>
<p>
The base system of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> Live-CD is created by <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>.
</p>
<p>
It is recommended to use some kind of caching tool for the retrieval of the debian packages (e.g.: <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a>, <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy">apt-proxy</a> or <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx">approx</a>). This saves a lot of bandwidth and time.
</p>
<p>
The documentation for <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a> is sparse. But it is quite unlikely, that you will get in direct contact with it, as it is wrapped by <a href="/trac/cryptobox/browser/trunk/scripts/cbox-build.sh">cbox-build</a>. However the following links may help you for specific problems:
</p>
<ul><li><a class="ext-link" title="http://www.debian-administration.org/articles/125" href="http://www.debian-administration.org/articles/125">Debian Administration: Building Debian CD-ROMS Part 1 - dfsbuild</a>
</li><li><a class="ext-link" title="http://www.debian-administration.org/articles/149" href="http://www.debian-administration.org/articles/149">Debian Administration: Getting in deep with dfsbuild</a>
</li></ul><h2 id="thekernel">the kernel</h2>
<p>
The linux kernel for the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is compiled statically. If you want to change it, you could follow this steps:
</p>
<ol><li>get the sources: <tt>apt-get install kernel-tree-2.6.11</tt> (or the version of your choice)
</li><li>copy the exisiting config file <i>kernel/config-2.6.11</i> as <i>.config</i> into your kernel source directory
</li><li>build the debian kernel package <tt>make-kpkg --revision=1.dfs --rootcmd=fakeroot kernel_image</tt>
</li><li>change the kernel in the <i>unpackdebs</i> setting in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/dfs-cbox.conf">dfs-cbox.conf</a> (see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a> for details)
</li></ol><p>
See <a title="" href="/trac/cryptobox/browser/trunk/hints/kernel-build.txt">source:trunk/hints/kernel-build.txt</a> for more details.
</p>
<h2 id="qemu">qemu</h2>
<p>
<a class="ext-link" title="http://fabrice.bellard.free.fr/qemu/" href="http://fabrice.bellard.free.fr/qemu/">Qemu</a> is a portable system emulator. It is a convenient tool to ease the development workflow, as you do not need to burn LiveCDs for testing.
</p>
<h2 id="alternativeLiveCDs">alternative LiveCDs</h2>
<p>
We tried some other LiveCDs before we decided to use <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>. The following pages describe their advantages and disadvantages as the base system for the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>:
</p>
<ul><li><a href="?action=doc&page=CryptoBoxKnoppixVerworfen&weblang=en">CryptoBoxKnoppixVerworfen</a> - Knoppix
</li><li><a href="?action=doc&page=CryptoBoxMorphixVerworfen&weblang=en">CryptoBoxMorphixVerworfen</a> - Morphix / IBuild
</li></ul><hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,85 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Settings">Settings</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#dfsbuildsettings">dfsbuild settings</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#CryptoBoxdevelopmentconfiguration">CryptoBox development configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#SSHconnection">SSH connection</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#qemunetworkconfiguration">qemu network configuration</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevBackground&weblang=en">CryptoBoxDevBackground</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevPreparation">CryptoBoxDevPreparation</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevWorkFlow">CryptoBoxDevWorkFlow</a>)
</p>
<hr />
<h1 id="CustombuildsoftheCryptoBox">Custom builds of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
The following sections are useful, if you want to change the default settings of your personal <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> development environment.
</p>
<p>
You should have completed the steps described in <a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en">CryptoBoxDevPreparation</a>.
</p>
<h2 id="Settings">Settings</h2>
<h3 id="dfsbuildsettings">dfsbuild settings</h3>
<p>
All settings for <i>dfsbuild</i> can be found in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/dfs-cbox.conf">etc-defaults.d/dfs-cbox.conf</a>.
</p>
<p>
If you want to change any of them, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/dfs-cbox.conf</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/dfs-cbox.conf</i> according to your needs
</li></ol><p>
This allows you to use your own (personal) settings, without interfering with files under version control.
</p>
<h3 id="CryptoBoxdevelopmentconfiguration">CryptoBox development configuration</h3>
<p>
Some settings regarding the building, configuring and validating of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> can be found in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/cbox-dev.conf">etc-defaults.d/cbox-dev.conf</a>.
</p>
<p>
If you want to change any of them, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/cbox-dev.conf</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/cbox-dev.conf</i> according to your needs
</li></ol><h3 id="SSHconnection">SSH connection</h3>
<p>
The file <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/ssh_config">ssh_config</a> is used to establish a connection to a running <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system.
</p>
<p>
It can be necessary to change these settings, if:
</p>
<ul><li>you do not want to use the default IP for the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>
</li><li>or the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is not within your local network.
</li></ul><p>
If you want to change some settings, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/ssh_config</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/ssh_config</i> according to your needs
</li></ol><h3 id="qemunetworkconfiguration">qemu network configuration</h3>
<p>
The file <a href="/trac/cryptobox/browser/trunk/etc-defauolts.d/qemu-ifup">etc-defauolts.d/qemu-ifup</a> is used for the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> emulation with <i>qemu</i>. See <i>man qemu</i> for details.
</p>
<p>
If you want to change some settings, you should do the following:
</p>
<ol><li>copy <i>etc-defaults.d/qemu-ifup</i> file to <i>etc-local.d/</i>
</li><li>change <i>etc-local.d/qemu-ifup</i> according to your needs
</li></ol><hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,60 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Locations">Locations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Examples">Examples</a></li>
<li><a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="CustomconfigurationoftheCryptoBox">Custom configuration of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
You may change nearly every aspect of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> by using the custom configuration hook directory.
</p>
<p>
Any script inside of this directory will be executed after the default configuration procedure (see <a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en">CryptoBoxDevWorkFlow</a>).
</p>
<p>
The order of execution is defined by the names of the scripts (alphabetically).
</p>
<h2 id="Locations">Locations</h2>
<p>
Some example customization scripts can be found in <a href="/trac/cryptobox/browser/trunk/configure-examples.d">configure-examples.d/</a>.
</p>
<p>
You may put your scripts into <i>configure-local.d/</i>. They will be sourced by <a href="/trac/cryptobox/browser/trunk/scripts/cbox-build.sh">cbox-build.sh</a>.
</p>
<h2 id="Examples">Examples</h2>
<p>
The examples in <a href="/trac/cryptobox/browser/trunk/configure-examples.d">configure-examples.d/</a> can be copied to <i>configure-local.d/</i> and adjusted to your needs.
</p>
<table class="wiki">
<tr><td>set_default_ip</td><td>change the default IP address of the CryptoBox
</td></tr><tr><td>set_default_language</td><td>set the default language
</td></tr><tr><td>set_default_timeout</td><td>set the default idle time for automatic unmounting
</td></tr><tr><td>set_hostname</td><td>change the default hostname
</td></tr><tr><td>set_root_pw</td><td>change the password of root (only useful for a development <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>)
</td></tr><tr><td>import_authorized_keys</td><td>upload a <i>ssh</i> key for passwordless access to a development CryptoBox
</td></tr><tr><td>set_scan_devices</td><td>where to look for usable harddisks
</td></tr></table>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,46 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#qemu">qemu</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#interleavedfilesnotyetsupported">interleaved files not (yet) supported</a></li>
<li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#smbdsegfault">smbd: segfault</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#dfsbuild">dfsbuild</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#cantcdto_builddirtargetvarlibaptlists">can't cd to _builddir/target/var/lib/apt/lists</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevKnownProblems&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="Knownproblems">Known problems</h1>
<h2 id="qemu">qemu</h2>
<h3 id="interleavedfilesnotyetsupported">interleaved files not (yet) supported</h3>
<p>
You should update <i>qemu</i> to version 0.7 or higher.
</p>
<h3 id="smbdsegfault">smbd: segfault</h3>
<p>
This happens under certain circumstances. We do not know a solution for this problem.
</p>
<h2 id="dfsbuild">dfsbuild</h2>
<h3 id="cantcdto_builddirtargetvarlibaptlists">can't cd to _builddir/target/var/lib/apt/lists</h3>
<p>
Try to downgrade <a class="ext-link" title="http://packages.debian.org/stable/admin/cdebootstrap" href="http://packages.debian.org/stable/admin/cdebootstrap">cdebootstrap</a> to v0.3.4 (for debian: <i>apt-get install cdebootstrap/stable</i>). This problem occours at least up to v0.3.8 of <a class="ext-link" title="http://packages.debian.org/stable/admin/cdebootstrap" href="http://packages.debian.org/stable/admin/cdebootstrap">cdebootstrap</a>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,77 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Softwarerequirements">Software requirements</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Packages">Packages</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Kernel">Kernel</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Getthesource">Get the source</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Firstbuild">First build</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Finished">Finished</a></li>
<li><a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevWorkFlow">CryptoBoxDevWorkFlow</a>)
</p>
<hr />
<h1 id="Preparationsfordevelopers">Preparations for developers</h1>
<h2 id="Softwarerequirements">Software requirements</h2>
<h3 id="Packages">Packages</h3>
<p>
We use <a class="ext-link" title="http://debian.org" href="http://debian.org">Debian</a> as our development environment. This was a natural choice, as the CryptoBox-LiveCD is also based on Debian. Other distributions should work too, of course - <i>your mileage may vary</i>.
</p>
<p>
required:
</p>
<ul><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=dfsbuild">dfsbuild</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=subversion" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=subversion">subversion</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=chroot" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=chroot">chroot</a>
</li></ul><p>
recommended:
</p>
<ul><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a>, <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-proxy"> apt-proxy</a> or <a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=approx">approx</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=qemu" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=qemu">qemu</a>
</li><li><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=curl" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=curl">curl</a>
</li></ul><h3 id="Kernel">Kernel</h3>
<p>
If you want to use <a class="ext-link" title="http://fabrice.bellard.free.fr/qemu/" href="http://fabrice.bellard.free.fr/qemu/">qemu</a> to test your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> in a virtual environment, then you will need the <i>tun/tap</i> kernel feature.
</p>
<pre class="wiki">CONFIG_TUN=m
</pre><h2 id="Getthesource">Get the source</h2>
<p>
Download the latest release from our <a class="ext-link" title="http://subversion.tigris.org" href="http://subversion.tigris.org">subversion</a>-Repository:
</p>
<pre class="wiki">svn checkout https://svn.systemausfall.org/svn/cryptobox/trunk
</pre><h2 id="Firstbuild">First build</h2>
<p>
run <tt>scripts/cbox-build.sh release</tt> as <i>root</i> - hopefully, there should be no errors :)
</p>
<p>
Hint: This step will fail, if you did not install <i>apt-cacher</i>. See <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a> for details on how to change the build-configuration settings (in this case: <i>mirror</i> in <i>dfs-cbox.conf</i>).
</p>
<h2 id="Finished">Finished</h2>
<p>
Now you can start to pariticipate in the development of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> or simply customize your own CryptoBox-LiveCD.
</p>
<p>
See <a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en">CryptoBoxDevWorkFlow</a> for details of how to use the developer's tools of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<p>
<a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a> shows some examples for local customizations of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,78 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Validate">Validate</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Howtocreateatest">How to create a test</a></li>
<li><a href="?action=doc&page=CryptoBoxDevValidation&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="ValidationoftheCryptoBox">Validation of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
The validation feature helps you to check the programming logic of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. A lot of test cases are defined to verify as many functions of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> as possible.
</p>
<p>
The requests are processed with <a class="ext-link" title="http://curl.haxx.se/" href="http://curl.haxx.se/">curl</a>.
</p>
<p>
The received web page is saved to allow a later design review or css debugging.
</p>
<p>
The current state of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is represented by ten single values (e.g.: <i>box is configured</i>, <i>IP of the box</i>, <i>current language setting</i>, ...), which are invisibly a part of each html page (as comments). The returned status of every request is compared to the predicted value of the test case.
</p>
<p>
Similar test cases are pooled into test groups (e.g.: <i>initialization</i>, <i>configuration</i> and <i>mounting</i>).
</p>
<h2 id="Validate">Validate</h2>
<p>
Run <i><a href="/trac/cryptobox/browser/trunk/scripts/validate.sh">scripts/validate.sh</a>]</i> to conduct all tests of all groups. See <i>scripts/validate.sh help</i> for other actions.
</p>
<p>
The results will be saved in <i>validation/report</i>.
</p>
<p>
In addition to every single retrieved page, a html page called <i>summary-?.html</i> is created, which contains the state checks of all tests in a group.
</p>
<h2 id="Howtocreateatest">How to create a test</h2>
<p>
All test cases can be found in <i>validation/test-cases</i>.
</p>
<p>
Every test consists of the following files:
</p>
<table class="wiki">
<tr><td>input.curl</td><td>the configuration file for the <i>curl</i> request
</td></tr><tr><td>output</td><td>the predicted state of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> after the call
</td></tr><tr><td>description</td><td>a short description of the test (will be used for the summary)
</td></tr><tr><td>delay</td><td>[optional] time to wait after this test
</td></tr></table>
<p>
Use the existing test cases as templates for new tests.
</p>
<p>
Read <a href="/trac/cryptobox/browser/trunk/validation/test-cases/README">validation/test-cases/README</a> for details.
</p>
<p>
Every logical path of the web interface CGI should be validated by a test case.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,156 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Preparations">Preparations</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Buildthebasesystem">Build the base system</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Configurethebaseimage">Configure the base image</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Removedevelopmentfeatures">Remove development features</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Createanisoimage">Create an iso image</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#BurntheCD">Burn the CD</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Chrootquickampdirtytests">Chroot: quick &amp; dirty tests</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Qemunearlycompleteemulation">Qemu: nearly complete emulation</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Debuggingandmerging">Debugging and merging</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Developmentonarunningsystem">Development on a running system</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Copyingatestversion">Copying a testversion</a></li>
</ol><li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#SettingupanewRelease">Setting up a new Release</a></li>
<li><a href="?action=doc&page=CryptoBoxDevWorkFlow&weblang=en#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxDev&weblang=en">CryptoBoxDev</a>, <a href="?action=doc&page=CryptoBoxDevCustomConfigure&weblang=en">CryptoBoxDevCustomConfigure</a>, <a href="/trac/cryptobox/wiki/CryptoBoxDevPreparation">CryptoBoxDevPreparation</a>)
</p>
<hr />
<h1 id="Developmentworkflow">Development workflow</h1>
<h2 id="Preparations">Preparations</h2>
<p>
You should have completed the steps described in <a href="?action=doc&page=CryptoBoxDevPreparation&weblang=en">CryptoBoxDevPreparation</a>.
</p>
<h2 id="CreateaCryptoBoxLiveCD">Create a CryptoBox-LiveCD</h2>
<p>
The following steps can be executed in the order of their appearance.
</p>
<p>
Usually there is no need to repeat the whole process, after you changed some parts of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. Especially the first step (building of the base system with <i>dfsbuild</i>) may usually be skipped.
</p>
<p>
Every step of the building process must be executed as <i>root</i>.
</p>
<h3 id="Buildthebasesystem">Build the base system</h3>
<p>
Run <i>scripts/cbox-build.sh dfsbuild</i> to create the base system for the LiveCD.
</p>
<p>
The result can be found in <i>_builddir/cd1/image</i>.
</p>
<p>
If you do not want to use the <i><a class="ext-link" title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher" href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&amp;subword=0&amp;version=all&amp;release=all&amp;keywords=apt-cacher">apt-cacher</a> to save bandwidth and time, then you should modify the </i>mirror<i>-setting in <a href="/trac/cryptobox/browser/trunk/etc-default.d/dfs-cbox.conf">dfs-cbox.conf</a> (see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a> for details).</i>
</p>
<h3 id="Configurethebaseimage">Configure the base image</h3>
<p>
Run <i>scripts/cbox-build.sh config</i> to copy the CryptoBox-specific files to the base image.
</p>
<p>
TODO: link to cbox-build.sh-manpage
</p>
<h3 id="Removedevelopmentfeatures">Remove development features</h3>
<p>
The original base system, that was created by <i>dfsbuild</i> contains a lot packages and some scripts, that are only useful during development. You should remove them, as they cause severe security implications.
</p>
<p>
To reduce the CryptoBox-LiveCD to the usable minimum for operational use, you should run <i>scripts/cbox-build.sh harden</i>.
</p>
<h3 id="Createanisoimage">Create an iso image</h3>
<p>
To burn a CryptoBox-LiveCD, you need an bootable <i>iso9660</i>-image.
</p>
<p>
Create the <i>iso</i> image with <i>scripts/cbox-build.sh iso</i>. The resulting file can be found at <i>_builddir/cd1/cryptobox.iso</i>.
</p>
<h3 id="BurntheCD">Burn the CD</h3>
<p>
Do it manually:
</p>
<pre class="wiki">cdrecord -v dev=0,0,0 _builddir/cryptobox.iso
</pre><p>
(change the <i>dev</i> setting according to your setup).
</p>
<p>
Let the script do it for you: <i>scripts/cbox-build.sh burn</i> (maybe you have to change the <i>CDWRITER</i> setting in <a href="/trac/cryptobox/browser/trunk/etc-defaults.d/cbox-dev.conf">cbox-dev.conf</a> - see <a href="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a>).
</p>
<p>
Of course, it is not wise to use CD-R media. CD-RW consume less resources.
</p>
<h2 id="TesttheCryptoBoxLiveCD">Test the CryptoBox-LiveCD</h2>
<p>
This section is only useful for developers, who want to improve or change the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system.
</p>
<h3 id="Chrootquickampdirtytests">Chroot: quick &amp; dirty tests</h3>
<p>
If you modified the <i>perl</i>- or <i>shell</i>-scripts of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>, then you can check for syntax errors by running them in a <i>chroot</i> environment. Be careful: you have access to all ressources of your computer, while you are working within a <i>chroot</i> environment - so you can easily repartition your real disk ...
</p>
<p>
To start a <i>chroot</i> environment, you can execute <i>scripts/cbox-dev.sh chroot</i>.
</p>
<p>
For more intensive tests, you may use <i>qemu</i> (see below) or burn real LiveCDs - of course this would take much more time.
</p>
<h3 id="Qemunearlycompleteemulation">Qemu: nearly complete emulation</h3>
<p>
The processor emulator <a class="ext-link" title="http://fabrice.bellard.free.fr/qemu" href="http://fabrice.bellard.free.fr/qemu">qemu</a> allows you test the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> in a virtual environment, that is completely separated from your real computer's resources. It is the tool of choice, if you do nat have a real computer around for testing.
</p>
<p>
Beware - there are some problems, when using <i>qemu</i>:
</p>
<ul><li><i>smbd</i> does not start (segfault)
</li><li>???
</li></ul><p>
To start a <i>qemu</i> emulation of the <i>iso</i> image, you may type:
</p>
<pre class="wiki">scripts/cbox-dev.sh qemu
</pre><h2 id="Debuggingandmerging">Debugging and merging</h2>
<p>
This section is only useful for developers, who want to develop on a running <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system (emulated or real).
</p>
<p>
You may access the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> directly or you can use <i>ssh</i> to open a remote session:
</p>
<pre class="wiki">./cbox-dev.sh ssh
</pre><h3 id="Developmentonarunningsystem">Development on a running system</h3>
<p>
When you run an emulation or test a real LiveCD, you may encounter problems and bugs. To test your fixes for these problems, it is convenient, to change the running test system. Afterwards you can merge these changes to your local development copy.
</p>
<p>
Type <i>scripts/cbox-dev.sh diff</i> to see the changes, you made on the running <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system.
</p>
<p>
Type <i>scripts/cbox-dev.sh merge</i> to merge these changes to your local working copy.
</p>
<h3 id="Copyingatestversion">Copying a testversion</h3>
<p>
Alternatively you may also upload a new version of your local working copy to the running <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system.
</p>
<p>
Type <i>scripts/cbox-dev.sh upload</i> - beware: all recent changes you made to the running <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system, are lost.
</p>
<h2 id="SettingupanewRelease">Setting up a new Release</h2>
<p>
Once you finished your development, you surely want to make a new release. Please read the instructions in the <a href="/trac/cryptobox/browser/trunk/hints/release-policy.txt">releas-policy.txt</a> it will save you a lot of time! Then you basically just have to run <i>scripts/cbox-build.sh release</i> and get yourself a good coffee. After the command has finished you'll see the releasefiles in <i>_buildir</i>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,60 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Gettingstarted">Getting started</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#FirstSteps">First Steps</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#ConfigurationofyourCryptoBox">Configuration of your CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Foreword">Foreword</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Initialization">Initialization</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Configuration">Configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#DailyuseoftheCryptoBox">Daily use of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Activateyourencryptedfilesystem">Activate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Useyourencrypteddata">Use your encrypted data</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Deactivateyourencryptedfilesystem">Deactivate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#ShutdownyourCryptoBox">Shut down your CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Incaseofemergency">In case of emergency</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#QuestionsandAnswers">Questions and Answers</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox/en</a>, <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser</a>)
</p>
<hr />
<h1 id="UserDocumentation">User Documentation</h1>
<p>
The following pages describe the easy use of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<p>
The online version of this manual is a wiki, which means you can edit the pages. So if you have a question or you perceive a description as unclear, please post it on the bottom of the relevant page. The developers will answer your questions and update the manual as fast as possible. This way you can contribute in making the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> a better experience for everyone!
</p>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en">CryptoBoxUserGettingStarted</a> -- first steps to get the Cryptobox up and running
</li><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en">CryptoBoxUserConfiguration</a> -- configure the details of your new encrypted fileserver
</li><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en">CryptoBoxUserDailyUse</a> -- daily use of your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>
</li></ol><p>
The online version of this manual can be found at <a class="ext-link" title="https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/en" href="https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/en">https://systemausfall.org/trac/cryptobox/wiki/CryptoBoxUser/en</a>.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,125 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Gettingstarted">Getting started</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#FirstSteps">First Steps</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#ConfigurationofyourCryptoBox">Configuration of your CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Foreword">Foreword</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Initialization">Initialization</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Configuration">Configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#DailyuseoftheCryptoBox">Daily use of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Activateyourencryptedfilesystem">Activate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Useyourencrypteddata">Use your encrypted data</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Deactivateyourencryptedfilesystem">Deactivate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#ShutdownyourCryptoBox">Shut down your CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Incaseofemergency">In case of emergency</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#QuestionsandAnswers">Questions and Answers</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser/en</a>, <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en">CryptoBoxUserConfiguration</a>)
</p>
<hr />
<h1 id="ConfigurationofyourCryptoBox">Configuration of your CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
All parts of administration of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> are done through a comfortable web interface. If this is the first time you use the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>, just follow the steps below.
</p>
<p>
You can safely ignore the <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Foreword">Foreword</a> if you are in a hurry.
</p>
<p>
<a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Initialization">Initialization</a> describes the process of integrating a new harddisk. You usually have to perform this steps if you start with a new <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> or after replacing the harddisk.
</p>
<p>
In the <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Configuration">Configuration</a> section, you can configure the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> according to your personal needs, e.g. change your desired language for the web interface or change the IP address of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<p>
Do not forget to read the <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#HintsCaveats">Hints / Caveats</a> section too.
</p>
<h2 id="Foreword">Foreword</h2>
<p>
Okay, you finished the <a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en">CryptoBoxUserGettingStarted</a> and are now sitting in front of a computer that is connected via network with your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. You point a browser to &#34;<a class="ext-link" title="https://192.168.0.23&#34;" href="https://192.168.0.23&#34;">https://192.168.0.23&#34;</a> and the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> interface appears.
</p>
<p>
Before you can save data on your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>, its harddisk has to be formatted with a cryptographic filesystem. Sounds complicated but don't be scared - it's really a &#34;one click&#34; thing. :)
</p>
<h2 id="Initialization">Initialization</h2>
<p>
Click on <i>Initialize CryptoBox</i> in the title bar.
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/en_init.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/en_init.png?format=raw' alt="en_init.png" title="en_init.png" style="" /></a>
</p>
<p>
Now you are promted to enter two passwords twice (because we want to train your typing skills ;).
</p>
<ul><li>The first password is the <i>administration password</i>.
<ul><li>It is used to protect the configuration of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</li><li>This is necessary to make sure, that no one without your permission can destroy your data by re-initializing the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</li><li>Chances are good, that you will only need it once.
</li><li>You may leave it empty, but this is not recommended.
</li></ul></li><li>The <i>crypto password</i> is the more important password, protecting the data on your harddisk. Choose it wisely!
<ul><li>You will need it, whenever you want to access your encrypted data.
</li><li>For a secure password consider a length of at least 15 characters including digits and special characters. The security of your encrypted data stands or falls with a good password.
</li></ul></li><li>To avoid mistakes and to remind you on what you're going to do, you have to type the displayed red phrase into the last field.
</li><li>Now you can complete the initialization by clicking on the <i>Initialize !CryptoBox</i> button at the bottom of the form.
</li></ul><p>
That's all. Wasn't it a real &#34;one click&#34; thing? Cryptography has never been easier to use. ;)
</p>
<p>
The initialization process takes place in the background and will be completed after a few minutes, depending on your harddisk's size.
</p>
<h2 id="Configuration">Configuration</h2>
<p>
While the initialization is usually done only once, the configuration can be changed at any time you want. You can reach it by clicking at <i>Configuration</i> in the menu bar of the website. Now you see a form with four fields:
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/en_config.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/en_config.png?format=raw' alt="en_config.png" title="en_config.png" style="" /></a>
</p>
<ul><li>If you defined an administration password during <i>Initialization</i>, you have to enter it first. Otherwise this field does not appear.
</li><li>If the default network address (IP) doesn't fit into your network infrastructure, you can change it in the second field.
</li><li>The timeout defines the amount of time (in minutes) after that the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> deactivates the access to the encrypted data. If you e.g. copy a file on the box, it starts counting at zero, so down-/uploads won't be interrupted.
</li><li>It's good choice to enter a small number (few minutes).
</li><li>A timeout of <i>0</i> turns off the automatic deactivation - this is not recommended.
</li><li>At <i>language preferences</i> you can select the default language for the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> interface.
</li></ul><p>
Complete your changes by clicking on <i>Save configuration</i>.
</p>
<p>
That's all - your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is now ready for <a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en">daily use</a>!
</p>
<h2 id="HintsCaveats">Hints / Caveats</h2>
<ul><li>All data on the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> harddisk will be erased during <i>Initialization</i>.
</li><li>All passwords have to be typed twice to reduce the chance of a typo.
</li><li>The optional adminstration password is necessary for configuration only.
</li><li>The crypto password protects your beloved data.
</li><li>If the cryptobox is not reachable by browsing to 192.168.0.23, you may have to adjust the network settings of your computer for initialization of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</li></ul><p>
<i>back to <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser</a></i>
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,138 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Gettingstarted">Getting started</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#FirstSteps">First Steps</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#ConfigurationofyourCryptoBox">Configuration of your CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Foreword">Foreword</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Initialization">Initialization</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Configuration">Configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#DailyuseoftheCryptoBox">Daily use of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Activateyourencryptedfilesystem">Activate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Useyourencrypteddata">Use your encrypted data</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Deactivateyourencryptedfilesystem">Deactivate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#ShutdownyourCryptoBox">Shut down your CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Incaseofemergency">In case of emergency</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#QuestionsandAnswers">Questions and Answers</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser/en</a>, <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en">CryptoBoxUserConfiguration/en</a>, <a href="/trac/cryptobox/wiki/CryptoBoxUserDailyUse">CryptoBoxUserDailyUse</a>)
</p>
<hr />
<h1 id="DailyuseoftheCryptoBox">Daily use of the CryptoBox</h1>
<h2 id="Activateyourencryptedfilesystem">Activate your encrypted filesystem</h2>
<p>
You can activate your encrypted filesystem by doing following these steps:
</p>
<ul><li>Point your web browser at the address of your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. The default is <a class="ext-link" title="https://192.168.0.23" href="https://192.168.0.23">https://192.168.0.23</a>.
</li><li>Click on <i>Activation of encrypted data</i>. A new page asking for your crypto password appears.
</li><li>Enter your crypto password and click on the button below labeled <i>activate encrypted filesystem</i>.
</li></ul><p>
Now the filesystem is accessible. To use it, search for a computer in your network neighborhood. When asked for the name, enter the above IP address (default: 192.168.0.23). Now you can use it like any other network resource.
</p>
<h2 id="Useyourencrypteddata">Use your encrypted data</h2>
<h3 id="Linuxcommandline">Linux - command line</h3>
<p>
To use the encrypted data partition with regular user rights add the line below to your <i>/etc/fstab</i>:
</p>
<pre class="wiki">//192.168.0.23/public /mnt/ smbfs defaults,noexec,noauto,user,guest 0 0
</pre><p>
Now you can mount the encrypted data partition to /mnt:
</p>
<pre class="wiki">mount /mnt
</pre><p>
resp. unmount:
</p>
<pre class="wiki">smbumount /mnt
</pre><h3 id="Windows">Windows</h3>
<p>
Run the the Windows Explorer and choose <i>Map network drive</i> in the <i>Tools</i> menu:
</p>
<ul><li>select a drive of your choice
</li><li>enter <i>\\192.168.0.23\public</i> (default setting) as target
</li></ul><p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_network_drive.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_network_drive.png?format=raw' alt="en_w98_network_drive.png" title="en_w98_network_drive.png" style="" /></a>
</p>
<p>
Now you can use your encrypted data like any other network resource.
</p>
<h2 id="Deactivateyourencryptedfilesystem">Deactivate your encrypted filesystem</h2>
<p>
You can deactivate the encrypted filesystem by clicking at <i>Deactivation of encrypted data</i> in the web interface of your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>.
</p>
<p>
Your data is now protected again.
</p>
<h2 id="ShutdownyourCryptoBox">Shut down your CryptoBox</h2>
<p>
Click at the <i>Shutdown</i> link in the menu of the web interface. There you can choose <i>poweroff</i> or <i>reboot</i>. The shutdown takes some seconds.
</p>
<p>
If the hardware of your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> is quite recent, it will power-off automatically. Otherwise you have to do it manually.
</p>
<h2 id="Incaseofemergency">In case of emergency</h2>
<p>
If you have to protect the drive really fast, just power-off the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> machine instantly by pulling the plug or pushing the power button. This is not very clean and can (in very rare circumstances) corrupt open files, but it is the fastest method to secure your data.
</p>
<p>
<i>back to <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser</a></i>
</p>
<hr />
<h2 id="QuestionsandAnswers">Questions and Answers</h2>
<h3 id="Windowsnetworkdrivecannotbemapped">Windows: network drive cannot be mapped</h3>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_not_logged_in.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_not_logged_in.png?format=raw' alt="en_w98_not_logged_in.png" title="en_w98_not_logged_in.png" style="" /></a>
</p>
<p>
This error message may appear, if you did not login during the booting of you windows machine (or you closed the login dialog by pressing ESC).
</p>
<p>
<strong>Solution:</strong> Choose <i>Logout</i> in the <i>Start</i> menu and login again.
</p>
<p>
<a href='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_login.png' style='padding:0; border:none'><img src='/trac/cryptobox/file/trunk/www-data/screenshots/en_w98_login.png?format=raw' alt="en_w98_login.png" title="en_w98_login.png" style="" /></a>
</p>
<h3 id="Linuxonlyrootcanunmount192168023public">Linux: only root can unmount //192.168.0.23/public</h3>
<p>
You can't unmount the partition with <i>umount</i>.
</p>
<p>
<strong>Solution:</strong> Use <i>smbumount</i> instead:
</p>
<pre class="wiki">smbumount /mnt
</pre><h3 id="LinuxOperationnotpermittedsmbmntfailed1">Linux: Operation not permitted / smbmnt failed: 1</h3>
<p>
The attempt to mount the partition as a regular user ends up with:
</p>
<pre class="wiki">cannot mount on /mnt/: Operation not permitted
smbmnt failed: 1
</pre><p>
<strong>Solution:</strong> Set the directory's owner to the same user that mounts the share (e.g. phil):
</p>
<pre class="wiki">chown phil. /mnt
</pre><hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

View file

@ -0,0 +1,83 @@
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Gettingstarted">Getting started</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#FirstSteps">First Steps</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserGettingStarted&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#ConfigurationofyourCryptoBox">Configuration of your CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Overview">Overview</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Foreword">Foreword</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Initialization">Initialization</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Configuration">Configuration</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#HintsCaveats">Hints / Caveats</a></li>
<li><a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en#Comments">Comments</a></li>
</ol>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#DailyuseoftheCryptoBox">Daily use of the CryptoBox</a></li>
<ol><li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Activateyourencryptedfilesystem">Activate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Useyourencrypteddata">Use your encrypted data</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Deactivateyourencryptedfilesystem">Deactivate your encrypted filesystem</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#ShutdownyourCryptoBox">Shut down your CryptoBox</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Incaseofemergency">In case of emergency</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#QuestionsandAnswers">Questions and Answers</a></li>
<li><a href="?action=doc&page=CryptoBoxUserDailyUse&weblang=en#Comments">Comments</a></li>
</ol>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser/en</a>, <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en">CryptoBoxUserConfiguration/en</a>, <a href="/trac/cryptobox/wiki/CryptoBoxUserDailyUse/en">CryptoBoxUserDailyUse/en</a>, <a href="/trac/cryptobox/wiki/CryptoBoxUserGettingStarted">CryptoBoxUserGettingStarted</a>)
</p>
<hr />
<h1 id="Gettingstarted">Getting started</h1>
<h2 id="FirstSteps">First Steps</h2>
<p>
Getting the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> started doesn't take much:
</p>
<ol><li>You need an old Computer (at least 100MHz, 48MB RAM) (rule of thumb: bought at least after 1996). This PC needs a network card, a CD-ROM drive and a huge harddisk.
<ul><li>Well the disk doesn't need to be huge, it should just suit your filestorage needs ;)
</li><li>You don't need a monitor or a keyboard to use your <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> (with one exception, see below).
</li><li>Of course, you may use a faster computer, but they usually consume much more energy and do not provide signifcant advantages.
</li></ul></li><li>Then download the latest version of the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> as an iso-image and burn this image onto a CD.
<ul><li><a class="ext-link" title="http://codecoop.org/projects/cryptobox/" href="http://codecoop.org/projects/cryptobox/">http://codecoop.org/projects/cryptobox/</a>
</li></ul></li><li>Configure your PC, so it can boot from the CD. Therefore you have to enter the BIOS and configure the CD-ROM as boot device.
</li><li>Insert the shiny new <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> CD you've just burned and start the computer.
</li></ol><p>
If it now boots from the CD, you accomplished all of the requirements.
</p>
<p>
Now you can just go to your current desktop computer and point your browser to <a class="ext-link" title="https://192.168.0.23" href="https://192.168.0.23">https://192.168.0.23</a> where the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> interface should be displayed. Easy - isn't it?
</p>
<p>
For further steps go to <a href="?action=doc&page=CryptoBoxUserConfiguration&weblang=en">CryptoBoxUserConfiguration</a>.
</p>
<h2 id="HintsCaveats">Hints / Caveats</h2>
<p>
</p>
<ul><li>Maybe you need to change the network address (IP) of your PC to configure the <a href="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> for the first time. Ask someone for help, if you don't know how and why ...
</li><li>If you're going to buy a new harddisk keep in mind that very old hardware can't handle current disk sizes!
</li><li>Some old PCs are not able to boot from CD.
</li><li>If you don't know what a BIOS is, better ask someone, before you try to change something. ;)
</li><li>Don't forget to connect your PC to your local area network!
</li><li>To configure the BIOS, you need a keyboard and a monitor. But this has to be done only once.
</li></ul><p>
<i>back to <a href="?action=doc&page=CryptoBoxUser&weblang=en">CryptoBoxUser</a></i>
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>

28
pythonrewrite/lang/README Normal file
View file

@ -0,0 +1,28 @@
$Id$
You may want to translate the CryptoBox into another language?
Most welcome!
Existing translation can be found in the .hdf files. There are three
easy steps, that won't take longer than one hour to go through:
1.) Download one .hdf in your preferred language (e.g. en.hdf if you're a native english speaker).
2.) Start to change the text behind the equal sign line for line.
3.) Send us your changed .hdf file. That's it - thank you!
Hints:
We are available via mail (cryptobox@systemausfall.org) for any questions. Don't worry to ask us if
something is vague. We prefer "utf" encoded hdf-files. If you don't
know what udf means - just don't care, send us your file and
everything else will be fine. You don't have to translate the whole
file, some minor parts are enough to send back. The community will do
the rest. ;)
Again, thanks for your help! We do the Cryptobox things in our
freetime for fun and to provide an open source solution for this
special purpose. By helping us, you're taking part in this
development.

16
pythonrewrite/lang/TODO Normal file
View file

@ -0,0 +1,16 @@
$Id$
Here are some minor fixes that have to be done. Thanks a lot for your
help!
################################ slovenian ##################################
- SuccessMessage.InitRunning contains only the first sentence
- SuccessMessage.ReBoot: add a hint for automatic redirection (3rd sentence)
- EmptyCryptoPassword: change 'Text' accordingly to English string.
Below are some smaller changes in English sentences. Someone may change it accordingly.
- MountFailed: add 'Pleasy try again' to the end of the string.
- UmountFailed: changed 'Also close all unclean programs' to 'Close all unclean programs'.
- InitRunning: changed 'You may configure it now. You may activate the encrypted filesystem in a few minutes.' to 'You may configure it now and activate the encrypted filesystem in a few minutes.'

215
pythonrewrite/lang/de.hdf Normal file
View file

@ -0,0 +1,215 @@
Lang {
Name = deutsch
Status = $Id$
Title {
Top = Die CryptoBox
Slogan = ... und 1984 war gestern!
Init = Initialisierung der CryptoBox
Mount = Aktivierung der Crypto-Daten
Umount = Deaktivierung der Crypto-Daten
Config = Konfiguration der CryptoBox
Log = Protokoll der CryptoBox
System = System
Status = Status der CryptoBox
}
Text {
EnterCurrentCryptoPassword = Das Crypto-Passwort eingeben:
EnterNewCryptoPassword = Das neue Crypto-Passwort eingeben:
EnterSameCryptoPassword = Das Crypto-Passwort wiederholen:
EnterCurrentAdminPassword = Das aktuelle Admin-Passwort eingeben:
EnterNewAdminPassword = Das neue Admin-Passwort eingeben:
EnterSameAdminPassword = Das neue Admin-Passwort wiederholen:
InitWarning = Bei der Initialisierung werden ALLE DATEN auf der Festplatte GEL&Ouml;SCHT!
ConfirmInitHint = Um zu best&auml;tigen, dass du weisst, was du tust, tippe hier bitte exakt Folgendes ein:
ConfirmInit = Ja, loesche alle Daten!
PartitionInfo = Derzeitige Partitionierung der Festplatte:
IPAddress = Netzwerk-Adresse (IP) der CryptoBox:
TimeOut = Zeitabschaltung des Crypto-Dateisystems (in Minuten):
EmptyLog = Das Logbuch der CryptoBox ist leer.
SelectLanguage = Spracheinstellung:
RedirectNote = Klicke hier, falls dein Browser die automatische Weiterleitung nicht unterst&uuml;tzt.
ProjectHomePage = Projekt-Seite
ProjectNote = Die CryptoBox ist ein Projekt von
DoUmount = Deaktivierung des verschl&uuml;sselten Dateisystems
DoMount = Aktivierung des verschl&uuml;sselten Dateisystems
Configuration = Einstellungen
CryptoIsActive = Die Crypto-Daten sind verf&uuml;gbar.
CryptoIsDown = Die Crypto-Daten sind vor jedem Zugriff gesch&uuml;tzt.
}
Button {
DoInit = Initialisierung
SaveConfig = Speichere Konfiguration
Update = Aktualisieren
Mount = Crypto-Daten aktivieren
Umount = Crypto-Daten deaktivieren
Config = Einstellungen
PowerOff = ausschalten
ReBoot = neu starten
Protocol = Protokoll anzeigen
Documentation = Hilfe
Status = Status
}
WarningMessage {
InitNotConfirmed {
Title = Best&auml;tigung schlug fehl
Text = Der Best&auml;tigungssatz muss exakt eingegeben werden!
}
EmptyCryptoPassword {
Title = Ung&uuml;ltiges Crypto-Passwort
Text = Du musst ein Crypto-Passwort eingeben!
}
DifferentCryptoPasswords {
Title = Ungleiche Crypto-Passworte
Text = Die beiden Passworte m&uuml;ssen identisch sein, um Eingabefehler zu verhindern.
}
DifferentAdminPasswords {
Title = Ungleiche Administrations-Passworte
Text = Die beiden Passworte m&uuml;ssen identisch sein, um Eingabefehler zu verhindern.
}
WrongAdminPassword {
Title = Falsches Administrations-Passwort
Text = Das eingegebene Administrations-Passwort ist falsch. Versuche es noch einmal.
}
MountFailed {
Title = Aktivierung schlug fehl
Text = Das verschl&uuml;sselte Dateisystem konnte nicht aktiviert werden. Wahrscheinlich war das Passwort falsch. Versuche es noch einmal.
}
UmountFailed {
Title = Deaktivierung schlug fehl
Text = Das verschl&uuml;sselte Dateisystem konnte nicht abgeschaltet werden. Wahrscheinlich sind noch Dateien ge&ouml;ffnet. Schlie&szlig;e alle potentiell unsauberen Programme (beispielsweise die weitverbreitete Textverarbeitung). Notfalls einfach die CryptoBox ausschalten!
}
NotInitialized {
Title = Keine Konfiguration gefunden
Text = Die CryptoBox wurde noch nicht eingerichtet.
}
InitNotFinished {
Title = Initalisierung noch nicht abgeschlossen
Text = Die Initialisierung wird in wenigen Minuten beendet sein. Erst danach ist diese Aktion m&ouml;glich.
}
IsMounted {
Title = Bereits aktiv
Text = Das verschl&uuml;sselte Dateisystem ist bereits aktiv.
}
NotMounted {
Title = Nicht aktiv
Text = Das verschl&uuml;sselte Dateisystem ist derzeit nicht aktiv.
}
AlreadyConfigured {
Title = Konfiguration gefunden
Text = Die CryptoBox wurde bereits eingerichtet. Bei einer erneuten Initialisierung werden alle Daten gel&ouml;scht!
}
InvalidLanguage {
Title = Ung&uuml;ltige Sprache
Text = Die ausgew&auml;hlte Sprache ist nicht verf&uuml;gbar!
}
InvalidIP {
Title = Ung&uuml;ltige IP
Text = Die ausgew&auml;hlte Netzwerkadresse ist nicht g&uuml;ltig!
}
InvalidTimeOut {
Title = Ung&uuml;ltige Zeitabschaltung
Text = Der ausgew&auml;hlte Wert der Zeitabschaltung ist nicht g&uuml;ltig!
}
ConfigTimeOutFailed {
Title = Fehler beim &Auml;ndern der Zeitabschaltung
Text = Der Wert der Zeitabschaltung konnte nicht ge&auml;ndert werden!
}
ConfigLanguageFailed {
Title = Fehler beim &Auml;ndern der Spracheinstellung
Text = Die Spracheinstellung konnte nicht ge&auml;ndert werden!
}
ConfigIPFailed {
Title = Fehler beim &Auml;ndern der Netzwerkadresse
Text = Die Netzwerkadresse konnte nicht ge&auml;ndert werden!
}
IPAddressChanged {
Title = &Auml;nderung der Netzwerk-Adresse
Text = Die Netzwerk-Adresse der CryptoBox wurde ver&auml;ndert. In wenigen Sekunden werden sie zu der neuen Adresse umgeleitet.
}
}
SuccessMessage {
InitRunning {
Title = Initialisierung l&auml;uft
Text = Die Initialisierung der CryptoBox wird im Hintergrund abgeschlossen. Du kannst die CryptoBox nun konfigurieren und das verschl&uuml;sselte Dateisystem in ein paar Minuten aktivieren.
}
ConfigSaved {
Title = Konfiguration gespeichert
Text = Die neuen Einstellungen der CryptoBox wurden &uuml;bernommem.
}
MountDone {
Title = Crypto-Daten aktiviert
Text = Das verschl&uuml;sselte Dateisystem ist nun verf&uuml;gbar.
}
UmountDone {
Title = Crypto-Daten deaktiviert
Text = Das verschl&uuml;sselte Dateisystem ist nun vor jedem Zugriff gesch&uuml;tzt.
}
PowerOff {
Title = Abschaltung
Text = Die CryptoBox wird gerade heruntergefahren. In wenigen Sekunden kannst du sie ausschalten (falls dies nicht automatisch geschieht).
}
ReBoot {
Title = Neustart
Text = Die CryptoBox wird gerade neu gestartet. In wenigen Sekunden ist sie wieder verf&uuml;gbar. Bitte warte solange - du wirst automatisch weitergeleitet.
}
}
ErrorMessage {
UnknownAction {
Title = Unbekannte Aktion
Text = Du hast eine undefinierte Aktion angefordert.
}
NoSSL {
Title = Unverschl&uuml;sselte Verbindung
Text = Die CryptoBox akzeptiert nur verschl&uuml;sselte Verbindungen (https). So bleibt das Passwort vor neugierigen Augen gesch&uuml;tzt. In wenigen Sekunden wird eine verschl&uuml;sselte Verbindung hergestellt.
}
InitFailed {
Title = Initialisierung fehlgeschlagen
Text = Sende bitte den Inhalt des Protokolls (siehe oben) an die Entwickler der CryptoBox (cryptobox@systemausfall.org).
}
NoHardDisk {
Title = Keine Festplatte
Text = Es wurde kein Datentr&auml;ger gefunden, der zur Speicherung der verschl&uuml;sselten Daten geeignet ist. Pr&uuml;fe bitte, ob beim Anschalten des Computers eine Festplatte vom BIOS erkannt wurde.
}
}
}

255
pythonrewrite/lang/en.hdf Normal file
View file

@ -0,0 +1,255 @@
Lang {
Name = english
Status = $Id$
Title {
Top = The CryptoBox
Slogan = Privacy for the rest of us.
Init = CryptoBox initialization
Mount = Activation of encrypted data
Umount = Deactivation of encrypted data
Config = CryptoBox configuration
Log = CryptoBox logfiles
System = System
Status = Status
Volume = Properties of
}
Text {
EnterCurrentCryptoPassword = Enter the crypto password:
EnterNewCryptoPassword = Enter the new crypto password:
EnterSameCryptoPassword = Repeat the new crypto password:
EnterCurrentAdminPassword = Enter the current administration password:
EnterNewAdminPassword = Enter the new administration password:
EnterSameAdminPassword = Repeat the new administration password:
InitWarning = During the process of initialization ALL DATA on the disk WILL BE DELETED!
ConfirmInitHint = To confirm that you know what you are doing, please enter exactly the following sequence:
ConfirmInit = Yes, delete all data!
PartitionInfo = Current partioning of the disk:
IPAddress = Network address (IP) of the CryptoBox:
TimeOut = Timeout for deactivation of the encrypted filesystem (in minutes):
EmptyLog = The logfiles of the CryptoBox are empty.
SelectLanguage = Language preferences:
RedirectNote = Click here if your browser does not support automatic redirection.
ProjectHomePage = Website of project
ProjectNote = The CryptoBox is a project of
DoUmount = Deactivation of the encrypted filesystem
DoMount = Activation of the encrypted filesystem
Configuration = Configuration
CryptoIsActive = The encrypted data is accessible.
CryptoIsDown = The encrypted data is protected from any access.
ChoosePartition = Which container do you want to enable?
ChosenPartition = The chosen container is
ActivePartitions = The following containers are enabled
PassivePartitions = The following containers are disabled
ContainerName = Container's name:
ContainerEncryption = Enable encryption
}
Button {
DoInit = Initialization
SaveConfig = Save configuration
Update = Refresh
Mount = Activate filesystem
Umount = Deactivate filesystem
Config = Configuration
PowerOff = Shutdown
ReBoot = Reboot
Protocol = Show logfiles
Documentation = Help
Status = Status
System = System
ContainerNameSet = Change name
InitContainer = Initialize container
}
WarningMessage {
InitNotConfirmed {
Title = Confirmation failed
Text = The sentence has to be entered exactly as shown!
}
EmptyCryptoPassword {
Title = Invalid crypto password
Text = You have to enter a crypto password!
}
DifferentCryptoPasswords {
Title = Crypto passwords do not match
Text = Both entered passwords have to be identical to ensure this is the desired password.
}
DifferentAdminPasswords {
Title = Administration passwords do not match
Text = Both entered passwords have to be identical to ensure this is the desired password.
}
WrongAdminPassword {
Title = Wrong Administration password
Text = The entered administration password is wrong. Please try again.
}
MountFailed {
Title = Activation failed
Text = The encrypted filesystem could not be activated. Probably the given password was wrong. Please try again.
}
UmountFailed {
Title = Deactivation failed
Text = The encrypted filesystem could not be deactivated. Probably some files are still in use. Close all unclean programs (for example that widely used word processor). In case of emergency just shut down the CryptoBox!
}
NotInitialized {
Title = No configuration found
Text = The CryptoBox has not yet been configured.
}
InitNotFinished {
Title = Initialization not yet completed
Text = Initialization will be completed in a few minutes. After completed initialization this action will become available.
}
IsMounted {
Title = Already active
Text = The encrypted filesystem has already been activated.
}
NotMounted {
Title = Inactive
Text = The encrypted filesystem is currently not active.
}
AlreadyConfigured {
Title = Configuration found
Text = The CryptoBox has already been configured. If you initialize again, all data will be deleted!
}
InvalidLanguage {
Title = Invalid language
Text = The selected language is not available!
}
InvalidIP {
Title = Invalid IP address
Text = The selected network address is not valid!
}
InvalidTimeOut {
Title = Invalid timeout
Text = The selected timeout is not valid!
}
ConfigTimeOutFailed {
Title = Error during change of timeout
Text = The timeout value could not be changed!
}
ConfigLanguageFailed {
Title = Error during change of language preferences
Text = The language preferences could not be changed!
}
ConfigIPFailed {
Title = Error during change of network address
Text = The network address could not be changed!
}
IPAddressChanged {
Title = Change of network address
Text = The network address has been changed. In a few seconds you will get redirected to the new address.
}
NoDiskAvailableForMount {
Title = No partition available
Text = There is no unused container available. Maybe all containers are already mounted?
}
NoDiskAvailableForUmount {
Title = No partition available
Text = There is no active container available for turning off. Maybe there is no active container?
}
InvalidDevice {
Title = Invalid device
Text = The device you have chosen is invalid!
}
InvalidVolumeName {
Title = Changing of container's name failed
Text = The supplied new name of the container was invalid. Please try again!
}
SetVolumeNameFailed {
Title = Changing of container's name failed
Text = Could not change the name of the container. Take a look at the log files for details.
}
VolumeMayNotBeMounted {
Title = The container is mounted
Text = This action is not available while the container is active. Please turn it off first.
}
}
SuccessMessage {
InitRunning {
Title = Initialization running
Text = The initialization will be completed in background. You may configure it now and activate the encrypted filesystem in a few minutes.
}
ConfigSaved {
Title = Configuration saved
Text = The new settings have been accepted.
}
MountDone {
Title = Encrypted filesystem activated
Text = The encrypted filesystem is now available.
}
UmountDone {
Title = Encrypted filesystem deactivated
Text = The encrypted filesystem is now secured from all forms of access.
}
PowerOff {
Title = Shutdown
Text = The CryptoBox is currently going to halt. In a few seconds you can power it off (in case this does not happen automatically).
}
ReBoot {
Title = Reboot
Text = The CryptoBox is currently rebooting. In a few seconds it will be available again. Please wait - you will get redirected, when the reboot has finished.
}
}
ErrorMessage {
UnknownAction {
Title = Unknown action
Text = You have requested an undefined action.
}
NoSSL {
Title = Unencrypted connection
Text = The CryptoBox only accepts encrypted connections (https), so the password is safe from curious eyes. The encrypted connection will be established in a few seconds.
}
InitFailed {
Title = Initialization failed
Text = Please send the logfiles (see above) to the developers of the CryptoBox (cryptobox@systemausfall.org).
}
NoHardDisk {
Title = No hard disk
Text = No disk suitable for an encrypted filesystem found. Please ensure the BIOS detected the disk during power-on of the computer.
}
}
}

215
pythonrewrite/lang/si.hdf Normal file
View file

@ -0,0 +1,215 @@
Lang {
Name = slovenščina
Status = $Id$
Title {
Top = The CryptoBox
Slogan = Privatnost v vsako vas!
Init = CryptoBox zagon
Mount = Aktivacija kriptiranih podatkov
Umount = Deaktivacija kriptiranih podatkov
Config = CryptoBox konfiguracija
Log = CryptoBox dnevnik
ShutDown = Ugasni
Status = Stanje
}
Text {
EnterCurrentCryptoPassword = Vpišite geslo:
EnterNewCryptoPassword = Vpišite novo geslo:
EnterSameCryptoPassword = Ponovite novo geslo:
EnterCurrentAdminPassword = Vnesite trenutno obstoječe geslo administratorja/ke:
EnterNewAdminPassword = Vnesite novo geslo administratorja/ke:
EnterSameAdminPassword = Ponovite novo geslo administratorja/ke:
InitWarning = Med incializacijo bodo VSI PODATKI z vašega trdega diska IZBRISANI!
ConfirmInitHint = Vsled potrditve vaših dejanj vpišite naslednje besedilo:
ConfirmInit = Da, zbirši vse podatke!
PartitionInfo = trenutna porazdelitev trdega diska:
IPAddress = IP CryptoBoxa:
TimeOut = Čas preklica deaktivacije kriptiranega datotečnega sistema:(v minutah)
EmptyLog = Dnevnik CryptoBoxa je prazen.
SelectLanguage = Jezikovne nastavitve:
RedirectNote = Kliknite če vaš iskalnik ne podpira avtomatične preusmeritve.
ProjectHomePage = Spletna stran projekta
ProjectNote = CryptoBox je projekt
DoUmount = Deaktivacija kriptiranega datotečnega sistema
DoMount = Aktivacija kriptiranega datotečnega sistema
Configuration = Konfiguracija
CryptoIsActive = Kriptirani podatki so dostopni.
CryptoIsDown = Kriptirani podatki soso zaèiteni pred kakr nimkoli dostopom.
}
Button {
DoInit = Zagon CryptoBoxa
SaveConfig = Shrani konfiguracijo
Update = Osveži
Mount = Aktivacija kriptiranega datotečnega sistema
Umount = Deaktivacija kriptiranega datotečnega sistema
Config = Konfiguracija
PowerOff = Ugasni
ReBoot = Ponovni zagon
Protocol = Dnevnik
Documentation = Priročnik
Status = Stanje
}
WarningMessage {
InitNotConfirmed {
Title = Potrditev ni uspela
Text = Besedilo mora biti vpisano natanko kot je prikazano!
}
EmptyCryptoPassword {
Title = Nepravilno geslo
Text = Geslo ne sme biti prazno!
}
DifferentCryptoPasswords {
Title = Gesli se ne ujemata!
Text = Obe vnešeni gesli morata biti identični, v zagotovilo, da je vpisano željeno geslo.
}
DifferentAdminPasswords {
Title = Administracijski gesli se ne ujemata
Text = Obe vnešeni gesli morata biti identični, v zagotovilo da je vpisano željeno geslo.
}
WrongAdminPassword {
Title = Napačno administracijsko geslo!
Text = Vnešeno administracijsko geslo je nepravilno. Prosimo poskusite znova!
}
MountFailed {
Title = Aktivacija ni uspela
Text = Kriptiran datotečni sistem se ni aktiviral.Po vsej verjetnosti je bilo geslo napačno.
}
UmountFailed {
Title = Deaktivacija ni uspela
Text = Kriptiran datotečni sistem se ni aktiviral.Datoteke so morda v uporabi. Zaprite vse programe. (naprimer ta nadvse razširjen urejevalnik besedil). V primeru nuje ugasnite CryptoBox!
}
NotInitialized {
Title = Konfiguracija ni najdena
Text = CryptoBox še ni bil konfiguriran.
}
InitNotFinished {
Title = Zagon še ni dovršen
Text = Zagon bo dovršen v nekaj minutah. Po končanem zagonu bo ta možnost omogočena.
}
IsMounted {
Title = Že aktivno
Text = Kriptiran datotečni sistem je že aktiviran.
}
NotMounted {
Title = Onemogočeno
Text = Kriptiran datotečni sistem trenutno ni aktiven.
}
AlreadyConfigured {
Title = Konfiguracija uspela
Text = CryptoBox je đe bil konfiguriran. Če ponovno zaženete bodo vsi podatki izbrisani!
}
InvalidLanguage {
Title = Nepravilna izbira jezika
Text = Izbrani jezik ni na voljo!
}
InvalidIP {
Title = Napačen IP naslov
Text = Izbran omrežni naslov ni veljaven!
}
InvalidTimeOut {
Title = Nepravilen čas preklica
Text = Izbran čas preklica ni veljaven!
}
ConfigTimeOutFailed {
Title = Napaka med spremembo časa preklica
Text = Časa preklica ne morete spremeniti!
}
ConfigLanguageFailed {
Title = Napaka med spremembo jezikovnih nastavitev
Text = Spreminjanje jezikovnih nastavitev ni mogoče.
}
ConfigIPFailed {
Title = Napaka med spreminjanjem omrežnega naslova.
Text = Spreminjanje omrežnega naslova ni mogoče.
}
IPAddressChanged {
Title = Sprememba omrežnega naslova
Text = Omrežni naslov je spremenjen. V nekaj sekundah boste preusmerjeni na nov naslov.
}
}
SuccessMessage {
InitRunning {
Title = Zagon poteka
Text = Zagon bo dokončan v ozadju.
}
ConfigSaved {
Title = Konfiguracija spravljena
Text = Nove nastavitve so sprejete.
}
MountDone {
Title = Kriptiran datotečni sistem aktiviran
Text = Kriptiran datotečni sistem je na voljo.
}
UmountDone {
Title = Kriptiran datotečni sistem deaktiviran.
Text = Kriptiran datotečni sistem je varovan pred vstopom.
}
PowerOff {
Title = Ugasni
Text = CryptoBox se zaustavlja. V nekaj sekundah ga lahko izklopite.(v kolikor se to ne zgodi avtomatično).
}
ReBoot {
Title = Ponovni zagon
Text = CryptoBox se zaganja. V nekaj sekundah bo zopet na voljo.
}
}
ErrorMessage {
UnknownAction {
Title = Neznan zahtevek
Text = Podali ste nedefiniran zahtevek.
}
NoSSL {
Title = Nekriptirana povezava
Text = CryptoBox sprejme le kriptirane povezave (https), da je geslo zaščiteno pred radovednimi očmi. V nekaj sekundah bo kriptirana povezava vzpostavljena.
}
InitFailed {
Title = Zagon ni uspel
Text = Prosim pošljite dnevnik (poglejte zgoraj) razvijalcem CryptoBoxa (cryptobox@systemausfall.org).
}
NoHardDisk {
Title = Ni trdega diska
Text = Primeren trdi disk za shranjenje kriptiranega datotečnega sistema ni zaznan. Poskrbite da bo med zagonom BIOS zaznal trdi disk.
}
}
}

View file

@ -0,0 +1,26 @@
#!/bin/sh
#
# compare the defined fields of a language file with the english translation
#
# nice for finding unavailable definitions
#
# Parameter: LANGUAGE
# (e.g. "de")
#
set -u
LANG_DIR=$(dirname $0)/../lang
DEFAULT_LANG=en
TMP_FILE1=/tmp/$(basename $0)-$$-1
TMP_FILE2=/tmp/$(basename $0)-$$-2
[ $# -ne 1 ] && echo -e "Syntax: $(basename $0) LANGUAGE\n" >&2 && exit 1
grep "=" "$LANG_DIR/${DEFAULT_LANG}.hdf" | grep -v "^[[:space:]]*#" | cut -f 1 -d "=" >"$TMP_FILE1"
grep "=" "$LANG_DIR/${1}.hdf" | grep -v "^[[:space:]]*#" | cut -f 1 -d "=" >"$TMP_FILE2"
diff -wu "$TMP_FILE1" "$TMP_FILE2"
rm "$TMP_FILE1" "$TMP_FILE2"

49
pythonrewrite/scripts/debian Executable file
View file

@ -0,0 +1,49 @@
#!/bin/sh
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
# $Id: cbox-build.sh 336 2005-11-29 22:28:28Z lars $
#
# build a debian package
#
set -ue
# include common functions and settings
source $(dirname $0)/common.sh.inc
######### some settings ###########
DEB_BUILD_DIR=/tmp/cryptobox-debian-$$
[ -e "$DEB_BUILD_DIR" ] && rm -rf "$DEB_BUILD_DIR"
DEB_CONTROL_DIR=$ROOT_DIR/DEBIAN
DEB_PACKAGE_DIR=$ROOT_DIR/packages
############# do it ###############
ACTION=build
[ $# -gt 0 ] && ACTION=$1 && shift
case "$ACTION" in
build )
svn export "$CBOX_DEVEL_DIR" "$DEB_BUILD_DIR" >/dev/null
svn export "$DEB_CONTROL_DIR" "$DEB_BUILD_DIR/DEBIAN" >/dev/null
fakeroot dpkg-deb --build "$DEB_BUILD_DIR" "$DEB_PACKAGE_DIR"
rm -rf "$DEB_BUILD_DIR"
;;
check )
PACKAGE_FILE=$(find "$DEB_PACKAGE_DIR" -type f -name "cryptobox*" | grep "\.deb$" | sort -n | tail -1)
if [ -z "$PACKAGE_FILE" ]
then echo "no debian package found in $DEB_PACKAGE_DIR"
else lintian "$PACKAGE_FILE"
fi
;;
* )
echo "Syntax: $(basename $0) [ build | check help ]"
echo
;;
esac

View file

@ -0,0 +1,9 @@
#!/bin/sh
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
grep "TODO" $(find "$(dirname $0)/.." -type f | grep -v "\.svn" | grep -v "$(basename $0)")

View file

@ -0,0 +1,135 @@
#!/bin/sh
#
# Copyright (c) 02005 sense.lab <senselab@systemausfall.org>
#
# License: This script is distributed under the terms of version 2
# of the GNU GPL. See the LICENSE file included with the package.
#
# $Id$
#
# export wiki pages to the cryptobox development tree
# this creates static and integrated pages
#
set -ue
# root directory of the cryptobox development environment
ROOT_DIR="$(dirname $0)/.."
# retrieve these pages from the wiki
PAGES="CryptoBox CryptoBoxUser CryptoBoxUserGettingStarted
CryptoBoxUserConfiguration CryptoBoxUserDailyUse CryptoBoxDev
CryptoBoxDevPreparation CryptoBoxDevCustomBuild CryptoBoxDevWorkFlow
CryptoBoxDevValidation CryptoBoxDevCustomConfigure CryptoBoxDevBackground
CryptoBoxDevKnownProblems"
#PAGES="CryptoBox"
# base URL
WIKI_HOST="https://systemausfall.org"
# the trailing slash is important
WIKI_URL=/trac/cryptobox/wiki/
CBOX_CGI="?action=doc\&page="
LANGUAGES="de en"
DEST_DIR="$ROOT_DIR/doc/html"
OFFLINE_DIR="$ROOT_DIR/../live-cd/live-cd-tree.d/_offline/doc"
IMAGE_DIR="$ROOT_DIR/cbox-tree.d/var/www/cryptobox-misc"
TMP_DIR=/tmp/$(basename $0)-$$.d
HEADER_FILE=doc_header.inc
FOOTER_FILE=doc_footer.inc
WGET_OPTS="--quiet --no-check-certificate"
[ ! -e "$DEST_DIR" ] && echo "$DEST_DIR does not exist" && exit 1
for LANG in $LANGUAGES; do
for PAGE in $PAGES; do
PAGE_SRC="$WIKI_HOST$WIKI_URL$PAGE/$LANG"
echo "Importing $PAGE/$LANG:"
# replace sub-page-style '/' like moin does it (by '_2f')
TMP_FILE=$TMP_DIR/${PAGE}.html
mkdir -p "$TMP_DIR"
echo " downloading the page ..."
wget $WGET_OPTS --output-document="$TMP_FILE" "$PAGE_SRC" || { echo "Downloading ($PAGE_SRC) failed!"; exit 1; }
# check if this page exists
if grep -q "^describe $PAGE/$LANG here$" "$TMP_FILE"
then rm "$TMP_FILE"
PAGE_SRC=$(dirname $PAGE_SRC)
echo " trying to download default language page instead"
wget $WGET_OPTS --output-document="$TMP_FILE" "$PAGE_SRC" || { echo "Downloading ($PAGE_SRC) failed!" >&2; exit 1; }
# check, if there is even no default page
grep -q "^describe $PAGE/$LANG here$" "$TMP_FILE" && echo "This page ($PAGE_SRC) was not found!" >&2 && exit 1
fi
echo " removing header and footer ..."
# break lines before start of content
sed -i 's#<div id="content" class="wiki">#_END_OF_HEADER_\n#' "$TMP_FILE"
# the 'edit' buttons mark the end of the page
sed -i 's#<div class="buttons">#\n_START_OF_FOOTER_#' "$TMP_FILE"
# cut off a possible comment - section
sed -i "s#<form action=[^>]*\#commentpreview#\n_START_OF_FOOTER_#" "$TMP_FILE"
# remove all lines before and after "body"
sed -i '1,/_END_OF_HEADER_/d; /_START_OF_FOOTER_/,$d' "$TMP_FILE"
# close open divs
while [ "$(grep '<div' "$TMP_FILE" | wc -l)" -gt "$(grep '</div>' "$TMP_FILE" | wc -l)" ]
do echo "</div>" >>"$TMP_FILE"
done
#echo " removing link images (moin specific) ..."
# remove inter-wiki images
#sed -i 's#<[^<]*moin-inter.png[^>]*>##g' "$TMP_FILE"
# remove moin-www images
#sed -i 's#<[^<]*moin-www.png[^>]*> ##g' "$TMP_FILE"
# not necessary, because everything is a part of the repository
#echo " downloading requisites ..."
#wget --quiet --ignore-tags=a --no-clobber --page-requisites --convert-links --no-directories --base="$WIKI_HOST$WIKI_URL" --directory-prefix="$TMP_DIR" --html-extension --force-html --input-file="$TMP_FILE" || { echo "Downloading requisites for ($PAGE_SRC) failed!"; exit 1; }
echo " adjusting links for images ..."
sed -i "s#='[^']*/cryptobox-misc/\([^']*\)'#='/cryptobox-misc/\1'#g" "$TMP_FILE"
echo " adjusting wiki links ..."
# redirect wiki links to cryptobox cgi
sed -i "s#=\"$WIKI_URL\([^\.]*\)\"#=\"$CBOX_CGI\1\"#g" "$TMP_FILE"
# do it twice - somehow, the "g" flag does not work (it should replace multiple occurrences on a line)
sed -i "s#=\"$WIKI_URL\([^\.]*\)\"#=\"$CBOX_CGI\1\"#g" "$TMP_FILE"
# remove language specific part of moin link
for TLANG in $LANGUAGES
do sed -i "s#=\"$CBOX_CGI\([^\"]*\)/$TLANG#=\"$CBOX_CGI\1#g" "$TMP_FILE"
done
# build the static pages
echo " building static doc page"
offline_file=$OFFLINE_DIR/$LANG/$(basename $TMP_FILE)
mkdir -p "$OFFLINE_DIR/$LANG"
cat "$OFFLINE_DIR/$HEADER_FILE" "$OFFLINE_DIR/$LANG/$HEADER_FILE" "$TMP_FILE" "$OFFLINE_DIR/$LANG/$FOOTER_FILE" "$OFFLINE_DIR/$FOOTER_FILE" >"$offline_file"
sed -i "s%=\"$CBOX_CGI\([^\"#]*\)%=\"\1.html%g" "$offline_file"
# do it twice - this should not be necessary
sed -i "s%=\"$CBOX_CGI\([^#\"]*\)%=\"\1.html%g" "$offline_file"
sed -i "s#='/cryptobox-misc#='../../../var/www/cryptobox-misc#g" "$offline_file"
# split language specific part of moin link and replace it by current language
for TLANG in $LANGUAGES
do sed -i "s#=\"\([^/]*\)/${TLANG}.html\"#=\"\1.html\"#g" "$offline_file"
done
# some last changes to the dynamic pages (must be done _after_ the static pages)
# add weblang for current language to query string
sed -i "s;=\"$CBOX_CGI\([^#\"]*\)\([#\"]\);=\"$CBOX_CGI\1\&weblang=$LANG\2;g" "$TMP_FILE"
# move cgi-doc
mv "$TMP_FILE" "$DEST_DIR/$LANG"
echo " finished!"
done
done
[ -n "$(find "$TMP_DIR" -type f)" ] && mv "$TMP_DIR"/* "$IMAGE_DIR"
rmdir "$TMP_DIR"

View file

@ -0,0 +1 @@
* * * * * root [ -e /usr/lib/cryptobox/cbox-manage.sh ] && /usr/lib/cryptobox/check_smb_idle.sh

View file

@ -0,0 +1,3 @@
<?cs # $Id$ ?>
<?cs # what else would you expect here? ?>

View file

@ -0,0 +1,3 @@
<?cs # $Id$ ?>
<?cs call:error(Data.Error) ?>

View file

@ -0,0 +1,36 @@
<?cs # $Id$ ?>
<?cs if:Data.Redirect ?>
<p class="warning"><a href="<?cs if:Data.Redirect.URL ?><?cs var:Data.Redirect.URL ?><?cs else ?><?cs call:link('action',Data.Redirect.Action,'','','','') ?><?cs /if ?>"><?cs var:html_escape(Lang.Text.RedirectNote) ?></a></p>
<?cs /if ?>
</div><!-- end of 'words' -->
<div id="footer">
<?cs # Development or not ?>
<?cs if:(Data.Status.DevelopmentMode == 1) ?>
<div id="development">!Development Mode!</div>
<?cs /if ?>
<?cs # Version ?>
v<?cs var:Data.Version ?>&nbsp;&nbsp;
<a href="http://cryptobox.org" title="<?cs var:html_escape(Lang.Text.ProjectHomePage) ?>">CryptoBox-Home</a> <?cs var:html_escape(Lang.Text.ProjectNote) ?>&nbsp;<a href="https://systemausfall.org/senselab" title="systemausfall.org">sense.lab</a>
</div>
</div>
</div>
<!-- CBOX-STATUS-begin - used for validation - do not touch!
Data.Config.IP=<?cs var:Data.Config.IP ?>
Data.Config.Language=<?cs var:Data.Config.Language ?>
Data.Config.TimeOut=<?cs var:Data.Config.TimeOut ?>
Data.Status.Config=<?cs var:Data.Status.Config ?>
Data.Status.InitRunning=<?cs var:Data.Status.InitRunning ?>
Data.Status.IP=<?cs var:Data.Status.IP ?>
Data.Status.Mounted=<?cs var:Data.Status.Mounted ?>
CBOX-STATUS-end -->
<?cs # $Revision$ ?>
</body>
</html>

View file

@ -0,0 +1,34 @@
<?cs # $Id$ ?>
<div id="config">
<h1><?cs var:html_escape(Lang.Title.Config) ?></h1>
<?cs call:print_form_header() ?>
<?cs if:Data.Config.AdminPasswordIsSet ?>
<p><label for="current_admin_password"><?cs var:html_escape(Lang.Text.EnterCurrentAdminPassword) ?></label><br/>
<input type="password" id="current_admin_password" name="current_admin_password" size="20" maxlength="40" /> </p>
<?cs /if ?>
<!-- turned off - will get moved to system-settings
<p><label for="ip"><?cs var:html_escape(Lang.Text.IPAddress) ?></label><br/>
<input type="text" id="ip" size="16" maxsize="15" name="ip"
value="<?cs var:Data.Config.IP ?>" /><p>
-->
<p><label for="timeout"><?cs var:html_escape(Lang.Text.TimeOut) ?></label><br/>
<input type="text" id="timeout" size="5" maxsize="5" name="timeout"
value="<?cs var:Data.Config.TimeOut ?>" /></p>
<p><label for="language"><?cs var:html_escape(Lang.Text.SelectLanguage) ?></label><br/>
<select name="language">
<?cs each:item = Data.Languages ?>
<option value="<?cs name:item ?>" <?cs if:(name(item) == Data.Config.Language) ?>selected="selected"<?cs /if ?>><?cs var:item ?></option>
<?cs /each ?>
</select></p>
<input type="hidden" name="action" value="config_do" />
<button type="submit"><?cs var:html_escape(Lang.Button.SaveConfig) ?></button>
</form>
</div>

View file

@ -0,0 +1,27 @@
<?cs # $Id$ ?>
<h1><?cs var:html_escape(Lang.Title.Init) ?></h1>
<div class="init">
<?cs call:print_form_header() ?>
<p class="note"><?cs var:html_escape(Lang.Text.InitWarning) ?></p>
<p><label for="confirm"><?cs var:html_escape(Lang.Text.ConfirmInitHint) ?><br/>
<span class="note" id="confirmtext"><?cs var:html_escape(Lang.Text.ConfirmInit)
?></span></label><br/>
<input type="text" id="confirm" name="confirm" size="30" maxlength="50" /></p>
<input type="hidden" name="action" value="init_do" />
<button type="submit"><?cs var:html_escape(Lang.Button.DoInit) ?></button>
</form>
</div>
<hr/>
<!-- TODO: maybe place here some kind of initialization information
this should be open for different kinds of init methods (live-cd, ???)
<div class="partition_info">
<h2><?cs var:html_escape(Lang.Text.PartitionInfo) ?></h2>
<p><?cs var:Data.PartitionInfo ?></p>
</div>
-->

View file

@ -0,0 +1,33 @@
<?cs # $Id$ ?>
<h1><?cs var:html_escape(Lang.Title.Init) ?></h1>
<?cs call:print_form_header() ?>
<p class="note"><?cs var:html_escape(Lang.Text.InitWarning) ?></p>
<?cs if:Data.Config.AdminPasswordIsSet ?>
<p><label for="current_admin_password"><?cs
var:html_escape(Lang.Text.EnterCurrentAdminPassword) ?></label><br/>
<input type="password" id="current_admin_password" name="current_admin_password"
size="20" maxlength="40" /></p><?cs /if ?>
<?cs if:Data.CurrentDisk.InitParams.encrypted ?>
<p><label for="crypto_password"><?cs var:html_escape(Lang.Text.EnterNewCryptoPassword)
?></label><br/>
<input type="password" id="crypto_password" name="crypto_password"
size="20" maxlength="40" /></p>
<p><label for="crypto_password2"><?cs var:html_escape(Lang.Text.EnterSameCryptoPassword)
?></label><br/>
<input type="password" id="crypto_password2" name="crypto_password2"
size="20" maxlength="40" />
<input type="hidden" name="encryption" value="selected" /></p>
<?cs /if ?>
<p><label for="confirm"><?cs var:html_escape(Lang.Text.ConfirmInitHint) ?><br/>
<span class="note" id="confirmtext"><?cs var:html_escape(Lang.Text.ConfirmInit) ?></span></label><br/>
<input type="text" id="confirm" name="confirm" size="30" maxlength="50" /></p>
<p><input type="hidden" name="device" value="<?cs var:html_escape(Data.CurrentDisk.device) ?>" />
<input type="hidden" name="action" value="volume_init_do" />
<button type="submit"><?cs var:html_escape(Lang.Button.InitContainer) ?></button></p>
</form>

View file

@ -0,0 +1,40 @@
<?cs # $Id$ ?>
<?cs if:subcount(Data.Disks.passive) == 0 ?>
<?cs call:warning('NoDiskAvailableForMount') ?>
<?cs else ?>
<h1><?cs var:html_escape(Lang.Title.Mount) ?></h1>
<div align="center">
<?cs call:print_form_header() ?>
<?cs if:subcount(Data.Disks.passive) > 1 ?>
<p><label for="device"><?cs var:html_escape(Lang.Text.ChoosePartition) ?></label>
<select name="device" id="device" size="0">
<?cs each:partition = Data.Disks.passive ?><option value="<?cs
var:partition.device ?>"><?cs
var:partition.name ?></option>
<?cs /each ?>
</select></p>
<?cs else ?>
<p><?cs var:html_escape(Lang.Text.ChosenPartition) ?>: <?cs
var:Data.Disks.passive.0.name ?></p>
<input type="hidden" name="device" value="<?cs
var:Data.Disks.passive.0.device ?>"/>
<?cs /if ?>
<p><label for="crypto_passwort"><?cs var:html_escape(Lang.Text.EnterCurrentCryptoPassword)
?></label>
<input type="password" id="crypto_password" name="crypto_password" size="20" maxlength="40" /></p>
<input type="hidden" name="action" value="mount_do" />
<button type="submit"><?cs var:html_escape(Lang.Button.Mount) ?></button>
</form>
</div>
<?cs /if ?>

View file

@ -0,0 +1,29 @@
<?cs # $Id$ ?>
<h1><?cs var:html_escape(Lang.Title.System) ?></h1>
<p><ul>
<?cs # poweroff ?>
<li><a href="<?cs call:link('action','shutdown_do','type','poweroff','','') ?>" title="<?cs
var:html_escape(Lang.Button.PowerOff) ?>"><?cs var:html_escape(Lang.Button.PowerOff) ?></a></li>
<?cs # reboot ?>
<li><a href="<?cs call:link('action','shutdown_do','type','reboot','','') ?>" title="<?cs
var:html_escape(Lang.Button.ReBoot) ?>"><?cs var:html_escape(Lang.Button.ReBoot) ?></a></li>
<?cs # config ?>
<li><a href="<?cs call:link('action','config_ask','','','','') ?>" title="<?cs
var:html_escape(Lang.Button.Config) ?>"><?cs var:html_escape(Lang.Button.Config) ?></a></li>
<?cs # initialize ?>
<li><a href="<?cs call:link('action','init_ask','','','','') ?>" title="<?cs
var:html_escape(Lang.Button.DoInit) ?>"><?cs var:html_escape(Lang.Button.DoInit) ?></a></li>
<?cs # show log files ?>
<li><a href="<?cs call:link('action','show_log','','','','') ?>" title="<?cs
var:html_escape(Lang.Button.Protocol) ?>"><?cs var:html_escape(Lang.Button.Protocol) ?></a></li>
</ul></p>
</div>

View file

@ -0,0 +1,37 @@
<?cs # $Id$ ?>
<?cs if:subcount(Data.Disks.active) == 0 ?>
<?cs call:warning('NoDiskAvailableForUmount') ?>
<?cs else ?>
<h1><?cs var:html_escape(Lang.Title.Umount) ?></h1>
<div align="center">
<?cs call:print_form_header() ?>
<?cs if:subcount(Data.Disks.active) > 1 ?>
<p><label for="device"><?cs var:html_escape(Lang.Text.ChoosePartition) ?></label>
<select name="device" id="device" size="0">
<?cs each:partition = Data.Disks.active ?><option value="<?cs
var:partition.device ?>"><?cs
var:partition.name ?></option>
<?cs /each ?>
</select></p>
<?cs else ?>
<?cs # the perl code should take care, that there is at least
one mounted disk - otherwise it should display a warning ?>
<p><?cs var:html_escape(Lang.Text.ChosenPartition) ?>: <?cs
var:Data.Disks.active.0.name ?></p>
<input type="hidden" name="device" value="<?cs
var:Data.Disks.active.0.device ?>"/>
<?cs /if ?>
<input type="hidden" name="action" value="umount_do" />
<button type="submit"><?cs var:html_escape(Lang.Button.Umount) ?></button>
</form>
</div>
<?cs /if ?>

View file

@ -0,0 +1,54 @@
<?cs # $Id$ ?>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CryptoBox</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<link rel="shortcut icon" href="/favicon.ico" />
<link rel="stylesheet" media="screen" href="<?cs var:Settings.Stylesheet ?>" type="text/css" />
<?cs if:Data.Redirect.URL ?><meta http-equiv="refresh" content="<?cs var:Data.Redirect.Delay ?>;url=<?cs var:Data.Redirect.URL ?>" /><?cs
elif:Data.Redirect.Action ?><meta http-equiv="refresh" content="<?cs var:Data.Redirect.Delay ?>;url=<?cs call:link('action',Data.Redirect.Action,'','','','') ?>" /><?cs /if ?>
</head>
<body>
<?cs if:subcount(Data.Disks.available) > 0 ?>
<div id="volumes">
<?cs include:Settings.TemplateDir + '/show_volumes.cs' ?>
</div>
<?cs /if ?>
<div id="lang">
<?cs each:item = Data.Languages ?>
<a href="<?cs call:link('weblang',name(item),'','','','') ?><?cs
if:Data.QueryString ?>&<?cs var:Data.QueryString ?><?cs /if ?>"><?cs
var:item ?></a><br/>
<?cs /each ?>
</div>
<div id="main">
<?cs if:subcount(Data.Disks.active) > 0 ?>
<div id="head_red">
<?cs else ?>
<div id="head_green">
<?cs /if ?>
<h1><?cs var:html_escape(Lang.Title.Top) ?></h1>
<h2><?cs var:html_escape(Lang.Title.Slogan) ?></h2>
</div>
<div id="content">
<div id="menu">
<?cs if:Data.Redirect.URL ?>
<?cs # the menu bar is disabled if redirection has been suggested ?>
&nbsp;
<?cs else ?>
<?cs include:Settings.TemplateDir + '/nav.cs' ?>
<?cs /if ?>
</div>
<div id="words">

View file

@ -0,0 +1,82 @@
<?cs # $Id$ ?><?cs
def:warning(warnname)
?><div class="warning"><?cs
if:?Lang.WarningMessage[warnname].Title
?>
<h1><?cs var:html_escape(Lang.WarningMessage[warnname].Title) ?></h1>
<p><?cs var:html_escape(Lang.WarningMessage[warnname].Text) ?></p>
<?cs else ?>
<h1>unknown warning message</h1>
<p>could not find warning message: '<?cs var:warnname ?>'</p>
<?cs /if ?></div><?cs
/def ?><?cs
def:error(errname)
?><div class="error"><?cs
if:?Lang.ErrorMessage[errname].Title
?>
<h1><?cs var:html_escape(Lang.ErrorMessage[errname].Title) ?></h1>
<p><?cs var:html_escape(Lang.ErrorMessage[errname].Text) ?></p>
<?cs else ?>
<h1>unknown error message</h1>
<p>could not find error message: '<?cs var:errname ?>'</p>
<?cs /if ?></div><?cs
/def ?><?cs
def:success(succname)
?><div class="success"><?cs
if:?Lang.SuccessMessage[succname].Title
?>
<h1><?cs var:html_escape(Lang.SuccessMessage[succname].Title) ?></h1>
<p><?cs var:html_escape(Lang.SuccessMessage[succname].Text) ?></p>
<?cs else ?>
<h1>unknown success message</h1>
<p>could not find success message: '<?cs var:succname ?>'</p>
<?cs /if ?></div><?cs
/def ?><?cs
def:parseTree(root) ?><?cs #
# the output looks quite ugly and is not very helpful as there are
# only a few values
?><!-- data tree
<?cs each:item = root ?><?cs
name:item ?>: <?cs var:item ?><?cs
each:subitem = item ?> / <?cs name:subitem ?>=<?cs var:subitem ?><?cs /each ?>
<?cs /each ?>
--><?cs
/def ?><?cs
def:link(attr1, value1, attr2, value2, attr3, value3)
?><?cs each:attrs = Temp
?><?cs set:attrs = ""
?><?cs /each
?><?cs each:attrs = Settings.LinkAttrs
?><?cs set:Temp[url_escape(name(attrs))] = url_escape(attrs)
?><?cs /each
?><?cs if:attr1 != "" ?><?cs set:Temp[attr1] = value1 ?><?cs /if
?><?cs if:attr2 != "" ?><?cs set:Temp[attr2] = value2 ?><?cs /if
?><?cs if:attr3 != "" ?><?cs set:Temp[attr3] = value3 ?><?cs /if
?><?cs var:ScriptName
?><?cs set:first_each = 1
?><?cs if:subcount(Temp) > 0
?><?cs each:attrs = Temp
?><?cs if:(name(attrs) != "") && (attrs != "")
?><?cs if:first_each == 1 ?><?cs
set:first_each = 0 ?>?<?cs
else
?>&amp;<?cs /if
?><?cs var:url_escape(name(attrs)) ?>=<?cs var:url_escape(attrs)
?><?cs /if
?><?cs /each
?><?cs /if ?><?cs
/def ?><?cs
def:print_form_header() ?><?cs #
# the header of a form - including Setting.LinkAttrs
?><form action="<?cs call:link("","","","","","") ?>" method="post" enctype="application/x-www-from-urlencoded" accept-charset="utf-8"><?cs
/def ?>

View file

@ -0,0 +1,16 @@
<?cs # $Id$ ?>
<?cs include:Settings.TemplateDir + '/macros.cs' ?>
<?cs include:Settings.TemplateDir + '/header.cs' ?>
<!-- chosen cryptobox template: <?cs var:Data.Action ?> -->
<?cs if:Data.Error ?>
<?cs include:Settings.TemplateDir + '/error.cs' ?>
<?cs else ?>
<?cs if:Data.Warning ?><?cs call:warning(Data.Warning) ?><?cs /if ?>
<?cs if:Data.Success ?><?cs call:success(Data.Success) ?><?cs /if ?>
<?cs include:Settings.TemplateDir + '/' + Data.Action + '.cs' ?>
<?cs /if ?>
<?cs include:Settings.TemplateDir + '/footer.cs' ?>

View file

@ -0,0 +1,26 @@
<?cs # $Id$ ?>
<?cs # mounting possible? ?>
<?cs if:((Data.Status.Config == 1) && (Data.Status.InitRunning == 0)) ?>
<!-- TODO: remove the following lines, as soon as we completely switched to the volume-based user interface
<?cs if:subcount(Data.Disks.passive) > 0 ?>
<a href="<?cs call:link('action','mount_ask','','','','') ?>" title="<?cs var:html_escape(Lang.Text.DoMount) ?>"><?cs var:html_escape(Lang.Button.Mount) ?></a><?cs /if ?>
<?cs if:subcount(Data.Disks.active) > 0 ?>
<a href="<?cs call:link('action','umount_ask','','','','') ?>" title="<?cs var:html_escape(Lang.Text.DoUmount) ?>"><?cs var:html_escape(Lang.Button.Umount) ?></a><?cs /if ?>
-->
<a href="<?cs if:subcount(Data.Disks.available) > 1
?><?cs call:link('action','show_status','','','','')
?><?cs else
?><?cs call:link('action','show_volume','device',Data.Disks.available.0.device,'','')
?><?cs /if
?>" title="<?cs var:html_escape(Lang.Button.Status) ?>"><?cs var:html_escape(Lang.Button.Status) ?></a>
<?cs /if ?>
<?cs # manual ?>
<a href="<?cs call:link('action','doc','','','','') ?>" title="<?cs var:html_escape(Lang.Button.Documentation) ?>"><?cs var:html_escape(Lang.Button.Documentation) ?></a>
<?cs # system ?>
<a href="<?cs call:link('action','system_ask','','','','') ?>" title="<?cs var:html_escape(Lang.Button.System) ?>"><?cs var:html_escape(Lang.Button.System) ?></a>

View file

@ -0,0 +1,7 @@
<?cs # $Id$ ?>
<div id="doc">
<?cs include:Settings.DocDir + '/' + Settings.DocLang + '/' + Data.Doc.Page + '.html' ?>
</div>

Some files were not shown because too many files have changed in this diff Show more