home *** CD-ROM | disk | FTP | other *** search
- guint32: 32bit, msbf
- time_t: 2 * guint32
- strings: uint32 + bytes, no padding, NULL is encoded as 0xffffffff
- reserved, must be zero
-
- string hash: 16 bytes md5
- guint32 hash: 0xdeadbeef ^ x ^ (x>>16 | x&0xffff << 16)
-
-
- Header:
-
- "GnomeKeyring\n\r\0\n"
- 2 byte version, 1 byte cryto, 1 byte hash
-
- keyring data:
-
- string: keyring name
- time_t ctime
- time_t mtime
- guint32 flags (flag 0 == lock_on_idle)
- guint32 lock_timeout
- guint32 hash_iterations
- byte[8] salt
- guint32 reserved[4]
-
- hashed items:
-
- guint32 num_items
-
- num_items *
-
- guint32 id
- guint32 type
- guint32 num_attributes
-
- num_attributes *
- string name
- guint32 type
- guint32 int_hash, or string str_hash
-
- guin32 num_encrypted bytes
- encrypted data:
- bytes[16] encryted hash, (for decrypt ok verify)
-
- num_items *
- string display_name
- string secret
- time_t ctime
- time_t mtime
-
- string reserved_str
- guint[4] reserved_int2
-
- guint32 num_attributes
- num_attributes *
- string name
- guint32 type
- guint32 or string val
-
- guint acl_len
- acl_len *
- guint32 types_allowed
- string display_name
- string pathname
- string reserved_str
- guint32 reserved_uint
-
- zero padding to make even multiple of 16
-
-