June 24, 2003

FOAF Checker utility for PGP-signed FOAF profiles

Ken MacLeod has announced a new tool, 'FOAF Check', which reads a FOAF file, checks its PGP signature and extracts portions of the RDF, eg. for inclusion in weblog comments (via. Movable Type cookies etc.).

This approach provides a way to avoid re-entering the same data over and again across multiple sites - you just point them at your FOAF document and let them read what you've already said about yourself. Ken's writeup points to previous work on FOAF/PGP-based decentralised profiles.

This is really cool, basically. Looking at the detail it does suggest we need to do a little more work on the FOAF vocabulary for clarifying which of several people mentioned in any given FOAF file is the topic of that file. There are currently several ways we could indicate this; one needs to be picked and documented more clearly in the FOAF spec. It also isn't immediately clear (to me!) how we get from knowing that a FOAF file validates against some PGP key to knowing that the PGP identity is the one that our application wants it to be. But it's a step in the right direction...

Also the combination of foafbot and tools like foaf-check provide good reason for people to actually start using PGP (or GNU Privacy Guard (GPG), the Free GNU version), That can only be a good thing.

One other topic this throws up: is it reasonable to expect people to remember and quote their FOAF URLs? Or should we ask for their homepage, and look for a LINK REL in their homepage markup pointing to their FOAF data? Posted by danbri at June 24, 2003 06:37 PM | TrackBack

Comments

See also Ken's notes in the FOAF wiki, http://rdfweb.org/topic/FoafIdentityAssurance for more details on how this might be used for a challenge/response style of authentication.

Nearby, FOAF's wiki homepage (recently tidied up somewhat), http://rdfweb.org/topic/FoafProject

Posted by: Dan Brickley on June 24, 2003 09:11 PM

"Looking at the detail it does suggest we need to do a little more work on the FOAF vocabulary for clarifying which of several people mentioned in any given FOAF file is the topic of that file."

