Byzantine fault-tolerance through application oriented specification