Directories are indexed in two different ways. For filename lookup, there is an index comprised of keys:
Directory Objectid | BTRFS_DIR_ITEM_KEY | 64 bit filename hash
The default directory hash used is crc32c, although other hashes may be added later on. A flags field in the super block will indicate which hash is used for a given FS.
Sounds like btrfs uses a CRC as a hash. I assume it's a performance optimization, but using CRC as a hash is insane.