[foaf-protocols] http://test.foafssl.org/cert/
Story Henry
henry.story at bblfish.net
Fri Jan 30 10:30:36 CET 2009
Dear Friends,
I have put a lot of late nights in the last week putting together a
very simple certificate creation service for foaf+ssl . It is now up
and running on a cloud service at
http://test.foafssl.org/cert/
In one click this creates an X509 cert that is loaded to the browser
with the URL of the foaf:OnlineAccount, that it also creates. This
online Account is really nothing special. It is just an rdf document.
You can see a few of those created here http://test.foafssl.org/
certs/ . They contain RDF such as this
@prefix cert: <http://www.w3.org/ns/auth/cert#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rsa: <http://www.w3.org/ns/auth/rsa#> .
@prefix : <#> .
<http://bblfish.net/people/henry/card#me>
foaf:holdsAccount :accnt .
:accnt a foaf:OnlineAccount;
foaf:accountServiceHomePage </cert/> .
[] a rsa:RSAPublicKey;
cert:identity :accnt;
rsa:modulus """"
a3423146a072a33086073bda802c6d34be45a05081af6b801ae786ec1fcbb2d5be330ac434640ab
35298e54eb2a0c9dafef372be236b8b61b517d052d7daea9c2460307e823c22e556d634ed76ed00
88af2d631b493abd694c47d248398d2c94bfc043f687ce573b9cb88a3478962c06727c3e975236c
843a8e7fa43e653cd01"""^cert:hex;
rsa:public_exponent "65537"^cert:decimal .
So this document provides you with an account that links to your
WebID.
If the server you log into does not want to know anything about you,
this could be enough. If a server, say a foaf+ssl enabled wiki, wanted
to know about the Person whose account this was, they would have to
follow the foaf:holdsAccount relation (in the inverse direction), and
get that resource.
Of course as you will notice when you use the service, that you can
put anyone's Web Id in the form and get a certificate. So the service
should not trust what the Account document says. It needs to check
that something else makes it believe that this account really is
related to that person. The most efficient way to do this is of course
for the user to have his foaf list that account too.
So there is a lot that needs to be done still to make this better, and
perhaps even releasable. It is open source, and I welcome contributions.
The work put into this was mainly learning a few new frameworks such
as Wicket and the GlassFish application server, writing the code, and
then finding a server and deploying to it. I first deployed it to my
local server, but found there was not enough memory or hard drive
space (my disk was 95% full), then on another server that was lent to
me without guarantees, and that crashed at a few key moments. So I
ended up getting some cloud computing space at gogrid.com, who gave me
a two months free trial. I also bought various foafssl domains, not
because I necessarily think this is the best name, nor because I think
this will be a popular name that will become a verb like Google, but
just to avoid some mischievous person buying the domain and creating
confusion. When we have done our initial exploration and if we arrive
at the stage where a more formal standards process is required I'll be
happy to give these over if still needed to that body.
Henry
Blog: http://blogs.sun.com/bblfish
More information about the foaf-protocols
mailing list