Embora o que o laser diga seja verdadeiro, acredito que o motivo do SRID aparecer como 0 é devido a uma decisão tomada pelos desenvolvedores do Postgis de que um SRID indefinido deve ser relatado como 0 - houve um debate no qual -1 também foi sugerido. (Eu sei disso porque participei do referido debate sobre o IRC e favoreci -1, pois acho que é obviamente mais indefinido que 0).
Se você observar a definição da visualização geography_columns,
\df+ geography_columns
SELECT current_database() AS f_table_catalog,
n.nspname AS f_table_schema,
c.relname AS f_table_name,
a.attname AS f_geography_column,
postgis_typmod_dims(a.atttypmod) AS coord_dimension,
postgis_typmod_srid(a.atttypmod) AS srid,
postgis_typmod_type(a.atttypmod) AS type
FROM pg_class c,
pg_attribute a,
pg_type t,
pg_namespace n
WHERE t.typname = 'geography'::name AND a.attisdropped = false AND a.atttypid = t.oid AND a.attrelid = c.oid AND c.relnamespace = n.oid AND NOT pg_is_other_temp_schema(c.relnamespace) AND has_table_privilege(c.oid, 'SELECT'::text);
você verá uma referência a uma função postgis_typmod_srid. Após a toca do coelho, você encontrará a função definida aqui como:
#define TYPMOD_SET_SRID(typmod, srid) ((typmod) = (((typmod) & 0xE00000FF) | ((srid & 0x001FFFFF)<<8))).
É fácil confirmar isso criando uma coluna de geografia e examinando geography_columns. Como você também pode criar uma coluna de geometria com qualquer esferóide personalizado, parece um pouco inútil permitir essa funcionalidade no tipo de geografia, dada a prevalência do WGS84.
`