About Askemos · design notes · documentation · news · download · On CD · thanks · forum · support
FAQOutputTree
AskemosServer · GPL · README

FAQ

Frequently Asked Questions

Basic Understanding

Q: Is this just notes of a projects description? I'd love to see something deployed.

A: You did already! We run all of the web site, the wiki, the forum my invoice handling and some custom applications. e.g., a virtual office on that system.

Q: So what you've got is a guaranteed-tamperproof wiki?

A: No, the wiki was just the first application ever written. What we've got here is a guaranteed-tamperproof virtual machine. Almost any programming language can be deployed on that machine and almost all applications can run on it. That virtual machine is in a way similar to the well known Java virtual machine. But the machine instructions are much more coarse grained, since the speed of light would make it infeasable to synchronise those fine grained low level instructions over a wide area network.

Q: I don't believe a few humans can design a system so tamperproof as to keep out the billions of other humans trying to tamper with it.

A: Tamperproofness has two aspects:

  1. Logical tampering: Access control must be managed in such a way, that users can not impersonate each other under any circumstances. In other words, people must not appear in each others reliance set. This includes administrator accounts and digital restriction management. The Askemos system is the first one to demonstrate how to create such a system operationally.
  2. Physical tampering: byzantine agreement can mitigate the effect. Your deployment strategy (host placement and ownership) defines the hardship of breaking the majority vote.

Q: What is a virtual machine at document level?

A: The CoreAPI page states the each process step is defined by a function transforming the current state of the place into the next state. That function is described using a document (like any other) in Askemos, which just has to adhere to a certain dtd. So much for the virtual machine: it's defined in terms of xml documents - at document level.

Q: How can I use Askemos?

A: Let's clear a difference: Askemos as such refers to a concept, the formal part of the InformationSpace. You are already part of it, if you can think in a formal way. But there is also a server software `askemos', which implements the concept more or less. You can use the latter a) on a single machine as i) a xml scripting environment ii) agent operating system or b) in a quorum as a distributed, intrustion resistent agent operating system mainly geared towards 'document/contract management' applications.

Q: The administrator was invented to easy computer operations, why is there none here.

A: Correct, but: The Askemos shall be able to span areas of accountability. An administrative super power doesn't fit the reality. Furthermore this "design flaw" is the reason of servers being hijacked (hacked) - it's usually considered very boring to hack user accounts. At the other hand the AskemosProtection system is very flexible. Each user can act as the administrator of several hierarchies of data.

Q: Is XSLT a sufficient language to stored procedures in an XML object data base? It is not a general-purpose programming language after all, and for real application it has to be mixed with Java/Basic/Scheme/you-name-it.

A: The trick is to separate dynamic and functional discription. XSLT / DSSSL does only the functional part, a tree transformation, which computes the output of a transition. And, actually, DSSSL, SXPath and some more ProgrammingLanguageScheme and SRFI's are available to make programming more fun.

The message system models the dynamics like PetriNet's. It creates transactions around such a tree transformation when a write message arrives at a place. for details see http://www.askemos.org:9080/overview/modelling.html . See also CoreAPI.

Q: Can you compare Askemos to other xml data bases?

A: A part of Askemos stores xml structures persitently, so much it's comparable, see XMLDataBases.

Q: How are transformations, I/O, concurrency etc. implemented in Askemos?

A: Please see the documentation link for implementation details.

Q: The graph like documentation is confusing, why is there no conventional documentation?

A: The docs are kept in WikiWiki alike but layered data bases, all links are computed at runtime. This feature leads to tight integration and mostly useful links, but it's also recognized that this gives too many links. Since december 2001 we try grouping of links and removed them from the core text in the hope to improve the situation. Please comment.

Basic Understanding - Distribution and Security

Q: How does Askemos relate to FreeNet?

A: If Askemos was a OperatingSystem for some hardware, FreeNet would be the hard disk.

Q: How is intellectual property protected in Askemos?

A: We have to distinguish here what is going to be protected. The anonymity data (make the information a secret) or the right to access (confidentiality) use or exploit the property. Askemos leaves the job to secure anonymity to other tools. Instead it keeps a strong point at correctness, reliability, fraud proof:

Relevant meta data is always kept along with the sensitive data. The system always knows who produced the data and how the information is to be protected and distributed. If the data was leaked due to insufficient protection of the underlying hardware or distribution channels, there is - as in real live - no way to get the ghost back into the bottle. But there is a trace to hold the truth up at the legal level.

Q: Does every node keep and process all the information available in the Askemos system? The sheer amount of data will outgrow all bounds!

A: No. The user most "somehow" trust a particular machine to process the information because only clear text information can be processed and during the processing it's vulnerable to breach of anonymity. Therefore only a subset of the data is available at each node.

