GNU project  -  FREE project  -  Savannah @ GNU Free Software Foundation
The FREE project
home | users | developers | writings | download | connections


On this page

AuthSys.java
Packet.java
StringByteTools.java


In this section

Section Index

Internationalisation Team
Test Team

ERServer details
FreeClient details
Free.AWT details
Free.DBPool details
Free.util details
RTServer details
JavaDoc Documentation




thanks to:
Swing Digital
 

FREE.UTIL

This summarises the utility classes stored for convenience in this seperate package since 1.1

AuthSys.java

AuthSys uses the java.security package to implement a Message Authentication Code (MAC) system based on message digests.

Packet.java

This is a class that defines the key data format for GNU.FREE. All data transmitted between GNU.FREE software is in a string representation of this data.

The GNU.FREE packet formatting is as follows:

1|222-22222-22222222|33333333

Where 1 is a single character setting the type of packet, 2 is the data region of unlimited length with fields separated by a hyphen and 3 is the Message Authentication Code (MAC) which is derived from a message digest and is used to prevent message tampering.

1 can be in one of the following states:

A Authorisation check
C Vote or total confirm
D Diagnostic packet
E Electoral roll check
K Authorisation Key check
T Total for a party
Q Verification Query
V Vote packet
X End communication

StringByteTools.java

Because the GNU.FREE protocol is defined as being ASCII only we can optimise String <-> Byte conversions with methods faster than the Unicode compatible ones in the Java String implementation. These are provided in this file.



- Docs Home -

Contact - by Jason Kitcat - j-dom portal

Copyright 2000, 2001 FREE e-democracy project.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.