Ik heb een workflow ontwikkeld waarbij de data als een event-object wordt doorgegeven, en als verificatie wordt o.a een hash meegestuurd. De identifiers en rangordenummers van de senders zijn bekend op de server, evenals de dataformats. Op deze manier is het zeer moeilijk om malafide data te injecteren of om data te kopieëren, en wordt een "Man-in-the-middle attack" onmogelijk gemaakt.
Het action-object onderneemt na ontvangst van het event-object de bedoelde acties.
Het Secure Tranfser Object is verantwoordelijk voor versleuteling van de data-objecten die worden uitgewisseld tussen client en server.
<?php $handler = new $objEventHandler; $event=$handler->catch64Event('json','raw'); $handler->process(); ?>
De opbouw van de eventhandler op de server is equivalent aan die van de client
{ "sender" : "application_saveData", // format : {namespace}_{function} "action" : "saveToTable", "data" : { "field1" : "data1", "field2" : "data2", "field3" : "data3", "field4" : "data4", "field5" : "data5" }, "hash" : 2930249b7064f88550bfb5702263e66d //dataverification }
{testobject1} => object2url => {URI component} //object2url converteert alleen objecten met dimensie 1 Action : [toggle in/out] URI component => url2object => {output object} {testobject1} => object2url util => {output JSON string} => base64encode => md5 via de client |=> {output JSON string} => base64encode => outputbase64decode [server] |=> {output JSON string} => base64encode => md5 hash via de server |=> {output JSON string} => base64encode => send output to server//XHR
[output Form as base64 encoded] => {base64 encoded string} => base64decode => URI decode => {JSON string}