# IPLD and Compatibility
<!-- Put the link to this slide here so people can follow -->
slide: https://hackmd.io/@adin/ipld-compat
---
# The Vision
Use IPFS to move around any hash-linked data
Existing (or future) formats like Git, BitTorrent, OCI containers, check-summed files, etc.
---
# The Problems
1. Codecs+ADLs needed in every implementation
2. No good hooks to add ADL support
3. Cannot transport blocks bigger than 2MiB
---
# The Problems
Taking BitTorrent compatiblity as an example:
1. Write codecs + ADLs for Go, JS, Rust, etc. and get inclusion across implementations
2. Want a hook to say "load this as a BitTorrent file" over an IPFS gateway
3. Want to be able to handle all BitTorrent data, even if the chunk size is >2MiB
---
# Solutions
Taking BitTorrent compatiblity as an example:
1. WASM Codecs + ADLs
2. Add support for selectors into more places (e.g. IPFS Gateway spec)
3. Hash function (e.g. SHA-2) specific cryptographic tricks and protocols
---
# Experimental Progress so Far
1. WASM Codecs - Usable
2. WASM ADLs - Usable LargeBytes, others TBD
3. Gateways + Selectors - Proposal for handling anything that terminates in Bytes (i.e. no maps)
4. SHA-2 Large Blocks - PoC
---
# Up Next
- Get review on WAC spec
- Basic ADL implementation for things other than LargeBytes
- Once current gateway spec
{"metaMigratedAt":"2023-06-17T00:24:23.202Z","metaMigratedFrom":"YAML","title":"IPLD and Compatiblity","breaks":"true","description":"View the slide with \"Slide Mode\".","contributors":"[{\"id\":\"6c027841-8e73-4a4d-8ec7-e99a5271fad7\",\"add\":1745,\"del\":288}]"}