-
Notifications
You must be signed in to change notification settings - Fork 1
/
README
102 lines (78 loc) · 3.12 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
############################################################################################
THE HAL SEARCH ENGINE PROTOCOL FOR PROTONET
############################################################################################
_.--"""""--._
,-' `-.
_ ,' --- - ---- --- `.
,'|`. ,' ________________`.
O`.+,'O / /____(_______)___\ \
_......_ ,=. __________; _____ ____ _____ _____ :
,' ,--.-`,,;,:,;;;;;;;///////////| ----- ---- ----- ----- |
( SSt( ==)=========================| ,---. ,---. ,. |
`._ `--'-,``````"""""""\\\\\\\\\\\: /`. ,'\ /_ \ /\/\ ;
`````` \ : Y : :-'-. : : ): /
`. \ | / \=====/ \/\/'
`. `-'-' `---' ;'
`-._ _,-'
`--.....--' ,--.
().0()
`'-'
############################################################################################
#
# This is not a testet version and should contain Bugs
#
#
1. What is HAL
=============
HAL is the search engine, for managing the index tables of the files stored in a Protonet
node. It should add files to the HAL Index and can response to search request. In the
first version it should only collect files from local node and give response to search
from the local node. It the later version if HAL works in a Supernode, HAL will work as
file Index Storage for all node's which are connected to HAL. HAL will also later send
his Index Table to the Supernodes which his local node is connected.
2. Working
==========
Every node has a secret key for the communication with HAL. If the Key is not correct, HAL will
not accept incomming connections for adding new Files to the index. Every file will have an acces code,
because of security issue. The Acces code is different on every node. For example on the first node
public acces code is 432 and an other node is 564. Every node nows his local acces code.
possible Acces Codes are
a. Public for all nodes
b. Public for pc connected to local node
c. For specified User in Protonet
d. Private
3. Simple Protokoll
===================
# Adding new Files:
Request:
<asset type="new" key="hashvalue" >
<path>hashvalue of path</path>
<file>hashvalue of filename</file>
<acces>hashvalue of acces_code</acces>
</asset>
Response :
200
# Search
Request :
<search>
<node>Nodename</node>
<search>Search</search>
</search>
Response :
<node>
Nodename
</node>
<results>
<result>
<filename>
Name of the File
<filename>
<filetype>
type of the file
</filetype>
<description>
File Description
<description>
</result>
....
</result>