OpenID

**OpenID** é un sistema de identificación dixital descentralizado, co cal un usuario pode identificarse nunha páxina web a través dunha URL ou dun XRI na versión actual, e pode ser verificado por calquera servidor que soporte o protocolo.
## Características
Nos sitios web que admiten OpenID, os usuarios non teñen que crear unha nova conta de usuario para obter o acceso. No seu lugar, só precisan dispoñer dun identificador creado nun servidor que verifique OpenID, chamado *provedor de identidade* ou *IdP*. O provedor de identidade pode confirmar a identificación OpenID do usuario a un sitio que soporte este sistema.

A diferenza das arquitecturas Single Sign-On, OpenId non especifica o mecanismo de autenticación. Polo tanto, a seguridade dunha conexión OpenId depende da confianza que teña o cliente OpenID no provedor de identidade. Se non existe confianza no provedor, a autenticación non será adecuada para servizos bancarios ou transaccións de comercio electrónico, aínda que o provedor de identidade poida usar un sistema de autenticación forte que o habilite para tales fins.

OpenID está gañando forza debido ao anuncio dalgúns sitios grandes, como Technorati de adoptaren este sistema. O software MediaWiki conta cunha extensión para permitir acceso por OpenID, pero polo momento non se usa nos servidores de Wikipedia.

## Historia 
### Desenvolvemento 
O sistema OpenID desenvolveuno orixinalmente Brad Fitzpatrick de LiveJournal, aínda que David Recordon de VeriSign, Josh Hoyt de JanRain e Dick Hardt de Sxip foron posteriores coautores. As novas especificacións de OpenID desenvólveas unha meritocracia fundamentada na lista de distribución do proxecto. Para apoiar a implantación de OpenID, un grupo de empresas anunciou en agosto de 2006 un programa de contribucións de desenvolvemento que lles ofrecía 5.000 dólares aos primeiros dez proxectos de software libre que implementasen total compatibilidade con OpenID.

A partir da versión 1.1, OpenID utiliza o protocolo de busca de servizos Yadis. En decembro de 2007 viu a luz a versión 2.0 da Autenticación OpenID.

## Terminoloxía 
Un glosario básico dos termos usados con OpenID:
* Usuario final: a persoa que quere acceder coa súa identidade a un sitio.
* Identificador: a URL ou XRI elixida polo usuario final como seu identificador OpenID.
* Provedor de identidade: un provedor de servizos que ofrece rexistro de URL ou XRI OpenID e prové autenticación OpenID.
* Parte confidente: o sitio que quere verificar a identidade do usuario final.

## Como funciona OpenID 
Un sitio web, como `exemplo.com`, que quere ofrecer acceso aos seus visitantes a través de OpenID, coloca un formulario de identificación nalgunha das súas páxinas. Ao contrario que os típicos formularios de identificación que preguntan ao usuario polo seu nome e contrasinal, neste caso só existe un campo para o identificador OpenID. O sitio web pode optar por mostrar un pequeno logo OpenID xunto ao campo. Este formulario estará conectado a unha implementación da biblioteca cliente OpenID.

### Exemplos 
Se, por exemplo, Antía quere acceder a `exemplo.com` usando o identificador OpenID 
`antia.proveedor-openid.org` que ela previamente rexistrou no proxecto de identidade `proveedor-openid.org`, simplemente vai a `exemplo.com` e teclea `antia.proveedor-openid.org` na caixa de identificación de OpenID. A partir da versión 2.0 da autenticación OpenID (e nalgunhas das implementacións de OpenID 1.1) Antía tamén pode identificarse tecleando un i-nome como `=exemplo.antia` ou `=exemplo.comunidade*antia`.

Se o identificador é unha URL, a primeira cousa que debe realizar a parte (`exemplo.com`) é transformala a unha forma canónica, del tipo `http://antia.proveedor-openid.org/`. Con OpenID 1.0, a parte confidente solicita entón a páxina web situada en dita URL e, vía unha etiqueta HTML de ligazón, descobre que o servidor de provedor é, poñamos, `http://proveedor-openid.org/openid-auth.php`. Tamén descobre se debe ou non usar unha *identidade delegada* (véxase máis abaixo). A partir de OpenID 1.1, o cliente realiza o descubrimento destes datos solicitando o '*documento XRDS* (tamén chamado *documento Yadis*) co tipo de contido `application/xrds+xml`, que pode estar dispoñible en dita URL e que sempre estará dispoñible a través dunha XRI.

### Modos de comunicación 
Hai dous modos mediante os cales a parte confidente pode comunicarse co provedor de identidade:

# `checkid_immediate`, o cal está orientado á identificación automática e no que toda comunicación entre os dous servidores se realiza como unha tarefa de fondo, sen que o usuario sexa consciente;
# `checkid_setup`, no que o usuario comunícase directamente co servidor provedor usando o mesmo navegador web que emprega para acceder ao sitio da parte confidente.

A segunda opción é máis popular na Web; tamén pode suceder que un `checkid_immediate` termine converténdose nun `checkid_setup` se a operación non pode automatizarse.

