Copyright © 2001 - 2005 SILC Project
SILC Project Website
SILC Toolkit Reference Manual
Index

SILC Toolkit Reference Manual
SILC Core Library
    SILC Authentication Interface
    SILC Message Interface
    SILC Channel Interface
    SILC Command Interface
    SILC Notify Interface
    SILC Status Types
    SILC Modes
    SILC ID Interface
    SILC ID Cache Interface
    SILC Argument Interface
    SILC Attributes Interface
    Packet Protocol Interface
SILC Utility Library
    Basic SILC Types
    SILC Buffer Interface
    SILC Buffer Format Interface
    SILC Hash Table Interface
    SILC Logging Interface
    SILC Memory Interface
    SILC Mutex Interface
    SILC Thread Interface
    SILC Network Interface
    SILC Schedule Interface
    SILC Socket Interface
    SILC Protocol Interface
    SILC Config Interface
    SILC File Util Interface
    SILC String Util Interface
    SILC UTF-8 Interface
    SILC Stringprep Interface
    SILC Util Interface
    SILC List Interface
    SILC Dynamic List Interface
    SILC VCard Interface
    SILC Application Utilities
    SILC MIME Interface
SILC Crypto Library
    Introduction to SILC RNG
    SILC RNG Interface
    SILC Cipher API
    SILC PKCS API
    SILC PKCS#1 API
    SILC Hash Interface
    SILC HMAC Interface
SILC SFTP Library
    SILC SFTP Interface
    SFTP Filesystems Interface
SILC Client Library
    Using SILC Client Library Tutorial
    Arguments for command_reply Client Operation
    SilcStatus Error Arguments in command_reply Client Operation
    Arguments for notify Client Operation
    Unicode and UTF-8 Strings in Client Library
    Client Library Interface Reference
SILC Key Exchange Library
    SILC SKE Interface
    SKE Status Types
    SKE Diffie Hellman Groups
    SKE Payloads
SILC Math Library
    SILC MP Interface
    SILC Math Interface

Resource Links
SILC Project Website
SILC Protocol Documentation
SILC White Paper
SILC FAQs





Function silc_message_payload_decrypt

SYNOPSIS

    bool silc_message_payload_decrypt(unsigned char *data,
                                      size_t data_len,
                                      bool private_message,
                                      bool static_key,
                                      SilcCipher cipher,
                                      SilcHmac hmac,
                                      bool check_mac);

DESCRIPTION

    Decrypt Message Payload indicated by `data'.  If the payload is
    channel message then `private_message' is FALSE, and if it is
    private message it is TRUE.  If the private message key is static
    (pre-shared key) then protocol dictates that the IV is present
    and `static_key' must be set to TRUE.  If the key is not static
    (Key Agreement was done for the key) then it MUST be FALSE.  For
    channel messages the `static_key' is ignored.

    This is usually used by the Message Payload interface itself but can
    be called by the appliation if separate decryption process is required.
    For example server might need to call this directly in some 
    circumstances. The `cipher' is used to decrypt the payload.  If
    `check_mac' is FALSE then MAC is not verified.






SILC Message Interface
SilcMessagePayload
SilcMessageSignedPayload
SilcMessageFlags
silc_message_payload_decrypt
silc_message_payload_parse
silc_message_payload_encrypt
silc_message_payload_encode
silc_message_payload_free
silc_message_get_flags
silc_message_get_data
silc_message_get_mac
silc_message_get_iv
silc_message_get_signature
silc_message_signed_payload_parse
silc_message_signed_payload_encode
silc_message_signed_payload_free
silc_message_signed_verify
silc_message_signed_get_public_key




Copyright © 2001 - 2005 SILC Project
SILC Project Website
SILC Toolkit Reference Manual
Index