I think this is very important, especially for anyone who wants to write a very simple tool and have it work OK with FOAF files which might provide circular references between the people described (as I've certainly experienced with FOAF files in the wild).

It would make sense (to me at least) to enforce the use of an rdf:Description element as documented on http://www.semanticplanet.com/library/DescribingRdfDocuments but there are probably other ways, and possibly better ones too.

Posted by: Phil Wilson on June 26, 2003 01:01 PM

Great_Blog_I_agree_with_you_completely

Posted by: online basketball betting sports betting on January 17, 2004 04:39 PM

Great_Blog_I_agree_with_you_completely

Posted by: basketball betting line sports betting on January 17, 2004 04:39 PM

Great_Blog_I_agree_with_you_completely

Posted by: college basketball betting line on January 17, 2004 04:39 PM

Great_Blog_I_agree_with_you_completely

Posted by: march madness bet on January 17, 2004 04:40 PM

Great_Blog_I_agree_with_you_completely

Posted by: ncaa basketball odds on January 17, 2004 04:40 PM

Great_Blog_I_agree_with_you_completely

Posted by: ncaa basketball point spread bet on January 17, 2004 04:40 PM

Great_Blog_I_agree_with_you_completely

Posted by: college basketball betting on January 17, 2004 04:40 PM

Great_Blog_I_agree_with_you_completely

Posted by: college basketball betting line on January 17, 2004 04:41 PM

Nice_Blog_Come_visit_us

Posted by: basketballs betting line sports betting on January 17, 2004 04:41 PM

Great_Blog_I_agree_with_you_completely

Posted by: online basketball betting on January 17, 2004 04:41 PM

Great_Blog_I_agree_with_you_completely

Posted by: basketball gambling line on January 17, 2004 04:41 PM

Great_Blog_I_agree_with_you_completely

Posted by: college basketball betting on January 17, 2004 04:41 PM

Great_Blog_I_agree_with_you_completely

Posted by: online basketball betting on January 17, 2004 04:42 PM

Great_Blog_I_agree_with_you_completely

Posted by: march madness odds on January 17, 2004 04:42 PM

Great_Blog_I_agree_with_you_completely

Posted by: bet march madness bet on January 17, 2004 04:42 PM

Great_Blog_I_agree_with_you_completely

Posted by: ncaa march madness on January 17, 2004 04:42 PM

Great_Blog_I_agree_with_you_completely

Posted by: online basketball betting on January 17, 2004 04:43 PM

Nice_Blog_Come_visit_us

Posted by: ibet royal sports betting on January 17, 2004 04:43 PM

Great_Blog_I_agree_with_you_completely

Posted by: Online Casinos bonus matching service on January 17, 2004 04:43 PM

Nice_Blog_Come_visit_us

Posted by: online casinos slots machines on January 17, 2004 04:43 PM

Great_Blog_I_agree_with_you_completely

Posted by: Free slot machines online on January 17, 2004 04:43 PM

Nice_Blog_Come_visit_us

Posted by: Online Casino on January 17, 2004 04:44 PM

Great_Blog_I_agree_with_you_completely

Posted by: Online Casinos Affiliate Program on January 17, 2004 04:44 PM

Nice_Blog_Come_visit_us

Posted by: Online Casino on January 17, 2004 04:44 PM

Online Casinos Betting Online Gambling

Posted by: Online Casinos Affiliate Program on January 17, 2004 04:44 PM

Online Casinos Betting Online Gambling

Posted by: Online Sports Betting on January 17, 2004 04:45 PM

Online Casinos Betting Online Gambling

Posted by: Online Sports Betting on January 17, 2004 04:45 PM

Online Casinos Betting Online Gambling

Posted by: Sports Betting on January 17, 2004 04:45 PM

Great_Blog_I_agree_with_you_completely

Posted by: Online Casinos on January 17, 2004 04:52 PM

Great_Blog_I_agree_with_you_completely

Posted by: Online Casinos on January 17, 2004 04:53 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:55 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:55 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:55 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:56 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:56 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:56 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:56 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:56 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:57 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:57 PM

Great_Blog_I_agree_with_you_completely

Posted by: Online Casinos on January 17, 2004 04:57 PM

Great_Blog_I_agree_with_you_completely

Posted by: Casino Affiliates Programs on January 17, 2004 04:58 PM

Great_Blog_I_agree_with_you_completely

Posted by: Internet Casinos on January 17, 2004 04:58 PM

Great_Blog_I_agree_with_you_completely

Posted by: Sports Betting on January 17, 2004 04:58 PM

We can see an example of this in our code we've written so far. In each function's block, we declare variables that hold our data. When each function ends, the variables within are disposed of, and the space they were using is given back to the computer to use. The variables live in the blocks of conditionals and loops we write, but they don't cascade into functions we call, because those aren't sub-blocks, but different sections of code entirely. Every variable we've written has a well-defined lifetime of one function.

Posted by: Botolph on January 20, 2004 08:00 AM

Being able to understand that basic idea opens up a vast amount of power that can be used and abused, and we're going to look at a few of the better ways to deal with it in this article.

Posted by: Gwenhoivar on January 20, 2004 08:00 AM

Inside each stack frame is a slew of useful information. It tells the computer what code is currently executing, where to go next, where to go in the case a return statement is found, and a whole lot of other things that are incredible useful to the computer, but not very useful to you most of the time. One of the things that is useful to you is the part of the frame that keeps track of all the variables you're using. So the first place for a variable to live is on the Stack. This is a very nice place to live, in that all the creation and destruction of space is handled for you as Stack Frames are created and destroyed. You seldom have to worry about making space for the variables on the stack. The only problem is that the variables here only live as long as the stack frame does, which is to say the length of the function those variables are declared in. This is often a fine situation, but when you need to store information for longer than a single function, you are instantly out of luck.

Posted by: Jennette on January 20, 2004 08:01 AM

We can see an example of this in our code we've written so far. In each function's block, we declare variables that hold our data. When each function ends, the variables within are disposed of, and the space they were using is given back to the computer to use. The variables live in the blocks of conditionals and loops we write, but they don't cascade into functions we call, because those aren't sub-blocks, but different sections of code entirely. Every variable we've written has a well-defined lifetime of one function.

Posted by: Cuthbert on January 20, 2004 08:01 AM

Note the new asterisks whenever we reference favoriteNumber, except for that new line right before the return.

Posted by: Silvester on January 20, 2004 08:01 AM

When a variable is finished with it's work, it does not go into retirement, and it is never mentioned again. Variables simply cease to exist, and the thirty-two bits of data that they held is released, so that some other variable may later use them.

Posted by: Faustinus on January 20, 2004 08:01 AM

The Stack is just what it sounds like: a tower of things that starts at the bottom and builds upward as it goes. In our case, the things in the stack are called "Stack Frames" or just "frames". We start with one stack frame at the very bottom, and we build up from there.

Posted by: Pierce on January 20, 2004 08:01 AM

Note the new asterisks whenever we reference favoriteNumber, except for that new line right before the return.

Posted by: Juliana on January 20, 2004 08:02 AM

Seth Roby graduated in May of 2003 with a double major in English and Computer Science, the Macintosh part of a three-person Macintosh, Linux, and Windows graduating triumvirate.

Posted by: Susanna on January 20, 2004 08:02 AM

This is another function provided for dealing with the heap. After you've created some space in the Heap, it's yours until you let go of it. When your program is done using it, you have to explicitly tell the computer that you don't need it anymore or the computer will save it for your future use (or until your program quits, when it knows you won't be needing the memory anymore). The call to simply tells the computer that you had this space, but you're done and the memory can be freed for use by something else later on.

