1. A method for replicating data to one or more online storage clouds comprising: providing a data replication cluster comprising at least a first host node and at least a first online storage cloud, wherein said first host node is connected to said first online storage cloud via a network and comprises a server, a cloud array application and a local cache and wherein said local cache comprises a buffer and a first storage volume and wherein said first storage volume comprises data cached in one or more buffer blocks of said local cache's buffer; entering a first request by a user to “write” data in said first storage volume; receiving said first request by said server; identifying said first storage volume's internal structure and initiating processing of said first request; verifying first authorization of user to “write” data in said first storage volume, and upon approval said first authorization, passing said first request to said local cache; verifying second authorization of said user to “write” data in a specific region of said first storage volume by said local cache; upon approval of said second authorization, determining if a specific extent exists in said local cache's buffer for receiving said “write” data; upon confirmation that said specific extent exists in said local cache's buffer, storing said “write” data in said extent, wherein said extent comprises said one or more buffer blocks of said local cache's buffer; requesting authorization to perform cache flush of the cached first storage volume data to said first online storage cloud, by said cloud array application; upon receiving approval of said authorization, encrypting said cached first storage volume data in each of said one or more buffer blocks with a data private key, by said cloud array application; assigning metadata comprising at least a unique identifier to each of said one or more buffer blocks, by said cloud array application; encrypting said metadata with a metadata private key, by said cloud array application; transmitting said one or more buffer blocks with the encrypted first storage volume data to said first online cloud storage, by said cloud array application; creating a sequence of updates of said metadata, encrypting said sequence with said metadata private key, by said cloud array application; and transmitting said sequence of metadata updates to said first online storage cloud, by said cloud array application.