1. A method of allocating unique identifiers in a distributed storage system comprising: receiving an allocation of a range of identifiers for use in the distributed storage system; partitioning the range of identifiers into subsets; receiving a request from a first server for a first allocation of at least one subset of identifiers; providing the first server with the requested first allocation of at least one subset of identifiers, wherein providing the first server with the requested first allocation of at least one subset of identifiers comprises polling a plurality of servers to determine an available subset of identifiers and requiring confirmation of the allocation from a quorum of the plurality of servers; receiving a request from a second server for a second allocation of at least one subset of identifiers; providing the second server with the requested second allocation of at least one subset of identifiers, wherein providing the second server with the requested second allocation of at least one subset of identifiers comprises polling a plurality of servers to determine an available subset of identifiers and requiring confirmation of the allocation from a quorum of the plurality of servers; transforming an identifier from the first allocation of at least one subset of identifiers and associating the transformed identifier with a first object; and transforming an identifier from the second allocation of at least one subset of identifiers and associating the transformed identifier with a second object, wherein the transformed first and second identifiers are used in a common identifier space and are assured to be unique.