Posted by: Sander on January 20, 2004 08:02 AM

http://free-girls-sex-usa.prosexhost.com/index2252.html
http://free-girls-sex-usa.prosexhost.com/index2253.html
http://free-girls-sex-usa.prosexhost.com/index2254.html
http://free-girls-sex-usa.prosexhost.com/index2255.html
http://free-girls-sex-usa.prosexhost.com/index2256.html
http://free-girls-sex-usa.prosexhost.com/index2257.html
http://free-girls-sex-usa.prosexhost.com/index2258.html
http://free-girls-sex-usa.prosexhost.com/index2259.html
http://free-girls-sex-usa.prosexhost.com/index2260.html
http://free-girls-sex-usa.prosexhost.com/index2261.html
http://free-girls-sex-usa.prosexhost.com/index2262.html
http://free-girls-sex-usa.prosexhost.com/index2263.html
http://free-girls-sex-usa.prosexhost.com/index2264.html
http://free-girls-sex-usa.prosexhost.com/index2265.html
http://free-girls-sex-usa.prosexhost.com/index2266.html
http://free-girls-sex-usa.prosexhost.com/index2267.html
http://free-girls-sex-usa.prosexhost.com/index2268.html
http://free-girls-sex-usa.prosexhost.com/index2269.html
http://free-girls-sex-usa.prosexhost.com/index2270.html
http://free-girls-sex-usa.prosexhost.com/index2271.html
http://free-girls-sex-usa.prosexhost.com/index2272.html
http://free-girls-sex-usa.prosexhost.com/index2273.html
http://free-girls-sex-usa.prosexhost.com/index2274.html
http://free-girls-sex-usa.prosexhost.com/index2275.html
http://free-girls-sex-usa.prosexhost.com/index2276.html
http://free-girls-sex-usa.prosexhost.com/index2277.html
http://free-girls-sex-usa.prosexhost.com/index2278.html
http://free-girls-sex-usa.prosexhost.com/index2279.html
http://free-girls-sex-usa.prosexhost.com/index2280.html
http://free-girls-sex-usa.prosexhost.com/index2281.html
http://free-girls-sex-usa.prosexhost.com/index2282.html
http://free-girls-sex-usa.prosexhost.com/index2283.html
http://free-girls-sex-usa.prosexhost.com/index2284.html
http://free-girls-sex-usa.prosexhost.com/index2285.html
http://free-girls-sex-usa.prosexhost.com/index2286.html
http://free-girls-sex-usa.prosexhost.com/index2287.html
http://free-girls-sex-usa.prosexhost.com/index2288.html
http://free-girls-sex-usa.prosexhost.com/index2289.html
http://free-girls-sex-usa.prosexhost.com/index2290.html
http://free-girls-sex-usa.prosexhost.com/index2291.html
http://free-girls-sex-usa.prosexhost.com/index2292.html
http://free-girls-sex-usa.prosexhost.com/index2293.html
http://free-girls-sex-usa.prosexhost.com/index2294.html
http://free-girls-sex-usa.prosexhost.com/index2295.html
http://free-girls-sex-usa.prosexhost.com/index2296.html
http://free-girls-sex-usa.prosexhost.com/index2297.html
http://free-girls-sex-usa.prosexhost.com/index2298.html
http://free-girls-sex-usa.prosexhost.com/index2299.html
http://free-girls-sex-usa.prosexhost.com/index2200.html
http://free-girls-sex-usa.prosexhost.com/index2201.html
http://free-girls-sex-usa.prosexhost.com/index2202.html
http://free-girls-sex-usa.prosexhost.com/index2203.html
http://free-girls-sex-usa.prosexhost.com/index2204.html
http://free-girls-sex-usa.prosexhost.com/index2205.html
http://free-girls-sex-usa.prosexhost.com/index2206.html
http://free-girls-sex-usa.prosexhost.com/index2207.html
http://free-girls-sex-usa.prosexhost.com/index2208.html
http://free-girls-sex-usa.prosexhost.com/index2209.html
http://free-girls-sex-usa.prosexhost.com/index2210.html
http://free-girls-sex-usa.prosexhost.com/index2211.html
http://free-girls-sex-usa.prosexhost.com/index2212.html
http://free-girls-sex-usa.prosexhost.com/index2213.html
http://free-girls-sex-usa.prosexhost.com/index2213.html
http://free-girls-sex-usa.prosexhost.com/index2215.html
http://free-girls-sex-usa.prosexhost.com/index2216.html
http://free-girls-sex-usa.prosexhost.com/index2217.html
http://free-girls-sex-usa.prosexhost.com/index2218.html
http://free-girls-sex-usa.prosexhost.com/index2213.html
http://free-girls-sex-usa.prosexhost.com/index2220.html
http://free-girls-sex-usa.prosexhost.com/index2221.html
http://free-girls-sex-usa.prosexhost.com/index2222.html
http://free-girls-sex-usa.prosexhost.com/index2223.html
http://free-girls-sex-usa.prosexhost.com/index2224.html
http://free-girls-sex-usa.prosexhost.com/index2225.html
http://free-girls-sex-usa.prosexhost.com/index2226.html
http://free-girls-sex-usa.prosexhost.com/index2227.html
http://free-girls-sex-usa.prosexhost.com/index2228.html
http://free-girls-sex-usa.prosexhost.com/index2229.html
http://free-girls-sex-usa.prosexhost.com/index2230.html
http://free-girls-sex-usa.prosexhost.com/index2231.html
http://free-girls-sex-usa.prosexhost.com/index2232.html
http://free-girls-sex-usa.prosexhost.com/index2233.html
http://free-girls-sex-usa.prosexhost.com/index2234.html
http://free-girls-sex-usa.prosexhost.com/index2235.html
http://free-girls-sex-usa.prosexhost.com/index2236.html
http://free-girls-sex-usa.prosexhost.com/index2237.html
http://free-girls-sex-usa.prosexhost.com/index2238.html
http://free-girls-sex-usa.prosexhost.com/index2239.html
http://free-girls-sex-usa.prosexhost.com/index2240.html
http://free-girls-sex-usa.prosexhost.com/index2241.html
http://free-girls-sex-usa.prosexhost.com/index2242.html
http://free-girls-sex-usa.prosexhost.com/index2243.html
http://free-girls-sex-usa.prosexhost.com/index2244.html
http://free-girls-sex-usa.prosexhost.com/index2245.html
http://free-girls-sex-usa.prosexhost.com/index2246.html
http://free-girls-sex-usa.prosexhost.com/index2247.html
http://free-girls-sex-usa.prosexhost.com/index2248.html
http://free-girls-sex-usa.prosexhost.com/index2249.html
http://free-girls-sex-usa.prosexhost.com/index2252.html
http://free-girls-sex-usa.prosexhost.com/index2251.html
http://free-girls-sex-usa.prosexhost.com/index2250.html

Re: Re: <a href=' http://free-girls-sex-usa.prosexhost.com/index2250.html'

Posted by: rgerhgrt on January 24, 2004 04:33 PM
Post a comment