White-box application is a new concept in distributed application domain. It's an attempt to overcome blockchain smart contracts limits for data processing tasks. Blockchain smart contracts run all nodes on blockchain simultaneously, and it's quite ineffective way of wasting resources. Moreover, if we consider some big data processing tasks, they hardly could be implemented on blockchain. Still there are some applications that could benefit from running in a verifiable way, enabling mutual result check by set of independent nodes.
Use cases that can be implemented using white-box concept:
- Fees calculator and order matching for stock and currency exchanges.
- Results calculator for bookmaking services.
- Fees calculation for affiliate programs.
- The tasks run in parallel on a limited number of nodes. A platform manages random task assignment on nodes to minimise fault calculations.
For such applications SONM provides:
- Development platform (SDK, samples, etc.) (Not implemented in MVP)
- Infrastructure for automatic deployment, scaling and results checking (Not implemented in MVP).
- Scheduling and results checking is a dedicated centralised SONM services. Distributed consensus could be implemented, but Ethereum is too slow, a fast blockchain or DAG consensus algorithm with smart contracts is to be chosen and adopted.