A distributed storage network comprising a plurality of interconnected computers, said computers including a plurality of host computers and at least one client computer, wherein said client computer stores client code comprising: a) storage initiation code executable to initiate storage of a data item on one or more of said plurality of host computers; said distributed storage network being characterised by: b) said client code further comprising storage condition generation code executable to generate one or more interpretable storage conditions for a given data item indicating characteristics of host computers suitable for storing said data item; c) said storage initiation code being executable to cause the execution of said storage condition generation code, and to send said storage condition for said data item with said data item to one or more of said host computers; wherein each of said host computers stores host code comprising: d) host computer characteristic provision code executable to provide host characteristic data indicating one or more characteristics of said host computer; e) condition interpreter code executable to interpret said one or more interpretable storage conditions for said data item in the light of said one or more host characteristics provided by said host computer and thereby to establish whether said host computer meets said storage conditions for said data item; f) data item storage code executable to store said data item in said host computer on the execution of said condition interpreter code finding that said host computer meets said storage conditions for said data item; and g) forwarding code executable, on the execution of said condition interpreter code finding that the host computer does not meet said storage conditions for said data item, to forward said data item and said storage conditions for said data item to another of said host computers. a) storage initiation code executable to initiate storage of a data item on one or more of said plurality of host computers; b) said client code further comprising storage condition generation code executable to generate one or more interpretable storage conditions for a given data item indicating characteristics of host computers suitable for storing said data item; c) said storage initiation code being executable to cause the execution of said storage condition generation code, and to send said storage condition for said data item with said data item to one or more of said host computers; d) host computer characteristic provision code executable to provide host characteristic data indicating one or more characteristics of said host computer; e) condition interpreter code executable to interpret said one or more interpretable storage conditions for said data item in the light of said one or more host characteristics provided by said host computer and thereby to establish whether said host computer meets said storage conditions for said data item; f) data item storage code executable to store said data item in said host computer on the execution of said condition interpreter code finding that said host computer meets said storage conditions for said data item; and g) forwarding code executable, on the execution of said condition interpreter code finding that the host computer does not meet said storage conditions for said data item, to forward said data item and said storage conditions for said data item to another of said host computers.