This paper presents an algorithm for structurally hashing directed graphs. The algorithm seeks to fulfill the recursive principle that a hash of a node should depend only on the hash of its neighbors. The algorithm works even in the presence of cycles, which prevents a naive recursive algorithm from functioning. We also discuss the implications of the recursive principle, limitations of the algorithm, and potential use cases.