A system having one or more processors communicatively coupled to a plurality of sensors, and a non-transitory memory, the non-transitory memory storing instructions that when executed by the processor, control the system to create and view an immutable digital testimony, comprising:
- a first layer (1100) operating on a device (1110) having an immutable digital testimony device identifier (ID), wherein the immutable digital testimony device ID is a unique identifier of the creator device, the device configured to:
- activate an immutable digital testimony creation operation;
- authenticate a creator of an immutable digital testimony based on an immutable digital testimony creator ID, wherein the immutable digital testimony creator ID is a unique user identification created upon registering with an immutable digital testimony network (3100);
- capture the immutable digital testimony device ID of the device used to create the immutable digital testimony (3100);
- upon authentication of the creator, initiate an immutable digital testimony capture operation (3110) to:
- activate one or more cameras associated with the device and cause the device to generate immutable digital testimony stream media (3120);
- hash one or more frames of the immutable digital testimony stream media for the one or more cameras by applying a selected immutable digital testimony hashing scheme from a plurality of hashing schemes, thereby creating one or more immutable digital testimony stream hashes (3130, 3132);
- form a live stream hash (3130, 3133) from the one or more immutable digital testimony stream hashes;
- capture immutable digital testimony metadata (3140) to be recorded on an immutable digital testimony authentication blockchain;
- transmit the immutable digital testimony stream media and the selected immutable digital testimony hashing scheme to a cloud server (3147, 39100), causing the selected immutable digital testimony hashing scheme and the immutable digital testimony stream media to be stored on the cloud server as immutable digital testimony cloud media;
- retrieve one or more immutable digital testimony addresses (39110), each of the one or more immutable digital testimony addresses being (i) one or more cloud addresses on the cloud server, (ii) one or more distributed file system (DFS) addresses on the DFS, or (iii) a combination of (i) and (ii), correspondingly, wherein each of the one or more immutable digital testimony addresses corresponds to (i) a location at which the immutable digital testimony cloud media is saved, the immutable digital testimony cloud media being at least a portion of the immutable digital testimony stream media, or (ii) a location allocated for saving the immutable digital testimony cloud media which is at least a portion of the immutable digital testimony stream media;
- upon completion of the transmission:
- encrypt the immutable digital testimony live stream media (3148) thereby creating encrypted immutable digital testimony live stream media, the encrypted immutable digital testimony live stream media being at least a portion of the immutable digital testimony stream media,
- send to the DFS the encrypted immutable digital testimony live stream media (39100) to save the encrypted immutable digital testimony live stream media, and
- receive from the DFS (39015) one or more immutable digital testimony DFS addresses corresponding to the location on the DFS where the immutable digital testimony stream media is saved, wherein each of the one or more immutable digital testimony DFS addresses corresponds to a location at which the encrypted immutable digital testimony live stream media has been saved;
- and
- save the immutable digital testimony stream media on the device, to create immutable digital testimony local media (3149).