# Packages
Package chain provides chain keys used in double ratchet sessions.
Package identity provides identity keys used for verifying the identity of a signal user.
Package message provides a structure for message keys, which are symmetric keys used for the encryption/decryption of Signal messages.
Package prekey provides prekey bundle structures for calculating a new Signal session with a user asyncronously.
Package root provides root keys which are used to derive new chain and root keys in a ratcheting session.
Package session provides a simple structure for session keys, which is a pair of root and chain keys for a session.