LSL Protocol/Ganymedia OpenMAIP v1.0 Specification

From Second Life Wiki
< LSL Protocol
Revision as of 16:54, 22 April 2010 by Ganymede Ceriaptrix (talk | contribs) (→‎Introduction: further improvements)
Jump to navigation Jump to search

Introduction

Ganymedia OpenMAIP (Open Metaverse Application Internetworking Protocol) provides a common standard, first-class citizen handshaking datagram exchange protocol for script applications, each fulfilling their own respective functionality contracts to exchange interoperable messages by exposing query-discoverable command services and command syntax to external objects. In addition, at its higher implementation levels, it provides industry-standard cryptographic message exchange for secure script-script, script-viewer and viewer-viewer communications across the Second Life chat messaging system. (By secure, in the sense of scripts "talking" to one another, this is meant "secure" as in "with high immunity to interception by other residents"; any individual with access to the LSL script engine would, of course, be capable of eavesdropping.)

OpenMAIP is based around exchange of binary-encoded hexadecimal bytestream messages rather than ASCII characters; therefore it is better suited to script-to-viewer communications than traditional "loose" multi-type LSL protcols or delimited lists and, indeed, could potentially be encapsulated directly within UDP and other TCP/IP network services in the future.

OpenMAIP supercedes the functionality provided by the Ganymedia Open Cryptographic Exchange Protocol, and is backwards-compatible with it. The basic notion of OpenMAIP is that it provides a common network discovery and service query framework; therefore, applications such as attachments may query for other OpenMAIP-supporting devices in their vicinity that support common functionality protocols, and also query those devices for acceptable command formats. The provision of challenge/response RC4 authentication allows conformance with closed protocols to be verified as well; it is expected that the RC4 challenge/response authentication keys will be published by architects of open protocols.

These notes are presently extremely poor, and will improve in the near future. This description is a work in progress.

Level 0: Transport Layer

Constants

Template:Constant

Frame format