USK: Updateable Subspace Key
Alla filer i Freenet identifieras med en
nyckel (key), på samma sätt som vanliga websiter identifieras med ett domännamn.
Updateable Subspace Keys används för att länka till den senaste versionen av en
Signed Subspace Key (SSK) site. USK-nycklar är egentligen bara ett användarvänligare lager runt SSK-nycklar, som döljer processen att söka efter nyare versioner av en site. Det finns två typer av USK-adresser:
1) Du kan ha en USK-adress med ett positivt tal på slutet, t ex:
http://127.0.0.1:8888/USK@rd0SN1...ABAAE/mysite/5/
Freenet-noden på din dator håller en lista på versioner av USK-nycklar som den känner till, utan att nödvändigtvis spara informationen som de hänvisar till. Denna lista är uppbyggd genom tidigare besök och även
bakgrundsrequests från tidigare besök till den här typen av länkar. När du besöker länken ovan, kollar noden i listan efter
mysite siten version 5 eller högre. Om den hittar någon, returneras den senaste. Därefter söker den, i bakgrunden, efter nyare versioner som den ännu inte känner till för att lägga till dem i
USK-registret för att ha nästa gång du besöker samma adress.
2) Den andra typen av USK-adress har ett negativt nummer på slutet, t ex:
http://127.0.0.1:8888/USK@rd0SN1...ABAAE/mysite/-7/
När du besöker en sådan länk söker Freenet efter den version (7) som du begärde, plus de fyra efterföljande (alltså 7, 8, 9, 10, 11) på din nod och på andra noder. Om den bara hittar version 7, kommer den att returnera den versionen. Om den hittar en eller flera av de andra, söker din nod efter en ny kvintett av versioner: 12, 13, 14, 15, 16. Noden upprepar detta tills det är fyra efterföljande versioner som den inte kan hitta. Den kommer då att returnera den senaste versionen som den har hittat så långt.
För båda typerna av USK-nycklar kommer adressfältet i webläsaren att ändras till den senaste versionens positiva tal, av de versioner som har hittats, t ex.:
http://127.0.0.1:8888/USK@rd0SN1...ABAAE
/mysite/5/ kan dirigeras om till http://127.0.0.1:8888/USK@rd0SN1...ABAAE
/mysite/11/
http://127.0.0.1:8888/USK@rd0SN1...ABAAE
/mysite/-7/ kan dirigeras om till http://127.0.0.1:8888/USK@rd0SN1...ABAAE
/mysite/14/
Infoga en USK-nyckel
Du kan infoga en site direkt som en USK-nyckel. Detta är till och med rekommenderat, eftersom kommande Freenet-versioners uppdaterings-algoritmer kan lägga in extra meta-data för att snabba upp sökningar.
Om du infogar en USK-nyckel med versionsnummer 0, avgör noden själv vilken den senaste versionen är och lägger in siten med ett versionsnummer högre. If you insert a USK with edition number 0, the node automatically works out what the latest edition is, and inserts the site with an edition one higher. Jämför detta med ett infogande med SKK-nyckel, där du själv måste hålla reda på vilken version du är på.
USK@rd0SN1...ABAAE/mysite/
0/
Om man infogare en USK-nyckel med ett versionsnummer
n, där
n > 0, kommer noden att försöka infoga den specifika versionen, även om versionerna innan ännu inte existerar. Om versionen redan finns, kommer noden att försöka med efterföljande versionsnummer tills ett oanvänt nummer hittas.
Noteringar
Det finns en vanlig missuppfattning att nedanstående är en giltig USK-länk:
http://127.0.0.1:8888/USK@rd0SN1...ABAAE/mysite-5/
Istället bör detta skriva som en SSK-länk:
http://127.0.0.1:8888/SSK@rd0SN1...ABAAE/mysite-5/
Den ovan beskrivna uppdateringsalgoritmen kan förändras i framtida versioner av Freenet.