En primeiro lugar, a parte confidente e o provedor (opcionalmente) establecen un segredo compartido, que a parte confidente se encarga de almacenar. Se empregamos `checkid_setup`, a parte confidente redirixe ao navegador web do usuario cara ao provedor. No exemplo, o navegador de Antía sería redirixido a `provedor-openid.org` de xeito que Antía puidese autenticarse contra o provedor.

O método de autenticación pode variar, mais normalmente un provedor OpenID pide un contrasinal (e entón posiblemente almacena a sesión do usuario usando cookies, tal e como fan moitos sitios con autenticación baseada en contrasinal). En caso de que Antía non teña unha sesión activa en `proveedor-openid.org`, este solicitará o seu contrasinal. Unha vez teña a sesión aberta, o servidor preguntará acerca da confianza que lle ofrece `http://exemplo.com/openid-retorno.php` (a páxina designada por `exemplo.com` como destino ao que o usuario debería volver tras completar a autenticación para recibir os detalles da súa identidade). Se ela responde positivamente, a autenticación OpenID considérase exitosa e o navegador é redirixido á páxina de retorno indicada coas credenciais outorgadas. Se Antía decide non fiarse do sitio da parte confidente, o navegador tamén será redirixido, pero se notificará do rexeitamento á parte confidente, de xeito que `exemplo.com` como contrapartida se negará a autenticar a Antía.

Non obstante, o proceso de *login* non rematou aínda porque nesta etapa, `exemplo.com` non pode decidir se as credenciais recibidas realmente foron recibidas dende `proveedor-openid.org`. Se eles tiñan establecido previamente un segredo compartido, o consumidor pode validar o segredo compartido recibido coas credenciais que tivese gardadas previamente. Cada consumidor é chamado *con estado* porque garda o segredo compartido entre sesións. En comparación, un consumidor *sen estado* ou *mudo* deberá facer unha petición máis a fondo (`check_authentication`) para asegurarse que os datos viñeron de verdade de `provedor-openid.org`.

Despois de que o identificador de Antía fose verificado, ela será considerada rexistrada en `exemplo.com` como `antia.provedor-openid.org`. O sitio pode entón gardar a sesión ou, se este é o seu primeiro rexistro, pedir a Antía que introduza información específica para `exemplo.com` para rematar o rexistro.

## Fundación OpenID 
A Fundación OpenID, radicada nos Estados Unidos, así como a súa filial OpenID Europe, creáronse en 2007. É unha organización sen fin de lucro cuxo papel é a organización e o desenvolvemento do framework OpenID para a comunidade e de administrar a súa propiedade intelectual.

## Identificadores OpenID 
A partir da versión 2.0 da autenticación OpenID así como nalgunhas das implementacións de OpenID 1.1, hai dous tipos de identificadores: URLs e XRIs.

### URLs 
Hai dous xeitos de obter unha URL OpenId válida que poida ser usada para rexistrarse en tódolos sitios que soporten OpenID.

# Primeiro, usar unha URL existente que o usuario controle (como o seu blog ou páxina persoal), e se sabe editar HTML, poderá inserir os tags OpenID apropiados no código seguindo as instrucións das especificacións de OpenID. Comentar que usando un subdominio poderá facer que o seu OpenID sexa máis sinxelo de escribir, mais non é preciso.
# Segundo, que o usuario rexistre o seu identificador OpenID cun provedor de identidades. Estes ofrecen a posibilidade de rexistrar URLs (habitualmente terceiros niveis de dominio) configuradas automaticamente para ser utilizadas con servizos de autenticación OpenID.

### XRIs 
Os XRIs son un novo sistema de identificación en Internet, deseñado especificamente para identidades dixitais de dominio cruzado.

#### Características 
Os XRIs son de dúas formas i-nomes e i-números que son habitualmente rexistrados simultaneamente como equivalentes. Os I-nomes son reasignables (semellantes a nomes de dominio), namentres que os i-números nunca son reasignados. Cando un i-nome XRI é usado como un identificador OpenID, este é resolto inmediatamente polo i-número equivalente (o elemento CanonicalID dun documento XRDS). Este i-número é o identificador OpenID almacenado pola parte confidente. Deste xeito o usuario e a parte confidente están protexidos contra os cambios de identidade que poderían suceder cunha URL fundamentada nun nome DNS reasignable.

## Críticas 
OpenID recibiu numerosas críticas de base relativas a problemas dende distintos ámbitos, pero en especial de seguridade e privacidade. A unificación de tódalas identidades implica altos riscos, amais do feito de que o servidor de identidade coñecerá tódalas webs que se visiten cada día. É máis, se se comprometese a seguridade do ordenador usuario ou do servidor, toda a vida dixital do usuario quedaría desprotexida.

## Notas 
## Véxase tamén 
### Outros artigos
* Identity Management
### Ligazóns externas 
* GalizaID — Servidor gratuíto OpenID 
* OpenID Europe Foundation — Organización sen fin de lucro destinada ao desenvolvemento do sistema OpenID en Europa 
* OpenID.net Sitio Oficial de OpenID 
* OpenIDSource.org OpenID Source 
* Lista de sitios Provedores de Identidade 
* OpenID Enabled — recursos para usuarios e desenvolvedores de OpenID 
* identity.eastmedia.com — Información sobre OpenID e Identidade Dixital 
* The problem(s) with OpenID Unha análise crítica profunda de OpenID