In Salesforce, postMessage is mainly used for communicating in between Visualforce and Lightning components
The window.postMessage() method safely enables cross-origin communication between Window objects
The description and intent of this is quite clear, however, if we use it to send/receive data across components belonging to different namespaces (with api v40+ = Locker Service), for example:
because, the namespaced component does not provide any event to do so natively within lightning (using app or cmp events) but does provide the capability of attaching a script (where this can be implemented easily), would using postMessage be a convenient and secure approach?
If not - is there a better way to communicate in between components that bellong to different namespaces without native lightning events?