Whether the physical machine actually keeps more data than the Askemos node at it can process is an entirely different question. It might also participate in a freenet network and hence store shares of other Askemos nodes in cryptographically protected form. But than again this is outside of the scope of Askemos itself.

Q: Is a user assigned a set of nodes of the Askemos network where all the information of said user is processed?

A: No. "Spatial privacy is often the best way to promoty physical privacy." Data is distributed the way the user trusts nodes. And users usually trust different parties with different information. A user might trust the doctor's and the spouse's computer with his/her health data but hide it from the employer, while the pay check is left with the employer and the tax consultant but better hidden from the doctor (...or was it the spouse in that case? ;-).

Q: Which (cryptographical) methods are deployed to protect privacy witin the Askemos system?

None. Cryptographical protection of privacy (anonymity) is intentionally left outside of the scope of Askemos. Askemos is supposed to be used in connection (linked against libraries) with the methods appropriate for the task at hand. Those will develop independant. Askemos is concerned with topics like availibility, liability and trustworthiness.

Application

Q: Why should I use the Askemos Server?

A: There are several good reasons. a) it seems to be the fastest free native xml data base b) you need a highly flexible mandatory access control system without super user to be hacked c) you want network topology for you objects d) you need to extentions to control other applications e) the full fledged alternative is not needed for you application f) you need an application, which needs voted computations (ByzantineAgreement; :Why should I not use the Askemos Server?

A: When current implementaion limits bite you. See TODO, BUGS and FIXME.

Q: Is this yet another web programming environment?

A: Not really. But it's well suited, cause we see the web as the terminals of today. Xml elements are published simillar as files are in web servers. The PHP page and XSLTMethodExamples give an idea how to use Askemos for web programming. BTW:it was originally designed to be distributed operating system.

Q: How do I program with Askemos? Are there examples?

A: Yes, there are. See example style sheets and the "stylelib" (from localhost or askemos.org). Further more see the app subdirectory of the distributuion tar ball. How to find out about avaiable functions.

Q: Is is possible to integrate with other (legacy) applications?

A: Yes, use the trusted code mechanism.

:Q: Whats the difference between {PHP, Perl, most other languages} and Askemos' XSLT / NameSpaceDSSSL for web scripting?

:A: In most languages the resulting document is constructed charachter by character from quoted strings of the programming language. This incures a lot of quoting and can produce invalid output. In contrast in Askemos, the result is created as a document tree from components of the input tree and syntax tree of the running programm. This safes typing, ungly code and ensures at least well formed results.

Q: Sometime the server dies for no good reason!

A: I'd say "nobody is perfect". Have you looked at your swap space? When it runs out of memory it simply dies currently (by end of 2000). A message like "write to .X pages failed." is reported to be left. But I did not see that myself.

Q: Sometimes, when a method reads another place, the other one is returned literally. It's read method is apperantly not executed.

A: This happens, whenever the "other" place resolves to be the same. In order to avoid an endless loop the plain data is returned.

Please note: this loop detection should, but doesn't yet, detect longer loops.





border
last modification: Tue, 02 May 2006 15:01:37 +0200
authors: jfw,
document identifier: A849640f672ed0df0958abc0712110f3c
delivered to public at Tue, 06 Jan 2009 07:15:29 +0100
short comments


rss

pdf :: context view

search



27 Dez 2008ProjectsOnThePlate
27 Dez 2008JKomG
27 Dez 2008SystemRequirements
27 Dez 2008SQLITE
26 Dez 2008FanOut
26 Dez 2008MIME
NetBSD
NOTE
02 Mai 2006AskemosTopMenu
18 Nov 2008StorageAdaptor
18 Nov 2008PStoreStorageAdapt
18 Nov 2008OperationTips
15 Nov 2008PCRE
04 Nov 2008ProgrammingLanguag
09 Sep 2008RelatedProjects
23 Jul 2008ModuleStructure05
17 Jun 2008NEWS
17 Jun 2008HTML
17 Jun 2008ACM
22 Mai 2008HTTP
22 Mai 2008BOSH
10 Mai 2008AskemosBibliograph
10 Mai 2008JerrysDreamAbstrac
20 Apr 2008XSLT
11 Mar 2008CodingStyle
10 Mar 2008
09 Mar 2008MIMEConverter
BSD
07 Mar 2008XML
06 Mar 2008SRFI
01 Mar 2008RFC4810
01 Mar 2008RFC4998
01 Mar 2008KondratieffWerk
04 Jan 2008service-level
04 Jan 2008NameSpaceDSSSLinde
24 Jun 2004KommunikationsInfr
BOINC






Add


About Askemos · design notes · documentation · news · download · On CD · thanks · forum · support
Web Design by Schwill Dresden