Plugin koji nosi naziv Native Client distribuira se u okviru open source BSD licence i dizajniran je da radi sa svim većim platformama i pretraživačima. Native Client obezbeđuje Web bazirano runtime okruženje za portabl x86 binarne. Pored toga takođe olakšava komunikaciju između JavaScript i Native Client izvršnih.
Na ovaj način se omogućava da kompleksne Web aplikacije bez ikakvih problema pojačaju kod za zadatke koji zahtevaju dosta procesorske snage. Omogućavanje Web aplikacijama da pokrenu kod oduvek predstavlja veliki sigurnosni rizik. Microsoft-ova COM bazirana ActiveX tehnologija, koja ima za cilj da programerima obezbedi slične mogućnosti, uveliko se smatra najodgovornijom za česte napade izazvane štetnim kodom.
Google veruje da njihov sigurnosni model ima potencijal da postane mnogo robusniji i efektivniji nego sistem označavanja koda od poverenja korišćenjem ActiveX sigurnosnih modela na papiru vezano za projekat. ActiveX je zavisna od toga koliko korisnik donosi smotrene odluke o poverenju i koliko se te odluke često iskorišćavaju.
ActiveX ne obezbeđuje nikakve garancije u vezi toga koja je poverljva kontrola sigurna a kada kontrola sama po sebi nije inherentno štetna, pa nedostaci mogu biti iskorišćeni često nudeći izvršavanje proizvoljnog koda, navodi se u dokumentu. Za razliku od toga NaCL je dizajniran tako da spreči takvu vrstu iskorišćavanja čak i za ugrožene NaCl module.
Native Client framework se sastoji od poverljivih i nepoverljivih modula koji su pokrenuti u njihovim sopstvenim procesima i koji komuniciraju preko RPC sistema. Moduli nekih drugih proizvođača bez poverenja sadrže programiranje specifično za aplikaciju čime se ojačava Native Client Container radi interakcije sa modulima od poverenja koji vrše bilo koje aktivnosti koje utiču na osnovnu platformu, uključujući mrežne operacije i pristup sistemu datoteka.
Ovaj Container nameće sigurnosne karakteristike ponašanju koda nekog drugog proizvođača i korisnicima pruža granularnu kontrolu nad odobrenjima koja se dodeljuju kodu nekog drugog proizvođača. Google obezbeđuje prilagodljivi GCC build alat koji se može koristiti za sastavljanje portabl binarnih koje su kompatibilne sa Native Client infrastrukturom.
Na ovaj način je veoma lako obezbediti postojeći kod. Kao test Google je obezbedio H.264 enkoder koji ima nekih 11.000 linija više nego konvencionalni C kod. Da bi enkoder izvršio kompilaciju i bio pokrenut o okviru Native Client-a, potrebno je da doda približno 20 linija koda i da izvrši modifikaciju Makefile-a.
Rezultujuće binarne su u potpunosti portabilne i mogu biti pokrenute bez potrebne rekompilacije na bilo kom sistemu koji je podržan od strane Native Client-a. Google je obezbedio i nekoliko primera na osnovu kojih će pokazati koliko je lako adaptirati program tako da može biti korišćen sa Native Client sistemom.
Najjednostavniji od svih primera jeste mala Hello World aplikacija koja prikazuje kako načiniti matičnu funkciju koju je moguće pozvati preko JavaScript-a. Za upotrebu ove funkcije u okviru Web strane, C fajl mora biti kompajliran u Native Client izvršnu koja se tada ugrađuje u Web stranu i kojoj je moguće pristupiti preko JavaScript-a.
Pored ovoga Native Client nudi veliki broj mogućnosti za izradu matičnih/Web hibridnih aplikacija. Zajedno sa više nego potrebnim unapređenjima u JavaScript performansama, podrška za premošćavanje jaza između JavaScript i matičnog koda zaista može izvršiti transformaciju Web-a.
Коментари
Popularni servis za mikroblog-ove Twitter nedavno je integrisan sa Friend Connect, Google-ovom Open Identification platformom. Sada korisnici imaju mogućnost da se pridruže Google Friend Connect omogućenom sajtu sa njihovim Twitter informacijama za logovanje. Korisnici pored toga imaju mogućnost da upotrebe svoj Friend Connect profil da vide da li su njihovi prijatelji na Twitter-u takođe članovi tog sajta. Ukoliko nisu oni imaju mogućnost da ih pozovu slanjem linka ka novom sajtu. Pored toga, korisnici mogu odabrati da njihov Google profil zamene Twitter profilom prilikom interakcije sa Friend Connect sajtovima.